aboutsummaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
Diffstat (limited to 'docs')
-rw-r--r--docs/api-objects.txt2202
-rw-r--r--docs/bug-index.html107
-rw-r--r--docs/class-tree.html364
-rw-r--r--docs/crarr.pngbin340 -> 0 bytes
-rw-r--r--docs/epydoc.css322
-rw-r--r--docs/epydoc.js293
-rw-r--r--docs/frames.html17
-rw-r--r--docs/help.html266
-rw-r--r--docs/identifier-index.html5475
-rw-r--r--docs/index.html17
-rw-r--r--docs/module-tree.html155
-rw-r--r--docs/paramiko-module.html513
-rw-r--r--docs/paramiko-pysrc.html465
-rw-r--r--docs/paramiko.Agent-class.html233
-rw-r--r--docs/paramiko.AgentKey-class.html399
-rw-r--r--docs/paramiko.AuthenticationException-class.html185
-rw-r--r--docs/paramiko.AutoAddPolicy-class.html224
-rw-r--r--docs/paramiko.BadAuthenticationType-class.html296
-rw-r--r--docs/paramiko.BadHostKeyException-class.html268
-rw-r--r--docs/paramiko.BufferedFile-class.html856
-rw-r--r--docs/paramiko.Channel-class.html1998
-rw-r--r--docs/paramiko.ChannelException-class.html250
-rw-r--r--docs/paramiko.DSSKey-class.html750
-rw-r--r--docs/paramiko.HostKeys-class.html643
-rw-r--r--docs/paramiko.Message-class.html1101
-rw-r--r--docs/paramiko.MissingHostKeyPolicy-class.html232
-rw-r--r--docs/paramiko.PKey-class.html857
-rw-r--r--docs/paramiko.PasswordRequiredException-class.html176
-rw-r--r--docs/paramiko.RSAKey-class.html750
-rw-r--r--docs/paramiko.RejectPolicy-class.html223
-rw-r--r--docs/paramiko.SFTP-class.html202
-rw-r--r--docs/paramiko.SFTPAttributes-class.html418
-rw-r--r--docs/paramiko.SFTPClient-class.html1536
-rw-r--r--docs/paramiko.SFTPError-class.html169
-rw-r--r--docs/paramiko.SFTPFile-class.html1011
-rw-r--r--docs/paramiko.SFTPHandle-class.html476
-rw-r--r--docs/paramiko.SFTPServer-class.html477
-rw-r--r--docs/paramiko.SFTPServerInterface-class.html979
-rw-r--r--docs/paramiko.SSHClient-class.html845
-rw-r--r--docs/paramiko.SSHConfig-class.html309
-rw-r--r--docs/paramiko.SSHException-class.html178
-rw-r--r--docs/paramiko.SecurityOptions-class.html397
-rw-r--r--docs/paramiko.ServerInterface-class.html1247
-rw-r--r--docs/paramiko.SubsystemHandler-class.html393
-rw-r--r--docs/paramiko.Transport-class.html2352
-rw-r--r--docs/paramiko.WarningPolicy-class.html223
-rw-r--r--docs/paramiko.agent-module.html148
-rw-r--r--docs/paramiko.agent-pysrc.html279
-rw-r--r--docs/paramiko.auth_handler-module.html531
-rw-r--r--docs/paramiko.auth_handler-pysrc.html1514
-rw-r--r--docs/paramiko.ber-module.html142
-rw-r--r--docs/paramiko.ber-pysrc.html238
-rw-r--r--docs/paramiko.ber.BER-class.html397
-rw-r--r--docs/paramiko.ber.BERException-class.html170
-rw-r--r--docs/paramiko.buffered_pipe-module.html152
-rw-r--r--docs/paramiko.buffered_pipe-pysrc.html323
-rw-r--r--docs/paramiko.buffered_pipe.BufferedPipe-class.html516
-rw-r--r--docs/paramiko.buffered_pipe.PipeTimeout-class.html187
-rw-r--r--docs/paramiko.channel-module.html554
-rw-r--r--docs/paramiko.channel-pysrc.html2076
-rw-r--r--docs/paramiko.channel.ChannelStderrFile-class.html257
-rw-r--r--docs/paramiko.client-module.html539
-rw-r--r--docs/paramiko.client-pysrc.html801
-rw-r--r--docs/paramiko.common-module.html531
-rw-r--r--docs/paramiko.common-pysrc.html1905
-rw-r--r--docs/paramiko.compress-module.html143
-rw-r--r--docs/paramiko.compress-pysrc.html148
-rw-r--r--docs/paramiko.compress.ZlibCompressor-class.html222
-rw-r--r--docs/paramiko.compress.ZlibDecompressor-class.html222
-rw-r--r--docs/paramiko.config-module.html121
-rw-r--r--docs/paramiko.config-pysrc.html219
-rw-r--r--docs/paramiko.dsskey-module.html531
-rw-r--r--docs/paramiko.dsskey-pysrc.html356
-rw-r--r--docs/paramiko.file-module.html120
-rw-r--r--docs/paramiko.file-pysrc.html579
-rw-r--r--docs/paramiko.hostkeys-module.html549
-rw-r--r--docs/paramiko.hostkeys-pysrc.html501
-rw-r--r--docs/paramiko.hostkeys.HostKeyEntry-class.html255
-rw-r--r--docs/paramiko.kex_gex-module.html550
-rw-r--r--docs/paramiko.kex_gex-pysrc.html463
-rw-r--r--docs/paramiko.kex_gex.KexGex-class.html279
-rw-r--r--docs/paramiko.kex_group1-module.html589
-rw-r--r--docs/paramiko.kex_group1-pysrc.html292
-rw-r--r--docs/paramiko.kex_group1.KexGroup1-class.html257
-rw-r--r--docs/paramiko.logging22-module.html210
-rw-r--r--docs/paramiko.logging22-pysrc.html302
-rw-r--r--docs/paramiko.logging22.Formatter-class.html209
-rw-r--r--docs/paramiko.logging22.StreamHandler-class.html224
-rw-r--r--docs/paramiko.logging22.logger-class.html274
-rw-r--r--docs/paramiko.message-module.html120
-rw-r--r--docs/paramiko.message-pysrc.html423
-rw-r--r--docs/paramiko.packet-module.html581
-rw-r--r--docs/paramiko.packet-pysrc.html920
-rw-r--r--docs/paramiko.packet.NeedRekeyException-class.html170
-rw-r--r--docs/paramiko.pipe-module.html231
-rw-r--r--docs/paramiko.pipe-pysrc.html327
-rw-r--r--docs/paramiko.pipe.OrPipe-class.html239
-rw-r--r--docs/paramiko.pipe.PosixPipe-class.html285
-rw-r--r--docs/paramiko.pipe.WindowsPipe-class.html288
-rw-r--r--docs/paramiko.pkey-module.html531
-rw-r--r--docs/paramiko.pkey-pysrc.html542
-rw-r--r--docs/paramiko.primes-module.html138
-rw-r--r--docs/paramiko.primes-pysrc.html355
-rw-r--r--docs/paramiko.primes.ModulusPack-class.html270
-rw-r--r--docs/paramiko.resource-module.html127
-rw-r--r--docs/paramiko.resource-pysrc.html192
-rw-r--r--docs/paramiko.rsakey-module.html531
-rw-r--r--docs/paramiko.rsakey-pysrc.html323
-rw-r--r--docs/paramiko.server-module.html533
-rw-r--r--docs/paramiko.server-pysrc.html1006
-rw-r--r--docs/paramiko.sftp-module.html905
-rw-r--r--docs/paramiko.sftp-pysrc.html798
-rw-r--r--docs/paramiko.sftp_attr-module.html905
-rw-r--r--docs/paramiko.sftp_attr-pysrc.html367
-rw-r--r--docs/paramiko.sftp_client-module.html907
-rw-r--r--docs/paramiko.sftp_client-pysrc.html1602
-rw-r--r--docs/paramiko.sftp_file-module.html907
-rw-r--r--docs/paramiko.sftp_file-pysrc.html873
-rw-r--r--docs/paramiko.sftp_handle-module.html907
-rw-r--r--docs/paramiko.sftp_handle-pysrc.html369
-rw-r--r--docs/paramiko.sftp_server-module.html907
-rw-r--r--docs/paramiko.sftp_server-pysrc.html1196
-rw-r--r--docs/paramiko.sftp_si-module.html909
-rw-r--r--docs/paramiko.sftp_si-pysrc.html527
-rw-r--r--docs/paramiko.ssh_exception-module.html137
-rw-r--r--docs/paramiko.ssh_exception-pysrc.html403
-rw-r--r--docs/paramiko.ssh_exception.PartialAuthentication-class.html246
-rw-r--r--docs/paramiko.transport-module.html548
-rw-r--r--docs/paramiko.transport-pysrc.html4153
-rw-r--r--docs/paramiko.transport.ChannelMap-class.html289
-rw-r--r--docs/paramiko.util-module.html965
-rw-r--r--docs/paramiko.util-pysrc.html434
-rw-r--r--docs/paramiko.util.Counter-class.html258
-rw-r--r--docs/paramiko.util.PFilter-class.html171
-rw-r--r--docs/paramiko.util.enumerate-class.html145
-rw-r--r--docs/paramiko.win_pageant-module.html204
-rw-r--r--docs/paramiko.win_pageant-pysrc.html287
-rw-r--r--docs/paramiko.win_pageant.PageantConnection-class.html260
-rw-r--r--docs/redirect.html38
-rw-r--r--docs/since-index.html302
-rw-r--r--docs/toc-everything.html148
-rw-r--r--docs/toc-paramiko-module.html61
-rw-r--r--docs/toc-paramiko.agent-module.html28
-rw-r--r--docs/toc-paramiko.auth_handler-module.html28
-rw-r--r--docs/toc-paramiko.ber-module.html29
-rw-r--r--docs/toc-paramiko.buffered_pipe-module.html29
-rw-r--r--docs/toc-paramiko.channel-module.html29
-rw-r--r--docs/toc-paramiko.client-module.html28
-rw-r--r--docs/toc-paramiko.common-module.html28
-rw-r--r--docs/toc-paramiko.compress-module.html29
-rw-r--r--docs/toc-paramiko.config-module.html28
-rw-r--r--docs/toc-paramiko.dsskey-module.html28
-rw-r--r--docs/toc-paramiko.file-module.html28
-rw-r--r--docs/toc-paramiko.hostkeys-module.html29
-rw-r--r--docs/toc-paramiko.kex_gex-module.html29
-rw-r--r--docs/toc-paramiko.kex_group1-module.html29
-rw-r--r--docs/toc-paramiko.logging22-module.html40
-rw-r--r--docs/toc-paramiko.message-module.html28
-rw-r--r--docs/toc-paramiko.packet-module.html30
-rw-r--r--docs/toc-paramiko.pipe-module.html30
-rw-r--r--docs/toc-paramiko.pkey-module.html28
-rw-r--r--docs/toc-paramiko.primes-module.html29
-rw-r--r--docs/toc-paramiko.resource-module.html28
-rw-r--r--docs/toc-paramiko.rsakey-module.html28
-rw-r--r--docs/toc-paramiko.server-module.html28
-rw-r--r--docs/toc-paramiko.sftp-module.html28
-rw-r--r--docs/toc-paramiko.sftp_attr-module.html28
-rw-r--r--docs/toc-paramiko.sftp_client-module.html28
-rw-r--r--docs/toc-paramiko.sftp_file-module.html28
-rw-r--r--docs/toc-paramiko.sftp_handle-module.html28
-rw-r--r--docs/toc-paramiko.sftp_server-module.html28
-rw-r--r--docs/toc-paramiko.sftp_si-module.html28
-rw-r--r--docs/toc-paramiko.ssh_exception-module.html29
-rw-r--r--docs/toc-paramiko.transport-module.html29
-rw-r--r--docs/toc-paramiko.util-module.html101
-rw-r--r--docs/toc-paramiko.win_pageant-module.html34
-rw-r--r--docs/toc.html34
177 files changed, 0 insertions, 80075 deletions
diff --git a/docs/api-objects.txt b/docs/api-objects.txt
deleted file mode 100644
index 8b62260..0000000
--- a/docs/api-objects.txt
+++ /dev/null
@@ -1,2202 +0,0 @@
-paramiko paramiko-module.html
-paramiko.__package__ paramiko-module.html#__package__
-paramiko.__license__ paramiko-module.html#__license__
-paramiko.__version_info__ paramiko-module.html#__version_info__
-paramiko.__author__ paramiko-module.html#__author__
-paramiko.__version__ paramiko-module.html#__version__
-paramiko.agent paramiko.agent-module.html
-paramiko.agent.SSH2_AGENT_IDENTITIES_ANSWER paramiko.agent-module.html#SSH2_AGENT_IDENTITIES_ANSWER
-paramiko.agent.SSH2_AGENTC_REQUEST_IDENTITIES paramiko.agent-module.html#SSH2_AGENTC_REQUEST_IDENTITIES
-paramiko.agent.SSH2_AGENTC_SIGN_REQUEST paramiko.agent-module.html#SSH2_AGENTC_SIGN_REQUEST
-paramiko.agent.__package__ paramiko.agent-module.html#__package__
-paramiko.agent.SSH2_AGENT_SIGN_RESPONSE paramiko.agent-module.html#SSH2_AGENT_SIGN_RESPONSE
-paramiko.auth_handler paramiko.auth_handler-module.html
-paramiko.auth_handler.AUTH_SUCCESSFUL paramiko.auth_handler-module.html#AUTH_SUCCESSFUL
-paramiko.auth_handler.MSG_KEXINIT paramiko.auth_handler-module.html#MSG_KEXINIT
-paramiko.auth_handler.MSG_CHANNEL_WINDOW_ADJUST paramiko.auth_handler-module.html#MSG_CHANNEL_WINDOW_ADJUST
-paramiko.auth_handler.MSG_CHANNEL_REQUEST paramiko.auth_handler-module.html#MSG_CHANNEL_REQUEST
-paramiko.auth_handler.MSG_NAMES paramiko.auth_handler-module.html#MSG_NAMES
-paramiko.auth_handler.MSG_CHANNEL_OPEN paramiko.auth_handler-module.html#MSG_CHANNEL_OPEN
-paramiko.auth_handler.MSG_DISCONNECT paramiko.auth_handler-module.html#MSG_DISCONNECT
-paramiko.auth_handler.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE paramiko.auth_handler-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.auth_handler.MSG_SERVICE_ACCEPT paramiko.auth_handler-module.html#MSG_SERVICE_ACCEPT
-paramiko.auth_handler.MSG_IGNORE paramiko.auth_handler-module.html#MSG_IGNORE
-paramiko.auth_handler.WARNING paramiko.auth_handler-module.html#WARNING
-paramiko.auth_handler.MSG_GLOBAL_REQUEST paramiko.auth_handler-module.html#MSG_GLOBAL_REQUEST
-paramiko.auth_handler.MSG_USERAUTH_INFO_RESPONSE paramiko.auth_handler-module.html#MSG_USERAUTH_INFO_RESPONSE
-paramiko.auth_handler.AUTH_FAILED paramiko.auth_handler-module.html#AUTH_FAILED
-paramiko.auth_handler.MSG_CHANNEL_SUCCESS paramiko.auth_handler-module.html#MSG_CHANNEL_SUCCESS
-paramiko.auth_handler.MSG_USERAUTH_FAILURE paramiko.auth_handler-module.html#MSG_USERAUTH_FAILURE
-paramiko.auth_handler.MSG_REQUEST_FAILURE paramiko.auth_handler-module.html#MSG_REQUEST_FAILURE
-paramiko.auth_handler.__package__ paramiko.auth_handler-module.html#__package__
-paramiko.auth_handler.MSG_CHANNEL_DATA paramiko.auth_handler-module.html#MSG_CHANNEL_DATA
-paramiko.auth_handler.AUTH_PARTIALLY_SUCCESSFUL paramiko.auth_handler-module.html#AUTH_PARTIALLY_SUCCESSFUL
-paramiko.auth_handler.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED paramiko.auth_handler-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.auth_handler.MSG_UNIMPLEMENTED paramiko.auth_handler-module.html#MSG_UNIMPLEMENTED
-paramiko.auth_handler.CRITICAL paramiko.auth_handler-module.html#CRITICAL
-paramiko.auth_handler.MSG_CHANNEL_OPEN_FAILURE paramiko.auth_handler-module.html#MSG_CHANNEL_OPEN_FAILURE
-paramiko.auth_handler.MSG_USERAUTH_INFO_REQUEST paramiko.auth_handler-module.html#MSG_USERAUTH_INFO_REQUEST
-paramiko.auth_handler.MSG_DEBUG paramiko.auth_handler-module.html#MSG_DEBUG
-paramiko.auth_handler.MSG_CHANNEL_FAILURE paramiko.auth_handler-module.html#MSG_CHANNEL_FAILURE
-paramiko.auth_handler.OPEN_SUCCEEDED paramiko.auth_handler-module.html#OPEN_SUCCEEDED
-paramiko.auth_handler.rng paramiko.auth_handler-module.html#rng
-paramiko.auth_handler.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE paramiko.auth_handler-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.auth_handler.OPEN_FAILED_RESOURCE_SHORTAGE paramiko.auth_handler-module.html#OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.auth_handler.ERROR paramiko.auth_handler-module.html#ERROR
-paramiko.auth_handler.DEBUG paramiko.auth_handler-module.html#DEBUG
-paramiko.auth_handler.MSG_REQUEST_SUCCESS paramiko.auth_handler-module.html#MSG_REQUEST_SUCCESS
-paramiko.auth_handler.OPEN_FAILED_CONNECT_FAILED paramiko.auth_handler-module.html#OPEN_FAILED_CONNECT_FAILED
-paramiko.auth_handler.INFO paramiko.auth_handler-module.html#INFO
-paramiko.auth_handler.MSG_USERAUTH_BANNER paramiko.auth_handler-module.html#MSG_USERAUTH_BANNER
-paramiko.auth_handler.MSG_NEWKEYS paramiko.auth_handler-module.html#MSG_NEWKEYS
-paramiko.auth_handler.MSG_USERAUTH_PK_OK paramiko.auth_handler-module.html#MSG_USERAUTH_PK_OK
-paramiko.auth_handler.MSG_USERAUTH_REQUEST paramiko.auth_handler-module.html#MSG_USERAUTH_REQUEST
-paramiko.auth_handler.DISCONNECT_SERVICE_NOT_AVAILABLE paramiko.auth_handler-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.auth_handler.PY22 paramiko.auth_handler-module.html#PY22
-paramiko.auth_handler.MSG_SERVICE_REQUEST paramiko.auth_handler-module.html#MSG_SERVICE_REQUEST
-paramiko.auth_handler.MSG_CHANNEL_EXTENDED_DATA paramiko.auth_handler-module.html#MSG_CHANNEL_EXTENDED_DATA
-paramiko.auth_handler.MSG_CHANNEL_CLOSE paramiko.auth_handler-module.html#MSG_CHANNEL_CLOSE
-paramiko.auth_handler.DISCONNECT_AUTH_CANCELLED_BY_USER paramiko.auth_handler-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.auth_handler.MSG_CHANNEL_OPEN_SUCCESS paramiko.auth_handler-module.html#MSG_CHANNEL_OPEN_SUCCESS
-paramiko.auth_handler.MSG_CHANNEL_EOF paramiko.auth_handler-module.html#MSG_CHANNEL_EOF
-paramiko.auth_handler.MSG_USERAUTH_SUCCESS paramiko.auth_handler-module.html#MSG_USERAUTH_SUCCESS
-paramiko.auth_handler.CONNECTION_FAILED_CODE paramiko.auth_handler-module.html#CONNECTION_FAILED_CODE
-paramiko.ber paramiko.ber-module.html
-paramiko.ber.__package__ paramiko.ber-module.html#__package__
-paramiko.buffered_pipe paramiko.buffered_pipe-module.html
-paramiko.buffered_pipe.__package__ paramiko.buffered_pipe-module.html#__package__
-paramiko.channel paramiko.channel-module.html
-paramiko.channel.AUTH_SUCCESSFUL paramiko.channel-module.html#AUTH_SUCCESSFUL
-paramiko.channel.MSG_KEXINIT paramiko.channel-module.html#MSG_KEXINIT
-paramiko.channel.MSG_CHANNEL_WINDOW_ADJUST paramiko.channel-module.html#MSG_CHANNEL_WINDOW_ADJUST
-paramiko.channel.MSG_NAMES paramiko.channel-module.html#MSG_NAMES
-paramiko.channel.MSG_CHANNEL_OPEN paramiko.channel-module.html#MSG_CHANNEL_OPEN
-paramiko.channel.MSG_REQUEST_SUCCESS paramiko.channel-module.html#MSG_REQUEST_SUCCESS
-paramiko.channel.MSG_DISCONNECT paramiko.channel-module.html#MSG_DISCONNECT
-paramiko.channel.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE paramiko.channel-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.channel.MSG_SERVICE_ACCEPT paramiko.channel-module.html#MSG_SERVICE_ACCEPT
-paramiko.channel.WARNING paramiko.channel-module.html#WARNING
-paramiko.channel.MSG_GLOBAL_REQUEST paramiko.channel-module.html#MSG_GLOBAL_REQUEST
-paramiko.channel.MSG_USERAUTH_INFO_RESPONSE paramiko.channel-module.html#MSG_USERAUTH_INFO_RESPONSE
-paramiko.channel.AUTH_FAILED paramiko.channel-module.html#AUTH_FAILED
-paramiko.channel.MSG_CHANNEL_SUCCESS paramiko.channel-module.html#MSG_CHANNEL_SUCCESS
-paramiko.channel.MSG_USERAUTH_FAILURE paramiko.channel-module.html#MSG_USERAUTH_FAILURE
-paramiko.channel.MSG_REQUEST_FAILURE paramiko.channel-module.html#MSG_REQUEST_FAILURE
-paramiko.channel.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED paramiko.channel-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.channel.__package__ paramiko.channel-module.html#__package__
-paramiko.channel.MSG_CHANNEL_DATA paramiko.channel-module.html#MSG_CHANNEL_DATA
-paramiko.channel.CRITICAL paramiko.channel-module.html#CRITICAL
-paramiko.channel.MSG_IGNORE paramiko.channel-module.html#MSG_IGNORE
-paramiko.channel.MSG_UNIMPLEMENTED paramiko.channel-module.html#MSG_UNIMPLEMENTED
-paramiko.channel.MSG_CHANNEL_REQUEST paramiko.channel-module.html#MSG_CHANNEL_REQUEST
-paramiko.channel.MSG_CHANNEL_OPEN_FAILURE paramiko.channel-module.html#MSG_CHANNEL_OPEN_FAILURE
-paramiko.channel.MSG_USERAUTH_INFO_REQUEST paramiko.channel-module.html#MSG_USERAUTH_INFO_REQUEST
-paramiko.channel.MSG_DEBUG paramiko.channel-module.html#MSG_DEBUG
-paramiko.channel.MSG_CHANNEL_FAILURE paramiko.channel-module.html#MSG_CHANNEL_FAILURE
-paramiko.channel.OPEN_SUCCEEDED paramiko.channel-module.html#OPEN_SUCCEEDED
-paramiko.channel.rng paramiko.channel-module.html#rng
-paramiko.channel.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE paramiko.channel-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.channel.OPEN_FAILED_RESOURCE_SHORTAGE paramiko.channel-module.html#OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.channel.ERROR paramiko.channel-module.html#ERROR
-paramiko.channel.DEBUG paramiko.channel-module.html#DEBUG
-paramiko.channel.AUTH_PARTIALLY_SUCCESSFUL paramiko.channel-module.html#AUTH_PARTIALLY_SUCCESSFUL
-paramiko.channel.OPEN_FAILED_CONNECT_FAILED paramiko.channel-module.html#OPEN_FAILED_CONNECT_FAILED
-paramiko.channel.INFO paramiko.channel-module.html#INFO
-paramiko.channel.MSG_USERAUTH_BANNER paramiko.channel-module.html#MSG_USERAUTH_BANNER
-paramiko.channel.MSG_NEWKEYS paramiko.channel-module.html#MSG_NEWKEYS
-paramiko.channel.MSG_USERAUTH_PK_OK paramiko.channel-module.html#MSG_USERAUTH_PK_OK
-paramiko.channel.MSG_USERAUTH_REQUEST paramiko.channel-module.html#MSG_USERAUTH_REQUEST
-paramiko.channel.DISCONNECT_SERVICE_NOT_AVAILABLE paramiko.channel-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.channel.MIN_PACKET_SIZE paramiko.channel-module.html#MIN_PACKET_SIZE
-paramiko.channel.PY22 paramiko.channel-module.html#PY22
-paramiko.channel.MSG_SERVICE_REQUEST paramiko.channel-module.html#MSG_SERVICE_REQUEST
-paramiko.channel.MSG_CHANNEL_EXTENDED_DATA paramiko.channel-module.html#MSG_CHANNEL_EXTENDED_DATA
-paramiko.channel.MSG_CHANNEL_CLOSE paramiko.channel-module.html#MSG_CHANNEL_CLOSE
-paramiko.channel.DISCONNECT_AUTH_CANCELLED_BY_USER paramiko.channel-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.channel.MSG_CHANNEL_OPEN_SUCCESS paramiko.channel-module.html#MSG_CHANNEL_OPEN_SUCCESS
-paramiko.channel.MSG_CHANNEL_EOF paramiko.channel-module.html#MSG_CHANNEL_EOF
-paramiko.channel.MSG_USERAUTH_SUCCESS paramiko.channel-module.html#MSG_USERAUTH_SUCCESS
-paramiko.channel.CONNECTION_FAILED_CODE paramiko.channel-module.html#CONNECTION_FAILED_CODE
-paramiko.client paramiko.client-module.html
-paramiko.client.AUTH_SUCCESSFUL paramiko.client-module.html#AUTH_SUCCESSFUL
-paramiko.client.MSG_CHANNEL_OPEN_FAILURE paramiko.client-module.html#MSG_CHANNEL_OPEN_FAILURE
-paramiko.client.MSG_CHANNEL_WINDOW_ADJUST paramiko.client-module.html#MSG_CHANNEL_WINDOW_ADJUST
-paramiko.client.MSG_CHANNEL_REQUEST paramiko.client-module.html#MSG_CHANNEL_REQUEST
-paramiko.client.MSG_NAMES paramiko.client-module.html#MSG_NAMES
-paramiko.client.MSG_REQUEST_FAILURE paramiko.client-module.html#MSG_REQUEST_FAILURE
-paramiko.client.MSG_CHANNEL_OPEN paramiko.client-module.html#MSG_CHANNEL_OPEN
-paramiko.client.MSG_SERVICE_REQUEST paramiko.client-module.html#MSG_SERVICE_REQUEST
-paramiko.client.__package__ paramiko.client-module.html#__package__
-paramiko.client.MSG_DISCONNECT paramiko.client-module.html#MSG_DISCONNECT
-paramiko.client.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE paramiko.client-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.client.MSG_SERVICE_ACCEPT paramiko.client-module.html#MSG_SERVICE_ACCEPT
-paramiko.client.SSH_PORT paramiko.client-module.html#SSH_PORT
-paramiko.client.MSG_IGNORE paramiko.client-module.html#MSG_IGNORE
-paramiko.client.WARNING paramiko.client-module.html#WARNING
-paramiko.client.MSG_GLOBAL_REQUEST paramiko.client-module.html#MSG_GLOBAL_REQUEST
-paramiko.client.MSG_CHANNEL_SUCCESS paramiko.client-module.html#MSG_CHANNEL_SUCCESS
-paramiko.client.MSG_USERAUTH_FAILURE paramiko.client-module.html#MSG_USERAUTH_FAILURE
-paramiko.client.MSG_KEXINIT paramiko.client-module.html#MSG_KEXINIT
-paramiko.client.MSG_CHANNEL_DATA paramiko.client-module.html#MSG_CHANNEL_DATA
-paramiko.client.AUTH_PARTIALLY_SUCCESSFUL paramiko.client-module.html#AUTH_PARTIALLY_SUCCESSFUL
-paramiko.client.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED paramiko.client-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.client.MSG_UNIMPLEMENTED paramiko.client-module.html#MSG_UNIMPLEMENTED
-paramiko.client.CRITICAL paramiko.client-module.html#CRITICAL
-paramiko.client.MSG_USERAUTH_INFO_REQUEST paramiko.client-module.html#MSG_USERAUTH_INFO_REQUEST
-paramiko.client.MSG_DEBUG paramiko.client-module.html#MSG_DEBUG
-paramiko.client.MSG_CHANNEL_FAILURE paramiko.client-module.html#MSG_CHANNEL_FAILURE
-paramiko.client.OPEN_SUCCEEDED paramiko.client-module.html#OPEN_SUCCEEDED
-paramiko.client.rng paramiko.client-module.html#rng
-paramiko.client.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE paramiko.client-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.client.OPEN_FAILED_RESOURCE_SHORTAGE paramiko.client-module.html#OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.client.ERROR paramiko.client-module.html#ERROR
-paramiko.client.DEBUG paramiko.client-module.html#DEBUG
-paramiko.client.MSG_USERAUTH_INFO_RESPONSE paramiko.client-module.html#MSG_USERAUTH_INFO_RESPONSE
-paramiko.client.MSG_REQUEST_SUCCESS paramiko.client-module.html#MSG_REQUEST_SUCCESS
-paramiko.client.OPEN_FAILED_CONNECT_FAILED paramiko.client-module.html#OPEN_FAILED_CONNECT_FAILED
-paramiko.client.INFO paramiko.client-module.html#INFO
-paramiko.client.MSG_USERAUTH_BANNER paramiko.client-module.html#MSG_USERAUTH_BANNER
-paramiko.client.MSG_NEWKEYS paramiko.client-module.html#MSG_NEWKEYS
-paramiko.client.MSG_USERAUTH_PK_OK paramiko.client-module.html#MSG_USERAUTH_PK_OK
-paramiko.client.MSG_USERAUTH_REQUEST paramiko.client-module.html#MSG_USERAUTH_REQUEST
-paramiko.client.DISCONNECT_SERVICE_NOT_AVAILABLE paramiko.client-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.client.PY22 paramiko.client-module.html#PY22
-paramiko.client.AUTH_FAILED paramiko.client-module.html#AUTH_FAILED
-paramiko.client.MSG_CHANNEL_EXTENDED_DATA paramiko.client-module.html#MSG_CHANNEL_EXTENDED_DATA
-paramiko.client.MSG_CHANNEL_CLOSE paramiko.client-module.html#MSG_CHANNEL_CLOSE
-paramiko.client.DISCONNECT_AUTH_CANCELLED_BY_USER paramiko.client-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.client.MSG_CHANNEL_OPEN_SUCCESS paramiko.client-module.html#MSG_CHANNEL_OPEN_SUCCESS
-paramiko.client.MSG_CHANNEL_EOF paramiko.client-module.html#MSG_CHANNEL_EOF
-paramiko.client.MSG_USERAUTH_SUCCESS paramiko.client-module.html#MSG_USERAUTH_SUCCESS
-paramiko.client.CONNECTION_FAILED_CODE paramiko.client-module.html#CONNECTION_FAILED_CODE
-paramiko.common paramiko.common-module.html
-paramiko.common.AUTH_SUCCESSFUL paramiko.common-module.html#AUTH_SUCCESSFUL
-paramiko.common.MSG_KEXINIT paramiko.common-module.html#MSG_KEXINIT
-paramiko.common.MSG_CHANNEL_WINDOW_ADJUST paramiko.common-module.html#MSG_CHANNEL_WINDOW_ADJUST
-paramiko.common.MSG_CHANNEL_REQUEST paramiko.common-module.html#MSG_CHANNEL_REQUEST
-paramiko.common.MSG_NAMES paramiko.common-module.html#MSG_NAMES
-paramiko.common.MSG_CHANNEL_OPEN paramiko.common-module.html#MSG_CHANNEL_OPEN
-paramiko.common.MSG_REQUEST_SUCCESS paramiko.common-module.html#MSG_REQUEST_SUCCESS
-paramiko.common.MSG_DISCONNECT paramiko.common-module.html#MSG_DISCONNECT
-paramiko.common.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE paramiko.common-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.common.MSG_SERVICE_ACCEPT paramiko.common-module.html#MSG_SERVICE_ACCEPT
-paramiko.common.MSG_IGNORE paramiko.common-module.html#MSG_IGNORE
-paramiko.common.MSG_GLOBAL_REQUEST paramiko.common-module.html#MSG_GLOBAL_REQUEST
-paramiko.common.MSG_USERAUTH_INFO_RESPONSE paramiko.common-module.html#MSG_USERAUTH_INFO_RESPONSE
-paramiko.common.MSG_CHANNEL_SUCCESS paramiko.common-module.html#MSG_CHANNEL_SUCCESS
-paramiko.common.MSG_USERAUTH_FAILURE paramiko.common-module.html#MSG_USERAUTH_FAILURE
-paramiko.common.MSG_REQUEST_FAILURE paramiko.common-module.html#MSG_REQUEST_FAILURE
-paramiko.common.__package__ paramiko.common-module.html#__package__
-paramiko.common.MSG_CHANNEL_DATA paramiko.common-module.html#MSG_CHANNEL_DATA
-paramiko.common.CRITICAL paramiko.common-module.html#CRITICAL
-paramiko.common.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED paramiko.common-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.common.MSG_UNIMPLEMENTED paramiko.common-module.html#MSG_UNIMPLEMENTED
-paramiko.common.MSG_CHANNEL_OPEN_FAILURE paramiko.common-module.html#MSG_CHANNEL_OPEN_FAILURE
-paramiko.common.MSG_USERAUTH_INFO_REQUEST paramiko.common-module.html#MSG_USERAUTH_INFO_REQUEST
-paramiko.common.MSG_DEBUG paramiko.common-module.html#MSG_DEBUG
-paramiko.common.MSG_CHANNEL_FAILURE paramiko.common-module.html#MSG_CHANNEL_FAILURE
-paramiko.common.OPEN_SUCCEEDED paramiko.common-module.html#OPEN_SUCCEEDED
-paramiko.common.rng paramiko.common-module.html#rng
-paramiko.common.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE paramiko.common-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.common.OPEN_FAILED_RESOURCE_SHORTAGE paramiko.common-module.html#OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.common.ERROR paramiko.common-module.html#ERROR
-paramiko.common.DEBUG paramiko.common-module.html#DEBUG
-paramiko.common.AUTH_PARTIALLY_SUCCESSFUL paramiko.common-module.html#AUTH_PARTIALLY_SUCCESSFUL
-paramiko.common.OPEN_FAILED_CONNECT_FAILED paramiko.common-module.html#OPEN_FAILED_CONNECT_FAILED
-paramiko.common.INFO paramiko.common-module.html#INFO
-paramiko.common.MSG_USERAUTH_BANNER paramiko.common-module.html#MSG_USERAUTH_BANNER
-paramiko.common.MSG_NEWKEYS paramiko.common-module.html#MSG_NEWKEYS
-paramiko.common.MSG_USERAUTH_PK_OK paramiko.common-module.html#MSG_USERAUTH_PK_OK
-paramiko.common.WARNING paramiko.common-module.html#WARNING
-paramiko.common.MSG_USERAUTH_REQUEST paramiko.common-module.html#MSG_USERAUTH_REQUEST
-paramiko.common.DISCONNECT_SERVICE_NOT_AVAILABLE paramiko.common-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.common.PY22 paramiko.common-module.html#PY22
-paramiko.common.MSG_SERVICE_REQUEST paramiko.common-module.html#MSG_SERVICE_REQUEST
-paramiko.common.AUTH_FAILED paramiko.common-module.html#AUTH_FAILED
-paramiko.common.MSG_CHANNEL_EXTENDED_DATA paramiko.common-module.html#MSG_CHANNEL_EXTENDED_DATA
-paramiko.common.MSG_CHANNEL_CLOSE paramiko.common-module.html#MSG_CHANNEL_CLOSE
-paramiko.common.DISCONNECT_AUTH_CANCELLED_BY_USER paramiko.common-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.common.MSG_CHANNEL_OPEN_SUCCESS paramiko.common-module.html#MSG_CHANNEL_OPEN_SUCCESS
-paramiko.common.MSG_CHANNEL_EOF paramiko.common-module.html#MSG_CHANNEL_EOF
-paramiko.common.MSG_USERAUTH_SUCCESS paramiko.common-module.html#MSG_USERAUTH_SUCCESS
-paramiko.common.CONNECTION_FAILED_CODE paramiko.common-module.html#CONNECTION_FAILED_CODE
-paramiko.compress paramiko.compress-module.html
-paramiko.compress.__package__ paramiko.compress-module.html#__package__
-paramiko.config paramiko.config-module.html
-paramiko.config.__package__ paramiko.config-module.html#__package__
-paramiko.dsskey paramiko.dsskey-module.html
-paramiko.dsskey.AUTH_SUCCESSFUL paramiko.dsskey-module.html#AUTH_SUCCESSFUL
-paramiko.dsskey.MSG_KEXINIT paramiko.dsskey-module.html#MSG_KEXINIT
-paramiko.dsskey.MSG_CHANNEL_WINDOW_ADJUST paramiko.dsskey-module.html#MSG_CHANNEL_WINDOW_ADJUST
-paramiko.dsskey.MSG_CHANNEL_REQUEST paramiko.dsskey-module.html#MSG_CHANNEL_REQUEST
-paramiko.dsskey.MSG_NAMES paramiko.dsskey-module.html#MSG_NAMES
-paramiko.dsskey.MSG_REQUEST_FAILURE paramiko.dsskey-module.html#MSG_REQUEST_FAILURE
-paramiko.dsskey.MSG_CHANNEL_OPEN paramiko.dsskey-module.html#MSG_CHANNEL_OPEN
-paramiko.dsskey.MSG_REQUEST_SUCCESS paramiko.dsskey-module.html#MSG_REQUEST_SUCCESS
-paramiko.dsskey.MSG_DISCONNECT paramiko.dsskey-module.html#MSG_DISCONNECT
-paramiko.dsskey.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE paramiko.dsskey-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.dsskey.MSG_SERVICE_ACCEPT paramiko.dsskey-module.html#MSG_SERVICE_ACCEPT
-paramiko.dsskey.MSG_IGNORE paramiko.dsskey-module.html#MSG_IGNORE
-paramiko.dsskey.WARNING paramiko.dsskey-module.html#WARNING
-paramiko.dsskey.MSG_GLOBAL_REQUEST paramiko.dsskey-module.html#MSG_GLOBAL_REQUEST
-paramiko.dsskey.MSG_USERAUTH_INFO_RESPONSE paramiko.dsskey-module.html#MSG_USERAUTH_INFO_RESPONSE
-paramiko.dsskey.MSG_CHANNEL_SUCCESS paramiko.dsskey-module.html#MSG_CHANNEL_SUCCESS
-paramiko.dsskey.MSG_USERAUTH_FAILURE paramiko.dsskey-module.html#MSG_USERAUTH_FAILURE
-paramiko.dsskey.__package__ paramiko.dsskey-module.html#__package__
-paramiko.dsskey.MSG_CHANNEL_DATA paramiko.dsskey-module.html#MSG_CHANNEL_DATA
-paramiko.dsskey.CRITICAL paramiko.dsskey-module.html#CRITICAL
-paramiko.dsskey.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED paramiko.dsskey-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.dsskey.MSG_UNIMPLEMENTED paramiko.dsskey-module.html#MSG_UNIMPLEMENTED
-paramiko.dsskey.OPEN_FAILED_CONNECT_FAILED paramiko.dsskey-module.html#OPEN_FAILED_CONNECT_FAILED
-paramiko.dsskey.MSG_CHANNEL_OPEN_FAILURE paramiko.dsskey-module.html#MSG_CHANNEL_OPEN_FAILURE
-paramiko.dsskey.MSG_USERAUTH_INFO_REQUEST paramiko.dsskey-module.html#MSG_USERAUTH_INFO_REQUEST
-paramiko.dsskey.MSG_DEBUG paramiko.dsskey-module.html#MSG_DEBUG
-paramiko.dsskey.MSG_CHANNEL_FAILURE paramiko.dsskey-module.html#MSG_CHANNEL_FAILURE
-paramiko.dsskey.OPEN_SUCCEEDED paramiko.dsskey-module.html#OPEN_SUCCEEDED
-paramiko.dsskey.rng paramiko.dsskey-module.html#rng
-paramiko.dsskey.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE paramiko.dsskey-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.dsskey.OPEN_FAILED_RESOURCE_SHORTAGE paramiko.dsskey-module.html#OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.dsskey.ERROR paramiko.dsskey-module.html#ERROR
-paramiko.dsskey.DEBUG paramiko.dsskey-module.html#DEBUG
-paramiko.dsskey.AUTH_PARTIALLY_SUCCESSFUL paramiko.dsskey-module.html#AUTH_PARTIALLY_SUCCESSFUL
-paramiko.dsskey.INFO paramiko.dsskey-module.html#INFO
-paramiko.dsskey.MSG_USERAUTH_BANNER paramiko.dsskey-module.html#MSG_USERAUTH_BANNER
-paramiko.dsskey.MSG_NEWKEYS paramiko.dsskey-module.html#MSG_NEWKEYS
-paramiko.dsskey.MSG_USERAUTH_PK_OK paramiko.dsskey-module.html#MSG_USERAUTH_PK_OK
-paramiko.dsskey.MSG_USERAUTH_REQUEST paramiko.dsskey-module.html#MSG_USERAUTH_REQUEST
-paramiko.dsskey.DISCONNECT_SERVICE_NOT_AVAILABLE paramiko.dsskey-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.dsskey.PY22 paramiko.dsskey-module.html#PY22
-paramiko.dsskey.MSG_SERVICE_REQUEST paramiko.dsskey-module.html#MSG_SERVICE_REQUEST
-paramiko.dsskey.AUTH_FAILED paramiko.dsskey-module.html#AUTH_FAILED
-paramiko.dsskey.MSG_CHANNEL_EXTENDED_DATA paramiko.dsskey-module.html#MSG_CHANNEL_EXTENDED_DATA
-paramiko.dsskey.MSG_CHANNEL_CLOSE paramiko.dsskey-module.html#MSG_CHANNEL_CLOSE
-paramiko.dsskey.DISCONNECT_AUTH_CANCELLED_BY_USER paramiko.dsskey-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.dsskey.MSG_CHANNEL_OPEN_SUCCESS paramiko.dsskey-module.html#MSG_CHANNEL_OPEN_SUCCESS
-paramiko.dsskey.MSG_CHANNEL_EOF paramiko.dsskey-module.html#MSG_CHANNEL_EOF
-paramiko.dsskey.MSG_USERAUTH_SUCCESS paramiko.dsskey-module.html#MSG_USERAUTH_SUCCESS
-paramiko.dsskey.CONNECTION_FAILED_CODE paramiko.dsskey-module.html#CONNECTION_FAILED_CODE
-paramiko.file paramiko.file-module.html
-paramiko.file.__package__ paramiko.file-module.html#__package__
-paramiko.hostkeys paramiko.hostkeys-module.html
-paramiko.hostkeys.AUTH_SUCCESSFUL paramiko.hostkeys-module.html#AUTH_SUCCESSFUL
-paramiko.hostkeys.MSG_KEXINIT paramiko.hostkeys-module.html#MSG_KEXINIT
-paramiko.hostkeys.MSG_CHANNEL_WINDOW_ADJUST paramiko.hostkeys-module.html#MSG_CHANNEL_WINDOW_ADJUST
-paramiko.hostkeys.MSG_CHANNEL_REQUEST paramiko.hostkeys-module.html#MSG_CHANNEL_REQUEST
-paramiko.hostkeys.MSG_NAMES paramiko.hostkeys-module.html#MSG_NAMES
-paramiko.hostkeys.MSG_REQUEST_FAILURE paramiko.hostkeys-module.html#MSG_REQUEST_FAILURE
-paramiko.hostkeys.MSG_CHANNEL_OPEN paramiko.hostkeys-module.html#MSG_CHANNEL_OPEN
-paramiko.hostkeys.MSG_REQUEST_SUCCESS paramiko.hostkeys-module.html#MSG_REQUEST_SUCCESS
-paramiko.hostkeys.MSG_DISCONNECT paramiko.hostkeys-module.html#MSG_DISCONNECT
-paramiko.hostkeys.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE paramiko.hostkeys-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.hostkeys.MSG_SERVICE_ACCEPT paramiko.hostkeys-module.html#MSG_SERVICE_ACCEPT
-paramiko.hostkeys.MSG_IGNORE paramiko.hostkeys-module.html#MSG_IGNORE
-paramiko.hostkeys.MSG_GLOBAL_REQUEST paramiko.hostkeys-module.html#MSG_GLOBAL_REQUEST
-paramiko.hostkeys.MSG_USERAUTH_INFO_RESPONSE paramiko.hostkeys-module.html#MSG_USERAUTH_INFO_RESPONSE
-paramiko.hostkeys.MSG_CHANNEL_SUCCESS paramiko.hostkeys-module.html#MSG_CHANNEL_SUCCESS
-paramiko.hostkeys.MSG_USERAUTH_FAILURE paramiko.hostkeys-module.html#MSG_USERAUTH_FAILURE
-paramiko.hostkeys.__package__ paramiko.hostkeys-module.html#__package__
-paramiko.hostkeys.MSG_CHANNEL_DATA paramiko.hostkeys-module.html#MSG_CHANNEL_DATA
-paramiko.hostkeys.CRITICAL paramiko.hostkeys-module.html#CRITICAL
-paramiko.hostkeys.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED paramiko.hostkeys-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.hostkeys.MSG_UNIMPLEMENTED paramiko.hostkeys-module.html#MSG_UNIMPLEMENTED
-paramiko.hostkeys.MSG_CHANNEL_OPEN_FAILURE paramiko.hostkeys-module.html#MSG_CHANNEL_OPEN_FAILURE
-paramiko.hostkeys.MSG_USERAUTH_INFO_REQUEST paramiko.hostkeys-module.html#MSG_USERAUTH_INFO_REQUEST
-paramiko.hostkeys.MSG_DEBUG paramiko.hostkeys-module.html#MSG_DEBUG
-paramiko.hostkeys.MSG_CHANNEL_FAILURE paramiko.hostkeys-module.html#MSG_CHANNEL_FAILURE
-paramiko.hostkeys.OPEN_SUCCEEDED paramiko.hostkeys-module.html#OPEN_SUCCEEDED
-paramiko.hostkeys.rng paramiko.hostkeys-module.html#rng
-paramiko.hostkeys.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE paramiko.hostkeys-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.hostkeys.OPEN_FAILED_RESOURCE_SHORTAGE paramiko.hostkeys-module.html#OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.hostkeys.ERROR paramiko.hostkeys-module.html#ERROR
-paramiko.hostkeys.DEBUG paramiko.hostkeys-module.html#DEBUG
-paramiko.hostkeys.AUTH_PARTIALLY_SUCCESSFUL paramiko.hostkeys-module.html#AUTH_PARTIALLY_SUCCESSFUL
-paramiko.hostkeys.OPEN_FAILED_CONNECT_FAILED paramiko.hostkeys-module.html#OPEN_FAILED_CONNECT_FAILED
-paramiko.hostkeys.INFO paramiko.hostkeys-module.html#INFO
-paramiko.hostkeys.MSG_USERAUTH_BANNER paramiko.hostkeys-module.html#MSG_USERAUTH_BANNER
-paramiko.hostkeys.MSG_NEWKEYS paramiko.hostkeys-module.html#MSG_NEWKEYS
-paramiko.hostkeys.MSG_USERAUTH_PK_OK paramiko.hostkeys-module.html#MSG_USERAUTH_PK_OK
-paramiko.hostkeys.WARNING paramiko.hostkeys-module.html#WARNING
-paramiko.hostkeys.MSG_USERAUTH_REQUEST paramiko.hostkeys-module.html#MSG_USERAUTH_REQUEST
-paramiko.hostkeys.DISCONNECT_SERVICE_NOT_AVAILABLE paramiko.hostkeys-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.hostkeys.PY22 paramiko.hostkeys-module.html#PY22
-paramiko.hostkeys.MSG_SERVICE_REQUEST paramiko.hostkeys-module.html#MSG_SERVICE_REQUEST
-paramiko.hostkeys.MSG_USERAUTH_SUCCESS paramiko.hostkeys-module.html#MSG_USERAUTH_SUCCESS
-paramiko.hostkeys.AUTH_FAILED paramiko.hostkeys-module.html#AUTH_FAILED
-paramiko.hostkeys.MSG_CHANNEL_EXTENDED_DATA paramiko.hostkeys-module.html#MSG_CHANNEL_EXTENDED_DATA
-paramiko.hostkeys.MSG_CHANNEL_CLOSE paramiko.hostkeys-module.html#MSG_CHANNEL_CLOSE
-paramiko.hostkeys.DISCONNECT_AUTH_CANCELLED_BY_USER paramiko.hostkeys-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.hostkeys.MSG_CHANNEL_OPEN_SUCCESS paramiko.hostkeys-module.html#MSG_CHANNEL_OPEN_SUCCESS
-paramiko.hostkeys.MSG_CHANNEL_EOF paramiko.hostkeys-module.html#MSG_CHANNEL_EOF
-paramiko.hostkeys.CONNECTION_FAILED_CODE paramiko.hostkeys-module.html#CONNECTION_FAILED_CODE
-paramiko.kex_gex paramiko.kex_gex-module.html
-paramiko.kex_gex.AUTH_SUCCESSFUL paramiko.kex_gex-module.html#AUTH_SUCCESSFUL
-paramiko.kex_gex.MSG_KEXINIT paramiko.kex_gex-module.html#MSG_KEXINIT
-paramiko.kex_gex.MSG_CHANNEL_WINDOW_ADJUST paramiko.kex_gex-module.html#MSG_CHANNEL_WINDOW_ADJUST
-paramiko.kex_gex.MSG_CHANNEL_REQUEST paramiko.kex_gex-module.html#MSG_CHANNEL_REQUEST
-paramiko.kex_gex.MSG_NAMES paramiko.kex_gex-module.html#MSG_NAMES
-paramiko.kex_gex.MSG_CHANNEL_OPEN paramiko.kex_gex-module.html#MSG_CHANNEL_OPEN
-paramiko.kex_gex.MSG_REQUEST_SUCCESS paramiko.kex_gex-module.html#MSG_REQUEST_SUCCESS
-paramiko.kex_gex.MSG_DISCONNECT paramiko.kex_gex-module.html#MSG_DISCONNECT
-paramiko.kex_gex.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE paramiko.kex_gex-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.kex_gex.MSG_SERVICE_ACCEPT paramiko.kex_gex-module.html#MSG_SERVICE_ACCEPT
-paramiko.kex_gex.MSG_IGNORE paramiko.kex_gex-module.html#MSG_IGNORE
-paramiko.kex_gex.rng paramiko.kex_gex-module.html#rng
-paramiko.kex_gex.WARNING paramiko.kex_gex-module.html#WARNING
-paramiko.kex_gex.MSG_GLOBAL_REQUEST paramiko.kex_gex-module.html#MSG_GLOBAL_REQUEST
-paramiko.kex_gex.MSG_USERAUTH_INFO_RESPONSE paramiko.kex_gex-module.html#MSG_USERAUTH_INFO_RESPONSE
-paramiko.kex_gex.MSG_CHANNEL_SUCCESS paramiko.kex_gex-module.html#MSG_CHANNEL_SUCCESS
-paramiko.kex_gex.MSG_USERAUTH_FAILURE paramiko.kex_gex-module.html#MSG_USERAUTH_FAILURE
-paramiko.kex_gex.MSG_REQUEST_FAILURE paramiko.kex_gex-module.html#MSG_REQUEST_FAILURE
-paramiko.kex_gex.__package__ paramiko.kex_gex-module.html#__package__
-paramiko.kex_gex.MSG_CHANNEL_DATA paramiko.kex_gex-module.html#MSG_CHANNEL_DATA
-paramiko.kex_gex.CRITICAL paramiko.kex_gex-module.html#CRITICAL
-paramiko.kex_gex._MSG_KEXDH_GEX_REQUEST_OLD paramiko.kex_gex-module.html#_MSG_KEXDH_GEX_REQUEST_OLD
-paramiko.kex_gex.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED paramiko.kex_gex-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.kex_gex.MSG_UNIMPLEMENTED paramiko.kex_gex-module.html#MSG_UNIMPLEMENTED
-paramiko.kex_gex.MSG_CHANNEL_OPEN_FAILURE paramiko.kex_gex-module.html#MSG_CHANNEL_OPEN_FAILURE
-paramiko.kex_gex.MSG_USERAUTH_INFO_REQUEST paramiko.kex_gex-module.html#MSG_USERAUTH_INFO_REQUEST
-paramiko.kex_gex.MSG_DEBUG paramiko.kex_gex-module.html#MSG_DEBUG
-paramiko.kex_gex.MSG_CHANNEL_FAILURE paramiko.kex_gex-module.html#MSG_CHANNEL_FAILURE
-paramiko.kex_gex.OPEN_SUCCEEDED paramiko.kex_gex-module.html#OPEN_SUCCEEDED
-paramiko.kex_gex._MSG_KEXDH_GEX_INIT paramiko.kex_gex-module.html#_MSG_KEXDH_GEX_INIT
-paramiko.kex_gex.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE paramiko.kex_gex-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.kex_gex.OPEN_FAILED_RESOURCE_SHORTAGE paramiko.kex_gex-module.html#OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.kex_gex._MSG_KEXDH_GEX_REPLY paramiko.kex_gex-module.html#_MSG_KEXDH_GEX_REPLY
-paramiko.kex_gex.ERROR paramiko.kex_gex-module.html#ERROR
-paramiko.kex_gex.DEBUG paramiko.kex_gex-module.html#DEBUG
-paramiko.kex_gex._MSG_KEXDH_GEX_GROUP paramiko.kex_gex-module.html#_MSG_KEXDH_GEX_GROUP
-paramiko.kex_gex.AUTH_PARTIALLY_SUCCESSFUL paramiko.kex_gex-module.html#AUTH_PARTIALLY_SUCCESSFUL
-paramiko.kex_gex.OPEN_FAILED_CONNECT_FAILED paramiko.kex_gex-module.html#OPEN_FAILED_CONNECT_FAILED
-paramiko.kex_gex.INFO paramiko.kex_gex-module.html#INFO
-paramiko.kex_gex.MSG_USERAUTH_BANNER paramiko.kex_gex-module.html#MSG_USERAUTH_BANNER
-paramiko.kex_gex.MSG_NEWKEYS paramiko.kex_gex-module.html#MSG_NEWKEYS
-paramiko.kex_gex.MSG_USERAUTH_PK_OK paramiko.kex_gex-module.html#MSG_USERAUTH_PK_OK
-paramiko.kex_gex.MSG_USERAUTH_REQUEST paramiko.kex_gex-module.html#MSG_USERAUTH_REQUEST
-paramiko.kex_gex.DISCONNECT_SERVICE_NOT_AVAILABLE paramiko.kex_gex-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.kex_gex.PY22 paramiko.kex_gex-module.html#PY22
-paramiko.kex_gex.MSG_SERVICE_REQUEST paramiko.kex_gex-module.html#MSG_SERVICE_REQUEST
-paramiko.kex_gex.AUTH_FAILED paramiko.kex_gex-module.html#AUTH_FAILED
-paramiko.kex_gex._MSG_KEXDH_GEX_REQUEST paramiko.kex_gex-module.html#_MSG_KEXDH_GEX_REQUEST
-paramiko.kex_gex.MSG_CHANNEL_EXTENDED_DATA paramiko.kex_gex-module.html#MSG_CHANNEL_EXTENDED_DATA
-paramiko.kex_gex.MSG_CHANNEL_CLOSE paramiko.kex_gex-module.html#MSG_CHANNEL_CLOSE
-paramiko.kex_gex.DISCONNECT_AUTH_CANCELLED_BY_USER paramiko.kex_gex-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.kex_gex.MSG_CHANNEL_OPEN_SUCCESS paramiko.kex_gex-module.html#MSG_CHANNEL_OPEN_SUCCESS
-paramiko.kex_gex.MSG_CHANNEL_EOF paramiko.kex_gex-module.html#MSG_CHANNEL_EOF
-paramiko.kex_gex.MSG_USERAUTH_SUCCESS paramiko.kex_gex-module.html#MSG_USERAUTH_SUCCESS
-paramiko.kex_gex.CONNECTION_FAILED_CODE paramiko.kex_gex-module.html#CONNECTION_FAILED_CODE
-paramiko.kex_group1 paramiko.kex_group1-module.html
-paramiko.kex_group1.AUTH_SUCCESSFUL paramiko.kex_group1-module.html#AUTH_SUCCESSFUL
-paramiko.kex_group1.MSG_KEXINIT paramiko.kex_group1-module.html#MSG_KEXINIT
-paramiko.kex_group1.MSG_CHANNEL_WINDOW_ADJUST paramiko.kex_group1-module.html#MSG_CHANNEL_WINDOW_ADJUST
-paramiko.kex_group1.MSG_CHANNEL_REQUEST paramiko.kex_group1-module.html#MSG_CHANNEL_REQUEST
-paramiko.kex_group1.MSG_NAMES paramiko.kex_group1-module.html#MSG_NAMES
-paramiko.kex_group1.MSG_CHANNEL_OPEN paramiko.kex_group1-module.html#MSG_CHANNEL_OPEN
-paramiko.kex_group1.MSG_REQUEST_SUCCESS paramiko.kex_group1-module.html#MSG_REQUEST_SUCCESS
-paramiko.kex_group1.MSG_DISCONNECT paramiko.kex_group1-module.html#MSG_DISCONNECT
-paramiko.kex_group1.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE paramiko.kex_group1-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.kex_group1.MSG_SERVICE_ACCEPT paramiko.kex_group1-module.html#MSG_SERVICE_ACCEPT
-paramiko.kex_group1.MSG_IGNORE paramiko.kex_group1-module.html#MSG_IGNORE
-paramiko.kex_group1.WARNING paramiko.kex_group1-module.html#WARNING
-paramiko.kex_group1.MSG_GLOBAL_REQUEST paramiko.kex_group1-module.html#MSG_GLOBAL_REQUEST
-paramiko.kex_group1.MSG_USERAUTH_INFO_RESPONSE paramiko.kex_group1-module.html#MSG_USERAUTH_INFO_RESPONSE
-paramiko.kex_group1.MSG_DEBUG paramiko.kex_group1-module.html#MSG_DEBUG
-paramiko.kex_group1.P paramiko.kex_group1-module.html#P
-paramiko.kex_group1.MSG_CHANNEL_SUCCESS paramiko.kex_group1-module.html#MSG_CHANNEL_SUCCESS
-paramiko.kex_group1.MSG_USERAUTH_FAILURE paramiko.kex_group1-module.html#MSG_USERAUTH_FAILURE
-paramiko.kex_group1.MSG_REQUEST_FAILURE paramiko.kex_group1-module.html#MSG_REQUEST_FAILURE
-paramiko.kex_group1.__package__ paramiko.kex_group1-module.html#__package__
-paramiko.kex_group1.MSG_CHANNEL_DATA paramiko.kex_group1-module.html#MSG_CHANNEL_DATA
-paramiko.kex_group1.CRITICAL paramiko.kex_group1-module.html#CRITICAL
-paramiko.kex_group1.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED paramiko.kex_group1-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.kex_group1.MSG_UNIMPLEMENTED paramiko.kex_group1-module.html#MSG_UNIMPLEMENTED
-paramiko.kex_group1.MSG_CHANNEL_OPEN_FAILURE paramiko.kex_group1-module.html#MSG_CHANNEL_OPEN_FAILURE
-paramiko.kex_group1.MSG_USERAUTH_INFO_REQUEST paramiko.kex_group1-module.html#MSG_USERAUTH_INFO_REQUEST
-paramiko.kex_group1.G paramiko.kex_group1-module.html#G
-paramiko.kex_group1.MSG_CHANNEL_FAILURE paramiko.kex_group1-module.html#MSG_CHANNEL_FAILURE
-paramiko.kex_group1.OPEN_SUCCEEDED paramiko.kex_group1-module.html#OPEN_SUCCEEDED
-paramiko.kex_group1.rng paramiko.kex_group1-module.html#rng
-paramiko.kex_group1.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE paramiko.kex_group1-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.kex_group1.OPEN_FAILED_RESOURCE_SHORTAGE paramiko.kex_group1-module.html#OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.kex_group1._MSG_KEXDH_INIT paramiko.kex_group1-module.html#_MSG_KEXDH_INIT
-paramiko.kex_group1.ERROR paramiko.kex_group1-module.html#ERROR
-paramiko.kex_group1.DEBUG paramiko.kex_group1-module.html#DEBUG
-paramiko.kex_group1.AUTH_PARTIALLY_SUCCESSFUL paramiko.kex_group1-module.html#AUTH_PARTIALLY_SUCCESSFUL
-paramiko.kex_group1._MSG_KEXDH_REPLY paramiko.kex_group1-module.html#_MSG_KEXDH_REPLY
-paramiko.kex_group1.OPEN_FAILED_CONNECT_FAILED paramiko.kex_group1-module.html#OPEN_FAILED_CONNECT_FAILED
-paramiko.kex_group1.INFO paramiko.kex_group1-module.html#INFO
-paramiko.kex_group1.MSG_USERAUTH_BANNER paramiko.kex_group1-module.html#MSG_USERAUTH_BANNER
-paramiko.kex_group1.MSG_NEWKEYS paramiko.kex_group1-module.html#MSG_NEWKEYS
-paramiko.kex_group1.MSG_USERAUTH_PK_OK paramiko.kex_group1-module.html#MSG_USERAUTH_PK_OK
-paramiko.kex_group1.MSG_USERAUTH_REQUEST paramiko.kex_group1-module.html#MSG_USERAUTH_REQUEST
-paramiko.kex_group1.DISCONNECT_SERVICE_NOT_AVAILABLE paramiko.kex_group1-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.kex_group1.PY22 paramiko.kex_group1-module.html#PY22
-paramiko.kex_group1.MSG_SERVICE_REQUEST paramiko.kex_group1-module.html#MSG_SERVICE_REQUEST
-paramiko.kex_group1.AUTH_FAILED paramiko.kex_group1-module.html#AUTH_FAILED
-paramiko.kex_group1.MSG_CHANNEL_EXTENDED_DATA paramiko.kex_group1-module.html#MSG_CHANNEL_EXTENDED_DATA
-paramiko.kex_group1.MSG_CHANNEL_CLOSE paramiko.kex_group1-module.html#MSG_CHANNEL_CLOSE
-paramiko.kex_group1.DISCONNECT_AUTH_CANCELLED_BY_USER paramiko.kex_group1-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.kex_group1.MSG_CHANNEL_OPEN_SUCCESS paramiko.kex_group1-module.html#MSG_CHANNEL_OPEN_SUCCESS
-paramiko.kex_group1.MSG_CHANNEL_EOF paramiko.kex_group1-module.html#MSG_CHANNEL_EOF
-paramiko.kex_group1.MSG_USERAUTH_SUCCESS paramiko.kex_group1-module.html#MSG_USERAUTH_SUCCESS
-paramiko.kex_group1.CONNECTION_FAILED_CODE paramiko.kex_group1-module.html#CONNECTION_FAILED_CODE
-paramiko.logging22 paramiko.logging22-module.html
-paramiko.logging22.INFO paramiko.logging22-module.html#INFO
-paramiko.logging22.WARNING paramiko.logging22-module.html#WARNING
-paramiko.logging22._logger paramiko.logging22-module.html#_logger
-paramiko.logging22.__package__ paramiko.logging22-module.html#__package__
-paramiko.logging22.getLogger paramiko.logging22-module.html#getLogger
-paramiko.logging22.CRITICAL paramiko.logging22-module.html#CRITICAL
-paramiko.logging22.ERROR paramiko.logging22-module.html#ERROR
-paramiko.logging22.DEBUG paramiko.logging22-module.html#DEBUG
-paramiko.message paramiko.message-module.html
-paramiko.message.__package__ paramiko.message-module.html#__package__
-paramiko.packet paramiko.packet-module.html
-paramiko.packet.AUTH_SUCCESSFUL paramiko.packet-module.html#AUTH_SUCCESSFUL
-paramiko.packet.MSG_KEXINIT paramiko.packet-module.html#MSG_KEXINIT
-paramiko.packet.MSG_CHANNEL_WINDOW_ADJUST paramiko.packet-module.html#MSG_CHANNEL_WINDOW_ADJUST
-paramiko.packet.MSG_CHANNEL_REQUEST paramiko.packet-module.html#MSG_CHANNEL_REQUEST
-paramiko.packet.MSG_NAMES paramiko.packet-module.html#MSG_NAMES
-paramiko.packet.PY22 paramiko.packet-module.html#PY22
-paramiko.packet.MSG_CHANNEL_OPEN paramiko.packet-module.html#MSG_CHANNEL_OPEN
-paramiko.packet.MSG_REQUEST_SUCCESS paramiko.packet-module.html#MSG_REQUEST_SUCCESS
-paramiko.packet.MSG_DISCONNECT paramiko.packet-module.html#MSG_DISCONNECT
-paramiko.packet.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE paramiko.packet-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.packet.MSG_SERVICE_ACCEPT paramiko.packet-module.html#MSG_SERVICE_ACCEPT
-paramiko.packet.MSG_IGNORE paramiko.packet-module.html#MSG_IGNORE
-paramiko.packet.WARNING paramiko.packet-module.html#WARNING
-paramiko.packet.MSG_GLOBAL_REQUEST paramiko.packet-module.html#MSG_GLOBAL_REQUEST
-paramiko.packet.MSG_USERAUTH_INFO_RESPONSE paramiko.packet-module.html#MSG_USERAUTH_INFO_RESPONSE
-paramiko.packet.MSG_CHANNEL_SUCCESS paramiko.packet-module.html#MSG_CHANNEL_SUCCESS
-paramiko.packet.MSG_USERAUTH_FAILURE paramiko.packet-module.html#MSG_USERAUTH_FAILURE
-paramiko.packet.compute_hmac paramiko.packet-module.html#compute_hmac
-paramiko.packet.MSG_REQUEST_FAILURE paramiko.packet-module.html#MSG_REQUEST_FAILURE
-paramiko.packet.__package__ paramiko.packet-module.html#__package__
-paramiko.packet.MSG_CHANNEL_DATA paramiko.packet-module.html#MSG_CHANNEL_DATA
-paramiko.packet.CRITICAL paramiko.packet-module.html#CRITICAL
-paramiko.packet.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED paramiko.packet-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.packet.got_r_hmac paramiko.packet-module.html#got_r_hmac
-paramiko.packet.MSG_UNIMPLEMENTED paramiko.packet-module.html#MSG_UNIMPLEMENTED
-paramiko.packet.MSG_CHANNEL_OPEN_FAILURE paramiko.packet-module.html#MSG_CHANNEL_OPEN_FAILURE
-paramiko.packet.MSG_USERAUTH_INFO_REQUEST paramiko.packet-module.html#MSG_USERAUTH_INFO_REQUEST
-paramiko.packet.MSG_DEBUG paramiko.packet-module.html#MSG_DEBUG
-paramiko.packet.MSG_CHANNEL_FAILURE paramiko.packet-module.html#MSG_CHANNEL_FAILURE
-paramiko.packet.OPEN_SUCCEEDED paramiko.packet-module.html#OPEN_SUCCEEDED
-paramiko.packet.rng paramiko.packet-module.html#rng
-paramiko.packet.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE paramiko.packet-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.packet.OPEN_FAILED_RESOURCE_SHORTAGE paramiko.packet-module.html#OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.packet.ERROR paramiko.packet-module.html#ERROR
-paramiko.packet.DEBUG paramiko.packet-module.html#DEBUG
-paramiko.packet.AUTH_PARTIALLY_SUCCESSFUL paramiko.packet-module.html#AUTH_PARTIALLY_SUCCESSFUL
-paramiko.packet.OPEN_FAILED_CONNECT_FAILED paramiko.packet-module.html#OPEN_FAILED_CONNECT_FAILED
-paramiko.packet.INFO paramiko.packet-module.html#INFO
-paramiko.packet.MSG_USERAUTH_BANNER paramiko.packet-module.html#MSG_USERAUTH_BANNER
-paramiko.packet.MSG_NEWKEYS paramiko.packet-module.html#MSG_NEWKEYS
-paramiko.packet.MSG_USERAUTH_PK_OK paramiko.packet-module.html#MSG_USERAUTH_PK_OK
-paramiko.packet.MSG_USERAUTH_REQUEST paramiko.packet-module.html#MSG_USERAUTH_REQUEST
-paramiko.packet.DISCONNECT_SERVICE_NOT_AVAILABLE paramiko.packet-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.packet.MSG_SERVICE_REQUEST paramiko.packet-module.html#MSG_SERVICE_REQUEST
-paramiko.packet.AUTH_FAILED paramiko.packet-module.html#AUTH_FAILED
-paramiko.packet.MSG_CHANNEL_EXTENDED_DATA paramiko.packet-module.html#MSG_CHANNEL_EXTENDED_DATA
-paramiko.packet.MSG_CHANNEL_CLOSE paramiko.packet-module.html#MSG_CHANNEL_CLOSE
-paramiko.packet.DISCONNECT_AUTH_CANCELLED_BY_USER paramiko.packet-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.packet.MSG_CHANNEL_OPEN_SUCCESS paramiko.packet-module.html#MSG_CHANNEL_OPEN_SUCCESS
-paramiko.packet.MSG_CHANNEL_EOF paramiko.packet-module.html#MSG_CHANNEL_EOF
-paramiko.packet.MSG_USERAUTH_SUCCESS paramiko.packet-module.html#MSG_USERAUTH_SUCCESS
-paramiko.packet.CONNECTION_FAILED_CODE paramiko.packet-module.html#CONNECTION_FAILED_CODE
-paramiko.pipe paramiko.pipe-module.html
-paramiko.pipe.make_or_pipe paramiko.pipe-module.html#make_or_pipe
-paramiko.pipe.__package__ paramiko.pipe-module.html#__package__
-paramiko.pipe.make_pipe paramiko.pipe-module.html#make_pipe
-paramiko.pkey paramiko.pkey-module.html
-paramiko.pkey.AUTH_SUCCESSFUL paramiko.pkey-module.html#AUTH_SUCCESSFUL
-paramiko.pkey.MSG_KEXINIT paramiko.pkey-module.html#MSG_KEXINIT
-paramiko.pkey.MSG_CHANNEL_WINDOW_ADJUST paramiko.pkey-module.html#MSG_CHANNEL_WINDOW_ADJUST
-paramiko.pkey.MSG_CHANNEL_REQUEST paramiko.pkey-module.html#MSG_CHANNEL_REQUEST
-paramiko.pkey.MSG_NAMES paramiko.pkey-module.html#MSG_NAMES
-paramiko.pkey.__package__ paramiko.pkey-module.html#__package__
-paramiko.pkey.MSG_CHANNEL_OPEN paramiko.pkey-module.html#MSG_CHANNEL_OPEN
-paramiko.pkey.MSG_REQUEST_SUCCESS paramiko.pkey-module.html#MSG_REQUEST_SUCCESS
-paramiko.pkey.MSG_DISCONNECT paramiko.pkey-module.html#MSG_DISCONNECT
-paramiko.pkey.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE paramiko.pkey-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.pkey.MSG_SERVICE_ACCEPT paramiko.pkey-module.html#MSG_SERVICE_ACCEPT
-paramiko.pkey.MSG_IGNORE paramiko.pkey-module.html#MSG_IGNORE
-paramiko.pkey.WARNING paramiko.pkey-module.html#WARNING
-paramiko.pkey.MSG_GLOBAL_REQUEST paramiko.pkey-module.html#MSG_GLOBAL_REQUEST
-paramiko.pkey.MSG_USERAUTH_INFO_RESPONSE paramiko.pkey-module.html#MSG_USERAUTH_INFO_RESPONSE
-paramiko.pkey.MSG_CHANNEL_SUCCESS paramiko.pkey-module.html#MSG_CHANNEL_SUCCESS
-paramiko.pkey.MSG_USERAUTH_FAILURE paramiko.pkey-module.html#MSG_USERAUTH_FAILURE
-paramiko.pkey.MSG_REQUEST_FAILURE paramiko.pkey-module.html#MSG_REQUEST_FAILURE
-paramiko.pkey.MSG_CHANNEL_DATA paramiko.pkey-module.html#MSG_CHANNEL_DATA
-paramiko.pkey.CRITICAL paramiko.pkey-module.html#CRITICAL
-paramiko.pkey.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED paramiko.pkey-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.pkey.MSG_UNIMPLEMENTED paramiko.pkey-module.html#MSG_UNIMPLEMENTED
-paramiko.pkey.OPEN_FAILED_CONNECT_FAILED paramiko.pkey-module.html#OPEN_FAILED_CONNECT_FAILED
-paramiko.pkey.MSG_CHANNEL_OPEN_FAILURE paramiko.pkey-module.html#MSG_CHANNEL_OPEN_FAILURE
-paramiko.pkey.MSG_USERAUTH_INFO_REQUEST paramiko.pkey-module.html#MSG_USERAUTH_INFO_REQUEST
-paramiko.pkey.MSG_DEBUG paramiko.pkey-module.html#MSG_DEBUG
-paramiko.pkey.MSG_CHANNEL_FAILURE paramiko.pkey-module.html#MSG_CHANNEL_FAILURE
-paramiko.pkey.OPEN_SUCCEEDED paramiko.pkey-module.html#OPEN_SUCCEEDED
-paramiko.pkey.rng paramiko.pkey-module.html#rng
-paramiko.pkey.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE paramiko.pkey-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.pkey.OPEN_FAILED_RESOURCE_SHORTAGE paramiko.pkey-module.html#OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.pkey.ERROR paramiko.pkey-module.html#ERROR
-paramiko.pkey.DEBUG paramiko.pkey-module.html#DEBUG
-paramiko.pkey.AUTH_PARTIALLY_SUCCESSFUL paramiko.pkey-module.html#AUTH_PARTIALLY_SUCCESSFUL
-paramiko.pkey.INFO paramiko.pkey-module.html#INFO
-paramiko.pkey.MSG_USERAUTH_BANNER paramiko.pkey-module.html#MSG_USERAUTH_BANNER
-paramiko.pkey.MSG_NEWKEYS paramiko.pkey-module.html#MSG_NEWKEYS
-paramiko.pkey.MSG_USERAUTH_PK_OK paramiko.pkey-module.html#MSG_USERAUTH_PK_OK
-paramiko.pkey.MSG_USERAUTH_REQUEST paramiko.pkey-module.html#MSG_USERAUTH_REQUEST
-paramiko.pkey.DISCONNECT_SERVICE_NOT_AVAILABLE paramiko.pkey-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.pkey.PY22 paramiko.pkey-module.html#PY22
-paramiko.pkey.MSG_SERVICE_REQUEST paramiko.pkey-module.html#MSG_SERVICE_REQUEST
-paramiko.pkey.AUTH_FAILED paramiko.pkey-module.html#AUTH_FAILED
-paramiko.pkey.MSG_CHANNEL_EXTENDED_DATA paramiko.pkey-module.html#MSG_CHANNEL_EXTENDED_DATA
-paramiko.pkey.MSG_CHANNEL_CLOSE paramiko.pkey-module.html#MSG_CHANNEL_CLOSE
-paramiko.pkey.DISCONNECT_AUTH_CANCELLED_BY_USER paramiko.pkey-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.pkey.MSG_CHANNEL_OPEN_SUCCESS paramiko.pkey-module.html#MSG_CHANNEL_OPEN_SUCCESS
-paramiko.pkey.MSG_CHANNEL_EOF paramiko.pkey-module.html#MSG_CHANNEL_EOF
-paramiko.pkey.MSG_USERAUTH_SUCCESS paramiko.pkey-module.html#MSG_USERAUTH_SUCCESS
-paramiko.pkey.CONNECTION_FAILED_CODE paramiko.pkey-module.html#CONNECTION_FAILED_CODE
-paramiko.primes paramiko.primes-module.html
-paramiko.primes._roll_random paramiko.primes-module.html#_roll_random
-paramiko.primes._generate_prime paramiko.primes-module.html#_generate_prime
-paramiko.primes.__package__ paramiko.primes-module.html#__package__
-paramiko.resource paramiko.resource-module.html
-paramiko.resource.ResourceManager paramiko.resource-module.html#ResourceManager
-paramiko.resource.__package__ paramiko.resource-module.html#__package__
-paramiko.rsakey paramiko.rsakey-module.html
-paramiko.rsakey.AUTH_SUCCESSFUL paramiko.rsakey-module.html#AUTH_SUCCESSFUL
-paramiko.rsakey.MSG_KEXINIT paramiko.rsakey-module.html#MSG_KEXINIT
-paramiko.rsakey.MSG_CHANNEL_WINDOW_ADJUST paramiko.rsakey-module.html#MSG_CHANNEL_WINDOW_ADJUST
-paramiko.rsakey.MSG_CHANNEL_REQUEST paramiko.rsakey-module.html#MSG_CHANNEL_REQUEST
-paramiko.rsakey.MSG_NAMES paramiko.rsakey-module.html#MSG_NAMES
-paramiko.rsakey.__package__ paramiko.rsakey-module.html#__package__
-paramiko.rsakey.MSG_CHANNEL_OPEN paramiko.rsakey-module.html#MSG_CHANNEL_OPEN
-paramiko.rsakey.MSG_REQUEST_SUCCESS paramiko.rsakey-module.html#MSG_REQUEST_SUCCESS
-paramiko.rsakey.MSG_DISCONNECT paramiko.rsakey-module.html#MSG_DISCONNECT
-paramiko.rsakey.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE paramiko.rsakey-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.rsakey.MSG_SERVICE_ACCEPT paramiko.rsakey-module.html#MSG_SERVICE_ACCEPT
-paramiko.rsakey.MSG_IGNORE paramiko.rsakey-module.html#MSG_IGNORE
-paramiko.rsakey.WARNING paramiko.rsakey-module.html#WARNING
-paramiko.rsakey.MSG_GLOBAL_REQUEST paramiko.rsakey-module.html#MSG_GLOBAL_REQUEST
-paramiko.rsakey.MSG_USERAUTH_INFO_RESPONSE paramiko.rsakey-module.html#MSG_USERAUTH_INFO_RESPONSE
-paramiko.rsakey.MSG_CHANNEL_SUCCESS paramiko.rsakey-module.html#MSG_CHANNEL_SUCCESS
-paramiko.rsakey.MSG_USERAUTH_FAILURE paramiko.rsakey-module.html#MSG_USERAUTH_FAILURE
-paramiko.rsakey.MSG_REQUEST_FAILURE paramiko.rsakey-module.html#MSG_REQUEST_FAILURE
-paramiko.rsakey.MSG_CHANNEL_DATA paramiko.rsakey-module.html#MSG_CHANNEL_DATA
-paramiko.rsakey.CRITICAL paramiko.rsakey-module.html#CRITICAL
-paramiko.rsakey.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED paramiko.rsakey-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.rsakey.MSG_UNIMPLEMENTED paramiko.rsakey-module.html#MSG_UNIMPLEMENTED
-paramiko.rsakey.OPEN_FAILED_CONNECT_FAILED paramiko.rsakey-module.html#OPEN_FAILED_CONNECT_FAILED
-paramiko.rsakey.MSG_CHANNEL_OPEN_FAILURE paramiko.rsakey-module.html#MSG_CHANNEL_OPEN_FAILURE
-paramiko.rsakey.MSG_USERAUTH_INFO_REQUEST paramiko.rsakey-module.html#MSG_USERAUTH_INFO_REQUEST
-paramiko.rsakey.MSG_DEBUG paramiko.rsakey-module.html#MSG_DEBUG
-paramiko.rsakey.MSG_CHANNEL_FAILURE paramiko.rsakey-module.html#MSG_CHANNEL_FAILURE
-paramiko.rsakey.OPEN_SUCCEEDED paramiko.rsakey-module.html#OPEN_SUCCEEDED
-paramiko.rsakey.rng paramiko.rsakey-module.html#rng
-paramiko.rsakey.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE paramiko.rsakey-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.rsakey.OPEN_FAILED_RESOURCE_SHORTAGE paramiko.rsakey-module.html#OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.rsakey.ERROR paramiko.rsakey-module.html#ERROR
-paramiko.rsakey.DEBUG paramiko.rsakey-module.html#DEBUG
-paramiko.rsakey.AUTH_PARTIALLY_SUCCESSFUL paramiko.rsakey-module.html#AUTH_PARTIALLY_SUCCESSFUL
-paramiko.rsakey.INFO paramiko.rsakey-module.html#INFO
-paramiko.rsakey.MSG_USERAUTH_BANNER paramiko.rsakey-module.html#MSG_USERAUTH_BANNER
-paramiko.rsakey.MSG_NEWKEYS paramiko.rsakey-module.html#MSG_NEWKEYS
-paramiko.rsakey.MSG_USERAUTH_PK_OK paramiko.rsakey-module.html#MSG_USERAUTH_PK_OK
-paramiko.rsakey.MSG_USERAUTH_REQUEST paramiko.rsakey-module.html#MSG_USERAUTH_REQUEST
-paramiko.rsakey.DISCONNECT_SERVICE_NOT_AVAILABLE paramiko.rsakey-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.rsakey.PY22 paramiko.rsakey-module.html#PY22
-paramiko.rsakey.MSG_SERVICE_REQUEST paramiko.rsakey-module.html#MSG_SERVICE_REQUEST
-paramiko.rsakey.AUTH_FAILED paramiko.rsakey-module.html#AUTH_FAILED
-paramiko.rsakey.MSG_CHANNEL_EXTENDED_DATA paramiko.rsakey-module.html#MSG_CHANNEL_EXTENDED_DATA
-paramiko.rsakey.MSG_CHANNEL_CLOSE paramiko.rsakey-module.html#MSG_CHANNEL_CLOSE
-paramiko.rsakey.DISCONNECT_AUTH_CANCELLED_BY_USER paramiko.rsakey-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.rsakey.MSG_CHANNEL_OPEN_SUCCESS paramiko.rsakey-module.html#MSG_CHANNEL_OPEN_SUCCESS
-paramiko.rsakey.MSG_CHANNEL_EOF paramiko.rsakey-module.html#MSG_CHANNEL_EOF
-paramiko.rsakey.MSG_USERAUTH_SUCCESS paramiko.rsakey-module.html#MSG_USERAUTH_SUCCESS
-paramiko.rsakey.CONNECTION_FAILED_CODE paramiko.rsakey-module.html#CONNECTION_FAILED_CODE
-paramiko.server paramiko.server-module.html
-paramiko.server.AUTH_SUCCESSFUL paramiko.server-module.html#AUTH_SUCCESSFUL
-paramiko.server.MSG_KEXINIT paramiko.server-module.html#MSG_KEXINIT
-paramiko.server.MSG_CHANNEL_WINDOW_ADJUST paramiko.server-module.html#MSG_CHANNEL_WINDOW_ADJUST
-paramiko.server.MSG_CHANNEL_REQUEST paramiko.server-module.html#MSG_CHANNEL_REQUEST
-paramiko.server.MSG_NAMES paramiko.server-module.html#MSG_NAMES
-paramiko.server.MSG_CHANNEL_OPEN paramiko.server-module.html#MSG_CHANNEL_OPEN
-paramiko.server.MSG_REQUEST_SUCCESS paramiko.server-module.html#MSG_REQUEST_SUCCESS
-paramiko.server.MSG_DISCONNECT paramiko.server-module.html#MSG_DISCONNECT
-paramiko.server.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE paramiko.server-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.server.MSG_SERVICE_ACCEPT paramiko.server-module.html#MSG_SERVICE_ACCEPT
-paramiko.server.MSG_IGNORE paramiko.server-module.html#MSG_IGNORE
-paramiko.server.MSG_GLOBAL_REQUEST paramiko.server-module.html#MSG_GLOBAL_REQUEST
-paramiko.server.MSG_USERAUTH_INFO_RESPONSE paramiko.server-module.html#MSG_USERAUTH_INFO_RESPONSE
-paramiko.server.AUTH_FAILED paramiko.server-module.html#AUTH_FAILED
-paramiko.server.MSG_CHANNEL_SUCCESS paramiko.server-module.html#MSG_CHANNEL_SUCCESS
-paramiko.server.MSG_USERAUTH_FAILURE paramiko.server-module.html#MSG_USERAUTH_FAILURE
-paramiko.server.MSG_REQUEST_FAILURE paramiko.server-module.html#MSG_REQUEST_FAILURE
-paramiko.server.__package__ paramiko.server-module.html#__package__
-paramiko.server.MSG_CHANNEL_DATA paramiko.server-module.html#MSG_CHANNEL_DATA
-paramiko.server.CRITICAL paramiko.server-module.html#CRITICAL
-paramiko.server.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED paramiko.server-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.server.MSG_UNIMPLEMENTED paramiko.server-module.html#MSG_UNIMPLEMENTED
-paramiko.server.MSG_CHANNEL_OPEN_FAILURE paramiko.server-module.html#MSG_CHANNEL_OPEN_FAILURE
-paramiko.server.MSG_USERAUTH_INFO_REQUEST paramiko.server-module.html#MSG_USERAUTH_INFO_REQUEST
-paramiko.server.MSG_DEBUG paramiko.server-module.html#MSG_DEBUG
-paramiko.server.MSG_CHANNEL_FAILURE paramiko.server-module.html#MSG_CHANNEL_FAILURE
-paramiko.server.OPEN_SUCCEEDED paramiko.server-module.html#OPEN_SUCCEEDED
-paramiko.server.rng paramiko.server-module.html#rng
-paramiko.server.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE paramiko.server-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.server.OPEN_FAILED_RESOURCE_SHORTAGE paramiko.server-module.html#OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.server.ERROR paramiko.server-module.html#ERROR
-paramiko.server.DEBUG paramiko.server-module.html#DEBUG
-paramiko.server.AUTH_PARTIALLY_SUCCESSFUL paramiko.server-module.html#AUTH_PARTIALLY_SUCCESSFUL
-paramiko.server.OPEN_FAILED_CONNECT_FAILED paramiko.server-module.html#OPEN_FAILED_CONNECT_FAILED
-paramiko.server.INFO paramiko.server-module.html#INFO
-paramiko.server.MSG_USERAUTH_BANNER paramiko.server-module.html#MSG_USERAUTH_BANNER
-paramiko.server.MSG_NEWKEYS paramiko.server-module.html#MSG_NEWKEYS
-paramiko.server.MSG_USERAUTH_PK_OK paramiko.server-module.html#MSG_USERAUTH_PK_OK
-paramiko.server.WARNING paramiko.server-module.html#WARNING
-paramiko.server.MSG_USERAUTH_REQUEST paramiko.server-module.html#MSG_USERAUTH_REQUEST
-paramiko.server.DISCONNECT_SERVICE_NOT_AVAILABLE paramiko.server-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.server.PY22 paramiko.server-module.html#PY22
-paramiko.server.MSG_SERVICE_REQUEST paramiko.server-module.html#MSG_SERVICE_REQUEST
-paramiko.server.MSG_CHANNEL_EXTENDED_DATA paramiko.server-module.html#MSG_CHANNEL_EXTENDED_DATA
-paramiko.server.MSG_CHANNEL_CLOSE paramiko.server-module.html#MSG_CHANNEL_CLOSE
-paramiko.server.DISCONNECT_AUTH_CANCELLED_BY_USER paramiko.server-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.server.MSG_CHANNEL_OPEN_SUCCESS paramiko.server-module.html#MSG_CHANNEL_OPEN_SUCCESS
-paramiko.server.MSG_CHANNEL_EOF paramiko.server-module.html#MSG_CHANNEL_EOF
-paramiko.server.MSG_USERAUTH_SUCCESS paramiko.server-module.html#MSG_USERAUTH_SUCCESS
-paramiko.server.CONNECTION_FAILED_CODE paramiko.server-module.html#CONNECTION_FAILED_CODE
-paramiko.sftp paramiko.sftp-module.html
-paramiko.sftp.MSG_NAMES paramiko.sftp-module.html#MSG_NAMES
-paramiko.sftp.CMD_MKDIR paramiko.sftp-module.html#CMD_MKDIR
-paramiko.sftp.SFTP_FLAG_APPEND paramiko.sftp-module.html#SFTP_FLAG_APPEND
-paramiko.sftp.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE paramiko.sftp-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.sftp.SFTP_DESC paramiko.sftp-module.html#SFTP_DESC
-paramiko.sftp.CMD_LSTAT paramiko.sftp-module.html#CMD_LSTAT
-paramiko.sftp.MSG_GLOBAL_REQUEST paramiko.sftp-module.html#MSG_GLOBAL_REQUEST
-paramiko.sftp.MSG_CHANNEL_SUCCESS paramiko.sftp-module.html#MSG_CHANNEL_SUCCESS
-paramiko.sftp.CRITICAL paramiko.sftp-module.html#CRITICAL
-paramiko.sftp.SFTP_FLAG_READ paramiko.sftp-module.html#SFTP_FLAG_READ
-paramiko.sftp.CMD_SYMLINK paramiko.sftp-module.html#CMD_SYMLINK
-paramiko.sftp.OPEN_FAILED_RESOURCE_SHORTAGE paramiko.sftp-module.html#OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.sftp.MSG_CHANNEL_OPEN_FAILURE paramiko.sftp-module.html#MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp.CMD_VERSION paramiko.sftp-module.html#CMD_VERSION
-paramiko.sftp.CMD_INIT paramiko.sftp-module.html#CMD_INIT
-paramiko.sftp.CMD_EXTENDED paramiko.sftp-module.html#CMD_EXTENDED
-paramiko.sftp.MSG_CHANNEL_EOF paramiko.sftp-module.html#MSG_CHANNEL_EOF
-paramiko.sftp.SFTP_BAD_MESSAGE paramiko.sftp-module.html#SFTP_BAD_MESSAGE
-paramiko.sftp.PY22 paramiko.sftp-module.html#PY22
-paramiko.sftp.CMD_READLINK paramiko.sftp-module.html#CMD_READLINK
-paramiko.sftp.__package__ paramiko.sftp-module.html#__package__
-paramiko.sftp.DISCONNECT_AUTH_CANCELLED_BY_USER paramiko.sftp-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.sftp.MSG_NEWKEYS paramiko.sftp-module.html#MSG_NEWKEYS
-paramiko.sftp.MSG_USERAUTH_SUCCESS paramiko.sftp-module.html#MSG_USERAUTH_SUCCESS
-paramiko.sftp.MSG_USERAUTH_PK_OK paramiko.sftp-module.html#MSG_USERAUTH_PK_OK
-paramiko.sftp.CMD_READDIR paramiko.sftp-module.html#CMD_READDIR
-paramiko.sftp.SFTP_FLAG_WRITE paramiko.sftp-module.html#SFTP_FLAG_WRITE
-paramiko.sftp.CMD_NAMES paramiko.sftp-module.html#CMD_NAMES
-paramiko.sftp.CMD_WRITE paramiko.sftp-module.html#CMD_WRITE
-paramiko.sftp.CMD_OPEN paramiko.sftp-module.html#CMD_OPEN
-paramiko.sftp.MSG_SERVICE_ACCEPT paramiko.sftp-module.html#MSG_SERVICE_ACCEPT
-paramiko.sftp.WARNING paramiko.sftp-module.html#WARNING
-paramiko.sftp.CMD_REMOVE paramiko.sftp-module.html#CMD_REMOVE
-paramiko.sftp.SFTP_EOF paramiko.sftp-module.html#SFTP_EOF
-paramiko.sftp.CMD_FSETSTAT paramiko.sftp-module.html#CMD_FSETSTAT
-paramiko.sftp.SFTP_FLAG_TRUNC paramiko.sftp-module.html#SFTP_FLAG_TRUNC
-paramiko.sftp.CMD_SETSTAT paramiko.sftp-module.html#CMD_SETSTAT
-paramiko.sftp.ERROR paramiko.sftp-module.html#ERROR
-paramiko.sftp.DEBUG paramiko.sftp-module.html#DEBUG
-paramiko.sftp.CMD_FSTAT paramiko.sftp-module.html#CMD_FSTAT
-paramiko.sftp.MSG_USERAUTH_BANNER paramiko.sftp-module.html#MSG_USERAUTH_BANNER
-paramiko.sftp.CMD_OPENDIR paramiko.sftp-module.html#CMD_OPENDIR
-paramiko.sftp.SFTP_FAILURE paramiko.sftp-module.html#SFTP_FAILURE
-paramiko.sftp.SFTP_NO_CONNECTION paramiko.sftp-module.html#SFTP_NO_CONNECTION
-paramiko.sftp.AUTH_FAILED paramiko.sftp-module.html#AUTH_FAILED
-paramiko.sftp.MSG_REQUEST_SUCCESS paramiko.sftp-module.html#MSG_REQUEST_SUCCESS
-paramiko.sftp.AUTH_SUCCESSFUL paramiko.sftp-module.html#AUTH_SUCCESSFUL
-paramiko.sftp.MSG_CHANNEL_WINDOW_ADJUST paramiko.sftp-module.html#MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp.MSG_CHANNEL_REQUEST paramiko.sftp-module.html#MSG_CHANNEL_REQUEST
-paramiko.sftp.MSG_USERAUTH_INFO_REQUEST paramiko.sftp-module.html#MSG_USERAUTH_INFO_REQUEST
-paramiko.sftp.CMD_ATTRS paramiko.sftp-module.html#CMD_ATTRS
-paramiko.sftp.CMD_EXTENDED_REPLY paramiko.sftp-module.html#CMD_EXTENDED_REPLY
-paramiko.sftp.MSG_DISCONNECT paramiko.sftp-module.html#MSG_DISCONNECT
-paramiko.sftp.MSG_IGNORE paramiko.sftp-module.html#MSG_IGNORE
-paramiko.sftp.SFTP_FLAG_EXCL paramiko.sftp-module.html#SFTP_FLAG_EXCL
-paramiko.sftp.SFTP_NO_SUCH_FILE paramiko.sftp-module.html#SFTP_NO_SUCH_FILE
-paramiko.sftp.MSG_USERAUTH_FAILURE paramiko.sftp-module.html#MSG_USERAUTH_FAILURE
-paramiko.sftp.MSG_KEXINIT paramiko.sftp-module.html#MSG_KEXINIT
-paramiko.sftp.MSG_CHANNEL_DATA paramiko.sftp-module.html#MSG_CHANNEL_DATA
-paramiko.sftp.CMD_CLOSE paramiko.sftp-module.html#CMD_CLOSE
-paramiko.sftp.CMD_RENAME paramiko.sftp-module.html#CMD_RENAME
-paramiko.sftp.SFTP_FLAG_CREATE paramiko.sftp-module.html#SFTP_FLAG_CREATE
-paramiko.sftp.MSG_DEBUG paramiko.sftp-module.html#MSG_DEBUG
-paramiko.sftp.SFTP_PERMISSION_DENIED paramiko.sftp-module.html#SFTP_PERMISSION_DENIED
-paramiko.sftp.OPEN_SUCCEEDED paramiko.sftp-module.html#OPEN_SUCCEEDED
-paramiko.sftp.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE paramiko.sftp-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.sftp.CMD_DATA paramiko.sftp-module.html#CMD_DATA
-paramiko.sftp.MSG_UNIMPLEMENTED paramiko.sftp-module.html#MSG_UNIMPLEMENTED
-paramiko.sftp.INFO paramiko.sftp-module.html#INFO
-paramiko.sftp.CMD_STAT paramiko.sftp-module.html#CMD_STAT
-paramiko.sftp.DISCONNECT_SERVICE_NOT_AVAILABLE paramiko.sftp-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.sftp.MSG_CHANNEL_EXTENDED_DATA paramiko.sftp-module.html#MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp.CMD_NAME paramiko.sftp-module.html#CMD_NAME
-paramiko.sftp.CONNECTION_FAILED_CODE paramiko.sftp-module.html#CONNECTION_FAILED_CODE
-paramiko.sftp.CMD_HANDLE paramiko.sftp-module.html#CMD_HANDLE
-paramiko.sftp._VERSION paramiko.sftp-module.html#_VERSION
-paramiko.sftp.MSG_CHANNEL_OPEN paramiko.sftp-module.html#MSG_CHANNEL_OPEN
-paramiko.sftp.CMD_RMDIR paramiko.sftp-module.html#CMD_RMDIR
-paramiko.sftp.SFTP_OK paramiko.sftp-module.html#SFTP_OK
-paramiko.sftp.CMD_READ paramiko.sftp-module.html#CMD_READ
-paramiko.sftp.SFTP_OP_UNSUPPORTED paramiko.sftp-module.html#SFTP_OP_UNSUPPORTED
-paramiko.sftp.MSG_USERAUTH_INFO_RESPONSE paramiko.sftp-module.html#MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp.MSG_REQUEST_FAILURE paramiko.sftp-module.html#MSG_REQUEST_FAILURE
-paramiko.sftp.CMD_STATUS paramiko.sftp-module.html#CMD_STATUS
-paramiko.sftp.AUTH_PARTIALLY_SUCCESSFUL paramiko.sftp-module.html#AUTH_PARTIALLY_SUCCESSFUL
-paramiko.sftp.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED paramiko.sftp-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp.MSG_CHANNEL_FAILURE paramiko.sftp-module.html#MSG_CHANNEL_FAILURE
-paramiko.sftp.rng paramiko.sftp-module.html#rng
-paramiko.sftp.SFTP_CONNECTION_LOST paramiko.sftp-module.html#SFTP_CONNECTION_LOST
-paramiko.sftp.OPEN_FAILED_CONNECT_FAILED paramiko.sftp-module.html#OPEN_FAILED_CONNECT_FAILED
-paramiko.sftp.MSG_USERAUTH_REQUEST paramiko.sftp-module.html#MSG_USERAUTH_REQUEST
-paramiko.sftp.MSG_SERVICE_REQUEST paramiko.sftp-module.html#MSG_SERVICE_REQUEST
-paramiko.sftp.CMD_REALPATH paramiko.sftp-module.html#CMD_REALPATH
-paramiko.sftp.MSG_CHANNEL_CLOSE paramiko.sftp-module.html#MSG_CHANNEL_CLOSE
-paramiko.sftp.MSG_CHANNEL_OPEN_SUCCESS paramiko.sftp-module.html#MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp_attr paramiko.sftp_attr-module.html
-paramiko.sftp_attr.MSG_NAMES paramiko.sftp_attr-module.html#MSG_NAMES
-paramiko.sftp_attr.CMD_MKDIR paramiko.sftp_attr-module.html#CMD_MKDIR
-paramiko.sftp_attr.SFTP_FLAG_APPEND paramiko.sftp_attr-module.html#SFTP_FLAG_APPEND
-paramiko.sftp_attr.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE paramiko.sftp_attr-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.sftp_attr.SFTP_DESC paramiko.sftp_attr-module.html#SFTP_DESC
-paramiko.sftp_attr.CMD_LSTAT paramiko.sftp_attr-module.html#CMD_LSTAT
-paramiko.sftp_attr.MSG_GLOBAL_REQUEST paramiko.sftp_attr-module.html#MSG_GLOBAL_REQUEST
-paramiko.sftp_attr.MSG_CHANNEL_SUCCESS paramiko.sftp_attr-module.html#MSG_CHANNEL_SUCCESS
-paramiko.sftp_attr.CRITICAL paramiko.sftp_attr-module.html#CRITICAL
-paramiko.sftp_attr.SFTP_FLAG_READ paramiko.sftp_attr-module.html#SFTP_FLAG_READ
-paramiko.sftp_attr.CMD_SYMLINK paramiko.sftp_attr-module.html#CMD_SYMLINK
-paramiko.sftp_attr.OPEN_FAILED_RESOURCE_SHORTAGE paramiko.sftp_attr-module.html#OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.sftp_attr.MSG_CHANNEL_OPEN_FAILURE paramiko.sftp_attr-module.html#MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp_attr.CMD_VERSION paramiko.sftp_attr-module.html#CMD_VERSION
-paramiko.sftp_attr.CMD_INIT paramiko.sftp_attr-module.html#CMD_INIT
-paramiko.sftp_attr.CMD_EXTENDED paramiko.sftp_attr-module.html#CMD_EXTENDED
-paramiko.sftp_attr.MSG_CHANNEL_EOF paramiko.sftp_attr-module.html#MSG_CHANNEL_EOF
-paramiko.sftp_attr.SFTP_BAD_MESSAGE paramiko.sftp_attr-module.html#SFTP_BAD_MESSAGE
-paramiko.sftp_attr.PY22 paramiko.sftp_attr-module.html#PY22
-paramiko.sftp_attr.CMD_READLINK paramiko.sftp_attr-module.html#CMD_READLINK
-paramiko.sftp_attr.__package__ paramiko.sftp_attr-module.html#__package__
-paramiko.sftp_attr.DISCONNECT_AUTH_CANCELLED_BY_USER paramiko.sftp_attr-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.sftp_attr.MSG_NEWKEYS paramiko.sftp_attr-module.html#MSG_NEWKEYS
-paramiko.sftp_attr.MSG_USERAUTH_SUCCESS paramiko.sftp_attr-module.html#MSG_USERAUTH_SUCCESS
-paramiko.sftp_attr.MSG_USERAUTH_PK_OK paramiko.sftp_attr-module.html#MSG_USERAUTH_PK_OK
-paramiko.sftp_attr.CMD_READDIR paramiko.sftp_attr-module.html#CMD_READDIR
-paramiko.sftp_attr.SFTP_FLAG_WRITE paramiko.sftp_attr-module.html#SFTP_FLAG_WRITE
-paramiko.sftp_attr.CMD_NAMES paramiko.sftp_attr-module.html#CMD_NAMES
-paramiko.sftp_attr.CMD_WRITE paramiko.sftp_attr-module.html#CMD_WRITE
-paramiko.sftp_attr.CMD_OPEN paramiko.sftp_attr-module.html#CMD_OPEN
-paramiko.sftp_attr.MSG_SERVICE_ACCEPT paramiko.sftp_attr-module.html#MSG_SERVICE_ACCEPT
-paramiko.sftp_attr.WARNING paramiko.sftp_attr-module.html#WARNING
-paramiko.sftp_attr.CMD_REMOVE paramiko.sftp_attr-module.html#CMD_REMOVE
-paramiko.sftp_attr.SFTP_EOF paramiko.sftp_attr-module.html#SFTP_EOF
-paramiko.sftp_attr.CMD_FSETSTAT paramiko.sftp_attr-module.html#CMD_FSETSTAT
-paramiko.sftp_attr.SFTP_FLAG_TRUNC paramiko.sftp_attr-module.html#SFTP_FLAG_TRUNC
-paramiko.sftp_attr.CMD_SETSTAT paramiko.sftp_attr-module.html#CMD_SETSTAT
-paramiko.sftp_attr.ERROR paramiko.sftp_attr-module.html#ERROR
-paramiko.sftp_attr.DEBUG paramiko.sftp_attr-module.html#DEBUG
-paramiko.sftp_attr.CMD_FSTAT paramiko.sftp_attr-module.html#CMD_FSTAT
-paramiko.sftp_attr.MSG_USERAUTH_BANNER paramiko.sftp_attr-module.html#MSG_USERAUTH_BANNER
-paramiko.sftp_attr.CMD_OPENDIR paramiko.sftp_attr-module.html#CMD_OPENDIR
-paramiko.sftp_attr.SFTP_FAILURE paramiko.sftp_attr-module.html#SFTP_FAILURE
-paramiko.sftp_attr.SFTP_NO_CONNECTION paramiko.sftp_attr-module.html#SFTP_NO_CONNECTION
-paramiko.sftp_attr.AUTH_FAILED paramiko.sftp_attr-module.html#AUTH_FAILED
-paramiko.sftp_attr.MSG_REQUEST_SUCCESS paramiko.sftp_attr-module.html#MSG_REQUEST_SUCCESS
-paramiko.sftp_attr.AUTH_SUCCESSFUL paramiko.sftp_attr-module.html#AUTH_SUCCESSFUL
-paramiko.sftp_attr.MSG_CHANNEL_WINDOW_ADJUST paramiko.sftp_attr-module.html#MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_attr.MSG_CHANNEL_REQUEST paramiko.sftp_attr-module.html#MSG_CHANNEL_REQUEST
-paramiko.sftp_attr.MSG_USERAUTH_INFO_REQUEST paramiko.sftp_attr-module.html#MSG_USERAUTH_INFO_REQUEST
-paramiko.sftp_attr.CMD_ATTRS paramiko.sftp_attr-module.html#CMD_ATTRS
-paramiko.sftp_attr.CMD_EXTENDED_REPLY paramiko.sftp_attr-module.html#CMD_EXTENDED_REPLY
-paramiko.sftp_attr.MSG_DISCONNECT paramiko.sftp_attr-module.html#MSG_DISCONNECT
-paramiko.sftp_attr.MSG_IGNORE paramiko.sftp_attr-module.html#MSG_IGNORE
-paramiko.sftp_attr.SFTP_FLAG_EXCL paramiko.sftp_attr-module.html#SFTP_FLAG_EXCL
-paramiko.sftp_attr.SFTP_NO_SUCH_FILE paramiko.sftp_attr-module.html#SFTP_NO_SUCH_FILE
-paramiko.sftp_attr.MSG_USERAUTH_FAILURE paramiko.sftp_attr-module.html#MSG_USERAUTH_FAILURE
-paramiko.sftp_attr.MSG_KEXINIT paramiko.sftp_attr-module.html#MSG_KEXINIT
-paramiko.sftp_attr.MSG_CHANNEL_DATA paramiko.sftp_attr-module.html#MSG_CHANNEL_DATA
-paramiko.sftp_attr.CMD_CLOSE paramiko.sftp_attr-module.html#CMD_CLOSE
-paramiko.sftp_attr.CMD_RENAME paramiko.sftp_attr-module.html#CMD_RENAME
-paramiko.sftp_attr.SFTP_FLAG_CREATE paramiko.sftp_attr-module.html#SFTP_FLAG_CREATE
-paramiko.sftp_attr.MSG_DEBUG paramiko.sftp_attr-module.html#MSG_DEBUG
-paramiko.sftp_attr.SFTP_PERMISSION_DENIED paramiko.sftp_attr-module.html#SFTP_PERMISSION_DENIED
-paramiko.sftp_attr.OPEN_SUCCEEDED paramiko.sftp_attr-module.html#OPEN_SUCCEEDED
-paramiko.sftp_attr.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE paramiko.sftp_attr-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.sftp_attr.CMD_DATA paramiko.sftp_attr-module.html#CMD_DATA
-paramiko.sftp_attr.MSG_UNIMPLEMENTED paramiko.sftp_attr-module.html#MSG_UNIMPLEMENTED
-paramiko.sftp_attr.INFO paramiko.sftp_attr-module.html#INFO
-paramiko.sftp_attr.CMD_STAT paramiko.sftp_attr-module.html#CMD_STAT
-paramiko.sftp_attr.DISCONNECT_SERVICE_NOT_AVAILABLE paramiko.sftp_attr-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.sftp_attr.MSG_CHANNEL_EXTENDED_DATA paramiko.sftp_attr-module.html#MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp_attr.CMD_NAME paramiko.sftp_attr-module.html#CMD_NAME
-paramiko.sftp_attr.CONNECTION_FAILED_CODE paramiko.sftp_attr-module.html#CONNECTION_FAILED_CODE
-paramiko.sftp_attr.CMD_HANDLE paramiko.sftp_attr-module.html#CMD_HANDLE
-paramiko.sftp_attr.MSG_CHANNEL_OPEN paramiko.sftp_attr-module.html#MSG_CHANNEL_OPEN
-paramiko.sftp_attr.CMD_RMDIR paramiko.sftp_attr-module.html#CMD_RMDIR
-paramiko.sftp_attr.SFTP_OK paramiko.sftp_attr-module.html#SFTP_OK
-paramiko.sftp_attr.CMD_READ paramiko.sftp_attr-module.html#CMD_READ
-paramiko.sftp_attr.SFTP_OP_UNSUPPORTED paramiko.sftp_attr-module.html#SFTP_OP_UNSUPPORTED
-paramiko.sftp_attr.MSG_USERAUTH_INFO_RESPONSE paramiko.sftp_attr-module.html#MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp_attr.MSG_REQUEST_FAILURE paramiko.sftp_attr-module.html#MSG_REQUEST_FAILURE
-paramiko.sftp_attr.CMD_STATUS paramiko.sftp_attr-module.html#CMD_STATUS
-paramiko.sftp_attr.AUTH_PARTIALLY_SUCCESSFUL paramiko.sftp_attr-module.html#AUTH_PARTIALLY_SUCCESSFUL
-paramiko.sftp_attr.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED paramiko.sftp_attr-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_attr.MSG_CHANNEL_FAILURE paramiko.sftp_attr-module.html#MSG_CHANNEL_FAILURE
-paramiko.sftp_attr.rng paramiko.sftp_attr-module.html#rng
-paramiko.sftp_attr.SFTP_CONNECTION_LOST paramiko.sftp_attr-module.html#SFTP_CONNECTION_LOST
-paramiko.sftp_attr.OPEN_FAILED_CONNECT_FAILED paramiko.sftp_attr-module.html#OPEN_FAILED_CONNECT_FAILED
-paramiko.sftp_attr.MSG_USERAUTH_REQUEST paramiko.sftp_attr-module.html#MSG_USERAUTH_REQUEST
-paramiko.sftp_attr.MSG_SERVICE_REQUEST paramiko.sftp_attr-module.html#MSG_SERVICE_REQUEST
-paramiko.sftp_attr.CMD_REALPATH paramiko.sftp_attr-module.html#CMD_REALPATH
-paramiko.sftp_attr.MSG_CHANNEL_CLOSE paramiko.sftp_attr-module.html#MSG_CHANNEL_CLOSE
-paramiko.sftp_attr.MSG_CHANNEL_OPEN_SUCCESS paramiko.sftp_attr-module.html#MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp_client paramiko.sftp_client-module.html
-paramiko.sftp_client.MSG_NAMES paramiko.sftp_client-module.html#MSG_NAMES
-paramiko.sftp_client.CMD_MKDIR paramiko.sftp_client-module.html#CMD_MKDIR
-paramiko.sftp_client.SFTP_FLAG_APPEND paramiko.sftp_client-module.html#SFTP_FLAG_APPEND
-paramiko.sftp_client.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE paramiko.sftp_client-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.sftp_client.SFTP_DESC paramiko.sftp_client-module.html#SFTP_DESC
-paramiko.sftp_client.CMD_LSTAT paramiko.sftp_client-module.html#CMD_LSTAT
-paramiko.sftp_client.MSG_GLOBAL_REQUEST paramiko.sftp_client-module.html#MSG_GLOBAL_REQUEST
-paramiko.sftp_client.MSG_CHANNEL_SUCCESS paramiko.sftp_client-module.html#MSG_CHANNEL_SUCCESS
-paramiko.sftp_client.CRITICAL paramiko.sftp_client-module.html#CRITICAL
-paramiko.sftp_client.SFTP_FLAG_READ paramiko.sftp_client-module.html#SFTP_FLAG_READ
-paramiko.sftp_client.CMD_SYMLINK paramiko.sftp_client-module.html#CMD_SYMLINK
-paramiko.sftp_client.OPEN_FAILED_RESOURCE_SHORTAGE paramiko.sftp_client-module.html#OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.sftp_client.MSG_CHANNEL_OPEN_FAILURE paramiko.sftp_client-module.html#MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp_client.CMD_VERSION paramiko.sftp_client-module.html#CMD_VERSION
-paramiko.sftp_client.CMD_INIT paramiko.sftp_client-module.html#CMD_INIT
-paramiko.sftp_client.CMD_EXTENDED paramiko.sftp_client-module.html#CMD_EXTENDED
-paramiko.sftp_client.MSG_CHANNEL_EOF paramiko.sftp_client-module.html#MSG_CHANNEL_EOF
-paramiko.sftp_client.CMD_STAT paramiko.sftp_client-module.html#CMD_STAT
-paramiko.sftp_client.SFTP_BAD_MESSAGE paramiko.sftp_client-module.html#SFTP_BAD_MESSAGE
-paramiko.sftp_client.PY22 paramiko.sftp_client-module.html#PY22
-paramiko.sftp_client.CMD_READLINK paramiko.sftp_client-module.html#CMD_READLINK
-paramiko.sftp_client.__package__ paramiko.sftp_client-module.html#__package__
-paramiko.sftp_client.DISCONNECT_AUTH_CANCELLED_BY_USER paramiko.sftp_client-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.sftp_client.MSG_NEWKEYS paramiko.sftp_client-module.html#MSG_NEWKEYS
-paramiko.sftp_client.MSG_USERAUTH_SUCCESS paramiko.sftp_client-module.html#MSG_USERAUTH_SUCCESS
-paramiko.sftp_client.MSG_USERAUTH_PK_OK paramiko.sftp_client-module.html#MSG_USERAUTH_PK_OK
-paramiko.sftp_client.CMD_READDIR paramiko.sftp_client-module.html#CMD_READDIR
-paramiko.sftp_client.SFTP_FLAG_WRITE paramiko.sftp_client-module.html#SFTP_FLAG_WRITE
-paramiko.sftp_client.CMD_NAMES paramiko.sftp_client-module.html#CMD_NAMES
-paramiko.sftp_client.CMD_WRITE paramiko.sftp_client-module.html#CMD_WRITE
-paramiko.sftp_client.CMD_OPEN paramiko.sftp_client-module.html#CMD_OPEN
-paramiko.sftp_client.MSG_SERVICE_ACCEPT paramiko.sftp_client-module.html#MSG_SERVICE_ACCEPT
-paramiko.sftp_client.WARNING paramiko.sftp_client-module.html#WARNING
-paramiko.sftp_client.CMD_REMOVE paramiko.sftp_client-module.html#CMD_REMOVE
-paramiko.sftp_client.SFTP_EOF paramiko.sftp_client-module.html#SFTP_EOF
-paramiko.sftp_client.CMD_FSETSTAT paramiko.sftp_client-module.html#CMD_FSETSTAT
-paramiko.sftp_client.SFTP_FLAG_TRUNC paramiko.sftp_client-module.html#SFTP_FLAG_TRUNC
-paramiko.sftp_client.CMD_SETSTAT paramiko.sftp_client-module.html#CMD_SETSTAT
-paramiko.sftp_client.ERROR paramiko.sftp_client-module.html#ERROR
-paramiko.sftp_client.DEBUG paramiko.sftp_client-module.html#DEBUG
-paramiko.sftp_client.CMD_FSTAT paramiko.sftp_client-module.html#CMD_FSTAT
-paramiko.sftp_client.MSG_USERAUTH_BANNER paramiko.sftp_client-module.html#MSG_USERAUTH_BANNER
-paramiko.sftp_client.CMD_OPENDIR paramiko.sftp_client-module.html#CMD_OPENDIR
-paramiko.sftp_client.SFTP_FAILURE paramiko.sftp_client-module.html#SFTP_FAILURE
-paramiko.sftp_client.SFTP_NO_CONNECTION paramiko.sftp_client-module.html#SFTP_NO_CONNECTION
-paramiko.sftp_client.AUTH_FAILED paramiko.sftp_client-module.html#AUTH_FAILED
-paramiko.sftp_client.MSG_REQUEST_SUCCESS paramiko.sftp_client-module.html#MSG_REQUEST_SUCCESS
-paramiko.sftp_client.AUTH_SUCCESSFUL paramiko.sftp_client-module.html#AUTH_SUCCESSFUL
-paramiko.sftp_client.MSG_CHANNEL_WINDOW_ADJUST paramiko.sftp_client-module.html#MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_client.MSG_CHANNEL_REQUEST paramiko.sftp_client-module.html#MSG_CHANNEL_REQUEST
-paramiko.sftp_client.MSG_USERAUTH_INFO_REQUEST paramiko.sftp_client-module.html#MSG_USERAUTH_INFO_REQUEST
-paramiko.sftp_client.CMD_ATTRS paramiko.sftp_client-module.html#CMD_ATTRS
-paramiko.sftp_client.CMD_EXTENDED_REPLY paramiko.sftp_client-module.html#CMD_EXTENDED_REPLY
-paramiko.sftp_client.MSG_DISCONNECT paramiko.sftp_client-module.html#MSG_DISCONNECT
-paramiko.sftp_client.MSG_IGNORE paramiko.sftp_client-module.html#MSG_IGNORE
-paramiko.sftp_client.SFTP_FLAG_EXCL paramiko.sftp_client-module.html#SFTP_FLAG_EXCL
-paramiko.sftp_client.SFTP_NO_SUCH_FILE paramiko.sftp_client-module.html#SFTP_NO_SUCH_FILE
-paramiko.sftp_client.MSG_USERAUTH_FAILURE paramiko.sftp_client-module.html#MSG_USERAUTH_FAILURE
-paramiko.sftp_client.MSG_KEXINIT paramiko.sftp_client-module.html#MSG_KEXINIT
-paramiko.sftp_client.MSG_CHANNEL_DATA paramiko.sftp_client-module.html#MSG_CHANNEL_DATA
-paramiko.sftp_client.CMD_CLOSE paramiko.sftp_client-module.html#CMD_CLOSE
-paramiko.sftp_client.CMD_RENAME paramiko.sftp_client-module.html#CMD_RENAME
-paramiko.sftp_client.SFTP_FLAG_CREATE paramiko.sftp_client-module.html#SFTP_FLAG_CREATE
-paramiko.sftp_client.MSG_DEBUG paramiko.sftp_client-module.html#MSG_DEBUG
-paramiko.sftp_client.SFTP_PERMISSION_DENIED paramiko.sftp_client-module.html#SFTP_PERMISSION_DENIED
-paramiko.sftp_client.OPEN_SUCCEEDED paramiko.sftp_client-module.html#OPEN_SUCCEEDED
-paramiko.sftp_client.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE paramiko.sftp_client-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.sftp_client.CMD_DATA paramiko.sftp_client-module.html#CMD_DATA
-paramiko.sftp_client.MSG_UNIMPLEMENTED paramiko.sftp_client-module.html#MSG_UNIMPLEMENTED
-paramiko.sftp_client.INFO paramiko.sftp_client-module.html#INFO
-paramiko.sftp_client.DISCONNECT_SERVICE_NOT_AVAILABLE paramiko.sftp_client-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.sftp_client._to_unicode paramiko.sftp_client-module.html#_to_unicode
-paramiko.sftp_client.MSG_CHANNEL_EXTENDED_DATA paramiko.sftp_client-module.html#MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp_client.CMD_NAME paramiko.sftp_client-module.html#CMD_NAME
-paramiko.sftp_client.CONNECTION_FAILED_CODE paramiko.sftp_client-module.html#CONNECTION_FAILED_CODE
-paramiko.sftp_client.CMD_HANDLE paramiko.sftp_client-module.html#CMD_HANDLE
-paramiko.sftp_client.MSG_CHANNEL_OPEN paramiko.sftp_client-module.html#MSG_CHANNEL_OPEN
-paramiko.sftp_client.CMD_RMDIR paramiko.sftp_client-module.html#CMD_RMDIR
-paramiko.sftp_client.SFTP_OK paramiko.sftp_client-module.html#SFTP_OK
-paramiko.sftp_client.CMD_READ paramiko.sftp_client-module.html#CMD_READ
-paramiko.sftp_client.SFTP_OP_UNSUPPORTED paramiko.sftp_client-module.html#SFTP_OP_UNSUPPORTED
-paramiko.sftp_client.MSG_USERAUTH_INFO_RESPONSE paramiko.sftp_client-module.html#MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp_client.MSG_REQUEST_FAILURE paramiko.sftp_client-module.html#MSG_REQUEST_FAILURE
-paramiko.sftp_client.CMD_STATUS paramiko.sftp_client-module.html#CMD_STATUS
-paramiko.sftp_client.AUTH_PARTIALLY_SUCCESSFUL paramiko.sftp_client-module.html#AUTH_PARTIALLY_SUCCESSFUL
-paramiko.sftp_client.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED paramiko.sftp_client-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_client.MSG_CHANNEL_FAILURE paramiko.sftp_client-module.html#MSG_CHANNEL_FAILURE
-paramiko.sftp_client.rng paramiko.sftp_client-module.html#rng
-paramiko.sftp_client.SFTP_CONNECTION_LOST paramiko.sftp_client-module.html#SFTP_CONNECTION_LOST
-paramiko.sftp_client.OPEN_FAILED_CONNECT_FAILED paramiko.sftp_client-module.html#OPEN_FAILED_CONNECT_FAILED
-paramiko.sftp_client.MSG_USERAUTH_REQUEST paramiko.sftp_client-module.html#MSG_USERAUTH_REQUEST
-paramiko.sftp_client.MSG_SERVICE_REQUEST paramiko.sftp_client-module.html#MSG_SERVICE_REQUEST
-paramiko.sftp_client.CMD_REALPATH paramiko.sftp_client-module.html#CMD_REALPATH
-paramiko.sftp_client.MSG_CHANNEL_CLOSE paramiko.sftp_client-module.html#MSG_CHANNEL_CLOSE
-paramiko.sftp_client.MSG_CHANNEL_OPEN_SUCCESS paramiko.sftp_client-module.html#MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp_file paramiko.sftp_file-module.html
-paramiko.sftp_file.MSG_NAMES paramiko.sftp_file-module.html#MSG_NAMES
-paramiko.sftp_file.CMD_MKDIR paramiko.sftp_file-module.html#CMD_MKDIR
-paramiko.sftp_file.SFTP_FLAG_APPEND paramiko.sftp_file-module.html#SFTP_FLAG_APPEND
-paramiko.sftp_file.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE paramiko.sftp_file-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.sftp_file.SFTP_DESC paramiko.sftp_file-module.html#SFTP_DESC
-paramiko.sftp_file.CMD_LSTAT paramiko.sftp_file-module.html#CMD_LSTAT
-paramiko.sftp_file.MSG_GLOBAL_REQUEST paramiko.sftp_file-module.html#MSG_GLOBAL_REQUEST
-paramiko.sftp_file.MSG_CHANNEL_SUCCESS paramiko.sftp_file-module.html#MSG_CHANNEL_SUCCESS
-paramiko.sftp_file.CRITICAL paramiko.sftp_file-module.html#CRITICAL
-paramiko.sftp_file.SFTP_FLAG_READ paramiko.sftp_file-module.html#SFTP_FLAG_READ
-paramiko.sftp_file.CMD_SYMLINK paramiko.sftp_file-module.html#CMD_SYMLINK
-paramiko.sftp_file.OPEN_FAILED_RESOURCE_SHORTAGE paramiko.sftp_file-module.html#OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.sftp_file.MSG_CHANNEL_OPEN_FAILURE paramiko.sftp_file-module.html#MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp_file.CMD_VERSION paramiko.sftp_file-module.html#CMD_VERSION
-paramiko.sftp_file.CMD_INIT paramiko.sftp_file-module.html#CMD_INIT
-paramiko.sftp_file.CMD_EXTENDED paramiko.sftp_file-module.html#CMD_EXTENDED
-paramiko.sftp_file.MSG_CHANNEL_EOF paramiko.sftp_file-module.html#MSG_CHANNEL_EOF
-paramiko.sftp_file.CMD_STAT paramiko.sftp_file-module.html#CMD_STAT
-paramiko.sftp_file.SFTP_BAD_MESSAGE paramiko.sftp_file-module.html#SFTP_BAD_MESSAGE
-paramiko.sftp_file.PY22 paramiko.sftp_file-module.html#PY22
-paramiko.sftp_file.CMD_READLINK paramiko.sftp_file-module.html#CMD_READLINK
-paramiko.sftp_file.__package__ paramiko.sftp_file-module.html#__package__
-paramiko.sftp_file.DISCONNECT_AUTH_CANCELLED_BY_USER paramiko.sftp_file-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.sftp_file.MSG_NEWKEYS paramiko.sftp_file-module.html#MSG_NEWKEYS
-paramiko.sftp_file.MSG_USERAUTH_SUCCESS paramiko.sftp_file-module.html#MSG_USERAUTH_SUCCESS
-paramiko.sftp_file.MSG_USERAUTH_PK_OK paramiko.sftp_file-module.html#MSG_USERAUTH_PK_OK
-paramiko.sftp_file.CMD_READDIR paramiko.sftp_file-module.html#CMD_READDIR
-paramiko.sftp_file.SFTP_FLAG_WRITE paramiko.sftp_file-module.html#SFTP_FLAG_WRITE
-paramiko.sftp_file.CMD_NAMES paramiko.sftp_file-module.html#CMD_NAMES
-paramiko.sftp_file.CMD_WRITE paramiko.sftp_file-module.html#CMD_WRITE
-paramiko.sftp_file.CMD_OPEN paramiko.sftp_file-module.html#CMD_OPEN
-paramiko.sftp_file.MSG_SERVICE_ACCEPT paramiko.sftp_file-module.html#MSG_SERVICE_ACCEPT
-paramiko.sftp_file.WARNING paramiko.sftp_file-module.html#WARNING
-paramiko.sftp_file.CMD_REMOVE paramiko.sftp_file-module.html#CMD_REMOVE
-paramiko.sftp_file.SFTP_EOF paramiko.sftp_file-module.html#SFTP_EOF
-paramiko.sftp_file.CMD_FSETSTAT paramiko.sftp_file-module.html#CMD_FSETSTAT
-paramiko.sftp_file.SFTP_FLAG_TRUNC paramiko.sftp_file-module.html#SFTP_FLAG_TRUNC
-paramiko.sftp_file.CMD_SETSTAT paramiko.sftp_file-module.html#CMD_SETSTAT
-paramiko.sftp_file.ERROR paramiko.sftp_file-module.html#ERROR
-paramiko.sftp_file.DEBUG paramiko.sftp_file-module.html#DEBUG
-paramiko.sftp_file.CMD_FSTAT paramiko.sftp_file-module.html#CMD_FSTAT
-paramiko.sftp_file.MSG_USERAUTH_BANNER paramiko.sftp_file-module.html#MSG_USERAUTH_BANNER
-paramiko.sftp_file.CMD_OPENDIR paramiko.sftp_file-module.html#CMD_OPENDIR
-paramiko.sftp_file.SFTP_FAILURE paramiko.sftp_file-module.html#SFTP_FAILURE
-paramiko.sftp_file.SFTP_NO_CONNECTION paramiko.sftp_file-module.html#SFTP_NO_CONNECTION
-paramiko.sftp_file.AUTH_FAILED paramiko.sftp_file-module.html#AUTH_FAILED
-paramiko.sftp_file.MSG_REQUEST_SUCCESS paramiko.sftp_file-module.html#MSG_REQUEST_SUCCESS
-paramiko.sftp_file.AUTH_SUCCESSFUL paramiko.sftp_file-module.html#AUTH_SUCCESSFUL
-paramiko.sftp_file.MSG_CHANNEL_WINDOW_ADJUST paramiko.sftp_file-module.html#MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_file.MSG_CHANNEL_REQUEST paramiko.sftp_file-module.html#MSG_CHANNEL_REQUEST
-paramiko.sftp_file.MSG_USERAUTH_INFO_REQUEST paramiko.sftp_file-module.html#MSG_USERAUTH_INFO_REQUEST
-paramiko.sftp_file.CMD_ATTRS paramiko.sftp_file-module.html#CMD_ATTRS
-paramiko.sftp_file.CMD_EXTENDED_REPLY paramiko.sftp_file-module.html#CMD_EXTENDED_REPLY
-paramiko.sftp_file.MSG_DISCONNECT paramiko.sftp_file-module.html#MSG_DISCONNECT
-paramiko.sftp_file.MSG_IGNORE paramiko.sftp_file-module.html#MSG_IGNORE
-paramiko.sftp_file.SFTP_FLAG_EXCL paramiko.sftp_file-module.html#SFTP_FLAG_EXCL
-paramiko.sftp_file.SFTP_NO_SUCH_FILE paramiko.sftp_file-module.html#SFTP_NO_SUCH_FILE
-paramiko.sftp_file.MSG_USERAUTH_FAILURE paramiko.sftp_file-module.html#MSG_USERAUTH_FAILURE
-paramiko.sftp_file.MSG_KEXINIT paramiko.sftp_file-module.html#MSG_KEXINIT
-paramiko.sftp_file.MSG_CHANNEL_DATA paramiko.sftp_file-module.html#MSG_CHANNEL_DATA
-paramiko.sftp_file.CMD_CLOSE paramiko.sftp_file-module.html#CMD_CLOSE
-paramiko.sftp_file.CMD_RENAME paramiko.sftp_file-module.html#CMD_RENAME
-paramiko.sftp_file.SFTP_FLAG_CREATE paramiko.sftp_file-module.html#SFTP_FLAG_CREATE
-paramiko.sftp_file.MSG_DEBUG paramiko.sftp_file-module.html#MSG_DEBUG
-paramiko.sftp_file.SFTP_PERMISSION_DENIED paramiko.sftp_file-module.html#SFTP_PERMISSION_DENIED
-paramiko.sftp_file.OPEN_SUCCEEDED paramiko.sftp_file-module.html#OPEN_SUCCEEDED
-paramiko.sftp_file.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE paramiko.sftp_file-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.sftp_file.CMD_DATA paramiko.sftp_file-module.html#CMD_DATA
-paramiko.sftp_file.MSG_UNIMPLEMENTED paramiko.sftp_file-module.html#MSG_UNIMPLEMENTED
-paramiko.sftp_file.INFO paramiko.sftp_file-module.html#INFO
-paramiko.sftp_file.DISCONNECT_SERVICE_NOT_AVAILABLE paramiko.sftp_file-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.sftp_file.MSG_CHANNEL_EXTENDED_DATA paramiko.sftp_file-module.html#MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp_file.CMD_NAME paramiko.sftp_file-module.html#CMD_NAME
-paramiko.sftp_file.CONNECTION_FAILED_CODE paramiko.sftp_file-module.html#CONNECTION_FAILED_CODE
-paramiko.sftp_file.CMD_HANDLE paramiko.sftp_file-module.html#CMD_HANDLE
-paramiko.sftp_file.MSG_CHANNEL_OPEN paramiko.sftp_file-module.html#MSG_CHANNEL_OPEN
-paramiko.sftp_file.CMD_RMDIR paramiko.sftp_file-module.html#CMD_RMDIR
-paramiko.sftp_file.SFTP_OK paramiko.sftp_file-module.html#SFTP_OK
-paramiko.sftp_file.CMD_READ paramiko.sftp_file-module.html#CMD_READ
-paramiko.sftp_file.SFTP_OP_UNSUPPORTED paramiko.sftp_file-module.html#SFTP_OP_UNSUPPORTED
-paramiko.sftp_file.MSG_USERAUTH_INFO_RESPONSE paramiko.sftp_file-module.html#MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp_file.MSG_REQUEST_FAILURE paramiko.sftp_file-module.html#MSG_REQUEST_FAILURE
-paramiko.sftp_file.CMD_STATUS paramiko.sftp_file-module.html#CMD_STATUS
-paramiko.sftp_file.AUTH_PARTIALLY_SUCCESSFUL paramiko.sftp_file-module.html#AUTH_PARTIALLY_SUCCESSFUL
-paramiko.sftp_file.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED paramiko.sftp_file-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_file.MSG_CHANNEL_FAILURE paramiko.sftp_file-module.html#MSG_CHANNEL_FAILURE
-paramiko.sftp_file.rng paramiko.sftp_file-module.html#rng
-paramiko.sftp_file.SFTP_CONNECTION_LOST paramiko.sftp_file-module.html#SFTP_CONNECTION_LOST
-paramiko.sftp_file.OPEN_FAILED_CONNECT_FAILED paramiko.sftp_file-module.html#OPEN_FAILED_CONNECT_FAILED
-paramiko.sftp_file.MSG_USERAUTH_REQUEST paramiko.sftp_file-module.html#MSG_USERAUTH_REQUEST
-paramiko.sftp_file.MSG_SERVICE_REQUEST paramiko.sftp_file-module.html#MSG_SERVICE_REQUEST
-paramiko.sftp_file.CMD_REALPATH paramiko.sftp_file-module.html#CMD_REALPATH
-paramiko.sftp_file.MSG_CHANNEL_CLOSE paramiko.sftp_file-module.html#MSG_CHANNEL_CLOSE
-paramiko.sftp_file.MSG_CHANNEL_OPEN_SUCCESS paramiko.sftp_file-module.html#MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp_handle paramiko.sftp_handle-module.html
-paramiko.sftp_handle.MSG_NAMES paramiko.sftp_handle-module.html#MSG_NAMES
-paramiko.sftp_handle.CMD_MKDIR paramiko.sftp_handle-module.html#CMD_MKDIR
-paramiko.sftp_handle.SFTP_FLAG_APPEND paramiko.sftp_handle-module.html#SFTP_FLAG_APPEND
-paramiko.sftp_handle.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE paramiko.sftp_handle-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.sftp_handle.SFTP_DESC paramiko.sftp_handle-module.html#SFTP_DESC
-paramiko.sftp_handle.CMD_LSTAT paramiko.sftp_handle-module.html#CMD_LSTAT
-paramiko.sftp_handle.MSG_GLOBAL_REQUEST paramiko.sftp_handle-module.html#MSG_GLOBAL_REQUEST
-paramiko.sftp_handle.MSG_CHANNEL_SUCCESS paramiko.sftp_handle-module.html#MSG_CHANNEL_SUCCESS
-paramiko.sftp_handle.CRITICAL paramiko.sftp_handle-module.html#CRITICAL
-paramiko.sftp_handle.SFTP_FLAG_READ paramiko.sftp_handle-module.html#SFTP_FLAG_READ
-paramiko.sftp_handle.CMD_SYMLINK paramiko.sftp_handle-module.html#CMD_SYMLINK
-paramiko.sftp_handle.OPEN_FAILED_RESOURCE_SHORTAGE paramiko.sftp_handle-module.html#OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.sftp_handle.MSG_CHANNEL_OPEN_FAILURE paramiko.sftp_handle-module.html#MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp_handle.CMD_VERSION paramiko.sftp_handle-module.html#CMD_VERSION
-paramiko.sftp_handle.CMD_INIT paramiko.sftp_handle-module.html#CMD_INIT
-paramiko.sftp_handle.CMD_EXTENDED paramiko.sftp_handle-module.html#CMD_EXTENDED
-paramiko.sftp_handle.MSG_CHANNEL_EOF paramiko.sftp_handle-module.html#MSG_CHANNEL_EOF
-paramiko.sftp_handle.SFTP_BAD_MESSAGE paramiko.sftp_handle-module.html#SFTP_BAD_MESSAGE
-paramiko.sftp_handle.PY22 paramiko.sftp_handle-module.html#PY22
-paramiko.sftp_handle.CMD_READLINK paramiko.sftp_handle-module.html#CMD_READLINK
-paramiko.sftp_handle.__package__ paramiko.sftp_handle-module.html#__package__
-paramiko.sftp_handle.DISCONNECT_AUTH_CANCELLED_BY_USER paramiko.sftp_handle-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.sftp_handle.MSG_NEWKEYS paramiko.sftp_handle-module.html#MSG_NEWKEYS
-paramiko.sftp_handle.MSG_USERAUTH_SUCCESS paramiko.sftp_handle-module.html#MSG_USERAUTH_SUCCESS
-paramiko.sftp_handle.MSG_USERAUTH_PK_OK paramiko.sftp_handle-module.html#MSG_USERAUTH_PK_OK
-paramiko.sftp_handle.CMD_READDIR paramiko.sftp_handle-module.html#CMD_READDIR
-paramiko.sftp_handle.SFTP_FLAG_WRITE paramiko.sftp_handle-module.html#SFTP_FLAG_WRITE
-paramiko.sftp_handle.CMD_NAMES paramiko.sftp_handle-module.html#CMD_NAMES
-paramiko.sftp_handle.CMD_WRITE paramiko.sftp_handle-module.html#CMD_WRITE
-paramiko.sftp_handle.CMD_OPEN paramiko.sftp_handle-module.html#CMD_OPEN
-paramiko.sftp_handle.MSG_SERVICE_ACCEPT paramiko.sftp_handle-module.html#MSG_SERVICE_ACCEPT
-paramiko.sftp_handle.WARNING paramiko.sftp_handle-module.html#WARNING
-paramiko.sftp_handle.CMD_REMOVE paramiko.sftp_handle-module.html#CMD_REMOVE
-paramiko.sftp_handle.SFTP_EOF paramiko.sftp_handle-module.html#SFTP_EOF
-paramiko.sftp_handle.CMD_FSETSTAT paramiko.sftp_handle-module.html#CMD_FSETSTAT
-paramiko.sftp_handle.SFTP_FLAG_TRUNC paramiko.sftp_handle-module.html#SFTP_FLAG_TRUNC
-paramiko.sftp_handle.CMD_SETSTAT paramiko.sftp_handle-module.html#CMD_SETSTAT
-paramiko.sftp_handle.ERROR paramiko.sftp_handle-module.html#ERROR
-paramiko.sftp_handle.DEBUG paramiko.sftp_handle-module.html#DEBUG
-paramiko.sftp_handle.CMD_FSTAT paramiko.sftp_handle-module.html#CMD_FSTAT
-paramiko.sftp_handle.MSG_USERAUTH_BANNER paramiko.sftp_handle-module.html#MSG_USERAUTH_BANNER
-paramiko.sftp_handle.CMD_OPENDIR paramiko.sftp_handle-module.html#CMD_OPENDIR
-paramiko.sftp_handle.SFTP_FAILURE paramiko.sftp_handle-module.html#SFTP_FAILURE
-paramiko.sftp_handle.SFTP_NO_CONNECTION paramiko.sftp_handle-module.html#SFTP_NO_CONNECTION
-paramiko.sftp_handle.AUTH_FAILED paramiko.sftp_handle-module.html#AUTH_FAILED
-paramiko.sftp_handle.MSG_REQUEST_SUCCESS paramiko.sftp_handle-module.html#MSG_REQUEST_SUCCESS
-paramiko.sftp_handle.AUTH_SUCCESSFUL paramiko.sftp_handle-module.html#AUTH_SUCCESSFUL
-paramiko.sftp_handle.MSG_CHANNEL_WINDOW_ADJUST paramiko.sftp_handle-module.html#MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_handle.MSG_CHANNEL_REQUEST paramiko.sftp_handle-module.html#MSG_CHANNEL_REQUEST
-paramiko.sftp_handle.MSG_USERAUTH_INFO_REQUEST paramiko.sftp_handle-module.html#MSG_USERAUTH_INFO_REQUEST
-paramiko.sftp_handle.CMD_ATTRS paramiko.sftp_handle-module.html#CMD_ATTRS
-paramiko.sftp_handle.CMD_EXTENDED_REPLY paramiko.sftp_handle-module.html#CMD_EXTENDED_REPLY
-paramiko.sftp_handle.MSG_DISCONNECT paramiko.sftp_handle-module.html#MSG_DISCONNECT
-paramiko.sftp_handle.MSG_IGNORE paramiko.sftp_handle-module.html#MSG_IGNORE
-paramiko.sftp_handle.SFTP_FLAG_EXCL paramiko.sftp_handle-module.html#SFTP_FLAG_EXCL
-paramiko.sftp_handle.SFTP_NO_SUCH_FILE paramiko.sftp_handle-module.html#SFTP_NO_SUCH_FILE
-paramiko.sftp_handle.MSG_USERAUTH_FAILURE paramiko.sftp_handle-module.html#MSG_USERAUTH_FAILURE
-paramiko.sftp_handle.MSG_KEXINIT paramiko.sftp_handle-module.html#MSG_KEXINIT
-paramiko.sftp_handle.MSG_CHANNEL_DATA paramiko.sftp_handle-module.html#MSG_CHANNEL_DATA
-paramiko.sftp_handle.CMD_CLOSE paramiko.sftp_handle-module.html#CMD_CLOSE
-paramiko.sftp_handle.CMD_RENAME paramiko.sftp_handle-module.html#CMD_RENAME
-paramiko.sftp_handle.SFTP_FLAG_CREATE paramiko.sftp_handle-module.html#SFTP_FLAG_CREATE
-paramiko.sftp_handle.MSG_DEBUG paramiko.sftp_handle-module.html#MSG_DEBUG
-paramiko.sftp_handle.SFTP_PERMISSION_DENIED paramiko.sftp_handle-module.html#SFTP_PERMISSION_DENIED
-paramiko.sftp_handle.OPEN_SUCCEEDED paramiko.sftp_handle-module.html#OPEN_SUCCEEDED
-paramiko.sftp_handle.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE paramiko.sftp_handle-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.sftp_handle.CMD_DATA paramiko.sftp_handle-module.html#CMD_DATA
-paramiko.sftp_handle.MSG_UNIMPLEMENTED paramiko.sftp_handle-module.html#MSG_UNIMPLEMENTED
-paramiko.sftp_handle.INFO paramiko.sftp_handle-module.html#INFO
-paramiko.sftp_handle.CMD_STAT paramiko.sftp_handle-module.html#CMD_STAT
-paramiko.sftp_handle.DISCONNECT_SERVICE_NOT_AVAILABLE paramiko.sftp_handle-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.sftp_handle.MSG_CHANNEL_EXTENDED_DATA paramiko.sftp_handle-module.html#MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp_handle.CMD_NAME paramiko.sftp_handle-module.html#CMD_NAME
-paramiko.sftp_handle.CONNECTION_FAILED_CODE paramiko.sftp_handle-module.html#CONNECTION_FAILED_CODE
-paramiko.sftp_handle.CMD_HANDLE paramiko.sftp_handle-module.html#CMD_HANDLE
-paramiko.sftp_handle.MSG_CHANNEL_OPEN paramiko.sftp_handle-module.html#MSG_CHANNEL_OPEN
-paramiko.sftp_handle.CMD_RMDIR paramiko.sftp_handle-module.html#CMD_RMDIR
-paramiko.sftp_handle.SFTP_OK paramiko.sftp_handle-module.html#SFTP_OK
-paramiko.sftp_handle.CMD_READ paramiko.sftp_handle-module.html#CMD_READ
-paramiko.sftp_handle.SFTP_OP_UNSUPPORTED paramiko.sftp_handle-module.html#SFTP_OP_UNSUPPORTED
-paramiko.sftp_handle.MSG_USERAUTH_INFO_RESPONSE paramiko.sftp_handle-module.html#MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp_handle.MSG_REQUEST_FAILURE paramiko.sftp_handle-module.html#MSG_REQUEST_FAILURE
-paramiko.sftp_handle.CMD_STATUS paramiko.sftp_handle-module.html#CMD_STATUS
-paramiko.sftp_handle.AUTH_PARTIALLY_SUCCESSFUL paramiko.sftp_handle-module.html#AUTH_PARTIALLY_SUCCESSFUL
-paramiko.sftp_handle.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED paramiko.sftp_handle-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_handle.MSG_CHANNEL_FAILURE paramiko.sftp_handle-module.html#MSG_CHANNEL_FAILURE
-paramiko.sftp_handle.rng paramiko.sftp_handle-module.html#rng
-paramiko.sftp_handle.SFTP_CONNECTION_LOST paramiko.sftp_handle-module.html#SFTP_CONNECTION_LOST
-paramiko.sftp_handle.OPEN_FAILED_CONNECT_FAILED paramiko.sftp_handle-module.html#OPEN_FAILED_CONNECT_FAILED
-paramiko.sftp_handle.MSG_USERAUTH_REQUEST paramiko.sftp_handle-module.html#MSG_USERAUTH_REQUEST
-paramiko.sftp_handle.MSG_SERVICE_REQUEST paramiko.sftp_handle-module.html#MSG_SERVICE_REQUEST
-paramiko.sftp_handle.CMD_REALPATH paramiko.sftp_handle-module.html#CMD_REALPATH
-paramiko.sftp_handle.MSG_CHANNEL_CLOSE paramiko.sftp_handle-module.html#MSG_CHANNEL_CLOSE
-paramiko.sftp_handle.MSG_CHANNEL_OPEN_SUCCESS paramiko.sftp_handle-module.html#MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp_server paramiko.sftp_server-module.html
-paramiko.sftp_server.MSG_NAMES paramiko.sftp_server-module.html#MSG_NAMES
-paramiko.sftp_server.CMD_MKDIR paramiko.sftp_server-module.html#CMD_MKDIR
-paramiko.sftp_server.SFTP_FLAG_APPEND paramiko.sftp_server-module.html#SFTP_FLAG_APPEND
-paramiko.sftp_server.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE paramiko.sftp_server-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.sftp_server.SFTP_DESC paramiko.sftp_server-module.html#SFTP_DESC
-paramiko.sftp_server.CMD_LSTAT paramiko.sftp_server-module.html#CMD_LSTAT
-paramiko.sftp_server.MSG_GLOBAL_REQUEST paramiko.sftp_server-module.html#MSG_GLOBAL_REQUEST
-paramiko.sftp_server.MSG_CHANNEL_SUCCESS paramiko.sftp_server-module.html#MSG_CHANNEL_SUCCESS
-paramiko.sftp_server.CRITICAL paramiko.sftp_server-module.html#CRITICAL
-paramiko.sftp_server.SFTP_FLAG_READ paramiko.sftp_server-module.html#SFTP_FLAG_READ
-paramiko.sftp_server.CMD_SYMLINK paramiko.sftp_server-module.html#CMD_SYMLINK
-paramiko.sftp_server.OPEN_FAILED_RESOURCE_SHORTAGE paramiko.sftp_server-module.html#OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.sftp_server.MSG_CHANNEL_OPEN_FAILURE paramiko.sftp_server-module.html#MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp_server.CMD_VERSION paramiko.sftp_server-module.html#CMD_VERSION
-paramiko.sftp_server.CMD_INIT paramiko.sftp_server-module.html#CMD_INIT
-paramiko.sftp_server.CMD_EXTENDED paramiko.sftp_server-module.html#CMD_EXTENDED
-paramiko.sftp_server.MSG_CHANNEL_EOF paramiko.sftp_server-module.html#MSG_CHANNEL_EOF
-paramiko.sftp_server.SFTP_BAD_MESSAGE paramiko.sftp_server-module.html#SFTP_BAD_MESSAGE
-paramiko.sftp_server.PY22 paramiko.sftp_server-module.html#PY22
-paramiko.sftp_server.CMD_READLINK paramiko.sftp_server-module.html#CMD_READLINK
-paramiko.sftp_server.__package__ paramiko.sftp_server-module.html#__package__
-paramiko.sftp_server.DISCONNECT_AUTH_CANCELLED_BY_USER paramiko.sftp_server-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.sftp_server.MSG_NEWKEYS paramiko.sftp_server-module.html#MSG_NEWKEYS
-paramiko.sftp_server.MSG_USERAUTH_SUCCESS paramiko.sftp_server-module.html#MSG_USERAUTH_SUCCESS
-paramiko.sftp_server.MSG_USERAUTH_PK_OK paramiko.sftp_server-module.html#MSG_USERAUTH_PK_OK
-paramiko.sftp_server.CMD_READDIR paramiko.sftp_server-module.html#CMD_READDIR
-paramiko.sftp_server.SFTP_FLAG_WRITE paramiko.sftp_server-module.html#SFTP_FLAG_WRITE
-paramiko.sftp_server.CMD_NAMES paramiko.sftp_server-module.html#CMD_NAMES
-paramiko.sftp_server.CMD_WRITE paramiko.sftp_server-module.html#CMD_WRITE
-paramiko.sftp_server.CMD_OPEN paramiko.sftp_server-module.html#CMD_OPEN
-paramiko.sftp_server.MSG_SERVICE_ACCEPT paramiko.sftp_server-module.html#MSG_SERVICE_ACCEPT
-paramiko.sftp_server.WARNING paramiko.sftp_server-module.html#WARNING
-paramiko.sftp_server.CMD_REMOVE paramiko.sftp_server-module.html#CMD_REMOVE
-paramiko.sftp_server.SFTP_EOF paramiko.sftp_server-module.html#SFTP_EOF
-paramiko.sftp_server.CMD_FSETSTAT paramiko.sftp_server-module.html#CMD_FSETSTAT
-paramiko.sftp_server.SFTP_FLAG_TRUNC paramiko.sftp_server-module.html#SFTP_FLAG_TRUNC
-paramiko.sftp_server.CMD_SETSTAT paramiko.sftp_server-module.html#CMD_SETSTAT
-paramiko.sftp_server.ERROR paramiko.sftp_server-module.html#ERROR
-paramiko.sftp_server.DEBUG paramiko.sftp_server-module.html#DEBUG
-paramiko.sftp_server.CMD_FSTAT paramiko.sftp_server-module.html#CMD_FSTAT
-paramiko.sftp_server.MSG_USERAUTH_BANNER paramiko.sftp_server-module.html#MSG_USERAUTH_BANNER
-paramiko.sftp_server.CMD_OPENDIR paramiko.sftp_server-module.html#CMD_OPENDIR
-paramiko.sftp_server.SFTP_FAILURE paramiko.sftp_server-module.html#SFTP_FAILURE
-paramiko.sftp_server.SFTP_NO_CONNECTION paramiko.sftp_server-module.html#SFTP_NO_CONNECTION
-paramiko.sftp_server.AUTH_FAILED paramiko.sftp_server-module.html#AUTH_FAILED
-paramiko.sftp_server.MSG_REQUEST_SUCCESS paramiko.sftp_server-module.html#MSG_REQUEST_SUCCESS
-paramiko.sftp_server.AUTH_SUCCESSFUL paramiko.sftp_server-module.html#AUTH_SUCCESSFUL
-paramiko.sftp_server.MSG_CHANNEL_WINDOW_ADJUST paramiko.sftp_server-module.html#MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_server.MSG_CHANNEL_REQUEST paramiko.sftp_server-module.html#MSG_CHANNEL_REQUEST
-paramiko.sftp_server.MSG_USERAUTH_INFO_REQUEST paramiko.sftp_server-module.html#MSG_USERAUTH_INFO_REQUEST
-paramiko.sftp_server.CMD_ATTRS paramiko.sftp_server-module.html#CMD_ATTRS
-paramiko.sftp_server.CMD_EXTENDED_REPLY paramiko.sftp_server-module.html#CMD_EXTENDED_REPLY
-paramiko.sftp_server.MSG_DISCONNECT paramiko.sftp_server-module.html#MSG_DISCONNECT
-paramiko.sftp_server.MSG_IGNORE paramiko.sftp_server-module.html#MSG_IGNORE
-paramiko.sftp_server.SFTP_FLAG_EXCL paramiko.sftp_server-module.html#SFTP_FLAG_EXCL
-paramiko.sftp_server.SFTP_NO_SUCH_FILE paramiko.sftp_server-module.html#SFTP_NO_SUCH_FILE
-paramiko.sftp_server.MSG_USERAUTH_FAILURE paramiko.sftp_server-module.html#MSG_USERAUTH_FAILURE
-paramiko.sftp_server.MSG_KEXINIT paramiko.sftp_server-module.html#MSG_KEXINIT
-paramiko.sftp_server.MSG_CHANNEL_DATA paramiko.sftp_server-module.html#MSG_CHANNEL_DATA
-paramiko.sftp_server.CMD_CLOSE paramiko.sftp_server-module.html#CMD_CLOSE
-paramiko.sftp_server.CMD_RENAME paramiko.sftp_server-module.html#CMD_RENAME
-paramiko.sftp_server.SFTP_FLAG_CREATE paramiko.sftp_server-module.html#SFTP_FLAG_CREATE
-paramiko.sftp_server.MSG_DEBUG paramiko.sftp_server-module.html#MSG_DEBUG
-paramiko.sftp_server.SFTP_PERMISSION_DENIED paramiko.sftp_server-module.html#SFTP_PERMISSION_DENIED
-paramiko.sftp_server.OPEN_SUCCEEDED paramiko.sftp_server-module.html#OPEN_SUCCEEDED
-paramiko.sftp_server._hash_class paramiko.sftp_server-module.html#_hash_class
-paramiko.sftp_server.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE paramiko.sftp_server-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.sftp_server.CMD_DATA paramiko.sftp_server-module.html#CMD_DATA
-paramiko.sftp_server.MSG_UNIMPLEMENTED paramiko.sftp_server-module.html#MSG_UNIMPLEMENTED
-paramiko.sftp_server.INFO paramiko.sftp_server-module.html#INFO
-paramiko.sftp_server.CMD_STAT paramiko.sftp_server-module.html#CMD_STAT
-paramiko.sftp_server.DISCONNECT_SERVICE_NOT_AVAILABLE paramiko.sftp_server-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.sftp_server.MSG_CHANNEL_EXTENDED_DATA paramiko.sftp_server-module.html#MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp_server.CMD_NAME paramiko.sftp_server-module.html#CMD_NAME
-paramiko.sftp_server.CONNECTION_FAILED_CODE paramiko.sftp_server-module.html#CONNECTION_FAILED_CODE
-paramiko.sftp_server.CMD_HANDLE paramiko.sftp_server-module.html#CMD_HANDLE
-paramiko.sftp_server.MSG_CHANNEL_OPEN paramiko.sftp_server-module.html#MSG_CHANNEL_OPEN
-paramiko.sftp_server.CMD_RMDIR paramiko.sftp_server-module.html#CMD_RMDIR
-paramiko.sftp_server.SFTP_OK paramiko.sftp_server-module.html#SFTP_OK
-paramiko.sftp_server.CMD_READ paramiko.sftp_server-module.html#CMD_READ
-paramiko.sftp_server.SFTP_OP_UNSUPPORTED paramiko.sftp_server-module.html#SFTP_OP_UNSUPPORTED
-paramiko.sftp_server.MSG_USERAUTH_INFO_RESPONSE paramiko.sftp_server-module.html#MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp_server.MSG_REQUEST_FAILURE paramiko.sftp_server-module.html#MSG_REQUEST_FAILURE
-paramiko.sftp_server.CMD_STATUS paramiko.sftp_server-module.html#CMD_STATUS
-paramiko.sftp_server.AUTH_PARTIALLY_SUCCESSFUL paramiko.sftp_server-module.html#AUTH_PARTIALLY_SUCCESSFUL
-paramiko.sftp_server.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED paramiko.sftp_server-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_server.MSG_CHANNEL_FAILURE paramiko.sftp_server-module.html#MSG_CHANNEL_FAILURE
-paramiko.sftp_server.rng paramiko.sftp_server-module.html#rng
-paramiko.sftp_server.SFTP_CONNECTION_LOST paramiko.sftp_server-module.html#SFTP_CONNECTION_LOST
-paramiko.sftp_server.OPEN_FAILED_CONNECT_FAILED paramiko.sftp_server-module.html#OPEN_FAILED_CONNECT_FAILED
-paramiko.sftp_server.MSG_USERAUTH_REQUEST paramiko.sftp_server-module.html#MSG_USERAUTH_REQUEST
-paramiko.sftp_server.MSG_SERVICE_REQUEST paramiko.sftp_server-module.html#MSG_SERVICE_REQUEST
-paramiko.sftp_server.CMD_REALPATH paramiko.sftp_server-module.html#CMD_REALPATH
-paramiko.sftp_server.MSG_CHANNEL_CLOSE paramiko.sftp_server-module.html#MSG_CHANNEL_CLOSE
-paramiko.sftp_server.MSG_CHANNEL_OPEN_SUCCESS paramiko.sftp_server-module.html#MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp_si paramiko.sftp_si-module.html
-paramiko.sftp_si.MSG_NAMES paramiko.sftp_si-module.html#MSG_NAMES
-paramiko.sftp_si.CMD_MKDIR paramiko.sftp_si-module.html#CMD_MKDIR
-paramiko.sftp_si.SFTP_FLAG_APPEND paramiko.sftp_si-module.html#SFTP_FLAG_APPEND
-paramiko.sftp_si.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE paramiko.sftp_si-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.sftp_si.SFTP_DESC paramiko.sftp_si-module.html#SFTP_DESC
-paramiko.sftp_si.CMD_LSTAT paramiko.sftp_si-module.html#CMD_LSTAT
-paramiko.sftp_si.MSG_GLOBAL_REQUEST paramiko.sftp_si-module.html#MSG_GLOBAL_REQUEST
-paramiko.sftp_si.MSG_CHANNEL_SUCCESS paramiko.sftp_si-module.html#MSG_CHANNEL_SUCCESS
-paramiko.sftp_si.CRITICAL paramiko.sftp_si-module.html#CRITICAL
-paramiko.sftp_si.SFTP_FLAG_READ paramiko.sftp_si-module.html#SFTP_FLAG_READ
-paramiko.sftp_si.CMD_SYMLINK paramiko.sftp_si-module.html#CMD_SYMLINK
-paramiko.sftp_si.OPEN_FAILED_RESOURCE_SHORTAGE paramiko.sftp_si-module.html#OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.sftp_si.MSG_CHANNEL_OPEN_FAILURE paramiko.sftp_si-module.html#MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp_si.CMD_VERSION paramiko.sftp_si-module.html#CMD_VERSION
-paramiko.sftp_si.CMD_INIT paramiko.sftp_si-module.html#CMD_INIT
-paramiko.sftp_si.CMD_EXTENDED paramiko.sftp_si-module.html#CMD_EXTENDED
-paramiko.sftp_si.MSG_CHANNEL_EOF paramiko.sftp_si-module.html#MSG_CHANNEL_EOF
-paramiko.sftp_si.SFTP_BAD_MESSAGE paramiko.sftp_si-module.html#SFTP_BAD_MESSAGE
-paramiko.sftp_si.PY22 paramiko.sftp_si-module.html#PY22
-paramiko.sftp_si.CMD_READLINK paramiko.sftp_si-module.html#CMD_READLINK
-paramiko.sftp_si.__package__ paramiko.sftp_si-module.html#__package__
-paramiko.sftp_si.DISCONNECT_AUTH_CANCELLED_BY_USER paramiko.sftp_si-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.sftp_si.MSG_NEWKEYS paramiko.sftp_si-module.html#MSG_NEWKEYS
-paramiko.sftp_si.MSG_USERAUTH_SUCCESS paramiko.sftp_si-module.html#MSG_USERAUTH_SUCCESS
-paramiko.sftp_si.MSG_USERAUTH_PK_OK paramiko.sftp_si-module.html#MSG_USERAUTH_PK_OK
-paramiko.sftp_si.CMD_READDIR paramiko.sftp_si-module.html#CMD_READDIR
-paramiko.sftp_si.SFTP_FLAG_WRITE paramiko.sftp_si-module.html#SFTP_FLAG_WRITE
-paramiko.sftp_si.CMD_NAMES paramiko.sftp_si-module.html#CMD_NAMES
-paramiko.sftp_si.CMD_WRITE paramiko.sftp_si-module.html#CMD_WRITE
-paramiko.sftp_si.CMD_OPEN paramiko.sftp_si-module.html#CMD_OPEN
-paramiko.sftp_si.MSG_SERVICE_ACCEPT paramiko.sftp_si-module.html#MSG_SERVICE_ACCEPT
-paramiko.sftp_si.WARNING paramiko.sftp_si-module.html#WARNING
-paramiko.sftp_si.CMD_REMOVE paramiko.sftp_si-module.html#CMD_REMOVE
-paramiko.sftp_si.SFTP_EOF paramiko.sftp_si-module.html#SFTP_EOF
-paramiko.sftp_si.CMD_FSETSTAT paramiko.sftp_si-module.html#CMD_FSETSTAT
-paramiko.sftp_si.SFTP_FLAG_TRUNC paramiko.sftp_si-module.html#SFTP_FLAG_TRUNC
-paramiko.sftp_si.CMD_SETSTAT paramiko.sftp_si-module.html#CMD_SETSTAT
-paramiko.sftp_si.ERROR paramiko.sftp_si-module.html#ERROR
-paramiko.sftp_si.DEBUG paramiko.sftp_si-module.html#DEBUG
-paramiko.sftp_si.CMD_FSTAT paramiko.sftp_si-module.html#CMD_FSTAT
-paramiko.sftp_si.MSG_USERAUTH_BANNER paramiko.sftp_si-module.html#MSG_USERAUTH_BANNER
-paramiko.sftp_si.CMD_OPENDIR paramiko.sftp_si-module.html#CMD_OPENDIR
-paramiko.sftp_si.SFTP_FAILURE paramiko.sftp_si-module.html#SFTP_FAILURE
-paramiko.sftp_si.SFTP_NO_CONNECTION paramiko.sftp_si-module.html#SFTP_NO_CONNECTION
-paramiko.sftp_si.AUTH_FAILED paramiko.sftp_si-module.html#AUTH_FAILED
-paramiko.sftp_si.MSG_REQUEST_SUCCESS paramiko.sftp_si-module.html#MSG_REQUEST_SUCCESS
-paramiko.sftp_si.AUTH_SUCCESSFUL paramiko.sftp_si-module.html#AUTH_SUCCESSFUL
-paramiko.sftp_si.MSG_CHANNEL_WINDOW_ADJUST paramiko.sftp_si-module.html#MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_si.MSG_CHANNEL_REQUEST paramiko.sftp_si-module.html#MSG_CHANNEL_REQUEST
-paramiko.sftp_si.MSG_USERAUTH_INFO_REQUEST paramiko.sftp_si-module.html#MSG_USERAUTH_INFO_REQUEST
-paramiko.sftp_si.CMD_ATTRS paramiko.sftp_si-module.html#CMD_ATTRS
-paramiko.sftp_si.CMD_EXTENDED_REPLY paramiko.sftp_si-module.html#CMD_EXTENDED_REPLY
-paramiko.sftp_si.MSG_DISCONNECT paramiko.sftp_si-module.html#MSG_DISCONNECT
-paramiko.sftp_si.MSG_IGNORE paramiko.sftp_si-module.html#MSG_IGNORE
-paramiko.sftp_si.SFTP_FLAG_EXCL paramiko.sftp_si-module.html#SFTP_FLAG_EXCL
-paramiko.sftp_si.SFTP_NO_SUCH_FILE paramiko.sftp_si-module.html#SFTP_NO_SUCH_FILE
-paramiko.sftp_si.MSG_USERAUTH_FAILURE paramiko.sftp_si-module.html#MSG_USERAUTH_FAILURE
-paramiko.sftp_si.MSG_KEXINIT paramiko.sftp_si-module.html#MSG_KEXINIT
-paramiko.sftp_si.MSG_CHANNEL_DATA paramiko.sftp_si-module.html#MSG_CHANNEL_DATA
-paramiko.sftp_si.CMD_CLOSE paramiko.sftp_si-module.html#CMD_CLOSE
-paramiko.sftp_si.CMD_RENAME paramiko.sftp_si-module.html#CMD_RENAME
-paramiko.sftp_si.SFTP_FLAG_CREATE paramiko.sftp_si-module.html#SFTP_FLAG_CREATE
-paramiko.sftp_si.MSG_DEBUG paramiko.sftp_si-module.html#MSG_DEBUG
-paramiko.sftp_si.SFTP_PERMISSION_DENIED paramiko.sftp_si-module.html#SFTP_PERMISSION_DENIED
-paramiko.sftp_si.OPEN_SUCCEEDED paramiko.sftp_si-module.html#OPEN_SUCCEEDED
-paramiko.sftp_si.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE paramiko.sftp_si-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.sftp_si.CMD_DATA paramiko.sftp_si-module.html#CMD_DATA
-paramiko.sftp_si.MSG_UNIMPLEMENTED paramiko.sftp_si-module.html#MSG_UNIMPLEMENTED
-paramiko.sftp_si.INFO paramiko.sftp_si-module.html#INFO
-paramiko.sftp_si.CMD_STAT paramiko.sftp_si-module.html#CMD_STAT
-paramiko.sftp_si.DISCONNECT_SERVICE_NOT_AVAILABLE paramiko.sftp_si-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.sftp_si.MSG_CHANNEL_EXTENDED_DATA paramiko.sftp_si-module.html#MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp_si.CMD_NAME paramiko.sftp_si-module.html#CMD_NAME
-paramiko.sftp_si.CONNECTION_FAILED_CODE paramiko.sftp_si-module.html#CONNECTION_FAILED_CODE
-paramiko.sftp_si.CMD_HANDLE paramiko.sftp_si-module.html#CMD_HANDLE
-paramiko.sftp_si.MSG_CHANNEL_OPEN paramiko.sftp_si-module.html#MSG_CHANNEL_OPEN
-paramiko.sftp_si.CMD_RMDIR paramiko.sftp_si-module.html#CMD_RMDIR
-paramiko.sftp_si.SFTP_OK paramiko.sftp_si-module.html#SFTP_OK
-paramiko.sftp_si.CMD_READ paramiko.sftp_si-module.html#CMD_READ
-paramiko.sftp_si.SFTP_OP_UNSUPPORTED paramiko.sftp_si-module.html#SFTP_OP_UNSUPPORTED
-paramiko.sftp_si.MSG_USERAUTH_INFO_RESPONSE paramiko.sftp_si-module.html#MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp_si.MSG_REQUEST_FAILURE paramiko.sftp_si-module.html#MSG_REQUEST_FAILURE
-paramiko.sftp_si.CMD_STATUS paramiko.sftp_si-module.html#CMD_STATUS
-paramiko.sftp_si.AUTH_PARTIALLY_SUCCESSFUL paramiko.sftp_si-module.html#AUTH_PARTIALLY_SUCCESSFUL
-paramiko.sftp_si.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED paramiko.sftp_si-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_si.MSG_CHANNEL_FAILURE paramiko.sftp_si-module.html#MSG_CHANNEL_FAILURE
-paramiko.sftp_si.rng paramiko.sftp_si-module.html#rng
-paramiko.sftp_si.SFTP_CONNECTION_LOST paramiko.sftp_si-module.html#SFTP_CONNECTION_LOST
-paramiko.sftp_si.OPEN_FAILED_CONNECT_FAILED paramiko.sftp_si-module.html#OPEN_FAILED_CONNECT_FAILED
-paramiko.sftp_si.MSG_USERAUTH_REQUEST paramiko.sftp_si-module.html#MSG_USERAUTH_REQUEST
-paramiko.sftp_si.MSG_SERVICE_REQUEST paramiko.sftp_si-module.html#MSG_SERVICE_REQUEST
-paramiko.sftp_si.CMD_REALPATH paramiko.sftp_si-module.html#CMD_REALPATH
-paramiko.sftp_si.MSG_CHANNEL_CLOSE paramiko.sftp_si-module.html#MSG_CHANNEL_CLOSE
-paramiko.sftp_si.MSG_CHANNEL_OPEN_SUCCESS paramiko.sftp_si-module.html#MSG_CHANNEL_OPEN_SUCCESS
-paramiko.ssh_exception paramiko.ssh_exception-module.html
-paramiko.ssh_exception.__package__ paramiko.ssh_exception-module.html#__package__
-paramiko.transport paramiko.transport-module.html
-paramiko.transport.MSG_NAMES paramiko.transport-module.html#MSG_NAMES
-paramiko.transport.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE paramiko.transport-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.transport.MSG_GLOBAL_REQUEST paramiko.transport-module.html#MSG_GLOBAL_REQUEST
-paramiko.transport._active_threads paramiko.transport-module.html#_active_threads
-paramiko.transport.MSG_CHANNEL_SUCCESS paramiko.transport-module.html#MSG_CHANNEL_SUCCESS
-paramiko.transport.CRITICAL paramiko.transport-module.html#CRITICAL
-paramiko.transport.OPEN_FAILED_RESOURCE_SHORTAGE paramiko.transport-module.html#OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.transport.MSG_CHANNEL_OPEN_FAILURE paramiko.transport-module.html#MSG_CHANNEL_OPEN_FAILURE
-paramiko.transport.PY22 paramiko.transport-module.html#PY22
-paramiko.transport.DISCONNECT_AUTH_CANCELLED_BY_USER paramiko.transport-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.transport.MSG_NEWKEYS paramiko.transport-module.html#MSG_NEWKEYS
-paramiko.transport.MSG_USERAUTH_SUCCESS paramiko.transport-module.html#MSG_USERAUTH_SUCCESS
-paramiko.transport.MSG_KEXINIT paramiko.transport-module.html#MSG_KEXINIT
-paramiko.transport.MSG_SERVICE_ACCEPT paramiko.transport-module.html#MSG_SERVICE_ACCEPT
-paramiko.transport.WARNING paramiko.transport-module.html#WARNING
-paramiko.transport.ERROR paramiko.transport-module.html#ERROR
-paramiko.transport.DEBUG paramiko.transport-module.html#DEBUG
-paramiko.transport.MSG_USERAUTH_BANNER paramiko.transport-module.html#MSG_USERAUTH_BANNER
-paramiko.transport.MSG_CHANNEL_EOF paramiko.transport-module.html#MSG_CHANNEL_EOF
-paramiko.transport.AUTH_FAILED paramiko.transport-module.html#AUTH_FAILED
-paramiko.transport.MSG_USERAUTH_PK_OK paramiko.transport-module.html#MSG_USERAUTH_PK_OK
-paramiko.transport.AUTH_SUCCESSFUL paramiko.transport-module.html#AUTH_SUCCESSFUL
-paramiko.transport.MSG_CHANNEL_WINDOW_ADJUST paramiko.transport-module.html#MSG_CHANNEL_WINDOW_ADJUST
-paramiko.transport.MSG_CHANNEL_REQUEST paramiko.transport-module.html#MSG_CHANNEL_REQUEST
-paramiko.transport.MSG_USERAUTH_INFO_REQUEST paramiko.transport-module.html#MSG_USERAUTH_INFO_REQUEST
-paramiko.transport.MSG_DISCONNECT paramiko.transport-module.html#MSG_DISCONNECT
-paramiko.transport.MSG_IGNORE paramiko.transport-module.html#MSG_IGNORE
-paramiko.transport.MSG_USERAUTH_FAILURE paramiko.transport-module.html#MSG_USERAUTH_FAILURE
-paramiko.transport.MSG_CHANNEL_DATA paramiko.transport-module.html#MSG_CHANNEL_DATA
-paramiko.transport.MSG_UNIMPLEMENTED paramiko.transport-module.html#MSG_UNIMPLEMENTED
-paramiko.transport.MSG_DEBUG paramiko.transport-module.html#MSG_DEBUG
-paramiko.transport.OPEN_SUCCEEDED paramiko.transport-module.html#OPEN_SUCCEEDED
-paramiko.transport.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE paramiko.transport-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.transport.INFO paramiko.transport-module.html#INFO
-paramiko.transport.DISCONNECT_SERVICE_NOT_AVAILABLE paramiko.transport-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.transport.MSG_CHANNEL_EXTENDED_DATA paramiko.transport-module.html#MSG_CHANNEL_EXTENDED_DATA
-paramiko.transport.CONNECTION_FAILED_CODE paramiko.transport-module.html#CONNECTION_FAILED_CODE
-paramiko.transport.MSG_CHANNEL_OPEN paramiko.transport-module.html#MSG_CHANNEL_OPEN
-paramiko.transport.MSG_USERAUTH_INFO_RESPONSE paramiko.transport-module.html#MSG_USERAUTH_INFO_RESPONSE
-paramiko.transport.MSG_REQUEST_FAILURE paramiko.transport-module.html#MSG_REQUEST_FAILURE
-paramiko.transport.__package__ paramiko.transport-module.html#__package__
-paramiko.transport.AUTH_PARTIALLY_SUCCESSFUL paramiko.transport-module.html#AUTH_PARTIALLY_SUCCESSFUL
-paramiko.transport.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED paramiko.transport-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.transport.MSG_CHANNEL_FAILURE paramiko.transport-module.html#MSG_CHANNEL_FAILURE
-paramiko.transport.rng paramiko.transport-module.html#rng
-paramiko.transport.MSG_REQUEST_SUCCESS paramiko.transport-module.html#MSG_REQUEST_SUCCESS
-paramiko.transport.OPEN_FAILED_CONNECT_FAILED paramiko.transport-module.html#OPEN_FAILED_CONNECT_FAILED
-paramiko.transport.MSG_USERAUTH_REQUEST paramiko.transport-module.html#MSG_USERAUTH_REQUEST
-paramiko.transport._join_lingering_threads paramiko.transport-module.html#_join_lingering_threads
-paramiko.transport.MSG_SERVICE_REQUEST paramiko.transport-module.html#MSG_SERVICE_REQUEST
-paramiko.transport.MSG_CHANNEL_CLOSE paramiko.transport-module.html#MSG_CHANNEL_CLOSE
-paramiko.transport.MSG_CHANNEL_OPEN_SUCCESS paramiko.transport-module.html#MSG_CHANNEL_OPEN_SUCCESS
-paramiko.util paramiko.util-module.html
-paramiko.util.AUTH_SUCCESSFUL paramiko.util-module.html#AUTH_SUCCESSFUL
-paramiko.util.generate_key_bytes paramiko.util-module.html#generate_key_bytes
-paramiko.util.MSG_KEXINIT paramiko.util-module.html#MSG_KEXINIT
-paramiko.util.MSG_CHANNEL_WINDOW_ADJUST paramiko.util-module.html#MSG_CHANNEL_WINDOW_ADJUST
-paramiko.util.MSG_CHANNEL_REQUEST paramiko.util-module.html#MSG_CHANNEL_REQUEST
-paramiko.util.MSG_NAMES paramiko.util-module.html#MSG_NAMES
-paramiko.util.get_thread_id paramiko.util-module.html#get_thread_id
-paramiko.util.lookup_ssh_host_config paramiko.util-module.html#lookup_ssh_host_config
-paramiko.util.MSG_CHANNEL_OPEN paramiko.util-module.html#MSG_CHANNEL_OPEN
-paramiko.util.tb_strings paramiko.util-module.html#tb_strings
-paramiko.util.load_host_keys paramiko.util-module.html#load_host_keys
-paramiko.util.MSG_REQUEST_SUCCESS paramiko.util-module.html#MSG_REQUEST_SUCCESS
-paramiko.util.MSG_DISCONNECT paramiko.util-module.html#MSG_DISCONNECT
-paramiko.util.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE paramiko.util-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.util.MSG_SERVICE_ACCEPT paramiko.util-module.html#MSG_SERVICE_ACCEPT
-paramiko.util.MSG_IGNORE paramiko.util-module.html#MSG_IGNORE
-paramiko.util._g_thread_lock paramiko.util-module.html#_g_thread_lock
-paramiko.util.deflate_long paramiko.util-module.html#deflate_long
-paramiko.util.MSG_GLOBAL_REQUEST paramiko.util-module.html#MSG_GLOBAL_REQUEST
-paramiko.util.MSG_USERAUTH_INFO_RESPONSE paramiko.util-module.html#MSG_USERAUTH_INFO_RESPONSE
-paramiko.util.get_logger paramiko.util-module.html#get_logger
-paramiko.util.MSG_CHANNEL_SUCCESS paramiko.util-module.html#MSG_CHANNEL_SUCCESS
-paramiko.util.MSG_USERAUTH_FAILURE paramiko.util-module.html#MSG_USERAUTH_FAILURE
-paramiko.util.MSG_REQUEST_FAILURE paramiko.util-module.html#MSG_REQUEST_FAILURE
-paramiko.util.inflate_long paramiko.util-module.html#inflate_long
-paramiko.util.__package__ paramiko.util-module.html#__package__
-paramiko.util.safe_string paramiko.util-module.html#safe_string
-paramiko.util._g_thread_counter paramiko.util-module.html#_g_thread_counter
-paramiko.util.MSG_CHANNEL_DATA paramiko.util-module.html#MSG_CHANNEL_DATA
-paramiko.util.CRITICAL paramiko.util-module.html#CRITICAL
-paramiko.util.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED paramiko.util-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.util.parse_ssh_config paramiko.util-module.html#parse_ssh_config
-paramiko.util.MSG_UNIMPLEMENTED paramiko.util-module.html#MSG_UNIMPLEMENTED
-paramiko.util.bit_length paramiko.util-module.html#bit_length
-paramiko.util.unhexify paramiko.util-module.html#unhexify
-paramiko.util.MSG_CHANNEL_OPEN_FAILURE paramiko.util-module.html#MSG_CHANNEL_OPEN_FAILURE
-paramiko.util.MSG_USERAUTH_INFO_REQUEST paramiko.util-module.html#MSG_USERAUTH_INFO_REQUEST
-paramiko.util.log_to_file paramiko.util-module.html#log_to_file
-paramiko.util.MSG_DEBUG paramiko.util-module.html#MSG_DEBUG
-paramiko.util.MSG_CHANNEL_FAILURE paramiko.util-module.html#MSG_CHANNEL_FAILURE
-paramiko.util.OPEN_SUCCEEDED paramiko.util-module.html#OPEN_SUCCEEDED
-paramiko.util.format_binary_weird paramiko.util-module.html#format_binary_weird
-paramiko.util.format_binary_line paramiko.util-module.html#format_binary_line
-paramiko.util.rng paramiko.util-module.html#rng
-paramiko.util.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE paramiko.util-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.util.OPEN_FAILED_RESOURCE_SHORTAGE paramiko.util-module.html#OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.util.ERROR paramiko.util-module.html#ERROR
-paramiko.util.DEBUG paramiko.util-module.html#DEBUG
-paramiko.util.AUTH_PARTIALLY_SUCCESSFUL paramiko.util-module.html#AUTH_PARTIALLY_SUCCESSFUL
-paramiko.util.hexify paramiko.util-module.html#hexify
-paramiko.util.OPEN_FAILED_CONNECT_FAILED paramiko.util-module.html#OPEN_FAILED_CONNECT_FAILED
-paramiko.util.INFO paramiko.util-module.html#INFO
-paramiko.util.MSG_USERAUTH_BANNER paramiko.util-module.html#MSG_USERAUTH_BANNER
-paramiko.util.MSG_NEWKEYS paramiko.util-module.html#MSG_NEWKEYS
-paramiko.util.MSG_USERAUTH_PK_OK paramiko.util-module.html#MSG_USERAUTH_PK_OK
-paramiko.util.WARNING paramiko.util-module.html#WARNING
-paramiko.util.mod_inverse paramiko.util-module.html#mod_inverse
-paramiko.util.MSG_USERAUTH_REQUEST paramiko.util-module.html#MSG_USERAUTH_REQUEST
-paramiko.util.DISCONNECT_SERVICE_NOT_AVAILABLE paramiko.util-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.util.PY22 paramiko.util-module.html#PY22
-paramiko.util.MSG_SERVICE_REQUEST paramiko.util-module.html#MSG_SERVICE_REQUEST
-paramiko.util.AUTH_FAILED paramiko.util-module.html#AUTH_FAILED
-paramiko.util._pfilter paramiko.util-module.html#_pfilter
-paramiko.util.MSG_CHANNEL_EXTENDED_DATA paramiko.util-module.html#MSG_CHANNEL_EXTENDED_DATA
-paramiko.util.format_binary paramiko.util-module.html#format_binary
-paramiko.util.MSG_CHANNEL_CLOSE paramiko.util-module.html#MSG_CHANNEL_CLOSE
-paramiko.util.DISCONNECT_AUTH_CANCELLED_BY_USER paramiko.util-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.util.MSG_CHANNEL_OPEN_SUCCESS paramiko.util-module.html#MSG_CHANNEL_OPEN_SUCCESS
-paramiko.util.MSG_CHANNEL_EOF paramiko.util-module.html#MSG_CHANNEL_EOF
-paramiko.util._g_thread_ids paramiko.util-module.html#_g_thread_ids
-paramiko.util.MSG_USERAUTH_SUCCESS paramiko.util-module.html#MSG_USERAUTH_SUCCESS
-paramiko.util.CONNECTION_FAILED_CODE paramiko.util-module.html#CONNECTION_FAILED_CODE
-paramiko.win_pageant paramiko.win_pageant-module.html
-paramiko.win_pageant.win32con_WM_COPYDATA paramiko.win_pageant-module.html#win32con_WM_COPYDATA
-paramiko.win_pageant._AGENT_MAX_MSGLEN paramiko.win_pageant-module.html#_AGENT_MAX_MSGLEN
-paramiko.win_pageant._query_pageant paramiko.win_pageant-module.html#_query_pageant
-paramiko.win_pageant.__package__ paramiko.win_pageant-module.html#__package__
-paramiko.win_pageant._AGENT_COPYDATA_ID paramiko.win_pageant-module.html#_AGENT_COPYDATA_ID
-paramiko.win_pageant._get_pageant_window_object paramiko.win_pageant-module.html#_get_pageant_window_object
-paramiko.win_pageant._has_win32all paramiko.win_pageant-module.html#_has_win32all
-paramiko.win_pageant._has_ctypes paramiko.win_pageant-module.html#_has_ctypes
-paramiko.win_pageant.can_talk_to_agent paramiko.win_pageant-module.html#can_talk_to_agent
-paramiko.Agent paramiko.Agent-class.html
-paramiko.Agent._send_message paramiko.Agent-class.html#_send_message
-paramiko.Agent.close paramiko.Agent-class.html#close
-paramiko.Agent.get_keys paramiko.Agent-class.html#get_keys
-paramiko.Agent.__init__ paramiko.Agent-class.html#__init__
-paramiko.Agent._read_all paramiko.Agent-class.html#_read_all
-paramiko.AgentKey paramiko.AgentKey-class.html
-paramiko.AgentKey.sign_ssh_data paramiko.AgentKey-class.html#sign_ssh_data
-paramiko.PKey.write_private_key_file paramiko.PKey-class.html#write_private_key_file
-paramiko.AgentKey.__str__ paramiko.AgentKey-class.html#__str__
-paramiko.PKey._write_private_key_file paramiko.PKey-class.html#_write_private_key_file
-paramiko.PKey.__cmp__ paramiko.PKey-class.html#__cmp__
-paramiko.AgentKey.__init__ paramiko.AgentKey-class.html#__init__
-paramiko.PKey.get_bits paramiko.PKey-class.html#get_bits
-paramiko.PKey.from_private_key paramiko.PKey-class.html#from_private_key
-paramiko.PKey.from_private_key_file paramiko.PKey-class.html#from_private_key_file
-paramiko.PKey.verify_ssh_sig paramiko.PKey-class.html#verify_ssh_sig
-paramiko.PKey._CIPHER_TABLE paramiko.PKey-class.html#_CIPHER_TABLE
-paramiko.PKey.get_fingerprint paramiko.PKey-class.html#get_fingerprint
-paramiko.PKey._write_private_key paramiko.PKey-class.html#_write_private_key
-paramiko.PKey.get_base64 paramiko.PKey-class.html#get_base64
-paramiko.PKey._read_private_key paramiko.PKey-class.html#_read_private_key
-paramiko.PKey.write_private_key paramiko.PKey-class.html#write_private_key
-paramiko.AgentKey.get_name paramiko.AgentKey-class.html#get_name
-paramiko.PKey._read_private_key_file paramiko.PKey-class.html#_read_private_key_file
-paramiko.PKey.can_sign paramiko.PKey-class.html#can_sign
-paramiko.AuthenticationException paramiko.AuthenticationException-class.html
-paramiko.AutoAddPolicy paramiko.AutoAddPolicy-class.html
-paramiko.AutoAddPolicy.missing_host_key paramiko.AutoAddPolicy-class.html#missing_host_key
-paramiko.BadAuthenticationType paramiko.BadAuthenticationType-class.html
-paramiko.BadAuthenticationType.__str__ paramiko.BadAuthenticationType-class.html#__str__
-paramiko.BadAuthenticationType.allowed_types paramiko.BadAuthenticationType-class.html#allowed_types
-paramiko.BadAuthenticationType.__init__ paramiko.BadAuthenticationType-class.html#__init__
-paramiko.BadHostKeyException paramiko.BadHostKeyException-class.html
-paramiko.BadHostKeyException.expected_key paramiko.BadHostKeyException-class.html#expected_key
-paramiko.BadHostKeyException.__init__ paramiko.BadHostKeyException-class.html#__init__
-paramiko.BadHostKeyException.hostname paramiko.BadHostKeyException-class.html#hostname
-paramiko.BadHostKeyException.key paramiko.BadHostKeyException-class.html#key
-paramiko.BufferedFile paramiko.BufferedFile-class.html
-paramiko.BufferedFile.xreadlines paramiko.BufferedFile-class.html#xreadlines
-paramiko.BufferedFile.readlines paramiko.BufferedFile-class.html#readlines
-paramiko.BufferedFile.SEEK_CUR paramiko.BufferedFile-class.html#SEEK_CUR
-paramiko.BufferedFile.FLAG_READ paramiko.BufferedFile-class.html#FLAG_READ
-paramiko.BufferedFile.flush paramiko.BufferedFile-class.html#flush
-paramiko.BufferedFile.close paramiko.BufferedFile-class.html#close
-paramiko.BufferedFile._set_mode paramiko.BufferedFile-class.html#_set_mode
-paramiko.BufferedFile._write paramiko.BufferedFile-class.html#_write
-paramiko.BufferedFile.__init__ paramiko.BufferedFile-class.html#__init__
-paramiko.BufferedFile.FLAG_UNIVERSAL_NEWLINE paramiko.BufferedFile-class.html#FLAG_UNIVERSAL_NEWLINE
-paramiko.BufferedFile.readline paramiko.BufferedFile-class.html#readline
-paramiko.BufferedFile.seek paramiko.BufferedFile-class.html#seek
-paramiko.BufferedFile.next paramiko.BufferedFile-class.html#next
-paramiko.BufferedFile.write paramiko.BufferedFile-class.html#write
-paramiko.BufferedFile.read paramiko.BufferedFile-class.html#read
-paramiko.BufferedFile.tell paramiko.BufferedFile-class.html#tell
-paramiko.BufferedFile.FLAG_BINARY paramiko.BufferedFile-class.html#FLAG_BINARY
-paramiko.BufferedFile.__del__ paramiko.BufferedFile-class.html#__del__
-paramiko.BufferedFile.SEEK_SET paramiko.BufferedFile-class.html#SEEK_SET
-paramiko.BufferedFile.FLAG_APPEND paramiko.BufferedFile-class.html#FLAG_APPEND
-paramiko.BufferedFile.__iter__ paramiko.BufferedFile-class.html#__iter__
-paramiko.BufferedFile._record_newline paramiko.BufferedFile-class.html#_record_newline
-paramiko.BufferedFile._DEFAULT_BUFSIZE paramiko.BufferedFile-class.html#_DEFAULT_BUFSIZE
-paramiko.BufferedFile.FLAG_BUFFERED paramiko.BufferedFile-class.html#FLAG_BUFFERED
-paramiko.BufferedFile._write_all paramiko.BufferedFile-class.html#_write_all
-paramiko.BufferedFile.writelines paramiko.BufferedFile-class.html#writelines
-paramiko.BufferedFile.SEEK_END paramiko.BufferedFile-class.html#SEEK_END
-paramiko.BufferedFile._read paramiko.BufferedFile-class.html#_read
-paramiko.BufferedFile.FLAG_LINE_BUFFERED paramiko.BufferedFile-class.html#FLAG_LINE_BUFFERED
-paramiko.BufferedFile._get_size paramiko.BufferedFile-class.html#_get_size
-paramiko.BufferedFile.FLAG_WRITE paramiko.BufferedFile-class.html#FLAG_WRITE
-paramiko.Channel paramiko.Channel-class.html
-paramiko.Channel.makefile_stderr paramiko.Channel-class.html#makefile_stderr
-paramiko.Channel.gettimeout paramiko.Channel-class.html#gettimeout
-paramiko.Channel.shutdown_read paramiko.Channel-class.html#shutdown_read
-paramiko.Channel.set_combine_stderr paramiko.Channel-class.html#set_combine_stderr
-paramiko.Channel.send_ready paramiko.Channel-class.html#send_ready
-paramiko.Channel._unlink paramiko.Channel-class.html#_unlink
-paramiko.Channel.shutdown paramiko.Channel-class.html#shutdown
-paramiko.Channel.get_transport paramiko.Channel-class.html#get_transport
-paramiko.Channel.sendall_stderr paramiko.Channel-class.html#sendall_stderr
-paramiko.Channel.close paramiko.Channel-class.html#close
-paramiko.Channel.send_exit_status paramiko.Channel-class.html#send_exit_status
-paramiko.Channel.recv_stderr paramiko.Channel-class.html#recv_stderr
-paramiko.Channel.__init__ paramiko.Channel-class.html#__init__
-paramiko.Channel._set_closed paramiko.Channel-class.html#_set_closed
-paramiko.Channel.exit_status_ready paramiko.Channel-class.html#exit_status_ready
-paramiko.Channel.request_x11 paramiko.Channel-class.html#request_x11
-paramiko.Channel.recv_ready paramiko.Channel-class.html#recv_ready
-paramiko.Channel._feed_extended paramiko.Channel-class.html#_feed_extended
-paramiko.Channel.shutdown_write paramiko.Channel-class.html#shutdown_write
-paramiko.Channel._set_remote_channel paramiko.Channel-class.html#_set_remote_channel
-paramiko.Channel._feed paramiko.Channel-class.html#_feed
-paramiko.Channel.makefile paramiko.Channel-class.html#makefile
-paramiko.Channel._handle_close paramiko.Channel-class.html#_handle_close
-paramiko.Channel.send paramiko.Channel-class.html#send
-paramiko.Channel._handle_request paramiko.Channel-class.html#_handle_request
-paramiko.Channel.resize_pty paramiko.Channel-class.html#resize_pty
-paramiko.Channel.get_pty paramiko.Channel-class.html#get_pty
-paramiko.Channel.recv_stderr_ready paramiko.Channel-class.html#recv_stderr_ready
-paramiko.Channel._request_success paramiko.Channel-class.html#_request_success
-paramiko.Channel._send_eof paramiko.Channel-class.html#_send_eof
-paramiko.Channel._window_adjust paramiko.Channel-class.html#_window_adjust
-paramiko.Channel._event_pending paramiko.Channel-class.html#_event_pending
-paramiko.Channel.__del__ paramiko.Channel-class.html#__del__
-paramiko.Channel._check_add_window paramiko.Channel-class.html#_check_add_window
-paramiko.Channel.invoke_subsystem paramiko.Channel-class.html#invoke_subsystem
-paramiko.Channel.invoke_shell paramiko.Channel-class.html#invoke_shell
-paramiko.Channel.recv_exit_status paramiko.Channel-class.html#recv_exit_status
-paramiko.Channel._request_failed paramiko.Channel-class.html#_request_failed
-paramiko.Channel.get_id paramiko.Channel-class.html#get_id
-paramiko.Channel.send_stderr paramiko.Channel-class.html#send_stderr
-paramiko.Channel._log paramiko.Channel-class.html#_log
-paramiko.Channel.getpeername paramiko.Channel-class.html#getpeername
-paramiko.Channel.recv paramiko.Channel-class.html#recv
-paramiko.Channel.exec_command paramiko.Channel-class.html#exec_command
-paramiko.Channel.setblocking paramiko.Channel-class.html#setblocking
-paramiko.Channel._wait_for_event paramiko.Channel-class.html#_wait_for_event
-paramiko.Channel.fileno paramiko.Channel-class.html#fileno
-paramiko.Channel.set_name paramiko.Channel-class.html#set_name
-paramiko.Channel._handle_eof paramiko.Channel-class.html#_handle_eof
-paramiko.Channel._close_internal paramiko.Channel-class.html#_close_internal
-paramiko.Channel._set_window paramiko.Channel-class.html#_set_window
-paramiko.Channel._set_transport paramiko.Channel-class.html#_set_transport
-paramiko.Channel.get_name paramiko.Channel-class.html#get_name
-paramiko.Channel.__repr__ paramiko.Channel-class.html#__repr__
-paramiko.Channel.sendall paramiko.Channel-class.html#sendall
-paramiko.Channel._wait_for_send_window paramiko.Channel-class.html#_wait_for_send_window
-paramiko.Channel.settimeout paramiko.Channel-class.html#settimeout
-paramiko.ChannelException paramiko.ChannelException-class.html
-paramiko.ChannelException.code paramiko.ChannelException-class.html#code
-paramiko.ChannelException.__init__ paramiko.ChannelException-class.html#__init__
-paramiko.DSSKey paramiko.DSSKey-class.html
-paramiko.DSSKey.sign_ssh_data paramiko.DSSKey-class.html#sign_ssh_data
-paramiko.DSSKey._from_private_key paramiko.DSSKey-class.html#_from_private_key
-paramiko.DSSKey.write_private_key_file paramiko.DSSKey-class.html#write_private_key_file
-paramiko.DSSKey.__str__ paramiko.DSSKey-class.html#__str__
-paramiko.PKey._write_private_key_file paramiko.PKey-class.html#_write_private_key_file
-paramiko.PKey.__cmp__ paramiko.PKey-class.html#__cmp__
-paramiko.DSSKey.__init__ paramiko.DSSKey-class.html#__init__
-paramiko.DSSKey._from_private_key_file paramiko.DSSKey-class.html#_from_private_key_file
-paramiko.DSSKey.get_bits paramiko.DSSKey-class.html#get_bits
-paramiko.PKey.from_private_key paramiko.PKey-class.html#from_private_key
-paramiko.DSSKey.verify_ssh_sig paramiko.DSSKey-class.html#verify_ssh_sig
-paramiko.DSSKey.can_sign paramiko.DSSKey-class.html#can_sign
-paramiko.PKey.from_private_key_file paramiko.PKey-class.html#from_private_key_file
-paramiko.PKey._CIPHER_TABLE paramiko.PKey-class.html#_CIPHER_TABLE
-paramiko.PKey.get_fingerprint paramiko.PKey-class.html#get_fingerprint
-paramiko.PKey._write_private_key paramiko.PKey-class.html#_write_private_key
-paramiko.PKey.get_base64 paramiko.PKey-class.html#get_base64
-paramiko.PKey._read_private_key paramiko.PKey-class.html#_read_private_key
-paramiko.DSSKey.write_private_key paramiko.DSSKey-class.html#write_private_key
-paramiko.DSSKey.generate paramiko.DSSKey-class.html#generate
-paramiko.DSSKey.get_name paramiko.DSSKey-class.html#get_name
-paramiko.DSSKey._encode_key paramiko.DSSKey-class.html#_encode_key
-paramiko.DSSKey._decode_key paramiko.DSSKey-class.html#_decode_key
-paramiko.DSSKey.__hash__ paramiko.DSSKey-class.html#__hash__
-paramiko.PKey._read_private_key_file paramiko.PKey-class.html#_read_private_key_file
-paramiko.HostKeys paramiko.HostKeys-class.html
-paramiko.HostKeys.load paramiko.HostKeys-class.html#load
-paramiko.HostKeys.check paramiko.HostKeys-class.html#check
-paramiko.HostKeys.__init__ paramiko.HostKeys-class.html#__init__
-paramiko.HostKeys.add paramiko.HostKeys-class.html#add
-paramiko.HostKeys.lookup paramiko.HostKeys-class.html#lookup
-paramiko.HostKeys.save paramiko.HostKeys-class.html#save
-paramiko.HostKeys.__getitem__ paramiko.HostKeys-class.html#__getitem__
-paramiko.HostKeys.keys paramiko.HostKeys-class.html#keys
-paramiko.HostKeys.hash_host paramiko.HostKeys-class.html#hash_host
-paramiko.HostKeys.clear paramiko.HostKeys-class.html#clear
-paramiko.HostKeys.__setitem__ paramiko.HostKeys-class.html#__setitem__
-paramiko.HostKeys.values paramiko.HostKeys-class.html#values
-paramiko.Message paramiko.Message-class.html
-paramiko.Message.get_byte paramiko.Message-class.html#get_byte
-paramiko.Message.__str__ paramiko.Message-class.html#__str__
-paramiko.Message.get_so_far paramiko.Message-class.html#get_so_far
-paramiko.Message._add paramiko.Message-class.html#_add
-paramiko.Message.add_list paramiko.Message-class.html#add_list
-paramiko.Message.__init__ paramiko.Message-class.html#__init__
-paramiko.Message.get_mpint paramiko.Message-class.html#get_mpint
-paramiko.Message.add_byte paramiko.Message-class.html#add_byte
-paramiko.Message.get_list paramiko.Message-class.html#get_list
-paramiko.Message.add paramiko.Message-class.html#add
-paramiko.Message.get_string paramiko.Message-class.html#get_string
-paramiko.Message.rewind paramiko.Message-class.html#rewind
-paramiko.Message.get_bytes paramiko.Message-class.html#get_bytes
-paramiko.Message.get_boolean paramiko.Message-class.html#get_boolean
-paramiko.Message.get_int64 paramiko.Message-class.html#get_int64
-paramiko.Message.add_boolean paramiko.Message-class.html#add_boolean
-paramiko.Message.add_int64 paramiko.Message-class.html#add_int64
-paramiko.Message.add_bytes paramiko.Message-class.html#add_bytes
-paramiko.Message.add_int paramiko.Message-class.html#add_int
-paramiko.Message.get_int paramiko.Message-class.html#get_int
-paramiko.Message.__repr__ paramiko.Message-class.html#__repr__
-paramiko.Message.get_remainder paramiko.Message-class.html#get_remainder
-paramiko.Message.add_string paramiko.Message-class.html#add_string
-paramiko.Message.add_mpint paramiko.Message-class.html#add_mpint
-paramiko.MissingHostKeyPolicy paramiko.MissingHostKeyPolicy-class.html
-paramiko.MissingHostKeyPolicy.missing_host_key paramiko.MissingHostKeyPolicy-class.html#missing_host_key
-paramiko.PKey paramiko.PKey-class.html
-paramiko.PKey.sign_ssh_data paramiko.PKey-class.html#sign_ssh_data
-paramiko.PKey.write_private_key_file paramiko.PKey-class.html#write_private_key_file
-paramiko.PKey.__str__ paramiko.PKey-class.html#__str__
-paramiko.PKey._write_private_key_file paramiko.PKey-class.html#_write_private_key_file
-paramiko.PKey.__cmp__ paramiko.PKey-class.html#__cmp__
-paramiko.PKey.__init__ paramiko.PKey-class.html#__init__
-paramiko.PKey.get_bits paramiko.PKey-class.html#get_bits
-paramiko.PKey.from_private_key paramiko.PKey-class.html#from_private_key
-paramiko.PKey.from_private_key_file paramiko.PKey-class.html#from_private_key_file
-paramiko.PKey.verify_ssh_sig paramiko.PKey-class.html#verify_ssh_sig
-paramiko.PKey._CIPHER_TABLE paramiko.PKey-class.html#_CIPHER_TABLE
-paramiko.PKey.get_fingerprint paramiko.PKey-class.html#get_fingerprint
-paramiko.PKey._write_private_key paramiko.PKey-class.html#_write_private_key
-paramiko.PKey.get_base64 paramiko.PKey-class.html#get_base64
-paramiko.PKey._read_private_key paramiko.PKey-class.html#_read_private_key
-paramiko.PKey.write_private_key paramiko.PKey-class.html#write_private_key
-paramiko.PKey.get_name paramiko.PKey-class.html#get_name
-paramiko.PKey.can_sign paramiko.PKey-class.html#can_sign
-paramiko.PKey._read_private_key_file paramiko.PKey-class.html#_read_private_key_file
-paramiko.PasswordRequiredException paramiko.PasswordRequiredException-class.html
-paramiko.RSAKey paramiko.RSAKey-class.html
-paramiko.RSAKey.sign_ssh_data paramiko.RSAKey-class.html#sign_ssh_data
-paramiko.RSAKey._from_private_key paramiko.RSAKey-class.html#_from_private_key
-paramiko.PKey.from_private_key paramiko.PKey-class.html#from_private_key
-paramiko.RSAKey.__str__ paramiko.RSAKey-class.html#__str__
-paramiko.PKey._write_private_key_file paramiko.PKey-class.html#_write_private_key_file
-paramiko.PKey.__cmp__ paramiko.PKey-class.html#__cmp__
-paramiko.RSAKey.__init__ paramiko.RSAKey-class.html#__init__
-paramiko.RSAKey._from_private_key_file paramiko.RSAKey-class.html#_from_private_key_file
-paramiko.RSAKey.get_bits paramiko.RSAKey-class.html#get_bits
-paramiko.RSAKey.write_private_key_file paramiko.RSAKey-class.html#write_private_key_file
-paramiko.RSAKey.verify_ssh_sig paramiko.RSAKey-class.html#verify_ssh_sig
-paramiko.RSAKey._pkcs1imify paramiko.RSAKey-class.html#_pkcs1imify
-paramiko.PKey.from_private_key_file paramiko.PKey-class.html#from_private_key_file
-paramiko.PKey._CIPHER_TABLE paramiko.PKey-class.html#_CIPHER_TABLE
-paramiko.PKey.get_fingerprint paramiko.PKey-class.html#get_fingerprint
-paramiko.PKey._write_private_key paramiko.PKey-class.html#_write_private_key
-paramiko.PKey.get_base64 paramiko.PKey-class.html#get_base64
-paramiko.PKey._read_private_key paramiko.PKey-class.html#_read_private_key
-paramiko.RSAKey.write_private_key paramiko.RSAKey-class.html#write_private_key
-paramiko.RSAKey.generate paramiko.RSAKey-class.html#generate
-paramiko.PKey._read_private_key_file paramiko.PKey-class.html#_read_private_key_file
-paramiko.RSAKey.get_name paramiko.RSAKey-class.html#get_name
-paramiko.RSAKey.can_sign paramiko.RSAKey-class.html#can_sign
-paramiko.RSAKey._decode_key paramiko.RSAKey-class.html#_decode_key
-paramiko.RSAKey.__hash__ paramiko.RSAKey-class.html#__hash__
-paramiko.RSAKey._encode_key paramiko.RSAKey-class.html#_encode_key
-paramiko.RejectPolicy paramiko.RejectPolicy-class.html
-paramiko.RejectPolicy.missing_host_key paramiko.RejectPolicy-class.html#missing_host_key
-paramiko.SFTP paramiko.SFTP-class.html
-paramiko.SFTPClient.rename paramiko.SFTPClient-class.html#rename
-paramiko.SFTPClient._request paramiko.SFTPClient-class.html#_request
-paramiko.SFTPClient.stat paramiko.SFTPClient-class.html#stat
-paramiko.SFTPClient.chmod paramiko.SFTPClient-class.html#chmod
-paramiko.SFTPClient.file paramiko.SFTPClient-class.html#file
-paramiko.SFTPClient.close paramiko.SFTPClient-class.html#close
-paramiko.SFTPClient.open paramiko.SFTPClient-class.html#open
-paramiko.SFTPClient.__init__ paramiko.SFTPClient-class.html#__init__
-paramiko.SFTPClient.normalize paramiko.SFTPClient-class.html#normalize
-paramiko.SFTPClient._convert_status paramiko.SFTPClient-class.html#_convert_status
-paramiko.SFTPClient.lstat paramiko.SFTPClient-class.html#lstat
-paramiko.SFTPClient.mkdir paramiko.SFTPClient-class.html#mkdir
-paramiko.SFTPClient._finish_responses paramiko.SFTPClient-class.html#_finish_responses
-paramiko.SFTPClient._adjust_cwd paramiko.SFTPClient-class.html#_adjust_cwd
-paramiko.SFTPClient.rmdir paramiko.SFTPClient-class.html#rmdir
-paramiko.SFTPClient.listdir paramiko.SFTPClient-class.html#listdir
-paramiko.SFTPClient.truncate paramiko.SFTPClient-class.html#truncate
-paramiko.SFTPClient.get paramiko.SFTPClient-class.html#get
-paramiko.SFTPClient.get_channel paramiko.SFTPClient-class.html#get_channel
-paramiko.SFTPClient.getcwd paramiko.SFTPClient-class.html#getcwd
-paramiko.SFTPClient._async_request paramiko.SFTPClient-class.html#_async_request
-paramiko.SFTPClient.symlink paramiko.SFTPClient-class.html#symlink
-paramiko.SFTPClient.readlink paramiko.SFTPClient-class.html#readlink
-paramiko.SFTPClient._log paramiko.SFTPClient-class.html#_log
-paramiko.SFTPClient.put paramiko.SFTPClient-class.html#put
-paramiko.SFTPClient.unlink paramiko.SFTPClient-class.html#unlink
-paramiko.SFTPClient.listdir_attr paramiko.SFTPClient-class.html#listdir_attr
-paramiko.SFTPClient.utime paramiko.SFTPClient-class.html#utime
-paramiko.SFTPClient.chdir paramiko.SFTPClient-class.html#chdir
-paramiko.SFTPClient.remove paramiko.SFTPClient-class.html#remove
-paramiko.SFTPClient.from_transport paramiko.SFTPClient-class.html#from_transport
-paramiko.SFTPClient.chown paramiko.SFTPClient-class.html#chown
-paramiko.SFTPClient._read_response paramiko.SFTPClient-class.html#_read_response
-paramiko.SFTPAttributes paramiko.SFTPAttributes-class.html
-paramiko.SFTPAttributes.__str__ paramiko.SFTPAttributes-class.html#__str__
-paramiko.SFTPAttributes.FLAG_AMTIME paramiko.SFTPAttributes-class.html#FLAG_AMTIME
-paramiko.SFTPAttributes._pack paramiko.SFTPAttributes-class.html#_pack
-paramiko.SFTPAttributes.__init__ paramiko.SFTPAttributes-class.html#__init__
-paramiko.SFTPAttributes.FLAG_EXTENDED paramiko.SFTPAttributes-class.html#FLAG_EXTENDED
-paramiko.SFTPAttributes.FLAG_PERMISSIONS paramiko.SFTPAttributes-class.html#FLAG_PERMISSIONS
-paramiko.SFTPAttributes._unpack paramiko.SFTPAttributes-class.html#_unpack
-paramiko.SFTPAttributes.from_stat paramiko.SFTPAttributes-class.html#from_stat
-paramiko.SFTPAttributes.FLAG_UIDGID paramiko.SFTPAttributes-class.html#FLAG_UIDGID
-paramiko.SFTPAttributes._rwx paramiko.SFTPAttributes-class.html#_rwx
-paramiko.SFTPAttributes._debug_str paramiko.SFTPAttributes-class.html#_debug_str
-paramiko.SFTPAttributes.FLAG_SIZE paramiko.SFTPAttributes-class.html#FLAG_SIZE
-paramiko.SFTPAttributes.__repr__ paramiko.SFTPAttributes-class.html#__repr__
-paramiko.SFTPAttributes._from_msg paramiko.SFTPAttributes-class.html#_from_msg
-paramiko.SFTPClient paramiko.SFTPClient-class.html
-paramiko.SFTPClient.rename paramiko.SFTPClient-class.html#rename
-paramiko.SFTPClient._request paramiko.SFTPClient-class.html#_request
-paramiko.SFTPClient.listdir paramiko.SFTPClient-class.html#listdir
-paramiko.SFTPClient.chmod paramiko.SFTPClient-class.html#chmod
-paramiko.SFTPClient.file paramiko.SFTPClient-class.html#file
-paramiko.SFTPClient.close paramiko.SFTPClient-class.html#close
-paramiko.SFTPClient.open paramiko.SFTPClient-class.html#open
-paramiko.SFTPClient.__init__ paramiko.SFTPClient-class.html#__init__
-paramiko.SFTPClient.normalize paramiko.SFTPClient-class.html#normalize
-paramiko.SFTPClient._convert_status paramiko.SFTPClient-class.html#_convert_status
-paramiko.SFTPClient.get paramiko.SFTPClient-class.html#get
-paramiko.SFTPClient.mkdir paramiko.SFTPClient-class.html#mkdir
-paramiko.SFTPClient._finish_responses paramiko.SFTPClient-class.html#_finish_responses
-paramiko.SFTPClient._adjust_cwd paramiko.SFTPClient-class.html#_adjust_cwd
-paramiko.SFTPClient.rmdir paramiko.SFTPClient-class.html#rmdir
-paramiko.SFTPClient.stat paramiko.SFTPClient-class.html#stat
-paramiko.SFTPClient.truncate paramiko.SFTPClient-class.html#truncate
-paramiko.SFTPClient.lstat paramiko.SFTPClient-class.html#lstat
-paramiko.SFTPClient.get_channel paramiko.SFTPClient-class.html#get_channel
-paramiko.SFTPClient.getcwd paramiko.SFTPClient-class.html#getcwd
-paramiko.SFTPClient._async_request paramiko.SFTPClient-class.html#_async_request
-paramiko.SFTPClient.symlink paramiko.SFTPClient-class.html#symlink
-paramiko.SFTPClient.readlink paramiko.SFTPClient-class.html#readlink
-paramiko.SFTPClient._log paramiko.SFTPClient-class.html#_log
-paramiko.SFTPClient.put paramiko.SFTPClient-class.html#put
-paramiko.SFTPClient.unlink paramiko.SFTPClient-class.html#unlink
-paramiko.SFTPClient.listdir_attr paramiko.SFTPClient-class.html#listdir_attr
-paramiko.SFTPClient.utime paramiko.SFTPClient-class.html#utime
-paramiko.SFTPClient.chdir paramiko.SFTPClient-class.html#chdir
-paramiko.SFTPClient.remove paramiko.SFTPClient-class.html#remove
-paramiko.SFTPClient.from_transport paramiko.SFTPClient-class.html#from_transport
-paramiko.SFTPClient.chown paramiko.SFTPClient-class.html#chown
-paramiko.SFTPClient._read_response paramiko.SFTPClient-class.html#_read_response
-paramiko.SFTPError paramiko.SFTPError-class.html
-paramiko.SFTPFile paramiko.SFTPFile-class.html
-paramiko.BufferedFile._record_newline paramiko.BufferedFile-class.html#_record_newline
-paramiko.SFTPFile._get_size paramiko.SFTPFile-class.html#_get_size
-paramiko.SFTPFile.gettimeout paramiko.SFTPFile-class.html#gettimeout
-paramiko.BufferedFile.xreadlines paramiko.BufferedFile-class.html#xreadlines
-paramiko.BufferedFile.readlines paramiko.BufferedFile-class.html#readlines
-paramiko.SFTPFile.chmod paramiko.SFTPFile-class.html#chmod
-paramiko.BufferedFile.SEEK_CUR paramiko.BufferedFile-class.html#SEEK_CUR
-paramiko.BufferedFile.FLAG_READ paramiko.BufferedFile-class.html#FLAG_READ
-paramiko.SFTPFile.readv paramiko.SFTPFile-class.html#readv
-paramiko.SFTPFile.close paramiko.SFTPFile-class.html#close
-paramiko.BufferedFile.next paramiko.BufferedFile-class.html#next
-paramiko.SFTPFile.seek paramiko.SFTPFile-class.html#seek
-paramiko.SFTPFile.check paramiko.SFTPFile-class.html#check
-paramiko.SFTPFile.__init__ paramiko.SFTPFile-class.html#__init__
-paramiko.BufferedFile.FLAG_UNIVERSAL_NEWLINE paramiko.BufferedFile-class.html#FLAG_UNIVERSAL_NEWLINE
-paramiko.BufferedFile.readline paramiko.BufferedFile-class.html#readline
-paramiko.BufferedFile._set_mode paramiko.BufferedFile-class.html#_set_mode
-paramiko.BufferedFile.flush paramiko.BufferedFile-class.html#flush
-paramiko.SFTPFile._async_response paramiko.SFTPFile-class.html#_async_response
-paramiko.SFTPFile._read_prefetch paramiko.SFTPFile-class.html#_read_prefetch
-paramiko.BufferedFile.write paramiko.BufferedFile-class.html#write
-paramiko.SFTPFile.__del__ paramiko.SFTPFile-class.html#__del__
-paramiko.SFTPFile._start_prefetch paramiko.SFTPFile-class.html#_start_prefetch
-paramiko.BufferedFile._DEFAULT_BUFSIZE paramiko.BufferedFile-class.html#_DEFAULT_BUFSIZE
-paramiko.BufferedFile.tell paramiko.BufferedFile-class.html#tell
-paramiko.SFTPFile._close paramiko.SFTPFile-class.html#_close
-paramiko.SFTPFile.stat paramiko.SFTPFile-class.html#stat
-paramiko.BufferedFile.FLAG_BINARY paramiko.BufferedFile-class.html#FLAG_BINARY
-paramiko.SFTPFile.truncate paramiko.SFTPFile-class.html#truncate
-paramiko.SFTPFile.MAX_REQUEST_SIZE paramiko.SFTPFile-class.html#MAX_REQUEST_SIZE
-paramiko.BufferedFile.SEEK_SET paramiko.BufferedFile-class.html#SEEK_SET
-paramiko.SFTPFile._check_exception paramiko.SFTPFile-class.html#_check_exception
-paramiko.BufferedFile.FLAG_APPEND paramiko.BufferedFile-class.html#FLAG_APPEND
-paramiko.SFTPFile._data_in_prefetch_buffers paramiko.SFTPFile-class.html#_data_in_prefetch_buffers
-paramiko.BufferedFile.__iter__ paramiko.BufferedFile-class.html#__iter__
-paramiko.SFTPFile._write paramiko.SFTPFile-class.html#_write
-paramiko.SFTPFile._data_in_prefetch_requests paramiko.SFTPFile-class.html#_data_in_prefetch_requests
-paramiko.SFTPFile.setblocking paramiko.SFTPFile-class.html#setblocking
-paramiko.SFTPFile.utime paramiko.SFTPFile-class.html#utime
-paramiko.BufferedFile.FLAG_BUFFERED paramiko.BufferedFile-class.html#FLAG_BUFFERED
-paramiko.BufferedFile._write_all paramiko.BufferedFile-class.html#_write_all
-paramiko.BufferedFile.writelines paramiko.BufferedFile-class.html#writelines
-paramiko.BufferedFile.SEEK_END paramiko.BufferedFile-class.html#SEEK_END
-paramiko.BufferedFile.read paramiko.BufferedFile-class.html#read
-paramiko.SFTPFile._read paramiko.SFTPFile-class.html#_read
-paramiko.SFTPFile.set_pipelined paramiko.SFTPFile-class.html#set_pipelined
-paramiko.BufferedFile.FLAG_LINE_BUFFERED paramiko.BufferedFile-class.html#FLAG_LINE_BUFFERED
-paramiko.SFTPFile.chown paramiko.SFTPFile-class.html#chown
-paramiko.BufferedFile.FLAG_WRITE paramiko.BufferedFile-class.html#FLAG_WRITE
-paramiko.SFTPFile.prefetch paramiko.SFTPFile-class.html#prefetch
-paramiko.SFTPFile.settimeout paramiko.SFTPFile-class.html#settimeout
-paramiko.SFTPFile._prefetch_thread paramiko.SFTPFile-class.html#_prefetch_thread
-paramiko.SFTPHandle paramiko.SFTPHandle-class.html
-paramiko.SFTPHandle._set_files paramiko.SFTPHandle-class.html#_set_files
-paramiko.SFTPHandle.close paramiko.SFTPHandle-class.html#close
-paramiko.SFTPHandle.__init__ paramiko.SFTPHandle-class.html#__init__
-paramiko.SFTPHandle.write paramiko.SFTPHandle-class.html#write
-paramiko.SFTPHandle._get_name paramiko.SFTPHandle-class.html#_get_name
-paramiko.SFTPHandle.chattr paramiko.SFTPHandle-class.html#chattr
-paramiko.SFTPHandle._set_name paramiko.SFTPHandle-class.html#_set_name
-paramiko.SFTPHandle.stat paramiko.SFTPHandle-class.html#stat
-paramiko.SFTPHandle.read paramiko.SFTPHandle-class.html#read
-paramiko.SFTPHandle._get_next_files paramiko.SFTPHandle-class.html#_get_next_files
-paramiko.SFTPServer paramiko.SFTPServer-class.html
-paramiko.SFTPServer.start_subsystem paramiko.SFTPServer-class.html#start_subsystem
-paramiko.SFTPServer._send_handle_response paramiko.SFTPServer-class.html#_send_handle_response
-paramiko.SFTPServer._open_folder paramiko.SFTPServer-class.html#_open_folder
-paramiko.SFTPServer._process paramiko.SFTPServer-class.html#_process
-paramiko.SFTPServer._send_status paramiko.SFTPServer-class.html#_send_status
-paramiko.SFTPServer.__init__ paramiko.SFTPServer-class.html#__init__
-paramiko.SFTPServer._response paramiko.SFTPServer-class.html#_response
-paramiko.SubsystemHandler._run paramiko.SubsystemHandler-class.html#_run
-paramiko.SFTPServer._convert_pflags paramiko.SFTPServer-class.html#_convert_pflags
-paramiko.SFTPServer._check_file paramiko.SFTPServer-class.html#_check_file
-paramiko.SFTPServer._log paramiko.SFTPServer-class.html#_log
-paramiko.SFTPServer.finish_subsystem paramiko.SFTPServer-class.html#finish_subsystem
-paramiko.SubsystemHandler.get_server paramiko.SubsystemHandler-class.html#get_server
-paramiko.SFTPServer.convert_errno paramiko.SFTPServer-class.html#convert_errno
-paramiko.SFTPServer.set_file_attr paramiko.SFTPServer-class.html#set_file_attr
-paramiko.SFTPServer._read_folder paramiko.SFTPServer-class.html#_read_folder
-paramiko.SFTPServerInterface paramiko.SFTPServerInterface-class.html
-paramiko.SFTPServerInterface.rename paramiko.SFTPServerInterface-class.html#rename
-paramiko.SFTPServerInterface.canonicalize paramiko.SFTPServerInterface-class.html#canonicalize
-paramiko.SFTPServerInterface.open paramiko.SFTPServerInterface-class.html#open
-paramiko.SFTPServerInterface.__init__ paramiko.SFTPServerInterface-class.html#__init__
-paramiko.SFTPServerInterface.mkdir paramiko.SFTPServerInterface-class.html#mkdir
-paramiko.SFTPServerInterface.chattr paramiko.SFTPServerInterface-class.html#chattr
-paramiko.SFTPServerInterface.list_folder paramiko.SFTPServerInterface-class.html#list_folder
-paramiko.SFTPServerInterface.rmdir paramiko.SFTPServerInterface-class.html#rmdir
-paramiko.SFTPServerInterface.stat paramiko.SFTPServerInterface-class.html#stat
-paramiko.SFTPServerInterface.lstat paramiko.SFTPServerInterface-class.html#lstat
-paramiko.SFTPServerInterface.session_ended paramiko.SFTPServerInterface-class.html#session_ended
-paramiko.SFTPServerInterface.symlink paramiko.SFTPServerInterface-class.html#symlink
-paramiko.SFTPServerInterface.readlink paramiko.SFTPServerInterface-class.html#readlink
-paramiko.SFTPServerInterface.remove paramiko.SFTPServerInterface-class.html#remove
-paramiko.SFTPServerInterface.session_started paramiko.SFTPServerInterface-class.html#session_started
-paramiko.SSHClient paramiko.SSHClient-class.html
-paramiko.SSHClient.open_sftp paramiko.SSHClient-class.html#open_sftp
-paramiko.SSHClient.connect paramiko.SSHClient-class.html#connect
-paramiko.SSHClient.get_transport paramiko.SSHClient-class.html#get_transport
-paramiko.SSHClient.close paramiko.SSHClient-class.html#close
-paramiko.SSHClient.__init__ paramiko.SSHClient-class.html#__init__
-paramiko.SSHClient.set_log_channel paramiko.SSHClient-class.html#set_log_channel
-paramiko.SSHClient.load_system_host_keys paramiko.SSHClient-class.html#load_system_host_keys
-paramiko.SSHClient.load_host_keys paramiko.SSHClient-class.html#load_host_keys
-paramiko.SSHClient.save_host_keys paramiko.SSHClient-class.html#save_host_keys
-paramiko.SSHClient._auth paramiko.SSHClient-class.html#_auth
-paramiko.SSHClient.invoke_shell paramiko.SSHClient-class.html#invoke_shell
-paramiko.SSHClient._log paramiko.SSHClient-class.html#_log
-paramiko.SSHClient.exec_command paramiko.SSHClient-class.html#exec_command
-paramiko.SSHClient.get_host_keys paramiko.SSHClient-class.html#get_host_keys
-paramiko.SSHClient.set_missing_host_key_policy paramiko.SSHClient-class.html#set_missing_host_key_policy
-paramiko.SSHConfig paramiko.SSHConfig-class.html
-paramiko.SSHConfig.parse paramiko.SSHConfig-class.html#parse
-paramiko.SSHConfig.lookup paramiko.SSHConfig-class.html#lookup
-paramiko.SSHConfig.__init__ paramiko.SSHConfig-class.html#__init__
-paramiko.SSHException paramiko.SSHException-class.html
-paramiko.SecurityOptions paramiko.SecurityOptions-class.html
-paramiko.SecurityOptions._transport paramiko.SecurityOptions-class.html#_transport
-paramiko.SecurityOptions._get_digests paramiko.SecurityOptions-class.html#_get_digests
-paramiko.SecurityOptions._set_digests paramiko.SecurityOptions-class.html#_set_digests
-paramiko.SecurityOptions.__init__ paramiko.SecurityOptions-class.html#__init__
-paramiko.SecurityOptions._get_ciphers paramiko.SecurityOptions-class.html#_get_ciphers
-paramiko.SecurityOptions._set_compression paramiko.SecurityOptions-class.html#_set_compression
-paramiko.SecurityOptions.compression paramiko.SecurityOptions-class.html#compression
-paramiko.SecurityOptions.key_types paramiko.SecurityOptions-class.html#key_types
-paramiko.SecurityOptions._get_compression paramiko.SecurityOptions-class.html#_get_compression
-paramiko.SecurityOptions.digests paramiko.SecurityOptions-class.html#digests
-paramiko.SecurityOptions._set_key_types paramiko.SecurityOptions-class.html#_set_key_types
-paramiko.SecurityOptions.ciphers paramiko.SecurityOptions-class.html#ciphers
-paramiko.SecurityOptions._get_key_types paramiko.SecurityOptions-class.html#_get_key_types
-paramiko.SecurityOptions.kex paramiko.SecurityOptions-class.html#kex
-paramiko.SecurityOptions._get_kex paramiko.SecurityOptions-class.html#_get_kex
-paramiko.SecurityOptions._set_ciphers paramiko.SecurityOptions-class.html#_set_ciphers
-paramiko.SecurityOptions._set_kex paramiko.SecurityOptions-class.html#_set_kex
-paramiko.SecurityOptions.__repr__ paramiko.SecurityOptions-class.html#__repr__
-paramiko.SecurityOptions._set paramiko.SecurityOptions-class.html#_set
-paramiko.ServerInterface paramiko.ServerInterface-class.html
-paramiko.ServerInterface.check_auth_interactive paramiko.ServerInterface-class.html#check_auth_interactive
-paramiko.ServerInterface.check_auth_none paramiko.ServerInterface-class.html#check_auth_none
-paramiko.ServerInterface.check_channel_pty_request paramiko.ServerInterface-class.html#check_channel_pty_request
-paramiko.ServerInterface.cancel_port_forward_request paramiko.ServerInterface-class.html#cancel_port_forward_request
-paramiko.ServerInterface.check_channel_direct_tcpip_request paramiko.ServerInterface-class.html#check_channel_direct_tcpip_request
-paramiko.ServerInterface.get_allowed_auths paramiko.ServerInterface-class.html#get_allowed_auths
-paramiko.ServerInterface.check_auth_interactive_response paramiko.ServerInterface-class.html#check_auth_interactive_response
-paramiko.ServerInterface.check_global_request paramiko.ServerInterface-class.html#check_global_request
-paramiko.ServerInterface.check_auth_password paramiko.ServerInterface-class.html#check_auth_password
-paramiko.ServerInterface.check_channel_window_change_request paramiko.ServerInterface-class.html#check_channel_window_change_request
-paramiko.ServerInterface.check_auth_publickey paramiko.ServerInterface-class.html#check_auth_publickey
-paramiko.ServerInterface.check_channel_shell_request paramiko.ServerInterface-class.html#check_channel_shell_request
-paramiko.ServerInterface.check_channel_request paramiko.ServerInterface-class.html#check_channel_request
-paramiko.ServerInterface.check_channel_x11_request paramiko.ServerInterface-class.html#check_channel_x11_request
-paramiko.ServerInterface.check_channel_subsystem_request paramiko.ServerInterface-class.html#check_channel_subsystem_request
-paramiko.ServerInterface.check_port_forward_request paramiko.ServerInterface-class.html#check_port_forward_request
-paramiko.ServerInterface.check_channel_exec_request paramiko.ServerInterface-class.html#check_channel_exec_request
-paramiko.SubsystemHandler paramiko.SubsystemHandler-class.html
-paramiko.SubsystemHandler.start_subsystem paramiko.SubsystemHandler-class.html#start_subsystem
-paramiko.SubsystemHandler.__init__ paramiko.SubsystemHandler-class.html#__init__
-paramiko.SubsystemHandler._run paramiko.SubsystemHandler-class.html#_run
-paramiko.SubsystemHandler.finish_subsystem paramiko.SubsystemHandler-class.html#finish_subsystem
-paramiko.SubsystemHandler.get_server paramiko.SubsystemHandler-class.html#get_server
-paramiko.Transport paramiko.Transport-class.html
-paramiko.Transport._auth_trigger paramiko.Transport-class.html#_auth_trigger
-paramiko.Transport.set_subsystem_handler paramiko.Transport-class.html#set_subsystem_handler
-paramiko.Transport._preferred_kex paramiko.Transport-class.html#_preferred_kex
-paramiko.Transport.open_session paramiko.Transport-class.html#open_session
-paramiko.Transport._parse_request_success paramiko.Transport-class.html#_parse_request_success
-paramiko.Transport._parse_kex_init paramiko.Transport-class.html#_parse_kex_init
-paramiko.Transport.set_keepalive paramiko.Transport-class.html#set_keepalive
-paramiko.Transport.auth_none paramiko.Transport-class.html#auth_none
-paramiko.Transport._parse_request_failure paramiko.Transport-class.html#_parse_request_failure
-paramiko.Transport._key_info paramiko.Transport-class.html#_key_info
-paramiko.Transport._parse_disconnect paramiko.Transport-class.html#_parse_disconnect
-paramiko.Transport._channel_handler_table paramiko.Transport-class.html#_channel_handler_table
-paramiko.Transport.is_active paramiko.Transport-class.html#is_active
-paramiko.Transport.cancel_port_forward paramiko.Transport-class.html#cancel_port_forward
-paramiko.Transport.get_security_options paramiko.Transport-class.html#get_security_options
-paramiko.Transport.send_ignore paramiko.Transport-class.html#send_ignore
-paramiko.Transport._preferred_macs paramiko.Transport-class.html#_preferred_macs
-paramiko.Transport._parse_debug paramiko.Transport-class.html#_parse_debug
-paramiko.Transport._parse_newkeys paramiko.Transport-class.html#_parse_newkeys
-paramiko.Transport.start_client paramiko.Transport-class.html#start_client
-paramiko.Transport._get_modulus_pack paramiko.Transport-class.html#_get_modulus_pack
-paramiko.Transport._preferred_ciphers paramiko.Transport-class.html#_preferred_ciphers
-paramiko.Transport._get_subsystem_handler paramiko.Transport-class.html#_get_subsystem_handler
-paramiko.Transport._queue_incoming_channel paramiko.Transport-class.html#_queue_incoming_channel
-paramiko.Transport._next_channel paramiko.Transport-class.html#_next_channel
-paramiko.Transport._verify_key paramiko.Transport-class.html#_verify_key
-paramiko.Transport.connect paramiko.Transport-class.html#connect
-paramiko.Transport._negotiate_keys paramiko.Transport-class.html#_negotiate_keys
-paramiko.Transport.close paramiko.Transport-class.html#close
-paramiko.Transport.stop_thread paramiko.Transport-class.html#stop_thread
-paramiko.Transport._mac_info paramiko.Transport-class.html#_mac_info
-paramiko.Transport.get_username paramiko.Transport-class.html#get_username
-paramiko.Transport.get_exception paramiko.Transport-class.html#get_exception
-paramiko.Transport._send_message paramiko.Transport-class.html#_send_message
-paramiko.Transport.run paramiko.Transport-class.html#run
-paramiko.Transport.atfork paramiko.Transport-class.html#atfork
-paramiko.Transport.getpeername paramiko.Transport-class.html#getpeername
-paramiko.Transport._cipher_info paramiko.Transport-class.html#_cipher_info
-paramiko.Transport._activate_inbound paramiko.Transport-class.html#_activate_inbound
-paramiko.Transport.__repr__ paramiko.Transport-class.html#__repr__
-paramiko.Transport._parse_global_request paramiko.Transport-class.html#_parse_global_request
-paramiko.Transport._expect_packet paramiko.Transport-class.html#_expect_packet
-paramiko.Transport.set_hexdump paramiko.Transport-class.html#set_hexdump
-paramiko.Transport.auth_password paramiko.Transport-class.html#auth_password
-paramiko.Transport.get_log_channel paramiko.Transport-class.html#get_log_channel
-paramiko.Transport._kex_info paramiko.Transport-class.html#_kex_info
-paramiko.Transport._check_banner paramiko.Transport-class.html#_check_banner
-paramiko.Transport.open_sftp_client paramiko.Transport-class.html#open_sftp_client
-paramiko.Transport.is_authenticated paramiko.Transport-class.html#is_authenticated
-paramiko.Transport.request_port_forward paramiko.Transport-class.html#request_port_forward
-paramiko.Transport.auth_publickey paramiko.Transport-class.html#auth_publickey
-paramiko.Transport._CLIENT_ID paramiko.Transport-class.html#_CLIENT_ID
-paramiko.Transport.global_request paramiko.Transport-class.html#global_request
-paramiko.Transport._get_cipher paramiko.Transport-class.html#_get_cipher
-paramiko.Transport.renegotiate_keys paramiko.Transport-class.html#renegotiate_keys
-paramiko.Transport.open_x11_channel paramiko.Transport-class.html#open_x11_channel
-paramiko.Transport._PROTO_ID paramiko.Transport-class.html#_PROTO_ID
-paramiko.Transport._set_K_H paramiko.Transport-class.html#_set_K_H
-paramiko.Transport.use_compression paramiko.Transport-class.html#use_compression
-paramiko.Transport._log paramiko.Transport-class.html#_log
-paramiko.Transport.start_server paramiko.Transport-class.html#start_server
-paramiko.Transport._send_user_message paramiko.Transport-class.html#_send_user_message
-paramiko.Transport._modulus_pack paramiko.Transport-class.html#_modulus_pack
-paramiko.Transport.get_hexdump paramiko.Transport-class.html#get_hexdump
-paramiko.Transport.add_server_key paramiko.Transport-class.html#add_server_key
-paramiko.Transport._activate_outbound paramiko.Transport-class.html#_activate_outbound
-paramiko.Transport.accept paramiko.Transport-class.html#accept
-paramiko.Transport._preferred_compression paramiko.Transport-class.html#_preferred_compression
-paramiko.Transport._compute_key paramiko.Transport-class.html#_compute_key
-paramiko.Transport.__init__ paramiko.Transport-class.html#__init__
-paramiko.Transport._unlink_channel paramiko.Transport-class.html#_unlink_channel
-paramiko.Transport.auth_interactive paramiko.Transport-class.html#auth_interactive
-paramiko.Transport.set_log_channel paramiko.Transport-class.html#set_log_channel
-paramiko.Transport._set_x11_handler paramiko.Transport-class.html#_set_x11_handler
-paramiko.Transport._compression_info paramiko.Transport-class.html#_compression_info
-paramiko.Transport._handler_table paramiko.Transport-class.html#_handler_table
-paramiko.Transport.load_server_moduli paramiko.Transport-class.html#load_server_moduli
-paramiko.Transport._parse_channel_open_success paramiko.Transport-class.html#_parse_channel_open_success
-paramiko.Transport.get_server_key paramiko.Transport-class.html#get_server_key
-paramiko.Transport._parse_channel_open_failure paramiko.Transport-class.html#_parse_channel_open_failure
-paramiko.Transport.get_remote_server_key paramiko.Transport-class.html#get_remote_server_key
-paramiko.Transport._parse_channel_open paramiko.Transport-class.html#_parse_channel_open
-paramiko.Transport.open_forwarded_tcpip_channel paramiko.Transport-class.html#open_forwarded_tcpip_channel
-paramiko.Transport._preferred_keys paramiko.Transport-class.html#_preferred_keys
-paramiko.Transport.open_channel paramiko.Transport-class.html#open_channel
-paramiko.Transport._send_kex_init paramiko.Transport-class.html#_send_kex_init
-paramiko.WarningPolicy paramiko.WarningPolicy-class.html
-paramiko.WarningPolicy.missing_host_key paramiko.WarningPolicy-class.html#missing_host_key
-paramiko.ber.BER paramiko.ber.BER-class.html
-paramiko.ber.BER.decode_sequence paramiko.ber.BER-class.html#decode_sequence
-paramiko.ber.BER.decode_next paramiko.ber.BER-class.html#decode_next
-paramiko.ber.BER.__str__ paramiko.ber.BER-class.html#__str__
-paramiko.ber.BER.encode_tlv paramiko.ber.BER-class.html#encode_tlv
-paramiko.ber.BER.encode_sequence paramiko.ber.BER-class.html#encode_sequence
-paramiko.ber.BER.decode paramiko.ber.BER-class.html#decode
-paramiko.ber.BER.__repr__ paramiko.ber.BER-class.html#__repr__
-paramiko.ber.BER.encode paramiko.ber.BER-class.html#encode
-paramiko.ber.BER.__init__ paramiko.ber.BER-class.html#__init__
-paramiko.ber.BERException paramiko.ber.BERException-class.html
-paramiko.buffered_pipe.BufferedPipe paramiko.buffered_pipe.BufferedPipe-class.html
-paramiko.buffered_pipe.BufferedPipe.feed paramiko.buffered_pipe.BufferedPipe-class.html#feed
-paramiko.buffered_pipe.BufferedPipe.set_event paramiko.buffered_pipe.BufferedPipe-class.html#set_event
-paramiko.buffered_pipe.BufferedPipe.read paramiko.buffered_pipe.BufferedPipe-class.html#read
-paramiko.buffered_pipe.BufferedPipe.read_ready paramiko.buffered_pipe.BufferedPipe-class.html#read_ready
-paramiko.buffered_pipe.BufferedPipe.__len__ paramiko.buffered_pipe.BufferedPipe-class.html#__len__
-paramiko.buffered_pipe.BufferedPipe.empty paramiko.buffered_pipe.BufferedPipe-class.html#empty
-paramiko.buffered_pipe.BufferedPipe.close paramiko.buffered_pipe.BufferedPipe-class.html#close
-paramiko.buffered_pipe.BufferedPipe.__init__ paramiko.buffered_pipe.BufferedPipe-class.html#__init__
-paramiko.buffered_pipe.PipeTimeout paramiko.buffered_pipe.PipeTimeout-class.html
-paramiko.channel.ChannelStderrFile paramiko.channel.ChannelStderrFile-class.html
-paramiko.BufferedFile._record_newline paramiko.BufferedFile-class.html#_record_newline
-paramiko.BufferedFile.xreadlines paramiko.BufferedFile-class.html#xreadlines
-paramiko.BufferedFile.readlines paramiko.BufferedFile-class.html#readlines
-paramiko.BufferedFile.SEEK_CUR paramiko.BufferedFile-class.html#SEEK_CUR
-paramiko.BufferedFile.FLAG_READ paramiko.BufferedFile-class.html#FLAG_READ
-paramiko.BufferedFile.flush paramiko.BufferedFile-class.html#flush
-paramiko.BufferedFile.close paramiko.BufferedFile-class.html#close
-paramiko.BufferedFile.seek paramiko.BufferedFile-class.html#seek
-paramiko.BufferedFile.readline paramiko.BufferedFile-class.html#readline
-paramiko.channel.ChannelStderrFile.__init__ paramiko.channel.ChannelStderrFile-class.html#__init__
-paramiko.BufferedFile.FLAG_UNIVERSAL_NEWLINE paramiko.BufferedFile-class.html#FLAG_UNIVERSAL_NEWLINE
-paramiko.BufferedFile._set_mode paramiko.BufferedFile-class.html#_set_mode
-paramiko.BufferedFile.next paramiko.BufferedFile-class.html#next
-paramiko.BufferedFile.write paramiko.BufferedFile-class.html#write
-paramiko.BufferedFile.__del__ paramiko.BufferedFile-class.html#__del__
-paramiko.BufferedFile.tell paramiko.BufferedFile-class.html#tell
-paramiko.BufferedFile.FLAG_BINARY paramiko.BufferedFile-class.html#FLAG_BINARY
-paramiko.BufferedFile.read paramiko.BufferedFile-class.html#read
-paramiko.BufferedFile.SEEK_SET paramiko.BufferedFile-class.html#SEEK_SET
-paramiko.BufferedFile.FLAG_APPEND paramiko.BufferedFile-class.html#FLAG_APPEND
-paramiko.BufferedFile.__iter__ paramiko.BufferedFile-class.html#__iter__
-paramiko.channel.ChannelStderrFile._write paramiko.channel.ChannelStderrFile-class.html#_write
-paramiko.BufferedFile._DEFAULT_BUFSIZE paramiko.BufferedFile-class.html#_DEFAULT_BUFSIZE
-paramiko.BufferedFile.FLAG_BUFFERED paramiko.BufferedFile-class.html#FLAG_BUFFERED
-paramiko.BufferedFile._write_all paramiko.BufferedFile-class.html#_write_all
-paramiko.BufferedFile.writelines paramiko.BufferedFile-class.html#writelines
-paramiko.BufferedFile.SEEK_END paramiko.BufferedFile-class.html#SEEK_END
-paramiko.channel.ChannelStderrFile._read paramiko.channel.ChannelStderrFile-class.html#_read
-paramiko.BufferedFile.FLAG_LINE_BUFFERED paramiko.BufferedFile-class.html#FLAG_LINE_BUFFERED
-paramiko.BufferedFile._get_size paramiko.BufferedFile-class.html#_get_size
-paramiko.BufferedFile.FLAG_WRITE paramiko.BufferedFile-class.html#FLAG_WRITE
-paramiko.compress.ZlibCompressor paramiko.compress.ZlibCompressor-class.html
-paramiko.compress.ZlibCompressor.__call__ paramiko.compress.ZlibCompressor-class.html#__call__
-paramiko.compress.ZlibCompressor.__init__ paramiko.compress.ZlibCompressor-class.html#__init__
-paramiko.compress.ZlibDecompressor paramiko.compress.ZlibDecompressor-class.html
-paramiko.compress.ZlibDecompressor.__call__ paramiko.compress.ZlibDecompressor-class.html#__call__
-paramiko.compress.ZlibDecompressor.__init__ paramiko.compress.ZlibDecompressor-class.html#__init__
-paramiko.hostkeys.HostKeyEntry paramiko.hostkeys.HostKeyEntry-class.html
-paramiko.hostkeys.HostKeyEntry.from_line paramiko.hostkeys.HostKeyEntry-class.html#from_line
-paramiko.hostkeys.HostKeyEntry.__repr__ paramiko.hostkeys.HostKeyEntry-class.html#__repr__
-paramiko.hostkeys.HostKeyEntry.__init__ paramiko.hostkeys.HostKeyEntry-class.html#__init__
-paramiko.hostkeys.HostKeyEntry.to_line paramiko.hostkeys.HostKeyEntry-class.html#to_line
-paramiko.kex_gex.KexGex paramiko.kex_gex.KexGex-class.html
-paramiko.kex_gex.KexGex.max_bits paramiko.kex_gex.KexGex-class.html#max_bits
-paramiko.kex_gex.KexGex._parse_kexdh_gex_request paramiko.kex_gex.KexGex-class.html#_parse_kexdh_gex_request
-paramiko.kex_gex.KexGex.__init__ paramiko.kex_gex.KexGex-class.html#__init__
-paramiko.kex_gex.KexGex._generate_x paramiko.kex_gex.KexGex-class.html#_generate_x
-paramiko.kex_gex.KexGex.parse_next paramiko.kex_gex.KexGex-class.html#parse_next
-paramiko.kex_gex.KexGex.min_bits paramiko.kex_gex.KexGex-class.html#min_bits
-paramiko.kex_gex.KexGex._parse_kexdh_gex_group paramiko.kex_gex.KexGex-class.html#_parse_kexdh_gex_group
-paramiko.kex_gex.KexGex.preferred_bits paramiko.kex_gex.KexGex-class.html#preferred_bits
-paramiko.kex_gex.KexGex._parse_kexdh_gex_request_old paramiko.kex_gex.KexGex-class.html#_parse_kexdh_gex_request_old
-paramiko.kex_gex.KexGex.name paramiko.kex_gex.KexGex-class.html#name
-paramiko.kex_gex.KexGex._parse_kexdh_gex_reply paramiko.kex_gex.KexGex-class.html#_parse_kexdh_gex_reply
-paramiko.kex_gex.KexGex.start_kex paramiko.kex_gex.KexGex-class.html#start_kex
-paramiko.kex_gex.KexGex._parse_kexdh_gex_init paramiko.kex_gex.KexGex-class.html#_parse_kexdh_gex_init
-paramiko.kex_group1.KexGroup1 paramiko.kex_group1.KexGroup1-class.html
-paramiko.kex_group1.KexGroup1.parse_next paramiko.kex_group1.KexGroup1-class.html#parse_next
-paramiko.kex_group1.KexGroup1.name paramiko.kex_group1.KexGroup1-class.html#name
-paramiko.kex_group1.KexGroup1._parse_kexdh_init paramiko.kex_group1.KexGroup1-class.html#_parse_kexdh_init
-paramiko.kex_group1.KexGroup1._parse_kexdh_reply paramiko.kex_group1.KexGroup1-class.html#_parse_kexdh_reply
-paramiko.kex_group1.KexGroup1.start_kex paramiko.kex_group1.KexGroup1-class.html#start_kex
-paramiko.kex_group1.KexGroup1._generate_x paramiko.kex_group1.KexGroup1-class.html#_generate_x
-paramiko.kex_group1.KexGroup1.__init__ paramiko.kex_group1.KexGroup1-class.html#__init__
-paramiko.logging22.Formatter paramiko.logging22.Formatter-class.html
-paramiko.logging22.Formatter.__init__ paramiko.logging22.Formatter-class.html#__init__
-paramiko.logging22.StreamHandler paramiko.logging22.StreamHandler-class.html
-paramiko.logging22.StreamHandler.setFormatter paramiko.logging22.StreamHandler-class.html#setFormatter
-paramiko.logging22.StreamHandler.__init__ paramiko.logging22.StreamHandler-class.html#__init__
-paramiko.logging22.logger paramiko.logging22.logger-class.html
-paramiko.logging22.logger.log paramiko.logging22.logger-class.html#log
-paramiko.logging22.logger.addFilter paramiko.logging22.logger-class.html#addFilter
-paramiko.logging22.logger.setLevel paramiko.logging22.logger-class.html#setLevel
-paramiko.logging22.logger.addHandler paramiko.logging22.logger-class.html#addHandler
-paramiko.logging22.logger.__init__ paramiko.logging22.logger-class.html#__init__
-paramiko.packet.NeedRekeyException paramiko.packet.NeedRekeyException-class.html
-paramiko.pipe.OrPipe paramiko.pipe.OrPipe-class.html
-paramiko.pipe.OrPipe.set paramiko.pipe.OrPipe-class.html#set
-paramiko.pipe.OrPipe.clear paramiko.pipe.OrPipe-class.html#clear
-paramiko.pipe.OrPipe.__init__ paramiko.pipe.OrPipe-class.html#__init__
-paramiko.pipe.PosixPipe paramiko.pipe.PosixPipe-class.html
-paramiko.pipe.PosixPipe.fileno paramiko.pipe.PosixPipe-class.html#fileno
-paramiko.pipe.PosixPipe.set paramiko.pipe.PosixPipe-class.html#set
-paramiko.pipe.PosixPipe.clear paramiko.pipe.PosixPipe-class.html#clear
-paramiko.pipe.PosixPipe.set_forever paramiko.pipe.PosixPipe-class.html#set_forever
-paramiko.pipe.PosixPipe.close paramiko.pipe.PosixPipe-class.html#close
-paramiko.pipe.PosixPipe.__init__ paramiko.pipe.PosixPipe-class.html#__init__
-paramiko.pipe.WindowsPipe paramiko.pipe.WindowsPipe-class.html
-paramiko.pipe.WindowsPipe.fileno paramiko.pipe.WindowsPipe-class.html#fileno
-paramiko.pipe.WindowsPipe.set paramiko.pipe.WindowsPipe-class.html#set
-paramiko.pipe.WindowsPipe.clear paramiko.pipe.WindowsPipe-class.html#clear
-paramiko.pipe.WindowsPipe.set_forever paramiko.pipe.WindowsPipe-class.html#set_forever
-paramiko.pipe.WindowsPipe.close paramiko.pipe.WindowsPipe-class.html#close
-paramiko.pipe.WindowsPipe.__init__ paramiko.pipe.WindowsPipe-class.html#__init__
-paramiko.primes.ModulusPack paramiko.primes.ModulusPack-class.html
-paramiko.primes.ModulusPack._parse_modulus paramiko.primes.ModulusPack-class.html#_parse_modulus
-paramiko.primes.ModulusPack.read_file paramiko.primes.ModulusPack-class.html#read_file
-paramiko.primes.ModulusPack.get_modulus paramiko.primes.ModulusPack-class.html#get_modulus
-paramiko.primes.ModulusPack.__init__ paramiko.primes.ModulusPack-class.html#__init__
-paramiko.ssh_exception.PartialAuthentication paramiko.ssh_exception.PartialAuthentication-class.html
-paramiko.ssh_exception.PartialAuthentication.allowed_types paramiko.ssh_exception.PartialAuthentication-class.html#allowed_types
-paramiko.ssh_exception.PartialAuthentication.__init__ paramiko.ssh_exception.PartialAuthentication-class.html#__init__
-paramiko.transport.ChannelMap paramiko.transport.ChannelMap-class.html
-paramiko.transport.ChannelMap.get paramiko.transport.ChannelMap-class.html#get
-paramiko.transport.ChannelMap.values paramiko.transport.ChannelMap-class.html#values
-paramiko.transport.ChannelMap.__init__ paramiko.transport.ChannelMap-class.html#__init__
-paramiko.transport.ChannelMap.put paramiko.transport.ChannelMap-class.html#put
-paramiko.transport.ChannelMap.__len__ paramiko.transport.ChannelMap-class.html#__len__
-paramiko.transport.ChannelMap.delete paramiko.transport.ChannelMap-class.html#delete
-paramiko.util.Counter paramiko.util.Counter-class.html
-paramiko.util.Counter.__call__ paramiko.util.Counter-class.html#__call__
-paramiko.util.Counter.new paramiko.util.Counter-class.html#new
-paramiko.util.Counter.__init__ paramiko.util.Counter-class.html#__init__
-paramiko.util.PFilter paramiko.util.PFilter-class.html
-paramiko.util.PFilter.filter paramiko.util.PFilter-class.html#filter
-paramiko.util.enumerate paramiko.util.enumerate-class.html
-paramiko.util.enumerate.__iter__ paramiko.util.enumerate-class.html#__iter__
-paramiko.util.enumerate.__init__ paramiko.util.enumerate-class.html#__init__
-paramiko.win_pageant.PageantConnection paramiko.win_pageant.PageantConnection-class.html
-paramiko.win_pageant.PageantConnection.send paramiko.win_pageant.PageantConnection-class.html#send
-paramiko.win_pageant.PageantConnection.close paramiko.win_pageant.PageantConnection-class.html#close
-paramiko.win_pageant.PageantConnection.recv paramiko.win_pageant.PageantConnection-class.html#recv
-paramiko.win_pageant.PageantConnection.__init__ paramiko.win_pageant.PageantConnection-class.html#__init__
diff --git a/docs/bug-index.html b/docs/bug-index.html
deleted file mode 100644
index be27b5f..0000000
--- a/docs/bug-index.html
+++ /dev/null
@@ -1,107 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Bug List</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th bgcolor="#70b0f0" class="navbar-select"
- >&nbsp;&nbsp;&nbsp;Indices&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">&nbsp;</td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="bug-index.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<center><b>[
- <a href="identifier-index.html">Identifiers</a>
-| <a href="bug-index.html">Bugs</a>
-| <a href="since-index.html">Introductions</a>
-]</b></center><br />
-<h1 class="epydoc"><a name="bug">Bug List</a></h1>
-<br />
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Bugs in <a href="paramiko.Message-class.html#add">paramiko.Message.add</a></b> <ul class="nomargin">
- <li>longs are encoded non-deterministically. Don't use this method.</li>
- </ul>
-</table></div>
-<br /><!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th bgcolor="#70b0f0" class="navbar-select"
- >&nbsp;&nbsp;&nbsp;Indices&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:01 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/class-tree.html b/docs/class-tree.html
deleted file mode 100644
index b840938..0000000
--- a/docs/class-tree.html
+++ /dev/null
@@ -1,364 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Class Hierarchy</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th bgcolor="#70b0f0" class="navbar-select"
- >&nbsp;&nbsp;&nbsp;Trees&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">&nbsp;</td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="class-tree.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<center><b>
- [ <a href="module-tree.html">Module Hierarchy</a>
- | <a href="class-tree.html">Class Hierarchy</a> ]
-</b></center><br />
-<h1 class="epydoc">Class Hierarchy</h1>
-<ul class="nomargin-top">
- <li> <strong class="uidlink"><a href="paramiko.Agent-class.html">paramiko.Agent</a></strong>:
- <em class="summary">Client interface for using private keys from an SSH agent running
- on the local machine.</em>
- </li>
- <li> <strong class="uidlink">UserDict.DictMixin</strong>
- <ul>
- <li> <strong class="uidlink"><a href="paramiko.HostKeys-class.html">paramiko.HostKeys</a></strong>:
- <em class="summary">Representation of an openssh-style &quot;known hosts&quot; file.</em>
- </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.hostkeys.HostKeyEntry-class.html">paramiko.hostkeys.HostKeyEntry</a></strong>:
- <em class="summary">Representation of a line in an OpenSSH-style &quot;known
- hosts&quot; file.</em>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.util.enumerate-class.html">paramiko.util.enumerate</a></strong>
- </li>
- <li> <strong class="uidlink">object</strong>:
- <em class="summary">The most base type</em>
- <ul>
- <li> <strong class="uidlink"><a href="paramiko.ber.BER-class.html">paramiko.ber.BER</a></strong>:
- <em class="summary">Robey's tiny little attempt at a BER decoder.</em>
- </li>
- <li> <strong class="uidlink">exceptions.BaseException</strong>:
- <em class="summary">Common base class for all exceptions</em>
- <ul>
- <li> <strong class="uidlink">exceptions.Exception</strong>:
- <em class="summary">Common base class for all non-exit exceptions.</em>
- <ul>
- <li> <strong class="uidlink"><a href="paramiko.ber.BERException-class.html">paramiko.ber.BERException</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.packet.NeedRekeyException-class.html">paramiko.packet.NeedRekeyException</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.SFTPError-class.html">paramiko.SFTPError</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.SSHException-class.html">paramiko.SSHException</a></strong>:
- <em class="summary">Exception raised by failures in SSH2 protocol negotiation or logic
- errors.</em>
- <ul>
- <li> <strong class="uidlink"><a href="paramiko.AuthenticationException-class.html">paramiko.AuthenticationException</a></strong>:
- <em class="summary">Exception raised when authentication failed for some reason.</em>
- <ul>
- <li> <strong class="uidlink"><a href="paramiko.BadAuthenticationType-class.html">paramiko.BadAuthenticationType</a></strong>:
- <em class="summary">Exception raised when an authentication type (like password) is
- used, but the server isn't allowing that type.</em>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.ssh_exception.PartialAuthentication-class.html">paramiko.ssh_exception.PartialAuthentication</a></strong>:
- <em class="summary">An internal exception thrown in the case of partial authentication.</em>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.PasswordRequiredException-class.html">paramiko.PasswordRequiredException</a></strong>:
- <em class="summary">Exception raised when a password is needed to unlock a private key
- file.</em>
- </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.BadHostKeyException-class.html">paramiko.BadHostKeyException</a></strong>:
- <em class="summary">The host key given by the SSH server did not match what we were
- expecting.</em>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.ChannelException-class.html">paramiko.ChannelException</a></strong>:
- <em class="summary">Exception raised when an attempt to open a new <a
- href="paramiko.Channel-class.html" class="link">Channel</a> fails.</em>
- </li>
- </ul>
- </li>
- <li> <strong class="uidlink">exceptions.StandardError</strong>:
- <em class="summary">Base class for all standard Python exceptions that do not represent
- interpreter exiting.</em>
- <ul>
- <li> <strong class="uidlink">exceptions.EnvironmentError</strong>:
- <em class="summary">Base class for I/O related errors.</em>
- <ul>
- <li> <strong class="uidlink">exceptions.IOError</strong>:
- <em class="summary">I/O operation failed.</em>
- <ul>
- <li> <strong class="uidlink"><a href="paramiko.buffered_pipe.PipeTimeout-class.html">paramiko.buffered_pipe.PipeTimeout</a></strong>:
- <em class="summary">Indicates that a timeout was reached on a read from a <a
- href="paramiko.buffered_pipe.BufferedPipe-class.html"
- class="link">BufferedPipe</a>.</em>
- </li>
- </ul>
- </li>
- </ul>
- </li>
- </ul>
- </li>
- </ul>
- </li>
- </ul>
- </li>
- <li> <strong class="uidlink">paramiko.BaseSFTP</strong>
- <ul>
- <li> <strong class="uidlink"><a href="paramiko.SFTPClient-class.html">paramiko.SFTPClient</a></strong>:
- <em class="summary">SFTP client object.</em>
- <ul>
- <li> <strong class="uidlink"><a href="paramiko.SFTP-class.html">paramiko.SFTP</a></strong>:
- <em class="summary">an alias for <a href="paramiko.SFTPClient-class.html"
- class="link">SFTPClient</a> for backwards compatability</em>
- </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.SFTPServer-class.html">paramiko.SFTPServer</a></strong>:
- <em class="summary">Server-side SFTP subsystem support.</em>
- </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.BufferedFile-class.html">paramiko.BufferedFile</a></strong>:
- <em class="summary">Reusable base class to implement python-style file buffering around
- a simpler stream.</em>
- <ul>
- <li> <strong class="uidlink">paramiko.ChannelFile</strong>:
- <em class="summary">A file-like wrapper around <a href="paramiko.Channel-class.html"
- class="link">Channel</a>.</em>
- <ul>
- <li> <strong class="uidlink"><a href="paramiko.channel.ChannelStderrFile-class.html">paramiko.channel.ChannelStderrFile</a></strong>
- </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.SFTPFile-class.html">paramiko.SFTPFile</a></strong>:
- <em class="summary">Proxy object for a file on the remote server, in client mode SFTP.</em>
- </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.buffered_pipe.BufferedPipe-class.html">paramiko.buffered_pipe.BufferedPipe</a></strong>:
- <em class="summary">A buffer that obeys normal read (with timeout) &amp; close
- semantics for a file or socket, but is fed data from another
- thread.</em>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.Channel-class.html">paramiko.Channel</a></strong>:
- <em class="summary">A secure tunnel across an SSH <a
- href="paramiko.Transport-class.html" class="link">Transport</a>.</em>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.transport.ChannelMap-class.html">paramiko.transport.ChannelMap</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.util.Counter-class.html">paramiko.util.Counter</a></strong>:
- <em class="summary">Stateful counter for CTR mode crypto</em>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.logging22.Formatter-class.html">paramiko.logging22.Formatter</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.kex_gex.KexGex-class.html">paramiko.kex_gex.KexGex</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.kex_group1.KexGroup1-class.html">paramiko.kex_group1.KexGroup1</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.Message-class.html">paramiko.Message</a></strong>:
- <em class="summary">An SSH2 <i>Message</i> is a stream of bytes that encodes some
- combination of strings, integers, bools, and infinite-precision
- integers (known in python as <i>long</i>s).</em>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.MissingHostKeyPolicy-class.html">paramiko.MissingHostKeyPolicy</a></strong>:
- <em class="summary">Interface for defining the policy that <a
- href="paramiko.SSHClient-class.html" class="link">SSHClient</a>
- should use when the SSH server's hostname is not in either the
- system host keys or the application's keys.</em>
- <ul>
- <li> <strong class="uidlink"><a href="paramiko.AutoAddPolicy-class.html">paramiko.AutoAddPolicy</a></strong>:
- <em class="summary">Policy for automatically adding the hostname and new host key to
- the local <a href="paramiko.HostKeys-class.html"
- class="link">HostKeys</a> object, and saving it.</em>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.RejectPolicy-class.html">paramiko.RejectPolicy</a></strong>:
- <em class="summary">Policy for automatically rejecting the unknown hostname &amp; key.</em>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.WarningPolicy-class.html">paramiko.WarningPolicy</a></strong>:
- <em class="summary">Policy for logging a python-style warning for an unknown host key,
- but accepting it.</em>
- </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.primes.ModulusPack-class.html">paramiko.primes.ModulusPack</a></strong>:
- <em class="summary">convenience object for holding the contents of the /etc/ssh/moduli
- file, on systems that have such a file.</em>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.pipe.OrPipe-class.html">paramiko.pipe.OrPipe</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.util.PFilter-class.html">paramiko.util.PFilter</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.PKey-class.html">paramiko.PKey</a></strong>:
- <em class="summary">Base class for public keys.</em>
- <ul>
- <li> <strong class="uidlink"><a href="paramiko.AgentKey-class.html">paramiko.AgentKey</a></strong>:
- <em class="summary">Private key held in a local SSH agent.</em>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.DSSKey-class.html">paramiko.DSSKey</a></strong>:
- <em class="summary">Representation of a DSS key which can be used to sign an verify
- SSH2 data.</em>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.RSAKey-class.html">paramiko.RSAKey</a></strong>:
- <em class="summary">Representation of an RSA key which can be used to sign and verify
- SSH2 data.</em>
- </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.win_pageant.PageantConnection-class.html">paramiko.win_pageant.PageantConnection</a></strong>:
- <em class="summary">Mock &quot;connection&quot; to an agent which roughly approximates
- the behavior of a unix local-domain socket (as used by Agent).</em>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.pipe.PosixPipe-class.html">paramiko.pipe.PosixPipe</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.SFTPAttributes-class.html">paramiko.SFTPAttributes</a></strong>:
- <em class="summary">Representation of the attributes of a file (or proxied file) for
- SFTP in client or server mode.</em>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.SFTPHandle-class.html">paramiko.SFTPHandle</a></strong>:
- <em class="summary">Abstract object representing a handle to an open file (or folder)
- in an SFTP server implementation.</em>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.SFTPServerInterface-class.html">paramiko.SFTPServerInterface</a></strong>:
- <em class="summary">This class defines an interface for controlling the behavior of
- paramiko when using the <a href="paramiko.SFTPServer-class.html"
- class="link">SFTPServer</a> subsystem to provide an SFTP server.</em>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.SSHClient-class.html">paramiko.SSHClient</a></strong>:
- <em class="summary">A high-level representation of a session with an SSH server.</em>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.SSHConfig-class.html">paramiko.SSHConfig</a></strong>:
- <em class="summary">Representation of config information as stored in the format used
- by OpenSSH.</em>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.SecurityOptions-class.html">paramiko.SecurityOptions</a></strong>:
- <em class="summary">Simple object containing the security preferences of an ssh
- transport.</em>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.ServerInterface-class.html">paramiko.ServerInterface</a></strong>:
- <em class="summary">This class defines an interface for controlling the behavior of
- paramiko in server mode.</em>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.logging22.StreamHandler-class.html">paramiko.logging22.StreamHandler</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.pipe.WindowsPipe-class.html">paramiko.pipe.WindowsPipe</a></strong>:
- <em class="summary">On Windows, only an OS-level &quot;WinSock&quot; may be used in
- select(), but reads and writes must be to the actual socket object.</em>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.compress.ZlibCompressor-class.html">paramiko.compress.ZlibCompressor</a></strong>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.compress.ZlibDecompressor-class.html">paramiko.compress.ZlibDecompressor</a></strong>
- </li>
- <li> <strong class="uidlink">threading._Verbose</strong>
- <ul>
- <li> <strong class="uidlink">threading.Thread</strong>
- <ul>
- <li> <strong class="uidlink"><a href="paramiko.SubsystemHandler-class.html">paramiko.SubsystemHandler</a></strong>:
- <em class="summary">Handler for a subsytem in server mode.</em>
- <ul>
- <li> <strong class="uidlink"><a href="paramiko.SFTPServer-class.html">paramiko.SFTPServer</a></strong>:
- <em class="summary">Server-side SFTP subsystem support.</em>
- </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.Transport-class.html">paramiko.Transport</a></strong>:
- <em class="summary">An SSH Transport attaches to a stream (usually a socket),
- negotiates an encrypted session, authenticates, and then creates
- stream tunnels, called <a href="paramiko.Channel-class.html"
- class="link">Channel</a>s, across the session.</em>
- </li>
- </ul>
- </li>
- </ul>
- </li>
- <li> <strong class="uidlink"><a href="paramiko.logging22.logger-class.html">paramiko.logging22.logger</a></strong>
- </li>
- </ul>
- </li>
-</ul>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th bgcolor="#70b0f0" class="navbar-select"
- >&nbsp;&nbsp;&nbsp;Trees&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:01 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/crarr.png b/docs/crarr.png
deleted file mode 100644
index 26b43c5..0000000
--- a/docs/crarr.png
+++ /dev/null
Binary files differ
diff --git a/docs/epydoc.css b/docs/epydoc.css
deleted file mode 100644
index 86d4170..0000000
--- a/docs/epydoc.css
+++ /dev/null
@@ -1,322 +0,0 @@
-
-
-/* Epydoc CSS Stylesheet
- *
- * This stylesheet can be used to customize the appearance of epydoc's
- * HTML output.
- *
- */
-
-/* Default Colors & Styles
- * - Set the default foreground & background color with 'body'; and
- * link colors with 'a:link' and 'a:visited'.
- * - Use bold for decision list terms.
- * - The heading styles defined here are used for headings *within*
- * docstring descriptions. All headings used by epydoc itself use
- * either class='epydoc' or class='toc' (CSS styles for both
- * defined below).
- */
-body { background: #ffffff; color: #000000; }
-p { margin-top: 0.5em; margin-bottom: 0.5em; }
-a:link { color: #0000ff; }
-a:visited { color: #204080; }
-dt { font-weight: bold; }
-h1 { font-size: +140%; font-style: italic;
- font-weight: bold; }
-h2 { font-size: +125%; font-style: italic;
- font-weight: bold; }
-h3 { font-size: +110%; font-style: italic;
- font-weight: normal; }
-code { font-size: 100%; }
-/* N.B.: class, not pseudoclass */
-a.link { font-family: monospace; }
-
-/* Page Header & Footer
- * - The standard page header consists of a navigation bar (with
- * pointers to standard pages such as 'home' and 'trees'); a
- * breadcrumbs list, which can be used to navigate to containing
- * classes or modules; options links, to show/hide private
- * variables and to show/hide frames; and a page title (using
- * <h1>). The page title may be followed by a link to the
- * corresponding source code (using 'span.codelink').
- * - The footer consists of a navigation bar, a timestamp, and a
- * pointer to epydoc's homepage.
- */
-h1.epydoc { margin: 0; font-size: +140%; font-weight: bold; }
-h2.epydoc { font-size: +130%; font-weight: bold; }
-h3.epydoc { font-size: +115%; font-weight: bold;
- margin-top: 0.2em; }
-td h3.epydoc { font-size: +115%; font-weight: bold;
- margin-bottom: 0; }
-table.navbar { background: #a0c0ff; color: #000000;
- border: 2px groove #c0d0d0; }
-table.navbar table { color: #000000; }
-th.navbar-select { background: #70b0ff;
- color: #000000; }
-table.navbar a { text-decoration: none; }
-table.navbar a:link { color: #0000ff; }
-table.navbar a:visited { color: #204080; }
-span.breadcrumbs { font-size: 85%; font-weight: bold; }
-span.options { font-size: 70%; }
-span.codelink { font-size: 85%; }
-td.footer { font-size: 85%; }
-
-/* Table Headers
- * - Each summary table and details section begins with a 'header'
- * row. This row contains a section title (marked by
- * 'span.table-header') as well as a show/hide private link
- * (marked by 'span.options', defined above).
- * - Summary tables that contain user-defined groups mark those
- * groups using 'group header' rows.
- */
-td.table-header { background: #70b0ff; color: #000000;
- border: 1px solid #608090; }
-td.table-header table { color: #000000; }
-td.table-header table a:link { color: #0000ff; }
-td.table-header table a:visited { color: #204080; }
-span.table-header { font-size: 120%; font-weight: bold; }
-th.group-header { background: #c0e0f8; color: #000000;
- text-align: left; font-style: italic;
- font-size: 115%;
- border: 1px solid #608090; }
-
-/* Summary Tables (functions, variables, etc)
- * - Each object is described by a single row of the table with
- * two cells. The left cell gives the object's type, and is
- * marked with 'code.summary-type'. The right cell gives the
- * object's name and a summary description.
- * - CSS styles for the table's header and group headers are
- * defined above, under 'Table Headers'
- */
-table.summary { border-collapse: collapse;
- background: #e8f0f8; color: #000000;
- border: 1px solid #608090;
- margin-bottom: 0.5em; }
-td.summary { border: 1px solid #608090; }
-code.summary-type { font-size: 85%; }
-table.summary a:link { color: #0000ff; }
-table.summary a:visited { color: #204080; }
-
-
-/* Details Tables (functions, variables, etc)
- * - Each object is described in its own div.
- * - A single-row summary table w/ table-header is used as
- * a header for each details section (CSS style for table-header
- * is defined above, under 'Table Headers').
- */
-table.details { border-collapse: collapse;
- background: #e8f0f8; color: #000000;
- border: 1px solid #608090;
- margin: .2em 0 0 0; }
-table.details table { color: #000000; }
-table.details a:link { color: #0000ff; }
-table.details a:visited { color: #204080; }
-
-/* Fields */
-dl.fields { margin-left: 2em; margin-top: 1em;
- margin-bottom: 1em; }
-dl.fields dd ul { margin-left: 0em; padding-left: 0em; }
-dl.fields dd ul li ul { margin-left: 2em; padding-left: 0em; }
-div.fields { margin-left: 2em; }
-div.fields p { margin-bottom: 0.5em; }
-
-/* Index tables (identifier index, term index, etc)
- * - link-index is used for indices containing lists of links
- * (namely, the identifier index & term index).
- * - index-where is used in link indices for the text indicating
- * the container/source for each link.
- * - metadata-index is used for indices containing metadata
- * extracted from fields (namely, the bug index & todo index).
- */
-table.link-index { border-collapse: collapse;
- background: #e8f0f8; color: #000000;
- border: 1px solid #608090; }
-td.link-index { border-width: 0px; }
-table.link-index a:link { color: #0000ff; }
-table.link-index a:visited { color: #204080; }
-span.index-where { font-size: 70%; }
-table.metadata-index { border-collapse: collapse;
- background: #e8f0f8; color: #000000;
- border: 1px solid #608090;
- margin: .2em 0 0 0; }
-td.metadata-index { border-width: 1px; border-style: solid; }
-table.metadata-index a:link { color: #0000ff; }
-table.metadata-index a:visited { color: #204080; }
-
-/* Function signatures
- * - sig* is used for the signature in the details section.
- * - .summary-sig* is used for the signature in the summary
- * table, and when listing property accessor functions.
- * */
-.sig-name { color: #006080; }
-.sig-arg { color: #008060; }
-.sig-default { color: #602000; }
-.summary-sig { font-family: monospace; }
-.summary-sig-name { color: #006080; font-weight: bold; }
-table.summary a.summary-sig-name:link
- { color: #006080; font-weight: bold; }
-table.summary a.summary-sig-name:visited
- { color: #006080; font-weight: bold; }
-.summary-sig-arg { color: #006040; }
-.summary-sig-default { color: #501800; }
-
-/* Subclass list
- */
-ul.subclass-list { display: inline; }
-ul.subclass-list li { display: inline; }
-
-/* To render variables, classes etc. like functions */
-table.summary .summary-name { color: #006080; font-weight: bold;
- font-family: monospace; }
-table.summary
- a.summary-name:link { color: #006080; font-weight: bold;
- font-family: monospace; }
-table.summary
- a.summary-name:visited { color: #006080; font-weight: bold;
- font-family: monospace; }
-
-/* Variable values
- * - In the 'variable details' sections, each varaible's value is
- * listed in a 'pre.variable' box. The width of this box is
- * restricted to 80 chars; if the value's repr is longer than
- * this it will be wrapped, using a backslash marked with
- * class 'variable-linewrap'. If the value's repr is longer
- * than 3 lines, the rest will be ellided; and an ellipsis
- * marker ('...' marked with 'variable-ellipsis') will be used.
- * - If the value is a string, its quote marks will be marked
- * with 'variable-quote'.
- * - If the variable is a regexp, it is syntax-highlighted using
- * the re* CSS classes.
- */
-pre.variable { padding: .5em; margin: 0;
- background: #dce4ec; color: #000000;
- border: 1px solid #708890; }
-.variable-linewrap { color: #604000; font-weight: bold; }
-.variable-ellipsis { color: #604000; font-weight: bold; }
-.variable-quote { color: #604000; font-weight: bold; }
-.variable-group { color: #008000; font-weight: bold; }
-.variable-op { color: #604000; font-weight: bold; }
-.variable-string { color: #006030; }
-.variable-unknown { color: #a00000; font-weight: bold; }
-.re { color: #000000; }
-.re-char { color: #006030; }
-.re-op { color: #600000; }
-.re-group { color: #003060; }
-.re-ref { color: #404040; }
-
-/* Base tree
- * - Used by class pages to display the base class hierarchy.
- */
-pre.base-tree { font-size: 80%; margin: 0; }
-
-/* Frames-based table of contents headers
- * - Consists of two frames: one for selecting modules; and
- * the other listing the contents of the selected module.
- * - h1.toc is used for each frame's heading
- * - h2.toc is used for subheadings within each frame.
- */
-h1.toc { text-align: center; font-size: 105%;
- margin: 0; font-weight: bold;
- padding: 0; }
-h2.toc { font-size: 100%; font-weight: bold;
- margin: 0.5em 0 0 -0.3em; }
-
-/* Syntax Highlighting for Source Code
- * - doctest examples are displayed in a 'pre.py-doctest' block.
- * If the example is in a details table entry, then it will use
- * the colors specified by the 'table pre.py-doctest' line.
- * - Source code listings are displayed in a 'pre.py-src' block.
- * Each line is marked with 'span.py-line' (used to draw a line
- * down the left margin, separating the code from the line
- * numbers). Line numbers are displayed with 'span.py-lineno'.
- * The expand/collapse block toggle button is displayed with
- * 'a.py-toggle' (Note: the CSS style for 'a.py-toggle' should not
- * modify the font size of the text.)
- * - If a source code page is opened with an anchor, then the
- * corresponding code block will be highlighted. The code
- * block's header is highlighted with 'py-highlight-hdr'; and
- * the code block's body is highlighted with 'py-highlight'.
- * - The remaining py-* classes are used to perform syntax
- * highlighting (py-string for string literals, py-name for names,
- * etc.)
- */
-pre.py-doctest { padding: .5em; margin: 1em;
- background: #e8f0f8; color: #000000;
- border: 1px solid #708890; }
-table pre.py-doctest { background: #dce4ec;
- color: #000000; }
-pre.py-src { border: 2px solid #000000;
- background: #f0f0f0; color: #000000; }
-.py-line { border-left: 2px solid #000000;
- margin-left: .2em; padding-left: .4em; }
-.py-lineno { font-style: italic; font-size: 90%;
- padding-left: .5em; }
-a.py-toggle { text-decoration: none; }
-div.py-highlight-hdr { border-top: 2px solid #000000;
- border-bottom: 2px solid #000000;
- background: #d8e8e8; }
-div.py-highlight { border-bottom: 2px solid #000000;
- background: #d0e0e0; }
-.py-prompt { color: #005050; font-weight: bold;}
-.py-more { color: #005050; font-weight: bold;}
-.py-string { color: #006030; }
-.py-comment { color: #003060; }
-.py-keyword { color: #600000; }
-.py-output { color: #404040; }
-.py-name { color: #000050; }
-.py-name:link { color: #000050 !important; }
-.py-name:visited { color: #000050 !important; }
-.py-number { color: #005000; }
-.py-defname { color: #000060; font-weight: bold; }
-.py-def-name { color: #000060; font-weight: bold; }
-.py-base-class { color: #000060; }
-.py-param { color: #000060; }
-.py-docstring { color: #006030; }
-.py-decorator { color: #804020; }
-/* Use this if you don't want links to names underlined: */
-/*a.py-name { text-decoration: none; }*/
-
-/* Graphs & Diagrams
- * - These CSS styles are used for graphs & diagrams generated using
- * Graphviz dot. 'img.graph-without-title' is used for bare
- * diagrams (to remove the border created by making the image
- * clickable).
- */
-img.graph-without-title { border: none; }
-img.graph-with-title { border: 1px solid #000000; }
-span.graph-title { font-weight: bold; }
-span.graph-caption { }
-
-/* General-purpose classes
- * - 'p.indent-wrapped-lines' defines a paragraph whose first line
- * is not indented, but whose subsequent lines are.
- * - The 'nomargin-top' class is used to remove the top margin (e.g.
- * from lists). The 'nomargin' class is used to remove both the
- * top and bottom margin (but not the left or right margin --
- * for lists, that would cause the bullets to disappear.)
- */
-p.indent-wrapped-lines { padding: 0 0 0 7em; text-indent: -7em;
- margin: 0; }
-.nomargin-top { margin-top: 0; }
-.nomargin { margin-top: 0; margin-bottom: 0; }
-
-/* HTML Log */
-div.log-block { padding: 0; margin: .5em 0 .5em 0;
- background: #e8f0f8; color: #000000;
- border: 1px solid #000000; }
-div.log-error { padding: .1em .3em .1em .3em; margin: 4px;
- background: #ffb0b0; color: #000000;
- border: 1px solid #000000; }
-div.log-warning { padding: .1em .3em .1em .3em; margin: 4px;
- background: #ffffb0; color: #000000;
- border: 1px solid #000000; }
-div.log-info { padding: .1em .3em .1em .3em; margin: 4px;
- background: #b0ffb0; color: #000000;
- border: 1px solid #000000; }
-h2.log-hdr { background: #70b0ff; color: #000000;
- margin: 0; padding: 0em 0.5em 0em 0.5em;
- border-bottom: 1px solid #000000; font-size: 110%; }
-p.log { font-weight: bold; margin: .5em 0 .5em 0; }
-tr.opt-changed { color: #000000; font-weight: bold; }
-tr.opt-default { color: #606060; }
-pre.log { margin: 0; padding: 0; padding-left: 1em; }
diff --git a/docs/epydoc.js b/docs/epydoc.js
deleted file mode 100644
index e787dbc..0000000
--- a/docs/epydoc.js
+++ /dev/null
@@ -1,293 +0,0 @@
-function toggle_private() {
- // Search for any private/public links on this page. Store
- // their old text in "cmd," so we will know what action to
- // take; and change their text to the opposite action.
- var cmd = "?";
- var elts = document.getElementsByTagName("a");
- for(var i=0; i<elts.length; i++) {
- if (elts[i].className == "privatelink") {
- cmd = elts[i].innerHTML;
- elts[i].innerHTML = ((cmd && cmd.substr(0,4)=="show")?
- "hide&nbsp;private":"show&nbsp;private");
- }
- }
- // Update all DIVs containing private objects.
- var elts = document.getElementsByTagName("div");
- for(var i=0; i<elts.length; i++) {
- if (elts[i].className == "private") {
- elts[i].style.display = ((cmd && cmd.substr(0,4)=="hide")?"none":"block");
- }
- else if (elts[i].className == "public") {
- elts[i].style.display = ((cmd && cmd.substr(0,4)=="hide")?"block":"none");
- }
- }
- // Update all table rows containing private objects. Note, we
- // use "" instead of "block" becaue IE & firefox disagree on what
- // this should be (block vs table-row), and "" just gives the
- // default for both browsers.
- var elts = document.getElementsByTagName("tr");
- for(var i=0; i<elts.length; i++) {
- if (elts[i].className == "private") {
- elts[i].style.display = ((cmd && cmd.substr(0,4)=="hide")?"none":"");
- }
- }
- // Update all list items containing private objects.
- var elts = document.getElementsByTagName("li");
- for(var i=0; i<elts.length; i++) {
- if (elts[i].className == "private") {
- elts[i].style.display = ((cmd && cmd.substr(0,4)=="hide")?
- "none":"");
- }
- }
- // Update all list items containing private objects.
- var elts = document.getElementsByTagName("ul");
- for(var i=0; i<elts.length; i++) {
- if (elts[i].className == "private") {
- elts[i].style.display = ((cmd && cmd.substr(0,4)=="hide")?"none":"block");
- }
- }
- // Set a cookie to remember the current option.
- document.cookie = "EpydocPrivate="+cmd;
- }
-function show_private() {
- var elts = document.getElementsByTagName("a");
- for(var i=0; i<elts.length; i++) {
- if (elts[i].className == "privatelink") {
- cmd = elts[i].innerHTML;
- if (cmd && cmd.substr(0,4)=="show")
- toggle_private();
- }
- }
- }
-function getCookie(name) {
- var dc = document.cookie;
- var prefix = name + "=";
- var begin = dc.indexOf("; " + prefix);
- if (begin == -1) {
- begin = dc.indexOf(prefix);
- if (begin != 0) return null;
- } else
- { begin += 2; }
- var end = document.cookie.indexOf(";", begin);
- if (end == -1)
- { end = dc.length; }
- return unescape(dc.substring(begin + prefix.length, end));
- }
-function setFrame(url1, url2) {
- parent.frames[1].location.href = url1;
- parent.frames[2].location.href = url2;
- }
-function checkCookie() {
- var cmd=getCookie("EpydocPrivate");
- if (cmd && cmd.substr(0,4)!="show" && location.href.indexOf("#_") < 0)
- toggle_private();
- }
-function toggleCallGraph(id) {
- var elt = document.getElementById(id);
- if (elt.style.display == "none")
- elt.style.display = "block";
- else
- elt.style.display = "none";
- }
-function expand(id) {
- var elt = document.getElementById(id+"-expanded");
- if (elt) elt.style.display = "block";
- var elt = document.getElementById(id+"-expanded-linenums");
- if (elt) elt.style.display = "block";
- var elt = document.getElementById(id+"-collapsed");
- if (elt) { elt.innerHTML = ""; elt.style.display = "none"; }
- var elt = document.getElementById(id+"-collapsed-linenums");
- if (elt) { elt.innerHTML = ""; elt.style.display = "none"; }
- var elt = document.getElementById(id+"-toggle");
- if (elt) { elt.innerHTML = "-"; }
-}
-
-function collapse(id) {
- var elt = document.getElementById(id+"-expanded");
- if (elt) elt.style.display = "none";
- var elt = document.getElementById(id+"-expanded-linenums");
- if (elt) elt.style.display = "none";
- var elt = document.getElementById(id+"-collapsed-linenums");
- if (elt) { elt.innerHTML = "<br />"; elt.style.display="block"; }
- var elt = document.getElementById(id+"-toggle");
- if (elt) { elt.innerHTML = "+"; }
- var elt = document.getElementById(id+"-collapsed");
- if (elt) {
- elt.style.display = "block";
-
- var indent = elt.getAttribute("indent");
- var pad = elt.getAttribute("pad");
- var s = "<tt class='py-lineno'>";
- for (var i=0; i<pad.length; i++) { s += "&nbsp;" }
- s += "</tt>";
- s += "&nbsp;&nbsp;<tt class='py-line'>";
- for (var i=0; i<indent.length; i++) { s += "&nbsp;" }
- s += "<a href='#' onclick='expand(\"" + id;
- s += "\");return false'>...</a></tt><br />";
- elt.innerHTML = s;
- }
-}
-
-function toggle(id) {
- elt = document.getElementById(id+"-toggle");
- if (elt.innerHTML == "-")
- collapse(id);
- else
- expand(id);
- return false;
-}
-
-function highlight(id) {
- var elt = document.getElementById(id+"-def");
- if (elt) elt.className = "py-highlight-hdr";
- var elt = document.getElementById(id+"-expanded");
- if (elt) elt.className = "py-highlight";
- var elt = document.getElementById(id+"-collapsed");
- if (elt) elt.className = "py-highlight";
-}
-
-function num_lines(s) {
- var n = 1;
- var pos = s.indexOf("\n");
- while ( pos > 0) {
- n += 1;
- pos = s.indexOf("\n", pos+1);
- }
- return n;
-}
-
-// Collapse all blocks that mave more than `min_lines` lines.
-function collapse_all(min_lines) {
- var elts = document.getElementsByTagName("div");
- for (var i=0; i<elts.length; i++) {
- var elt = elts[i];
- var split = elt.id.indexOf("-");
- if (split > 0)
- if (elt.id.substring(split, elt.id.length) == "-expanded")
- if (num_lines(elt.innerHTML) > min_lines)
- collapse(elt.id.substring(0, split));
- }
-}
-
-function expandto(href) {
- var start = href.indexOf("#")+1;
- if (start != 0 && start != href.length) {
- if (href.substring(start, href.length) != "-") {
- collapse_all(4);
- pos = href.indexOf(".", start);
- while (pos != -1) {
- var id = href.substring(start, pos);
- expand(id);
- pos = href.indexOf(".", pos+1);
- }
- var id = href.substring(start, href.length);
- expand(id);
- highlight(id);
- }
- }
-}
-
-function kill_doclink(id) {
- var parent = document.getElementById(id);
- parent.removeChild(parent.childNodes.item(0));
-}
-function auto_kill_doclink(ev) {
- if (!ev) var ev = window.event;
- if (!this.contains(ev.toElement)) {
- var parent = document.getElementById(this.parentID);
- parent.removeChild(parent.childNodes.item(0));
- }
-}
-
-function doclink(id, name, targets_id) {
- var elt = document.getElementById(id);
-
- // If we already opened the box, then destroy it.
- // (This case should never occur, but leave it in just in case.)
- if (elt.childNodes.length > 1) {
- elt.removeChild(elt.childNodes.item(0));
- }
- else {
- // The outer box: relative + inline positioning.
- var box1 = document.createElement("div");
- box1.style.position = "relative";
- box1.style.display = "inline";
- box1.style.top = 0;
- box1.style.left = 0;
-
- // A shadow for fun
- var shadow = document.createElement("div");
- shadow.style.position = "absolute";
- shadow.style.left = "-1.3em";
- shadow.style.top = "-1.3em";
- shadow.style.background = "#404040";
-
- // The inner box: absolute positioning.
- var box2 = document.createElement("div");
- box2.style.position = "relative";
- box2.style.border = "1px solid #a0a0a0";
- box2.style.left = "-.2em";
- box2.style.top = "-.2em";
- box2.style.background = "white";
- box2.style.padding = ".3em .4em .3em .4em";
- box2.style.fontStyle = "normal";
- box2.onmouseout=auto_kill_doclink;
- box2.parentID = id;
-
- // Get the targets
- var targets_elt = document.getElementById(targets_id);
- var targets = targets_elt.getAttribute("targets");
- var links = "";
- target_list = targets.split(",");
- for (var i=0; i<target_list.length; i++) {
- var target = target_list[i].split("=");
- links += "<li><a href='" + target[1] +
- "' style='text-decoration:none'>" +
- target[0] + "</a></li>";
- }
-
- // Put it all together.
- elt.insertBefore(box1, elt.childNodes.item(0));
- //box1.appendChild(box2);
- box1.appendChild(shadow);
- shadow.appendChild(box2);
- box2.innerHTML =
- "Which <b>"+name+"</b> do you want to see documentation for?" +
- "<ul style='margin-bottom: 0;'>" +
- links +
- "<li><a href='#' style='text-decoration:none' " +
- "onclick='kill_doclink(\""+id+"\");return false;'>"+
- "<i>None of the above</i></a></li></ul>";
- }
- return false;
-}
-
-function get_anchor() {
- var href = location.href;
- var start = href.indexOf("#")+1;
- if ((start != 0) && (start != href.length))
- return href.substring(start, href.length);
- }
-function redirect_url(dottedName) {
- // Scan through each element of the "pages" list, and check
- // if "name" matches with any of them.
- for (var i=0; i<pages.length; i++) {
-
- // Each page has the form "<pagename>-m" or "<pagename>-c";
- // extract the <pagename> portion & compare it to dottedName.
- var pagename = pages[i].substring(0, pages[i].length-2);
- if (pagename == dottedName.substring(0,pagename.length)) {
-
- // We've found a page that matches `dottedName`;
- // construct its URL, using leftover `dottedName`
- // content to form an anchor.
- var pagetype = pages[i].charAt(pages[i].length-1);
- var url = pagename + ((pagetype=="m")?"-module.html":
- "-class.html");
- if (dottedName.length > pagename.length)
- url += "#" + dottedName.substring(pagename.length+1,
- dottedName.length);
- return url;
- }
- }
- }
diff --git a/docs/frames.html b/docs/frames.html
deleted file mode 100644
index d1e8877..0000000
--- a/docs/frames.html
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
- "DTD/xhtml1-frameset.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title> API Documentation </title>
-</head>
-<frameset cols="20%,80%">
- <frameset rows="30%,70%">
- <frame src="toc.html" name="moduleListFrame"
- id="moduleListFrame" />
- <frame src="toc-everything.html" name="moduleFrame"
- id="moduleFrame" />
- </frameset>
- <frame src="paramiko-module.html" name="mainFrame" id="mainFrame" />
-</frameset>
-</html>
diff --git a/docs/help.html b/docs/help.html
deleted file mode 100644
index 2ff891a..0000000
--- a/docs/help.html
+++ /dev/null
@@ -1,266 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Help</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th bgcolor="#70b0f0" class="navbar-select"
- >&nbsp;&nbsp;&nbsp;Help&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">&nbsp;</td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="help.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-
-<h1 class="epydoc"> API Documentation </h1>
-
-<p> This document contains the API (Application Programming Interface)
-documentation for this project. Documentation for the Python
-objects defined by the project is divided into separate pages for each
-package, module, and class. The API documentation also includes two
-pages containing information about the project as a whole: a trees
-page, and an index page. </p>
-
-<h2> Object Documentation </h2>
-
- <p>Each <strong>Package Documentation</strong> page contains: </p>
- <ul>
- <li> A description of the package. </li>
- <li> A list of the modules and sub-packages contained by the
- package. </li>
- <li> A summary of the classes defined by the package. </li>
- <li> A summary of the functions defined by the package. </li>
- <li> A summary of the variables defined by the package. </li>
- <li> A detailed description of each function defined by the
- package. </li>
- <li> A detailed description of each variable defined by the
- package. </li>
- </ul>
-
- <p>Each <strong>Module Documentation</strong> page contains:</p>
- <ul>
- <li> A description of the module. </li>
- <li> A summary of the classes defined by the module. </li>
- <li> A summary of the functions defined by the module. </li>
- <li> A summary of the variables defined by the module. </li>
- <li> A detailed description of each function defined by the
- module. </li>
- <li> A detailed description of each variable defined by the
- module. </li>
- </ul>
-
- <p>Each <strong>Class Documentation</strong> page contains: </p>
- <ul>
- <li> A class inheritance diagram. </li>
- <li> A list of known subclasses. </li>
- <li> A description of the class. </li>
- <li> A summary of the methods defined by the class. </li>
- <li> A summary of the instance variables defined by the class. </li>
- <li> A summary of the class (static) variables defined by the
- class. </li>
- <li> A detailed description of each method defined by the
- class. </li>
- <li> A detailed description of each instance variable defined by the
- class. </li>
- <li> A detailed description of each class (static) variable defined
- by the class. </li>
- </ul>
-
-<h2> Project Documentation </h2>
-
- <p> The <strong>Trees</strong> page contains the module and class hierarchies: </p>
- <ul>
- <li> The <em>module hierarchy</em> lists every package and module, with
- modules grouped into packages. At the top level, and within each
- package, modules and sub-packages are listed alphabetically. </li>
- <li> The <em>class hierarchy</em> lists every class, grouped by base
- class. If a class has more than one base class, then it will be
- listed under each base class. At the top level, and under each base
- class, classes are listed alphabetically. </li>
- </ul>
-
- <p> The <strong>Index</strong> page contains indices of terms and
- identifiers: </p>
- <ul>
- <li> The <em>term index</em> lists every term indexed by any object's
- documentation. For each term, the index provides links to each
- place where the term is indexed. </li>
- <li> The <em>identifier index</em> lists the (short) name of every package,
- module, class, method, function, variable, and parameter. For each
- identifier, the index provides a short description, and a link to
- its documentation. </li>
- </ul>
-
-<h2> The Table of Contents </h2>
-
-<p> The table of contents occupies the two frames on the left side of
-the window. The upper-left frame displays the <em>project
-contents</em>, and the lower-left frame displays the <em>module
-contents</em>: </p>
-
-<table class="help summary" border="1" cellspacing="0" cellpadding="3">
- <tr style="height: 30%">
- <td align="center" style="font-size: small">
- Project<br />Contents<hr />...</td>
- <td align="center" style="font-size: small" rowspan="2" width="70%">
- API<br />Documentation<br />Frame<br /><br /><br />
- </td>
- </tr>
- <tr>
- <td align="center" style="font-size: small">
- Module<br />Contents<hr />&nbsp;<br />...<br />&nbsp;
- </td>
- </tr>
-</table><br />
-
-<p> The <strong>project contents frame</strong> contains a list of all packages
-and modules that are defined by the project. Clicking on an entry
-will display its contents in the module contents frame. Clicking on a
-special entry, labeled "Everything," will display the contents of
-the entire project. </p>
-
-<p> The <strong>module contents frame</strong> contains a list of every
-submodule, class, type, exception, function, and variable defined by a
-module or package. Clicking on an entry will display its
-documentation in the API documentation frame. Clicking on the name of
-the module, at the top of the frame, will display the documentation
-for the module itself. </p>
-
-<p> The "<strong>frames</strong>" and "<strong>no frames</strong>" buttons below the top
-navigation bar can be used to control whether the table of contents is
-displayed or not. </p>
-
-<h2> The Navigation Bar </h2>
-
-<p> A navigation bar is located at the top and bottom of every page.
-It indicates what type of page you are currently viewing, and allows
-you to go to related pages. The following table describes the labels
-on the navigation bar. Note that not some labels (such as
-[Parent]) are not displayed on all pages. </p>
-
-<table class="summary" border="1" cellspacing="0" cellpadding="3" width="100%">
-<tr class="summary">
- <th>Label</th>
- <th>Highlighted when...</th>
- <th>Links to...</th>
-</tr>
- <tr><td valign="top"><strong>[Parent]</strong></td>
- <td valign="top"><em>(never highlighted)</em></td>
- <td valign="top"> the parent of the current package </td></tr>
- <tr><td valign="top"><strong>[Package]</strong></td>
- <td valign="top">viewing a package</td>
- <td valign="top">the package containing the current object
- </td></tr>
- <tr><td valign="top"><strong>[Module]</strong></td>
- <td valign="top">viewing a module</td>
- <td valign="top">the module containing the current object
- </td></tr>
- <tr><td valign="top"><strong>[Class]</strong></td>
- <td valign="top">viewing a class </td>
- <td valign="top">the class containing the current object</td></tr>
- <tr><td valign="top"><strong>[Trees]</strong></td>
- <td valign="top">viewing the trees page</td>
- <td valign="top"> the trees page </td></tr>
- <tr><td valign="top"><strong>[Index]</strong></td>
- <td valign="top">viewing the index page</td>
- <td valign="top"> the index page </td></tr>
- <tr><td valign="top"><strong>[Help]</strong></td>
- <td valign="top">viewing the help page</td>
- <td valign="top"> the help page </td></tr>
-</table>
-
-<p> The "<strong>show private</strong>" and "<strong>hide private</strong>" buttons below
-the top navigation bar can be used to control whether documentation
-for private objects is displayed. Private objects are usually defined
-as objects whose (short) names begin with a single underscore, but do
-not end with an underscore. For example, "<code>_x</code>",
-"<code>__pprint</code>", and "<code>epydoc.epytext._tokenize</code>"
-are private objects; but "<code>re.sub</code>",
-"<code>__init__</code>", and "<code>type_</code>" are not. However,
-if a module defines the "<code>__all__</code>" variable, then its
-contents are used to decide which objects are private. </p>
-
-<p> A timestamp below the bottom navigation bar indicates when each
-page was last updated. </p>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th bgcolor="#70b0f0" class="navbar-select"
- >&nbsp;&nbsp;&nbsp;Help&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:01 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/identifier-index.html b/docs/identifier-index.html
deleted file mode 100644
index ee9873e..0000000
--- a/docs/identifier-index.html
+++ /dev/null
@@ -1,5475 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Identifier Index</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th bgcolor="#70b0f0" class="navbar-select"
- >&nbsp;&nbsp;&nbsp;Indices&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">&nbsp;</td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="identifier-index.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<center><b>[
- <a href="identifier-index.html">Identifiers</a>
-| <a href="bug-index.html">Bugs</a>
-| <a href="since-index.html">Introductions</a>
-]</b></center><br />
-<table border="0" width="100%">
-<tr valign="bottom"><td>
-<h1 class="epydoc">Identifier Index</h1>
-</td><td>
-[
- <a href="#A">A</a>
- <a href="#B">B</a>
- <a href="#C">C</a>
- <a href="#D">D</a>
- <a href="#E">E</a>
- <a href="#F">F</a>
- <a href="#G">G</a>
- <a href="#H">H</a>
- <a href="#I">I</a>
- J
- <a href="#K">K</a>
- <a href="#L">L</a>
- <a href="#M">M</a>
- <a href="#N">N</a>
- <a href="#O">O</a>
- <a href="#P">P</a>
- Q
- <a href="#R">R</a>
- <a href="#S">S</a>
- <a href="#T">T</a>
- <a href="#U">U</a>
- <a href="#V">V</a>
- <a href="#W">W</a>
- <a href="#X">X</a>
- Y
- <a href="#Z">Z</a>
- <a href="#_">_</a>
-]
-</td></table>
-<table border="0" width="100%">
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="A">A</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#accept">accept()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#AUTH_FAILED">AUTH_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#AUTH_PARTIALLY_SUCCESSFUL">AUTH_PARTIALLY_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.HostKeys-class.html#add">add()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.HostKeys-class.html">HostKeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#AUTH_FAILED">AUTH_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#AUTH_PARTIALLY_SUCCESSFUL">AUTH_PARTIALLY_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Message-class.html#add">add()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Message-class.html">Message</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#AUTH_FAILED">AUTH_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#AUTH_PARTIALLY_SUCCESSFUL">AUTH_PARTIALLY_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Message-class.html#add_boolean">add_boolean()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Message-class.html">Message</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#AUTH_FAILED">AUTH_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#AUTH_PARTIALLY_SUCCESSFUL">AUTH_PARTIALLY_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Message-class.html#add_byte">add_byte()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Message-class.html">Message</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#AUTH_FAILED">AUTH_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#AUTH_PARTIALLY_SUCCESSFUL">AUTH_PARTIALLY_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Message-class.html#add_bytes">add_bytes()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Message-class.html">Message</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#AUTH_FAILED">AUTH_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#auth_password">auth_password()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Message-class.html#add_int">add_int()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Message-class.html">Message</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#AUTH_FAILED">AUTH_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#auth_publickey">auth_publickey()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Message-class.html#add_int64">add_int64()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Message-class.html">Message</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#AUTH_FAILED">AUTH_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#AUTH_SUCCESSFUL">AUTH_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Message-class.html#add_list">add_list()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Message-class.html">Message</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#AUTH_FAILED">AUTH_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#AUTH_SUCCESSFUL">AUTH_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Message-class.html#add_mpint">add_mpint()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Message-class.html">Message</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#AUTH_FAILED">AUTH_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#AUTH_SUCCESSFUL">AUTH_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#add_server_key">add_server_key()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#AUTH_FAILED">AUTH_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#AUTH_SUCCESSFUL">AUTH_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Message-class.html#add_string">add_string()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Message-class.html">Message</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html">auth_handler</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#AUTH_SUCCESSFUL">AUTH_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.logging22.logger-class.html#addFilter">addFilter()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.logging22.logger-class.html">logger</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#auth_interactive">auth_interactive()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#AUTH_SUCCESSFUL">AUTH_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.logging22.logger-class.html#addHandler">addHandler()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.logging22.logger-class.html">logger</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#auth_none">auth_none()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#AUTH_SUCCESSFUL">AUTH_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Agent-class.html">Agent</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#AUTH_PARTIALLY_SUCCESSFUL">AUTH_PARTIALLY_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#AUTH_SUCCESSFUL">AUTH_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.agent-module.html">agent</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#AUTH_PARTIALLY_SUCCESSFUL">AUTH_PARTIALLY_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#AUTH_SUCCESSFUL">AUTH_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.AgentKey-class.html">AgentKey</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#AUTH_PARTIALLY_SUCCESSFUL">AUTH_PARTIALLY_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#AUTH_SUCCESSFUL">AUTH_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.BadAuthenticationType-class.html#allowed_types">allowed_types</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.BadAuthenticationType-class.html">BadAuthenticationType</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#AUTH_PARTIALLY_SUCCESSFUL">AUTH_PARTIALLY_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#AUTH_SUCCESSFUL">AUTH_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.ssh_exception.PartialAuthentication-class.html#allowed_types">allowed_types</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ssh_exception.PartialAuthentication-class.html">PartialAuthentication</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#AUTH_PARTIALLY_SUCCESSFUL">AUTH_PARTIALLY_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#AUTH_SUCCESSFUL">AUTH_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#atfork">atfork()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#AUTH_PARTIALLY_SUCCESSFUL">AUTH_PARTIALLY_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#AUTH_SUCCESSFUL">AUTH_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#AUTH_FAILED">AUTH_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#AUTH_PARTIALLY_SUCCESSFUL">AUTH_PARTIALLY_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#AUTH_SUCCESSFUL">AUTH_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#AUTH_FAILED">AUTH_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#AUTH_PARTIALLY_SUCCESSFUL">AUTH_PARTIALLY_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#AUTH_SUCCESSFUL">AUTH_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#AUTH_FAILED">AUTH_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#AUTH_PARTIALLY_SUCCESSFUL">AUTH_PARTIALLY_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#AUTH_SUCCESSFUL">AUTH_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#AUTH_FAILED">AUTH_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#AUTH_PARTIALLY_SUCCESSFUL">AUTH_PARTIALLY_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#AUTH_SUCCESSFUL">AUTH_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#AUTH_FAILED">AUTH_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#AUTH_PARTIALLY_SUCCESSFUL">AUTH_PARTIALLY_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#AUTH_SUCCESSFUL">AUTH_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#AUTH_FAILED">AUTH_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#AUTH_PARTIALLY_SUCCESSFUL">AUTH_PARTIALLY_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#AUTH_SUCCESSFUL">AUTH_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#AUTH_FAILED">AUTH_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#AUTH_PARTIALLY_SUCCESSFUL">AUTH_PARTIALLY_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#AUTH_SUCCESSFUL">AUTH_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#AUTH_FAILED">AUTH_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#AUTH_PARTIALLY_SUCCESSFUL">AUTH_PARTIALLY_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#AUTH_SUCCESSFUL">AUTH_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#AUTH_FAILED">AUTH_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#AUTH_PARTIALLY_SUCCESSFUL">AUTH_PARTIALLY_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.AuthenticationException-class.html">AuthenticationException</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#AUTH_FAILED">AUTH_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#AUTH_PARTIALLY_SUCCESSFUL">AUTH_PARTIALLY_SUCCESSFUL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.AutoAddPolicy-class.html">AutoAddPolicy</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="B">B</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.BadAuthenticationType-class.html">BadAuthenticationType</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.ber.BER-class.html">BER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ber-module.html" onclick="show_private();">paramiko.ber</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.buffered_pipe-module.html">buffered_pipe</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.BadHostKeyException-class.html">BadHostKeyException</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.ber.BERException-class.html">BERException</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ber-module.html" onclick="show_private();">paramiko.ber</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.BufferedFile-class.html">BufferedFile</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.ber-module.html">ber</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#bit_length">bit_length()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.buffered_pipe.BufferedPipe-class.html">BufferedPipe</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.buffered_pipe-module.html" onclick="show_private();">paramiko.buffered_pipe</a>)</span></td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="C">C</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.DSSKey-class.html#can_sign">can_sign()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.DSSKey-class.html">DSSKey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#CMD_FSTAT">CMD_FSTAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#CMD_RMDIR">CMD_RMDIR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.PKey-class.html#can_sign">can_sign()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.PKey-class.html">PKey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#CMD_FSTAT">CMD_FSTAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#CMD_RMDIR">CMD_RMDIR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.RSAKey-class.html#can_sign">can_sign()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.RSAKey-class.html">RSAKey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#CMD_HANDLE">CMD_HANDLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#CMD_RMDIR">CMD_RMDIR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.win_pageant-module.html#can_talk_to_agent">can_talk_to_agent()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.win_pageant-module.html">paramiko.win_pageant</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#CMD_HANDLE">CMD_HANDLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#CMD_RMDIR">CMD_RMDIR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#cancel_port_forward">cancel_port_forward()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#CMD_HANDLE">CMD_HANDLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#CMD_RMDIR">CMD_RMDIR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.ServerInterface-class.html#cancel_port_forward_request">cancel_port_forward_request()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ServerInterface-class.html">ServerInterface</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#CMD_HANDLE">CMD_HANDLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#CMD_RMDIR">CMD_RMDIR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPServerInterface-class.html#canonicalize">canonicalize()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPServerInterface-class.html">SFTPServerInterface</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#CMD_HANDLE">CMD_HANDLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#CMD_SETSTAT">CMD_SETSTAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html">Channel</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#CMD_HANDLE">CMD_HANDLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#CMD_SETSTAT">CMD_SETSTAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html">channel</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#CMD_HANDLE">CMD_HANDLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#CMD_SETSTAT">CMD_SETSTAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.ChannelException-class.html">ChannelException</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#CMD_INIT">CMD_INIT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#CMD_SETSTAT">CMD_SETSTAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.transport.ChannelMap-class.html">ChannelMap</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#CMD_INIT">CMD_INIT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#CMD_SETSTAT">CMD_SETSTAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.channel.ChannelStderrFile-class.html">ChannelStderrFile</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#CMD_INIT">CMD_INIT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#CMD_SETSTAT">CMD_SETSTAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPHandle-class.html#chattr">chattr()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPHandle-class.html">SFTPHandle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#CMD_INIT">CMD_INIT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#CMD_SETSTAT">CMD_SETSTAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPServerInterface-class.html#chattr">chattr()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPServerInterface-class.html">SFTPServerInterface</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#CMD_INIT">CMD_INIT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#CMD_STAT">CMD_STAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPClient-class.html#chdir">chdir()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPClient-class.html">SFTPClient</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#CMD_INIT">CMD_INIT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#CMD_STAT">CMD_STAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.HostKeys-class.html#check">check()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.HostKeys-class.html">HostKeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#CMD_INIT">CMD_INIT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#CMD_STAT">CMD_STAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPFile-class.html#check">check()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPFile-class.html">SFTPFile</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#CMD_LSTAT">CMD_LSTAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#CMD_STAT">CMD_STAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.ServerInterface-class.html#check_auth_interactive">check_auth_interactive()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ServerInterface-class.html">ServerInterface</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#CMD_LSTAT">CMD_LSTAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#CMD_STAT">CMD_STAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.ServerInterface-class.html#check_auth_interactive_response">check_auth_interactive_response()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ServerInterface-class.html">ServerInterface</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#CMD_LSTAT">CMD_LSTAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#CMD_STAT">CMD_STAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.ServerInterface-class.html#check_auth_none">check_auth_none()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ServerInterface-class.html">ServerInterface</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#CMD_LSTAT">CMD_LSTAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#CMD_STAT">CMD_STAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.ServerInterface-class.html#check_auth_password">check_auth_password()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ServerInterface-class.html">ServerInterface</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#CMD_LSTAT">CMD_LSTAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#CMD_STATUS">CMD_STATUS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.ServerInterface-class.html#check_auth_publickey">check_auth_publickey()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ServerInterface-class.html">ServerInterface</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#CMD_LSTAT">CMD_LSTAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#CMD_STATUS">CMD_STATUS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.ServerInterface-class.html#check_channel_direct_tcpip_request">check_channel_direct_tcpip_request()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ServerInterface-class.html">ServerInterface</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#CMD_LSTAT">CMD_LSTAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#CMD_STATUS">CMD_STATUS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.ServerInterface-class.html#check_channel_exec_request">check_channel_exec_request()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ServerInterface-class.html">ServerInterface</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#CMD_MKDIR">CMD_MKDIR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#CMD_STATUS">CMD_STATUS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.ServerInterface-class.html#check_channel_pty_request">check_channel_pty_request()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ServerInterface-class.html">ServerInterface</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#CMD_MKDIR">CMD_MKDIR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#CMD_STATUS">CMD_STATUS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.ServerInterface-class.html#check_channel_request">check_channel_request()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ServerInterface-class.html">ServerInterface</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#CMD_MKDIR">CMD_MKDIR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#CMD_STATUS">CMD_STATUS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.ServerInterface-class.html#check_channel_shell_request">check_channel_shell_request()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ServerInterface-class.html">ServerInterface</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#CMD_MKDIR">CMD_MKDIR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#CMD_STATUS">CMD_STATUS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.ServerInterface-class.html#check_channel_subsystem_request">check_channel_subsystem_request()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ServerInterface-class.html">ServerInterface</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#CMD_MKDIR">CMD_MKDIR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#CMD_SYMLINK">CMD_SYMLINK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.ServerInterface-class.html#check_channel_window_change_request">check_channel_window_change_request()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ServerInterface-class.html">ServerInterface</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#CMD_MKDIR">CMD_MKDIR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#CMD_SYMLINK">CMD_SYMLINK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.ServerInterface-class.html#check_channel_x11_request">check_channel_x11_request()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ServerInterface-class.html">ServerInterface</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#CMD_MKDIR">CMD_MKDIR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#CMD_SYMLINK">CMD_SYMLINK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.ServerInterface-class.html#check_global_request">check_global_request()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ServerInterface-class.html">ServerInterface</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#CMD_NAME">CMD_NAME</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#CMD_SYMLINK">CMD_SYMLINK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.ServerInterface-class.html#check_port_forward_request">check_port_forward_request()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ServerInterface-class.html">ServerInterface</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#CMD_NAME">CMD_NAME</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#CMD_SYMLINK">CMD_SYMLINK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPClient-class.html#chmod">chmod()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPClient-class.html">SFTPClient</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#CMD_NAME">CMD_NAME</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#CMD_SYMLINK">CMD_SYMLINK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPFile-class.html#chmod">chmod()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPFile-class.html">SFTPFile</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#CMD_NAME">CMD_NAME</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#CMD_SYMLINK">CMD_SYMLINK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPClient-class.html#chown">chown()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPClient-class.html">SFTPClient</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#CMD_NAME">CMD_NAME</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#CMD_VERSION">CMD_VERSION</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPFile-class.html#chown">chown()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPFile-class.html">SFTPFile</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#CMD_NAME">CMD_NAME</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#CMD_VERSION">CMD_VERSION</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SecurityOptions-class.html#ciphers">ciphers</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SecurityOptions-class.html">SecurityOptions</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#CMD_NAME">CMD_NAME</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#CMD_VERSION">CMD_VERSION</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.HostKeys-class.html#clear">clear()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.HostKeys-class.html">HostKeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#CMD_NAMES">CMD_NAMES</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#CMD_VERSION">CMD_VERSION</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.pipe.OrPipe-class.html#clear">clear()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pipe.OrPipe-class.html">OrPipe</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#CMD_NAMES">CMD_NAMES</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#CMD_VERSION">CMD_VERSION</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.pipe.PosixPipe-class.html#clear">clear()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pipe.PosixPipe-class.html">PosixPipe</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#CMD_NAMES">CMD_NAMES</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#CMD_VERSION">CMD_VERSION</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.pipe.WindowsPipe-class.html#clear">clear()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pipe.WindowsPipe-class.html">WindowsPipe</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#CMD_NAMES">CMD_NAMES</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#CMD_VERSION">CMD_VERSION</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html">client</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#CMD_NAMES">CMD_NAMES</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#CMD_WRITE">CMD_WRITE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Agent-class.html#close">close()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Agent-class.html">Agent</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#CMD_NAMES">CMD_NAMES</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#CMD_WRITE">CMD_WRITE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.BufferedFile-class.html#close">close()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.BufferedFile-class.html">BufferedFile</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#CMD_NAMES">CMD_NAMES</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#CMD_WRITE">CMD_WRITE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#close">close()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#CMD_OPEN">CMD_OPEN</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#CMD_WRITE">CMD_WRITE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPClient-class.html#close">close()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPClient-class.html">SFTPClient</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#CMD_OPEN">CMD_OPEN</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#CMD_WRITE">CMD_WRITE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPFile-class.html#close">close()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPFile-class.html">SFTPFile</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#CMD_OPEN">CMD_OPEN</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#CMD_WRITE">CMD_WRITE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPHandle-class.html#close">close()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPHandle-class.html">SFTPHandle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#CMD_OPEN">CMD_OPEN</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#CMD_WRITE">CMD_WRITE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SSHClient-class.html#close">close()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SSHClient-class.html">SSHClient</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#CMD_OPEN">CMD_OPEN</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html">common</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#close">close()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#CMD_OPEN">CMD_OPEN</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.compress-module.html">compress</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.buffered_pipe.BufferedPipe-class.html#close">close()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.buffered_pipe.BufferedPipe-class.html">BufferedPipe</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#CMD_OPEN">CMD_OPEN</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SecurityOptions-class.html#compression">compression</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SecurityOptions-class.html">SecurityOptions</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.pipe.PosixPipe-class.html#close">close()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pipe.PosixPipe-class.html">PosixPipe</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#CMD_OPENDIR">CMD_OPENDIR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#compute_hmac">compute_hmac()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.pipe.WindowsPipe-class.html#close">close()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pipe.WindowsPipe-class.html">WindowsPipe</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#CMD_OPENDIR">CMD_OPENDIR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.config-module.html">config</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.win_pageant.PageantConnection-class.html#close">close()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.win_pageant.PageantConnection-class.html">PageantConnection</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#CMD_OPENDIR">CMD_OPENDIR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SSHClient-class.html#connect">connect()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SSHClient-class.html">SSHClient</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#CMD_ATTRS">CMD_ATTRS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#CMD_OPENDIR">CMD_OPENDIR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#connect">connect()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#CMD_ATTRS">CMD_ATTRS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#CMD_OPENDIR">CMD_OPENDIR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#CONNECTION_FAILED_CODE">CONNECTION_FAILED_CODE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#CMD_ATTRS">CMD_ATTRS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#CMD_OPENDIR">CMD_OPENDIR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#CONNECTION_FAILED_CODE">CONNECTION_FAILED_CODE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#CMD_ATTRS">CMD_ATTRS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#CMD_OPENDIR">CMD_OPENDIR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#CONNECTION_FAILED_CODE">CONNECTION_FAILED_CODE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#CMD_ATTRS">CMD_ATTRS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#CMD_READ">CMD_READ</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#CONNECTION_FAILED_CODE">CONNECTION_FAILED_CODE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#CMD_ATTRS">CMD_ATTRS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#CMD_READ">CMD_READ</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#CONNECTION_FAILED_CODE">CONNECTION_FAILED_CODE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#CMD_ATTRS">CMD_ATTRS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#CMD_READ">CMD_READ</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#CONNECTION_FAILED_CODE">CONNECTION_FAILED_CODE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#CMD_CLOSE">CMD_CLOSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#CMD_READ">CMD_READ</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#CONNECTION_FAILED_CODE">CONNECTION_FAILED_CODE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#CMD_CLOSE">CMD_CLOSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#CMD_READ">CMD_READ</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#CONNECTION_FAILED_CODE">CONNECTION_FAILED_CODE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#CMD_CLOSE">CMD_CLOSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#CMD_READ">CMD_READ</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#CONNECTION_FAILED_CODE">CONNECTION_FAILED_CODE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#CMD_CLOSE">CMD_CLOSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#CMD_READ">CMD_READ</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#CONNECTION_FAILED_CODE">CONNECTION_FAILED_CODE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#CMD_CLOSE">CMD_CLOSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#CMD_READDIR">CMD_READDIR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#CONNECTION_FAILED_CODE">CONNECTION_FAILED_CODE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#CMD_CLOSE">CMD_CLOSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#CMD_READDIR">CMD_READDIR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#CONNECTION_FAILED_CODE">CONNECTION_FAILED_CODE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#CMD_CLOSE">CMD_CLOSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#CMD_READDIR">CMD_READDIR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#CONNECTION_FAILED_CODE">CONNECTION_FAILED_CODE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#CMD_DATA">CMD_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#CMD_READDIR">CMD_READDIR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#CONNECTION_FAILED_CODE">CONNECTION_FAILED_CODE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#CMD_DATA">CMD_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#CMD_READDIR">CMD_READDIR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#CONNECTION_FAILED_CODE">CONNECTION_FAILED_CODE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#CMD_DATA">CMD_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#CMD_READDIR">CMD_READDIR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#CONNECTION_FAILED_CODE">CONNECTION_FAILED_CODE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#CMD_DATA">CMD_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#CMD_READDIR">CMD_READDIR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#CONNECTION_FAILED_CODE">CONNECTION_FAILED_CODE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#CMD_DATA">CMD_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#CMD_READLINK">CMD_READLINK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#CONNECTION_FAILED_CODE">CONNECTION_FAILED_CODE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#CMD_DATA">CMD_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#CMD_READLINK">CMD_READLINK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#CONNECTION_FAILED_CODE">CONNECTION_FAILED_CODE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#CMD_DATA">CMD_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#CMD_READLINK">CMD_READLINK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#CONNECTION_FAILED_CODE">CONNECTION_FAILED_CODE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#CMD_EXTENDED">CMD_EXTENDED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#CMD_READLINK">CMD_READLINK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#CONNECTION_FAILED_CODE">CONNECTION_FAILED_CODE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#CMD_EXTENDED">CMD_EXTENDED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#CMD_READLINK">CMD_READLINK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPServer-class.html#convert_errno">convert_errno()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPServer-class.html">SFTPServer</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#CMD_EXTENDED">CMD_EXTENDED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#CMD_READLINK">CMD_READLINK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util.Counter-class.html">Counter</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#CMD_EXTENDED">CMD_EXTENDED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#CMD_READLINK">CMD_READLINK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#CRITICAL">CRITICAL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#CMD_EXTENDED">CMD_EXTENDED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#CMD_REALPATH">CMD_REALPATH</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#CRITICAL">CRITICAL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#CMD_EXTENDED">CMD_EXTENDED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#CMD_REALPATH">CMD_REALPATH</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#CRITICAL">CRITICAL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#CMD_EXTENDED">CMD_EXTENDED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#CMD_REALPATH">CMD_REALPATH</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#CRITICAL">CRITICAL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#CMD_EXTENDED_REPLY">CMD_EXTENDED_REPLY</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#CMD_REALPATH">CMD_REALPATH</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#CRITICAL">CRITICAL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#CMD_EXTENDED_REPLY">CMD_EXTENDED_REPLY</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#CMD_REALPATH">CMD_REALPATH</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#CRITICAL">CRITICAL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#CMD_EXTENDED_REPLY">CMD_EXTENDED_REPLY</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#CMD_REALPATH">CMD_REALPATH</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#CRITICAL">CRITICAL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#CMD_EXTENDED_REPLY">CMD_EXTENDED_REPLY</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#CMD_REALPATH">CMD_REALPATH</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#CRITICAL">CRITICAL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#CMD_EXTENDED_REPLY">CMD_EXTENDED_REPLY</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#CMD_REMOVE">CMD_REMOVE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.logging22-module.html#CRITICAL">CRITICAL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.logging22-module.html">paramiko.logging22</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#CMD_EXTENDED_REPLY">CMD_EXTENDED_REPLY</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#CMD_REMOVE">CMD_REMOVE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#CRITICAL">CRITICAL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#CMD_EXTENDED_REPLY">CMD_EXTENDED_REPLY</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#CMD_REMOVE">CMD_REMOVE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#CRITICAL">CRITICAL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#CMD_FSETSTAT">CMD_FSETSTAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#CMD_REMOVE">CMD_REMOVE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#CRITICAL">CRITICAL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#CMD_FSETSTAT">CMD_FSETSTAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#CMD_REMOVE">CMD_REMOVE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#CRITICAL">CRITICAL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#CMD_FSETSTAT">CMD_FSETSTAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#CMD_REMOVE">CMD_REMOVE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#CRITICAL">CRITICAL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#CMD_FSETSTAT">CMD_FSETSTAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#CMD_REMOVE">CMD_REMOVE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#CRITICAL">CRITICAL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#CMD_FSETSTAT">CMD_FSETSTAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#CMD_RENAME">CMD_RENAME</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#CRITICAL">CRITICAL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#CMD_FSETSTAT">CMD_FSETSTAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#CMD_RENAME">CMD_RENAME</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#CRITICAL">CRITICAL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#CMD_FSETSTAT">CMD_FSETSTAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#CMD_RENAME">CMD_RENAME</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#CRITICAL">CRITICAL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#CMD_FSTAT">CMD_FSTAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#CMD_RENAME">CMD_RENAME</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#CRITICAL">CRITICAL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#CMD_FSTAT">CMD_FSTAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#CMD_RENAME">CMD_RENAME</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#CRITICAL">CRITICAL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#CMD_FSTAT">CMD_FSTAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#CMD_RENAME">CMD_RENAME</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#CRITICAL">CRITICAL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#CMD_FSTAT">CMD_FSTAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#CMD_RENAME">CMD_RENAME</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#CRITICAL">CRITICAL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#CMD_FSTAT">CMD_FSTAT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#CMD_RMDIR">CMD_RMDIR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index">&nbsp;</td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="D">D</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#DEBUG">DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER">DISCONNECT_AUTH_CANCELLED_BY_USER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#DEBUG">DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER">DISCONNECT_AUTH_CANCELLED_BY_USER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#DEBUG">DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER">DISCONNECT_AUTH_CANCELLED_BY_USER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#DEBUG">DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER">DISCONNECT_AUTH_CANCELLED_BY_USER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#DEBUG">DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER">DISCONNECT_AUTH_CANCELLED_BY_USER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#DEBUG">DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER">DISCONNECT_AUTH_CANCELLED_BY_USER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#DEBUG">DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER">DISCONNECT_AUTH_CANCELLED_BY_USER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#DEBUG">DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER">DISCONNECT_AUTH_CANCELLED_BY_USER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.logging22-module.html#DEBUG">DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.logging22-module.html">paramiko.logging22</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER">DISCONNECT_AUTH_CANCELLED_BY_USER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE">DISCONNECT_SERVICE_NOT_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#DEBUG">DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER">DISCONNECT_AUTH_CANCELLED_BY_USER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE">DISCONNECT_SERVICE_NOT_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#DEBUG">DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER">DISCONNECT_AUTH_CANCELLED_BY_USER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE">DISCONNECT_SERVICE_NOT_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#DEBUG">DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER">DISCONNECT_AUTH_CANCELLED_BY_USER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE">DISCONNECT_SERVICE_NOT_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#DEBUG">DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER">DISCONNECT_AUTH_CANCELLED_BY_USER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE">DISCONNECT_SERVICE_NOT_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#DEBUG">DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER">DISCONNECT_AUTH_CANCELLED_BY_USER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE">DISCONNECT_SERVICE_NOT_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#DEBUG">DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER">DISCONNECT_AUTH_CANCELLED_BY_USER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE">DISCONNECT_SERVICE_NOT_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#DEBUG">DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER">DISCONNECT_AUTH_CANCELLED_BY_USER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE">DISCONNECT_SERVICE_NOT_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#DEBUG">DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER">DISCONNECT_AUTH_CANCELLED_BY_USER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE">DISCONNECT_SERVICE_NOT_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#DEBUG">DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER">DISCONNECT_AUTH_CANCELLED_BY_USER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE">DISCONNECT_SERVICE_NOT_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#DEBUG">DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE">DISCONNECT_SERVICE_NOT_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#DEBUG">DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE">DISCONNECT_SERVICE_NOT_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#DEBUG">DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE">DISCONNECT_SERVICE_NOT_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#DEBUG">DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE">DISCONNECT_SERVICE_NOT_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.ber.BER-class.html#decode">decode()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ber.BER-class.html">BER</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE">DISCONNECT_SERVICE_NOT_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.ber.BER-class.html#decode_next">decode_next()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ber.BER-class.html">BER</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE">DISCONNECT_SERVICE_NOT_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.ber.BER-class.html#decode_sequence">decode_sequence()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ber.BER-class.html">BER</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE">DISCONNECT_SERVICE_NOT_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#deflate_long">deflate_long()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE">DISCONNECT_SERVICE_NOT_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.transport.ChannelMap-class.html#delete">delete()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport.ChannelMap-class.html">ChannelMap</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE">DISCONNECT_SERVICE_NOT_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SecurityOptions-class.html#digests">digests</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SecurityOptions-class.html">SecurityOptions</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE">DISCONNECT_SERVICE_NOT_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER">DISCONNECT_AUTH_CANCELLED_BY_USER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE">DISCONNECT_SERVICE_NOT_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER">DISCONNECT_AUTH_CANCELLED_BY_USER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.DSSKey-class.html">DSSKey</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER">DISCONNECT_AUTH_CANCELLED_BY_USER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html">dsskey</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="E">E</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.buffered_pipe.BufferedPipe-class.html#empty">empty()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.buffered_pipe.BufferedPipe-class.html">BufferedPipe</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#ERROR">ERROR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#ERROR">ERROR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.ber.BER-class.html#encode">encode()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ber.BER-class.html">BER</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#ERROR">ERROR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#ERROR">ERROR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.ber.BER-class.html#encode_sequence">encode_sequence()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ber.BER-class.html">BER</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#ERROR">ERROR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#ERROR">ERROR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.ber.BER-class.html#encode_tlv">encode_tlv()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ber.BER-class.html">BER</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.logging22-module.html#ERROR">ERROR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.logging22-module.html">paramiko.logging22</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#ERROR">ERROR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.util.enumerate-class.html">enumerate</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#ERROR">ERROR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#ERROR">ERROR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#ERROR">ERROR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#ERROR">ERROR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#ERROR">ERROR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#ERROR">ERROR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#ERROR">ERROR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#ERROR">ERROR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#ERROR">ERROR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#ERROR">ERROR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#exec_command">exec_command()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#ERROR">ERROR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#ERROR">ERROR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SSHClient-class.html#exec_command">exec_command()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SSHClient-class.html">SSHClient</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#ERROR">ERROR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#ERROR">ERROR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#exit_status_ready">exit_status_ready()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="F">F</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.buffered_pipe.BufferedPipe-class.html#feed">feed()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.buffered_pipe.BufferedPipe-class.html">BufferedPipe</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.BufferedFile-class.html#FLAG_BINARY">FLAG_BINARY</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.BufferedFile-class.html">BufferedFile</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#format_binary">format_binary()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.file-module.html">file</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.BufferedFile-class.html#FLAG_BUFFERED">FLAG_BUFFERED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.BufferedFile-class.html">BufferedFile</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#format_binary_line">format_binary_line()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPClient-class.html#file">file()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPClient-class.html">SFTPClient</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPAttributes-class.html#FLAG_EXTENDED">FLAG_EXTENDED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPAttributes-class.html">SFTPAttributes</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#format_binary_weird">format_binary_weird()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#fileno">fileno()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.BufferedFile-class.html#FLAG_LINE_BUFFERED">FLAG_LINE_BUFFERED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.BufferedFile-class.html">BufferedFile</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.logging22.Formatter-class.html">Formatter</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.logging22-module.html">paramiko.logging22</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.pipe.PosixPipe-class.html#fileno">fileno()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pipe.PosixPipe-class.html">PosixPipe</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPAttributes-class.html#FLAG_PERMISSIONS">FLAG_PERMISSIONS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPAttributes-class.html">SFTPAttributes</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys.HostKeyEntry-class.html#from_line">from_line()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys.HostKeyEntry-class.html">HostKeyEntry</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.pipe.WindowsPipe-class.html#fileno">fileno()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pipe.WindowsPipe-class.html">WindowsPipe</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.BufferedFile-class.html#FLAG_READ">FLAG_READ</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.BufferedFile-class.html">BufferedFile</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.PKey-class.html#from_private_key">from_private_key()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.PKey-class.html">PKey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.util.PFilter-class.html#filter">filter()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util.PFilter-class.html">PFilter</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPAttributes-class.html#FLAG_SIZE">FLAG_SIZE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPAttributes-class.html">SFTPAttributes</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.PKey-class.html#from_private_key_file">from_private_key_file()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.PKey-class.html">PKey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPServer-class.html#finish_subsystem">finish_subsystem()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPServer-class.html">SFTPServer</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPAttributes-class.html#FLAG_UIDGID">FLAG_UIDGID</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPAttributes-class.html">SFTPAttributes</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPAttributes-class.html#from_stat">from_stat()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPAttributes-class.html">SFTPAttributes</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SubsystemHandler-class.html#finish_subsystem">finish_subsystem()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SubsystemHandler-class.html">SubsystemHandler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.BufferedFile-class.html#FLAG_UNIVERSAL_NEWLINE">FLAG_UNIVERSAL_NEWLINE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.BufferedFile-class.html">BufferedFile</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPClient-class.html#from_transport">from_transport()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPClient-class.html">SFTPClient</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPAttributes-class.html#FLAG_AMTIME">FLAG_AMTIME</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPAttributes-class.html">SFTPAttributes</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.BufferedFile-class.html#FLAG_WRITE">FLAG_WRITE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.BufferedFile-class.html">BufferedFile</a>)</span></td>
-<td width="33%" class="link-index">&nbsp;</td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.BufferedFile-class.html#FLAG_APPEND">FLAG_APPEND</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.BufferedFile-class.html">BufferedFile</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.BufferedFile-class.html#flush">flush()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.BufferedFile-class.html">BufferedFile</a>)</span></td>
-<td width="33%" class="link-index">&nbsp;</td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="G">G</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#G">G</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SSHClient-class.html#get_host_keys">get_host_keys()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SSHClient-class.html">SSHClient</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#get_security_options">get_security_options()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.DSSKey-class.html#generate">generate()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.DSSKey-class.html">DSSKey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#get_id">get_id()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SubsystemHandler-class.html#get_server">get_server()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SubsystemHandler-class.html">SubsystemHandler</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.RSAKey-class.html#generate">generate()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.RSAKey-class.html">RSAKey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Message-class.html#get_int">get_int()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Message-class.html">Message</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#get_server_key">get_server_key()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#generate_key_bytes">generate_key_bytes()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Message-class.html#get_int64">get_int64()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Message-class.html">Message</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Message-class.html#get_so_far">get_so_far()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Message-class.html">Message</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPClient-class.html#get">get()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPClient-class.html">SFTPClient</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Agent-class.html#get_keys">get_keys()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Agent-class.html">Agent</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Message-class.html#get_string">get_string()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Message-class.html">Message</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.transport.ChannelMap-class.html#get">get()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport.ChannelMap-class.html">ChannelMap</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Message-class.html#get_list">get_list()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Message-class.html">Message</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#get_thread_id">get_thread_id()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.ServerInterface-class.html#get_allowed_auths">get_allowed_auths()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ServerInterface-class.html">ServerInterface</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#get_log_channel">get_log_channel()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#get_transport">get_transport()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.PKey-class.html#get_base64">get_base64()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.PKey-class.html">PKey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#get_logger">get_logger()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SSHClient-class.html#get_transport">get_transport()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SSHClient-class.html">SSHClient</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.DSSKey-class.html#get_bits">get_bits()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.DSSKey-class.html">DSSKey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.primes.ModulusPack-class.html#get_modulus">get_modulus()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.primes.ModulusPack-class.html">ModulusPack</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#get_username">get_username()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.PKey-class.html#get_bits">get_bits()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.PKey-class.html">PKey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Message-class.html#get_mpint">get_mpint()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Message-class.html">Message</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPClient-class.html#getcwd">getcwd()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPClient-class.html">SFTPClient</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.RSAKey-class.html#get_bits">get_bits()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.RSAKey-class.html">RSAKey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.AgentKey-class.html#get_name">get_name()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.AgentKey-class.html">AgentKey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.logging22-module.html#getLogger">getLogger()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.logging22-module.html">paramiko.logging22</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Message-class.html#get_boolean">get_boolean()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Message-class.html">Message</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#get_name">get_name()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#getpeername">getpeername()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Message-class.html#get_byte">get_byte()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Message-class.html">Message</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.DSSKey-class.html#get_name">get_name()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.DSSKey-class.html">DSSKey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#getpeername">getpeername()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Message-class.html#get_bytes">get_bytes()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Message-class.html">Message</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.PKey-class.html#get_name">get_name()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.PKey-class.html">PKey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#gettimeout">gettimeout()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPClient-class.html#get_channel">get_channel()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPClient-class.html">SFTPClient</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.RSAKey-class.html#get_name">get_name()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.RSAKey-class.html">RSAKey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPFile-class.html#gettimeout">gettimeout()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPFile-class.html">SFTPFile</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#get_exception">get_exception()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#get_pty">get_pty()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#global_request">global_request()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.PKey-class.html#get_fingerprint">get_fingerprint()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.PKey-class.html">PKey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Message-class.html#get_remainder">get_remainder()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Message-class.html">Message</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#got_r_hmac">got_r_hmac</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#get_hexdump">get_hexdump()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#get_remote_server_key">get_remote_server_key()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-<td width="33%" class="link-index">&nbsp;</td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="H">H</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.HostKeys-class.html#hash_host">hash_host()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.HostKeys-class.html">HostKeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys.HostKeyEntry-class.html">HostKeyEntry</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html">hostkeys</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#hexify">hexify()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.HostKeys-class.html">HostKeys</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index">&nbsp;</td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="I">I</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#inflate_long">inflate_long()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#INFO">INFO</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#INFO">INFO</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#INFO">INFO</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#INFO">INFO</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#INFO">INFO</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#INFO">INFO</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#INFO">INFO</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#INFO">INFO</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#INFO">INFO</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#INFO">INFO</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#invoke_shell">invoke_shell()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#INFO">INFO</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#INFO">INFO</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SSHClient-class.html#invoke_shell">invoke_shell()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SSHClient-class.html">SSHClient</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#INFO">INFO</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#INFO">INFO</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#invoke_subsystem">invoke_subsystem()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#INFO">INFO</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#INFO">INFO</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#is_active">is_active()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#INFO">INFO</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#INFO">INFO</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#is_authenticated">is_authenticated()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#INFO">INFO</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#INFO">INFO</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index">&nbsp;</td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.logging22-module.html#INFO">INFO</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.logging22-module.html">paramiko.logging22</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#INFO">INFO</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index">&nbsp;</td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="K">K</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SecurityOptions-class.html#kex">kex</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SecurityOptions-class.html">SecurityOptions</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex.KexGex-class.html">KexGex</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.HostKeys-class.html#keys">keys()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.HostKeys-class.html">HostKeys</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html">kex_gex</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1.KexGroup1-class.html">KexGroup1</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index">&nbsp;</td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html">kex_group1</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SecurityOptions-class.html#key_types">key_types</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SecurityOptions-class.html">SecurityOptions</a>)</span></td>
-<td width="33%" class="link-index">&nbsp;</td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="L">L</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPServerInterface-class.html#list_folder">list_folder()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPServerInterface-class.html">SFTPServerInterface</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#load_server_moduli">load_server_moduli()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.HostKeys-class.html#lookup">lookup()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.HostKeys-class.html">HostKeys</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPClient-class.html#listdir">listdir()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPClient-class.html">SFTPClient</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SSHClient-class.html#load_system_host_keys">load_system_host_keys()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SSHClient-class.html">SSHClient</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SSHConfig-class.html#lookup">lookup()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SSHConfig-class.html">SSHConfig</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPClient-class.html#listdir_attr">listdir_attr()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPClient-class.html">SFTPClient</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.logging22.logger-class.html#log">log()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.logging22.logger-class.html">logger</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#lookup_ssh_host_config">lookup_ssh_host_config()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.HostKeys-class.html#load">load()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.HostKeys-class.html">HostKeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#log_to_file">log_to_file()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPClient-class.html#lstat">lstat()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPClient-class.html">SFTPClient</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SSHClient-class.html#load_host_keys">load_host_keys()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SSHClient-class.html">SSHClient</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.logging22.logger-class.html">logger</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.logging22-module.html">paramiko.logging22</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPServerInterface-class.html#lstat">lstat()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPServerInterface-class.html">SFTPServerInterface</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#load_host_keys">load_host_keys()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.logging22-module.html">logging22</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index">&nbsp;</td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="M">M</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.pipe-module.html#make_or_pipe">make_or_pipe()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pipe-module.html" onclick="show_private();">paramiko.pipe</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#MSG_CHANNEL_SUCCESS">MSG_CHANNEL_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#MSG_REQUEST_SUCCESS">MSG_REQUEST_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.pipe-module.html#make_pipe">make_pipe()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pipe-module.html" onclick="show_private();">paramiko.pipe</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#MSG_CHANNEL_SUCCESS">MSG_CHANNEL_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#MSG_REQUEST_SUCCESS">MSG_REQUEST_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#makefile">makefile()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#MSG_CHANNEL_SUCCESS">MSG_CHANNEL_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#MSG_REQUEST_SUCCESS">MSG_REQUEST_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#makefile_stderr">makefile_stderr()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#MSG_CHANNEL_SUCCESS">MSG_CHANNEL_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#MSG_REQUEST_SUCCESS">MSG_REQUEST_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex.KexGex-class.html#max_bits">max_bits</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex.KexGex-class.html">KexGex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#MSG_CHANNEL_SUCCESS">MSG_CHANNEL_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#MSG_REQUEST_SUCCESS">MSG_REQUEST_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPFile-class.html#MAX_REQUEST_SIZE">MAX_REQUEST_SIZE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPFile-class.html">SFTPFile</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#MSG_CHANNEL_SUCCESS">MSG_CHANNEL_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#MSG_SERVICE_ACCEPT">MSG_SERVICE_ACCEPT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Message-class.html">Message</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#MSG_CHANNEL_SUCCESS">MSG_CHANNEL_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#MSG_SERVICE_ACCEPT">MSG_SERVICE_ACCEPT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.message-module.html">message</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#MSG_CHANNEL_SUCCESS">MSG_CHANNEL_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#MSG_SERVICE_ACCEPT">MSG_SERVICE_ACCEPT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex.KexGex-class.html#min_bits">min_bits</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex.KexGex-class.html">KexGex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#MSG_CHANNEL_SUCCESS">MSG_CHANNEL_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#MSG_SERVICE_ACCEPT">MSG_SERVICE_ACCEPT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#MIN_PACKET_SIZE">MIN_PACKET_SIZE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#MSG_CHANNEL_SUCCESS">MSG_CHANNEL_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#MSG_SERVICE_ACCEPT">MSG_SERVICE_ACCEPT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.AutoAddPolicy-class.html#missing_host_key">missing_host_key()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.AutoAddPolicy-class.html">AutoAddPolicy</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#MSG_CHANNEL_SUCCESS">MSG_CHANNEL_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#MSG_SERVICE_ACCEPT">MSG_SERVICE_ACCEPT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.MissingHostKeyPolicy-class.html#missing_host_key">missing_host_key()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.MissingHostKeyPolicy-class.html">MissingHostKeyPolicy</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#MSG_CHANNEL_SUCCESS">MSG_CHANNEL_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#MSG_SERVICE_ACCEPT">MSG_SERVICE_ACCEPT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.RejectPolicy-class.html#missing_host_key">missing_host_key()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.RejectPolicy-class.html">RejectPolicy</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#MSG_CHANNEL_WINDOW_ADJUST">MSG_CHANNEL_WINDOW_ADJUST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#MSG_SERVICE_ACCEPT">MSG_SERVICE_ACCEPT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.WarningPolicy-class.html#missing_host_key">missing_host_key()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.WarningPolicy-class.html">WarningPolicy</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#MSG_CHANNEL_WINDOW_ADJUST">MSG_CHANNEL_WINDOW_ADJUST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#MSG_SERVICE_ACCEPT">MSG_SERVICE_ACCEPT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.MissingHostKeyPolicy-class.html">MissingHostKeyPolicy</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#MSG_CHANNEL_WINDOW_ADJUST">MSG_CHANNEL_WINDOW_ADJUST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#MSG_SERVICE_ACCEPT">MSG_SERVICE_ACCEPT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPClient-class.html#mkdir">mkdir()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPClient-class.html">SFTPClient</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#MSG_CHANNEL_WINDOW_ADJUST">MSG_CHANNEL_WINDOW_ADJUST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#MSG_SERVICE_ACCEPT">MSG_SERVICE_ACCEPT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPServerInterface-class.html#mkdir">mkdir()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPServerInterface-class.html">SFTPServerInterface</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#MSG_CHANNEL_WINDOW_ADJUST">MSG_CHANNEL_WINDOW_ADJUST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#MSG_SERVICE_ACCEPT">MSG_SERVICE_ACCEPT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#mod_inverse">mod_inverse()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#MSG_CHANNEL_WINDOW_ADJUST">MSG_CHANNEL_WINDOW_ADJUST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#MSG_SERVICE_ACCEPT">MSG_SERVICE_ACCEPT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.primes.ModulusPack-class.html">ModulusPack</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.primes-module.html" onclick="show_private();">paramiko.primes</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#MSG_CHANNEL_WINDOW_ADJUST">MSG_CHANNEL_WINDOW_ADJUST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#MSG_SERVICE_ACCEPT">MSG_SERVICE_ACCEPT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#MSG_CHANNEL_CLOSE">MSG_CHANNEL_CLOSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#MSG_CHANNEL_WINDOW_ADJUST">MSG_CHANNEL_WINDOW_ADJUST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#MSG_SERVICE_ACCEPT">MSG_SERVICE_ACCEPT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#MSG_CHANNEL_CLOSE">MSG_CHANNEL_CLOSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#MSG_CHANNEL_WINDOW_ADJUST">MSG_CHANNEL_WINDOW_ADJUST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#MSG_SERVICE_ACCEPT">MSG_SERVICE_ACCEPT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#MSG_CHANNEL_CLOSE">MSG_CHANNEL_CLOSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#MSG_CHANNEL_WINDOW_ADJUST">MSG_CHANNEL_WINDOW_ADJUST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#MSG_SERVICE_ACCEPT">MSG_SERVICE_ACCEPT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#MSG_CHANNEL_CLOSE">MSG_CHANNEL_CLOSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#MSG_CHANNEL_WINDOW_ADJUST">MSG_CHANNEL_WINDOW_ADJUST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#MSG_SERVICE_ACCEPT">MSG_SERVICE_ACCEPT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#MSG_CHANNEL_CLOSE">MSG_CHANNEL_CLOSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#MSG_CHANNEL_WINDOW_ADJUST">MSG_CHANNEL_WINDOW_ADJUST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#MSG_SERVICE_ACCEPT">MSG_SERVICE_ACCEPT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#MSG_CHANNEL_CLOSE">MSG_CHANNEL_CLOSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#MSG_CHANNEL_WINDOW_ADJUST">MSG_CHANNEL_WINDOW_ADJUST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#MSG_SERVICE_ACCEPT">MSG_SERVICE_ACCEPT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#MSG_CHANNEL_CLOSE">MSG_CHANNEL_CLOSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#MSG_CHANNEL_WINDOW_ADJUST">MSG_CHANNEL_WINDOW_ADJUST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#MSG_SERVICE_ACCEPT">MSG_SERVICE_ACCEPT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#MSG_CHANNEL_CLOSE">MSG_CHANNEL_CLOSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#MSG_CHANNEL_WINDOW_ADJUST">MSG_CHANNEL_WINDOW_ADJUST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#MSG_SERVICE_REQUEST">MSG_SERVICE_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#MSG_CHANNEL_CLOSE">MSG_CHANNEL_CLOSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#MSG_CHANNEL_WINDOW_ADJUST">MSG_CHANNEL_WINDOW_ADJUST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#MSG_SERVICE_REQUEST">MSG_SERVICE_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#MSG_CHANNEL_CLOSE">MSG_CHANNEL_CLOSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#MSG_CHANNEL_WINDOW_ADJUST">MSG_CHANNEL_WINDOW_ADJUST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#MSG_SERVICE_REQUEST">MSG_SERVICE_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#MSG_CHANNEL_CLOSE">MSG_CHANNEL_CLOSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#MSG_CHANNEL_WINDOW_ADJUST">MSG_CHANNEL_WINDOW_ADJUST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#MSG_SERVICE_REQUEST">MSG_SERVICE_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#MSG_CHANNEL_CLOSE">MSG_CHANNEL_CLOSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#MSG_CHANNEL_WINDOW_ADJUST">MSG_CHANNEL_WINDOW_ADJUST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#MSG_SERVICE_REQUEST">MSG_SERVICE_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#MSG_CHANNEL_CLOSE">MSG_CHANNEL_CLOSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#MSG_CHANNEL_WINDOW_ADJUST">MSG_CHANNEL_WINDOW_ADJUST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#MSG_SERVICE_REQUEST">MSG_SERVICE_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#MSG_CHANNEL_CLOSE">MSG_CHANNEL_CLOSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#MSG_CHANNEL_WINDOW_ADJUST">MSG_CHANNEL_WINDOW_ADJUST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#MSG_SERVICE_REQUEST">MSG_SERVICE_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#MSG_CHANNEL_CLOSE">MSG_CHANNEL_CLOSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#MSG_DEBUG">MSG_DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#MSG_SERVICE_REQUEST">MSG_SERVICE_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#MSG_CHANNEL_CLOSE">MSG_CHANNEL_CLOSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#MSG_DEBUG">MSG_DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#MSG_SERVICE_REQUEST">MSG_SERVICE_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#MSG_CHANNEL_CLOSE">MSG_CHANNEL_CLOSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#MSG_DEBUG">MSG_DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#MSG_SERVICE_REQUEST">MSG_SERVICE_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#MSG_CHANNEL_CLOSE">MSG_CHANNEL_CLOSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#MSG_DEBUG">MSG_DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#MSG_SERVICE_REQUEST">MSG_SERVICE_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#MSG_CHANNEL_CLOSE">MSG_CHANNEL_CLOSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#MSG_DEBUG">MSG_DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#MSG_SERVICE_REQUEST">MSG_SERVICE_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#MSG_CHANNEL_CLOSE">MSG_CHANNEL_CLOSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#MSG_DEBUG">MSG_DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#MSG_SERVICE_REQUEST">MSG_SERVICE_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#MSG_CHANNEL_CLOSE">MSG_CHANNEL_CLOSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#MSG_DEBUG">MSG_DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#MSG_SERVICE_REQUEST">MSG_SERVICE_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#MSG_CHANNEL_DATA">MSG_CHANNEL_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#MSG_DEBUG">MSG_DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#MSG_SERVICE_REQUEST">MSG_SERVICE_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#MSG_CHANNEL_DATA">MSG_CHANNEL_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#MSG_DEBUG">MSG_DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#MSG_SERVICE_REQUEST">MSG_SERVICE_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#MSG_CHANNEL_DATA">MSG_CHANNEL_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#MSG_DEBUG">MSG_DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#MSG_SERVICE_REQUEST">MSG_SERVICE_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#MSG_CHANNEL_DATA">MSG_CHANNEL_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#MSG_DEBUG">MSG_DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#MSG_SERVICE_REQUEST">MSG_SERVICE_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#MSG_CHANNEL_DATA">MSG_CHANNEL_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#MSG_DEBUG">MSG_DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#MSG_SERVICE_REQUEST">MSG_SERVICE_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#MSG_CHANNEL_DATA">MSG_CHANNEL_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#MSG_DEBUG">MSG_DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#MSG_SERVICE_REQUEST">MSG_SERVICE_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#MSG_CHANNEL_DATA">MSG_CHANNEL_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#MSG_DEBUG">MSG_DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#MSG_SERVICE_REQUEST">MSG_SERVICE_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#MSG_CHANNEL_DATA">MSG_CHANNEL_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#MSG_DEBUG">MSG_DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#MSG_UNIMPLEMENTED">MSG_UNIMPLEMENTED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#MSG_CHANNEL_DATA">MSG_CHANNEL_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#MSG_DEBUG">MSG_DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#MSG_UNIMPLEMENTED">MSG_UNIMPLEMENTED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#MSG_CHANNEL_DATA">MSG_CHANNEL_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#MSG_DEBUG">MSG_DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#MSG_UNIMPLEMENTED">MSG_UNIMPLEMENTED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#MSG_CHANNEL_DATA">MSG_CHANNEL_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#MSG_DEBUG">MSG_DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#MSG_UNIMPLEMENTED">MSG_UNIMPLEMENTED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#MSG_CHANNEL_DATA">MSG_CHANNEL_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#MSG_DEBUG">MSG_DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#MSG_UNIMPLEMENTED">MSG_UNIMPLEMENTED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#MSG_CHANNEL_DATA">MSG_CHANNEL_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#MSG_DEBUG">MSG_DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#MSG_UNIMPLEMENTED">MSG_UNIMPLEMENTED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#MSG_CHANNEL_DATA">MSG_CHANNEL_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#MSG_DEBUG">MSG_DEBUG</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#MSG_UNIMPLEMENTED">MSG_UNIMPLEMENTED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#MSG_CHANNEL_DATA">MSG_CHANNEL_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#MSG_DISCONNECT">MSG_DISCONNECT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#MSG_UNIMPLEMENTED">MSG_UNIMPLEMENTED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#MSG_CHANNEL_DATA">MSG_CHANNEL_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#MSG_DISCONNECT">MSG_DISCONNECT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#MSG_UNIMPLEMENTED">MSG_UNIMPLEMENTED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#MSG_CHANNEL_DATA">MSG_CHANNEL_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#MSG_DISCONNECT">MSG_DISCONNECT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#MSG_UNIMPLEMENTED">MSG_UNIMPLEMENTED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#MSG_CHANNEL_DATA">MSG_CHANNEL_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#MSG_DISCONNECT">MSG_DISCONNECT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#MSG_UNIMPLEMENTED">MSG_UNIMPLEMENTED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#MSG_CHANNEL_DATA">MSG_CHANNEL_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#MSG_DISCONNECT">MSG_DISCONNECT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#MSG_UNIMPLEMENTED">MSG_UNIMPLEMENTED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#MSG_CHANNEL_DATA">MSG_CHANNEL_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#MSG_DISCONNECT">MSG_DISCONNECT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#MSG_UNIMPLEMENTED">MSG_UNIMPLEMENTED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#MSG_CHANNEL_DATA">MSG_CHANNEL_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#MSG_DISCONNECT">MSG_DISCONNECT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#MSG_UNIMPLEMENTED">MSG_UNIMPLEMENTED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#MSG_CHANNEL_EOF">MSG_CHANNEL_EOF</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#MSG_DISCONNECT">MSG_DISCONNECT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#MSG_UNIMPLEMENTED">MSG_UNIMPLEMENTED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#MSG_CHANNEL_EOF">MSG_CHANNEL_EOF</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#MSG_DISCONNECT">MSG_DISCONNECT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#MSG_UNIMPLEMENTED">MSG_UNIMPLEMENTED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#MSG_CHANNEL_EOF">MSG_CHANNEL_EOF</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#MSG_DISCONNECT">MSG_DISCONNECT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#MSG_UNIMPLEMENTED">MSG_UNIMPLEMENTED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#MSG_CHANNEL_EOF">MSG_CHANNEL_EOF</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#MSG_DISCONNECT">MSG_DISCONNECT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#MSG_UNIMPLEMENTED">MSG_UNIMPLEMENTED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#MSG_CHANNEL_EOF">MSG_CHANNEL_EOF</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#MSG_DISCONNECT">MSG_DISCONNECT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#MSG_UNIMPLEMENTED">MSG_UNIMPLEMENTED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#MSG_CHANNEL_EOF">MSG_CHANNEL_EOF</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#MSG_DISCONNECT">MSG_DISCONNECT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#MSG_UNIMPLEMENTED">MSG_UNIMPLEMENTED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#MSG_CHANNEL_EOF">MSG_CHANNEL_EOF</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#MSG_DISCONNECT">MSG_DISCONNECT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#MSG_UNIMPLEMENTED">MSG_UNIMPLEMENTED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#MSG_CHANNEL_EOF">MSG_CHANNEL_EOF</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#MSG_DISCONNECT">MSG_DISCONNECT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#MSG_USERAUTH_BANNER">MSG_USERAUTH_BANNER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#MSG_CHANNEL_EOF">MSG_CHANNEL_EOF</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#MSG_DISCONNECT">MSG_DISCONNECT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#MSG_USERAUTH_BANNER">MSG_USERAUTH_BANNER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#MSG_CHANNEL_EOF">MSG_CHANNEL_EOF</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#MSG_DISCONNECT">MSG_DISCONNECT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#MSG_USERAUTH_BANNER">MSG_USERAUTH_BANNER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#MSG_CHANNEL_EOF">MSG_CHANNEL_EOF</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#MSG_DISCONNECT">MSG_DISCONNECT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#MSG_USERAUTH_BANNER">MSG_USERAUTH_BANNER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#MSG_CHANNEL_EOF">MSG_CHANNEL_EOF</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#MSG_DISCONNECT">MSG_DISCONNECT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#MSG_USERAUTH_BANNER">MSG_USERAUTH_BANNER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#MSG_CHANNEL_EOF">MSG_CHANNEL_EOF</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#MSG_DISCONNECT">MSG_DISCONNECT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#MSG_USERAUTH_BANNER">MSG_USERAUTH_BANNER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#MSG_CHANNEL_EOF">MSG_CHANNEL_EOF</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#MSG_DISCONNECT">MSG_DISCONNECT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#MSG_USERAUTH_BANNER">MSG_USERAUTH_BANNER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#MSG_CHANNEL_EOF">MSG_CHANNEL_EOF</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#MSG_GLOBAL_REQUEST">MSG_GLOBAL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#MSG_USERAUTH_BANNER">MSG_USERAUTH_BANNER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#MSG_CHANNEL_EOF">MSG_CHANNEL_EOF</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#MSG_GLOBAL_REQUEST">MSG_GLOBAL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#MSG_USERAUTH_BANNER">MSG_USERAUTH_BANNER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#MSG_CHANNEL_EOF">MSG_CHANNEL_EOF</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#MSG_GLOBAL_REQUEST">MSG_GLOBAL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#MSG_USERAUTH_BANNER">MSG_USERAUTH_BANNER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#MSG_CHANNEL_EOF">MSG_CHANNEL_EOF</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#MSG_GLOBAL_REQUEST">MSG_GLOBAL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#MSG_USERAUTH_BANNER">MSG_USERAUTH_BANNER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#MSG_CHANNEL_EOF">MSG_CHANNEL_EOF</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#MSG_GLOBAL_REQUEST">MSG_GLOBAL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#MSG_USERAUTH_BANNER">MSG_USERAUTH_BANNER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#MSG_CHANNEL_EOF">MSG_CHANNEL_EOF</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#MSG_GLOBAL_REQUEST">MSG_GLOBAL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#MSG_USERAUTH_BANNER">MSG_USERAUTH_BANNER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#MSG_CHANNEL_EOF">MSG_CHANNEL_EOF</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#MSG_GLOBAL_REQUEST">MSG_GLOBAL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#MSG_USERAUTH_BANNER">MSG_USERAUTH_BANNER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#MSG_CHANNEL_EXTENDED_DATA">MSG_CHANNEL_EXTENDED_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#MSG_GLOBAL_REQUEST">MSG_GLOBAL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#MSG_USERAUTH_BANNER">MSG_USERAUTH_BANNER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#MSG_CHANNEL_EXTENDED_DATA">MSG_CHANNEL_EXTENDED_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#MSG_GLOBAL_REQUEST">MSG_GLOBAL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#MSG_USERAUTH_BANNER">MSG_USERAUTH_BANNER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#MSG_CHANNEL_EXTENDED_DATA">MSG_CHANNEL_EXTENDED_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#MSG_GLOBAL_REQUEST">MSG_GLOBAL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#MSG_USERAUTH_BANNER">MSG_USERAUTH_BANNER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#MSG_CHANNEL_EXTENDED_DATA">MSG_CHANNEL_EXTENDED_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#MSG_GLOBAL_REQUEST">MSG_GLOBAL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#MSG_USERAUTH_BANNER">MSG_USERAUTH_BANNER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#MSG_CHANNEL_EXTENDED_DATA">MSG_CHANNEL_EXTENDED_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#MSG_GLOBAL_REQUEST">MSG_GLOBAL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#MSG_USERAUTH_BANNER">MSG_USERAUTH_BANNER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#MSG_CHANNEL_EXTENDED_DATA">MSG_CHANNEL_EXTENDED_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#MSG_GLOBAL_REQUEST">MSG_GLOBAL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#MSG_USERAUTH_BANNER">MSG_USERAUTH_BANNER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#MSG_CHANNEL_EXTENDED_DATA">MSG_CHANNEL_EXTENDED_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#MSG_GLOBAL_REQUEST">MSG_GLOBAL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#MSG_USERAUTH_BANNER">MSG_USERAUTH_BANNER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#MSG_CHANNEL_EXTENDED_DATA">MSG_CHANNEL_EXTENDED_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#MSG_GLOBAL_REQUEST">MSG_GLOBAL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#MSG_USERAUTH_FAILURE">MSG_USERAUTH_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#MSG_CHANNEL_EXTENDED_DATA">MSG_CHANNEL_EXTENDED_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#MSG_GLOBAL_REQUEST">MSG_GLOBAL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#MSG_USERAUTH_FAILURE">MSG_USERAUTH_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#MSG_CHANNEL_EXTENDED_DATA">MSG_CHANNEL_EXTENDED_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#MSG_GLOBAL_REQUEST">MSG_GLOBAL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#MSG_USERAUTH_FAILURE">MSG_USERAUTH_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#MSG_CHANNEL_EXTENDED_DATA">MSG_CHANNEL_EXTENDED_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#MSG_GLOBAL_REQUEST">MSG_GLOBAL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#MSG_USERAUTH_FAILURE">MSG_USERAUTH_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#MSG_CHANNEL_EXTENDED_DATA">MSG_CHANNEL_EXTENDED_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#MSG_GLOBAL_REQUEST">MSG_GLOBAL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#MSG_USERAUTH_FAILURE">MSG_USERAUTH_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#MSG_CHANNEL_EXTENDED_DATA">MSG_CHANNEL_EXTENDED_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#MSG_GLOBAL_REQUEST">MSG_GLOBAL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#MSG_USERAUTH_FAILURE">MSG_USERAUTH_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#MSG_CHANNEL_EXTENDED_DATA">MSG_CHANNEL_EXTENDED_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#MSG_GLOBAL_REQUEST">MSG_GLOBAL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#MSG_USERAUTH_FAILURE">MSG_USERAUTH_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#MSG_CHANNEL_EXTENDED_DATA">MSG_CHANNEL_EXTENDED_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#MSG_IGNORE">MSG_IGNORE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#MSG_USERAUTH_FAILURE">MSG_USERAUTH_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#MSG_CHANNEL_EXTENDED_DATA">MSG_CHANNEL_EXTENDED_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#MSG_IGNORE">MSG_IGNORE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#MSG_USERAUTH_FAILURE">MSG_USERAUTH_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#MSG_CHANNEL_EXTENDED_DATA">MSG_CHANNEL_EXTENDED_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#MSG_IGNORE">MSG_IGNORE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#MSG_USERAUTH_FAILURE">MSG_USERAUTH_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#MSG_CHANNEL_EXTENDED_DATA">MSG_CHANNEL_EXTENDED_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#MSG_IGNORE">MSG_IGNORE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#MSG_USERAUTH_FAILURE">MSG_USERAUTH_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#MSG_CHANNEL_EXTENDED_DATA">MSG_CHANNEL_EXTENDED_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#MSG_IGNORE">MSG_IGNORE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#MSG_USERAUTH_FAILURE">MSG_USERAUTH_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#MSG_CHANNEL_EXTENDED_DATA">MSG_CHANNEL_EXTENDED_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#MSG_IGNORE">MSG_IGNORE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#MSG_USERAUTH_FAILURE">MSG_USERAUTH_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#MSG_CHANNEL_EXTENDED_DATA">MSG_CHANNEL_EXTENDED_DATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#MSG_IGNORE">MSG_IGNORE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#MSG_USERAUTH_FAILURE">MSG_USERAUTH_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#MSG_CHANNEL_FAILURE">MSG_CHANNEL_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#MSG_IGNORE">MSG_IGNORE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#MSG_USERAUTH_FAILURE">MSG_USERAUTH_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#MSG_CHANNEL_FAILURE">MSG_CHANNEL_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#MSG_IGNORE">MSG_IGNORE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#MSG_USERAUTH_FAILURE">MSG_USERAUTH_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#MSG_CHANNEL_FAILURE">MSG_CHANNEL_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#MSG_IGNORE">MSG_IGNORE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#MSG_USERAUTH_FAILURE">MSG_USERAUTH_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#MSG_CHANNEL_FAILURE">MSG_CHANNEL_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#MSG_IGNORE">MSG_IGNORE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#MSG_USERAUTH_FAILURE">MSG_USERAUTH_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#MSG_CHANNEL_FAILURE">MSG_CHANNEL_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#MSG_IGNORE">MSG_IGNORE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#MSG_USERAUTH_FAILURE">MSG_USERAUTH_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#MSG_CHANNEL_FAILURE">MSG_CHANNEL_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#MSG_IGNORE">MSG_IGNORE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#MSG_USERAUTH_FAILURE">MSG_USERAUTH_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#MSG_CHANNEL_FAILURE">MSG_CHANNEL_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#MSG_IGNORE">MSG_IGNORE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#MSG_USERAUTH_FAILURE">MSG_USERAUTH_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#MSG_CHANNEL_FAILURE">MSG_CHANNEL_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#MSG_IGNORE">MSG_IGNORE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#MSG_USERAUTH_INFO_REQUEST">MSG_USERAUTH_INFO_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#MSG_CHANNEL_FAILURE">MSG_CHANNEL_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#MSG_IGNORE">MSG_IGNORE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#MSG_USERAUTH_INFO_REQUEST">MSG_USERAUTH_INFO_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#MSG_CHANNEL_FAILURE">MSG_CHANNEL_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#MSG_IGNORE">MSG_IGNORE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#MSG_USERAUTH_INFO_REQUEST">MSG_USERAUTH_INFO_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#MSG_CHANNEL_FAILURE">MSG_CHANNEL_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#MSG_IGNORE">MSG_IGNORE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#MSG_USERAUTH_INFO_REQUEST">MSG_USERAUTH_INFO_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#MSG_CHANNEL_FAILURE">MSG_CHANNEL_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#MSG_IGNORE">MSG_IGNORE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#MSG_USERAUTH_INFO_REQUEST">MSG_USERAUTH_INFO_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#MSG_CHANNEL_FAILURE">MSG_CHANNEL_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#MSG_IGNORE">MSG_IGNORE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#MSG_USERAUTH_INFO_REQUEST">MSG_USERAUTH_INFO_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#MSG_CHANNEL_FAILURE">MSG_CHANNEL_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#MSG_IGNORE">MSG_IGNORE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#MSG_USERAUTH_INFO_REQUEST">MSG_USERAUTH_INFO_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#MSG_CHANNEL_FAILURE">MSG_CHANNEL_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#MSG_KEXINIT">MSG_KEXINIT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#MSG_USERAUTH_INFO_REQUEST">MSG_USERAUTH_INFO_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#MSG_CHANNEL_FAILURE">MSG_CHANNEL_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#MSG_KEXINIT">MSG_KEXINIT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#MSG_USERAUTH_INFO_REQUEST">MSG_USERAUTH_INFO_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#MSG_CHANNEL_FAILURE">MSG_CHANNEL_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#MSG_KEXINIT">MSG_KEXINIT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#MSG_USERAUTH_INFO_REQUEST">MSG_USERAUTH_INFO_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#MSG_CHANNEL_FAILURE">MSG_CHANNEL_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#MSG_KEXINIT">MSG_KEXINIT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#MSG_USERAUTH_INFO_REQUEST">MSG_USERAUTH_INFO_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#MSG_CHANNEL_FAILURE">MSG_CHANNEL_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#MSG_KEXINIT">MSG_KEXINIT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#MSG_USERAUTH_INFO_REQUEST">MSG_USERAUTH_INFO_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#MSG_CHANNEL_FAILURE">MSG_CHANNEL_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#MSG_KEXINIT">MSG_KEXINIT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#MSG_USERAUTH_INFO_REQUEST">MSG_USERAUTH_INFO_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#MSG_CHANNEL_FAILURE">MSG_CHANNEL_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#MSG_KEXINIT">MSG_KEXINIT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#MSG_USERAUTH_INFO_REQUEST">MSG_USERAUTH_INFO_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#MSG_CHANNEL_OPEN">MSG_CHANNEL_OPEN</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#MSG_KEXINIT">MSG_KEXINIT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#MSG_USERAUTH_INFO_REQUEST">MSG_USERAUTH_INFO_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#MSG_CHANNEL_OPEN">MSG_CHANNEL_OPEN</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#MSG_KEXINIT">MSG_KEXINIT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#MSG_USERAUTH_INFO_REQUEST">MSG_USERAUTH_INFO_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#MSG_CHANNEL_OPEN">MSG_CHANNEL_OPEN</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#MSG_KEXINIT">MSG_KEXINIT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#MSG_USERAUTH_INFO_REQUEST">MSG_USERAUTH_INFO_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#MSG_CHANNEL_OPEN">MSG_CHANNEL_OPEN</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#MSG_KEXINIT">MSG_KEXINIT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#MSG_USERAUTH_INFO_REQUEST">MSG_USERAUTH_INFO_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#MSG_CHANNEL_OPEN">MSG_CHANNEL_OPEN</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#MSG_KEXINIT">MSG_KEXINIT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#MSG_USERAUTH_INFO_REQUEST">MSG_USERAUTH_INFO_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#MSG_CHANNEL_OPEN">MSG_CHANNEL_OPEN</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#MSG_KEXINIT">MSG_KEXINIT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#MSG_USERAUTH_INFO_REQUEST">MSG_USERAUTH_INFO_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#MSG_CHANNEL_OPEN">MSG_CHANNEL_OPEN</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#MSG_KEXINIT">MSG_KEXINIT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#MSG_USERAUTH_INFO_REQUEST">MSG_USERAUTH_INFO_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#MSG_CHANNEL_OPEN">MSG_CHANNEL_OPEN</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#MSG_KEXINIT">MSG_KEXINIT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#MSG_USERAUTH_INFO_RESPONSE">MSG_USERAUTH_INFO_RESPONSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#MSG_CHANNEL_OPEN">MSG_CHANNEL_OPEN</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#MSG_KEXINIT">MSG_KEXINIT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#MSG_USERAUTH_INFO_RESPONSE">MSG_USERAUTH_INFO_RESPONSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#MSG_CHANNEL_OPEN">MSG_CHANNEL_OPEN</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#MSG_KEXINIT">MSG_KEXINIT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#MSG_USERAUTH_INFO_RESPONSE">MSG_USERAUTH_INFO_RESPONSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#MSG_CHANNEL_OPEN">MSG_CHANNEL_OPEN</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#MSG_KEXINIT">MSG_KEXINIT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#MSG_USERAUTH_INFO_RESPONSE">MSG_USERAUTH_INFO_RESPONSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#MSG_CHANNEL_OPEN">MSG_CHANNEL_OPEN</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#MSG_KEXINIT">MSG_KEXINIT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#MSG_USERAUTH_INFO_RESPONSE">MSG_USERAUTH_INFO_RESPONSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#MSG_CHANNEL_OPEN">MSG_CHANNEL_OPEN</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#MSG_KEXINIT">MSG_KEXINIT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#MSG_USERAUTH_INFO_RESPONSE">MSG_USERAUTH_INFO_RESPONSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#MSG_CHANNEL_OPEN">MSG_CHANNEL_OPEN</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#MSG_KEXINIT">MSG_KEXINIT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#MSG_USERAUTH_INFO_RESPONSE">MSG_USERAUTH_INFO_RESPONSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#MSG_CHANNEL_OPEN">MSG_CHANNEL_OPEN</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#MSG_NAMES">MSG_NAMES</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#MSG_USERAUTH_INFO_RESPONSE">MSG_USERAUTH_INFO_RESPONSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#MSG_CHANNEL_OPEN">MSG_CHANNEL_OPEN</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#MSG_NAMES">MSG_NAMES</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#MSG_USERAUTH_INFO_RESPONSE">MSG_USERAUTH_INFO_RESPONSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#MSG_CHANNEL_OPEN">MSG_CHANNEL_OPEN</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#MSG_NAMES">MSG_NAMES</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#MSG_USERAUTH_INFO_RESPONSE">MSG_USERAUTH_INFO_RESPONSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#MSG_CHANNEL_OPEN">MSG_CHANNEL_OPEN</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#MSG_NAMES">MSG_NAMES</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#MSG_USERAUTH_INFO_RESPONSE">MSG_USERAUTH_INFO_RESPONSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#MSG_CHANNEL_OPEN">MSG_CHANNEL_OPEN</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#MSG_NAMES">MSG_NAMES</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#MSG_USERAUTH_INFO_RESPONSE">MSG_USERAUTH_INFO_RESPONSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#MSG_CHANNEL_OPEN">MSG_CHANNEL_OPEN</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#MSG_NAMES">MSG_NAMES</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#MSG_USERAUTH_INFO_RESPONSE">MSG_USERAUTH_INFO_RESPONSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#MSG_CHANNEL_OPEN">MSG_CHANNEL_OPEN</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#MSG_NAMES">MSG_NAMES</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#MSG_USERAUTH_INFO_RESPONSE">MSG_USERAUTH_INFO_RESPONSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#MSG_CHANNEL_OPEN_FAILURE">MSG_CHANNEL_OPEN_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#MSG_NAMES">MSG_NAMES</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#MSG_USERAUTH_INFO_RESPONSE">MSG_USERAUTH_INFO_RESPONSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#MSG_CHANNEL_OPEN_FAILURE">MSG_CHANNEL_OPEN_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#MSG_NAMES">MSG_NAMES</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#MSG_USERAUTH_INFO_RESPONSE">MSG_USERAUTH_INFO_RESPONSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#MSG_CHANNEL_OPEN_FAILURE">MSG_CHANNEL_OPEN_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#MSG_NAMES">MSG_NAMES</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#MSG_USERAUTH_INFO_RESPONSE">MSG_USERAUTH_INFO_RESPONSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#MSG_CHANNEL_OPEN_FAILURE">MSG_CHANNEL_OPEN_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#MSG_NAMES">MSG_NAMES</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#MSG_USERAUTH_INFO_RESPONSE">MSG_USERAUTH_INFO_RESPONSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#MSG_CHANNEL_OPEN_FAILURE">MSG_CHANNEL_OPEN_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#MSG_NAMES">MSG_NAMES</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#MSG_USERAUTH_INFO_RESPONSE">MSG_USERAUTH_INFO_RESPONSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#MSG_CHANNEL_OPEN_FAILURE">MSG_CHANNEL_OPEN_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#MSG_NAMES">MSG_NAMES</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#MSG_USERAUTH_INFO_RESPONSE">MSG_USERAUTH_INFO_RESPONSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#MSG_CHANNEL_OPEN_FAILURE">MSG_CHANNEL_OPEN_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#MSG_NAMES">MSG_NAMES</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#MSG_USERAUTH_INFO_RESPONSE">MSG_USERAUTH_INFO_RESPONSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#MSG_CHANNEL_OPEN_FAILURE">MSG_CHANNEL_OPEN_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#MSG_NAMES">MSG_NAMES</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#MSG_USERAUTH_PK_OK">MSG_USERAUTH_PK_OK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#MSG_CHANNEL_OPEN_FAILURE">MSG_CHANNEL_OPEN_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#MSG_NAMES">MSG_NAMES</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#MSG_USERAUTH_PK_OK">MSG_USERAUTH_PK_OK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#MSG_CHANNEL_OPEN_FAILURE">MSG_CHANNEL_OPEN_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#MSG_NAMES">MSG_NAMES</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#MSG_USERAUTH_PK_OK">MSG_USERAUTH_PK_OK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#MSG_CHANNEL_OPEN_FAILURE">MSG_CHANNEL_OPEN_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#MSG_NAMES">MSG_NAMES</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#MSG_USERAUTH_PK_OK">MSG_USERAUTH_PK_OK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#MSG_CHANNEL_OPEN_FAILURE">MSG_CHANNEL_OPEN_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#MSG_NAMES">MSG_NAMES</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#MSG_USERAUTH_PK_OK">MSG_USERAUTH_PK_OK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#MSG_CHANNEL_OPEN_FAILURE">MSG_CHANNEL_OPEN_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#MSG_NAMES">MSG_NAMES</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#MSG_USERAUTH_PK_OK">MSG_USERAUTH_PK_OK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#MSG_CHANNEL_OPEN_FAILURE">MSG_CHANNEL_OPEN_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#MSG_NAMES">MSG_NAMES</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#MSG_USERAUTH_PK_OK">MSG_USERAUTH_PK_OK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#MSG_CHANNEL_OPEN_FAILURE">MSG_CHANNEL_OPEN_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#MSG_NEWKEYS">MSG_NEWKEYS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#MSG_USERAUTH_PK_OK">MSG_USERAUTH_PK_OK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#MSG_CHANNEL_OPEN_FAILURE">MSG_CHANNEL_OPEN_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#MSG_NEWKEYS">MSG_NEWKEYS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#MSG_USERAUTH_PK_OK">MSG_USERAUTH_PK_OK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#MSG_CHANNEL_OPEN_FAILURE">MSG_CHANNEL_OPEN_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#MSG_NEWKEYS">MSG_NEWKEYS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#MSG_USERAUTH_PK_OK">MSG_USERAUTH_PK_OK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#MSG_CHANNEL_OPEN_FAILURE">MSG_CHANNEL_OPEN_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#MSG_NEWKEYS">MSG_NEWKEYS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#MSG_USERAUTH_PK_OK">MSG_USERAUTH_PK_OK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#MSG_CHANNEL_OPEN_FAILURE">MSG_CHANNEL_OPEN_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#MSG_NEWKEYS">MSG_NEWKEYS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#MSG_USERAUTH_PK_OK">MSG_USERAUTH_PK_OK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#MSG_CHANNEL_OPEN_FAILURE">MSG_CHANNEL_OPEN_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#MSG_NEWKEYS">MSG_NEWKEYS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#MSG_USERAUTH_PK_OK">MSG_USERAUTH_PK_OK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#MSG_CHANNEL_OPEN_FAILURE">MSG_CHANNEL_OPEN_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#MSG_NEWKEYS">MSG_NEWKEYS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#MSG_USERAUTH_PK_OK">MSG_USERAUTH_PK_OK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#MSG_CHANNEL_OPEN_SUCCESS">MSG_CHANNEL_OPEN_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#MSG_NEWKEYS">MSG_NEWKEYS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#MSG_USERAUTH_PK_OK">MSG_USERAUTH_PK_OK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#MSG_CHANNEL_OPEN_SUCCESS">MSG_CHANNEL_OPEN_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#MSG_NEWKEYS">MSG_NEWKEYS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#MSG_USERAUTH_PK_OK">MSG_USERAUTH_PK_OK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#MSG_CHANNEL_OPEN_SUCCESS">MSG_CHANNEL_OPEN_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#MSG_NEWKEYS">MSG_NEWKEYS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#MSG_USERAUTH_PK_OK">MSG_USERAUTH_PK_OK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#MSG_CHANNEL_OPEN_SUCCESS">MSG_CHANNEL_OPEN_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#MSG_NEWKEYS">MSG_NEWKEYS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#MSG_USERAUTH_PK_OK">MSG_USERAUTH_PK_OK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#MSG_CHANNEL_OPEN_SUCCESS">MSG_CHANNEL_OPEN_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#MSG_NEWKEYS">MSG_NEWKEYS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#MSG_USERAUTH_PK_OK">MSG_USERAUTH_PK_OK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#MSG_CHANNEL_OPEN_SUCCESS">MSG_CHANNEL_OPEN_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#MSG_NEWKEYS">MSG_NEWKEYS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#MSG_USERAUTH_PK_OK">MSG_USERAUTH_PK_OK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#MSG_CHANNEL_OPEN_SUCCESS">MSG_CHANNEL_OPEN_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#MSG_NEWKEYS">MSG_NEWKEYS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#MSG_USERAUTH_PK_OK">MSG_USERAUTH_PK_OK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#MSG_CHANNEL_OPEN_SUCCESS">MSG_CHANNEL_OPEN_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#MSG_NEWKEYS">MSG_NEWKEYS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#MSG_USERAUTH_REQUEST">MSG_USERAUTH_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#MSG_CHANNEL_OPEN_SUCCESS">MSG_CHANNEL_OPEN_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#MSG_NEWKEYS">MSG_NEWKEYS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#MSG_USERAUTH_REQUEST">MSG_USERAUTH_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#MSG_CHANNEL_OPEN_SUCCESS">MSG_CHANNEL_OPEN_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#MSG_NEWKEYS">MSG_NEWKEYS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#MSG_USERAUTH_REQUEST">MSG_USERAUTH_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#MSG_CHANNEL_OPEN_SUCCESS">MSG_CHANNEL_OPEN_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#MSG_NEWKEYS">MSG_NEWKEYS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#MSG_USERAUTH_REQUEST">MSG_USERAUTH_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#MSG_CHANNEL_OPEN_SUCCESS">MSG_CHANNEL_OPEN_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#MSG_NEWKEYS">MSG_NEWKEYS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#MSG_USERAUTH_REQUEST">MSG_USERAUTH_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#MSG_CHANNEL_OPEN_SUCCESS">MSG_CHANNEL_OPEN_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#MSG_NEWKEYS">MSG_NEWKEYS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#MSG_USERAUTH_REQUEST">MSG_USERAUTH_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#MSG_CHANNEL_OPEN_SUCCESS">MSG_CHANNEL_OPEN_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#MSG_NEWKEYS">MSG_NEWKEYS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#MSG_USERAUTH_REQUEST">MSG_USERAUTH_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#MSG_CHANNEL_OPEN_SUCCESS">MSG_CHANNEL_OPEN_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#MSG_REQUEST_FAILURE">MSG_REQUEST_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#MSG_USERAUTH_REQUEST">MSG_USERAUTH_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#MSG_CHANNEL_OPEN_SUCCESS">MSG_CHANNEL_OPEN_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#MSG_REQUEST_FAILURE">MSG_REQUEST_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#MSG_USERAUTH_REQUEST">MSG_USERAUTH_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#MSG_CHANNEL_OPEN_SUCCESS">MSG_CHANNEL_OPEN_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#MSG_REQUEST_FAILURE">MSG_REQUEST_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#MSG_USERAUTH_REQUEST">MSG_USERAUTH_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#MSG_CHANNEL_OPEN_SUCCESS">MSG_CHANNEL_OPEN_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#MSG_REQUEST_FAILURE">MSG_REQUEST_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#MSG_USERAUTH_REQUEST">MSG_USERAUTH_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#MSG_CHANNEL_OPEN_SUCCESS">MSG_CHANNEL_OPEN_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#MSG_REQUEST_FAILURE">MSG_REQUEST_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#MSG_USERAUTH_REQUEST">MSG_USERAUTH_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#MSG_CHANNEL_OPEN_SUCCESS">MSG_CHANNEL_OPEN_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#MSG_REQUEST_FAILURE">MSG_REQUEST_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#MSG_USERAUTH_REQUEST">MSG_USERAUTH_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#MSG_CHANNEL_OPEN_SUCCESS">MSG_CHANNEL_OPEN_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#MSG_REQUEST_FAILURE">MSG_REQUEST_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#MSG_USERAUTH_REQUEST">MSG_USERAUTH_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#MSG_CHANNEL_REQUEST">MSG_CHANNEL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#MSG_REQUEST_FAILURE">MSG_REQUEST_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#MSG_USERAUTH_REQUEST">MSG_USERAUTH_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#MSG_CHANNEL_REQUEST">MSG_CHANNEL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#MSG_REQUEST_FAILURE">MSG_REQUEST_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#MSG_USERAUTH_REQUEST">MSG_USERAUTH_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#MSG_CHANNEL_REQUEST">MSG_CHANNEL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#MSG_REQUEST_FAILURE">MSG_REQUEST_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#MSG_USERAUTH_REQUEST">MSG_USERAUTH_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#MSG_CHANNEL_REQUEST">MSG_CHANNEL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#MSG_REQUEST_FAILURE">MSG_REQUEST_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#MSG_USERAUTH_REQUEST">MSG_USERAUTH_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#MSG_CHANNEL_REQUEST">MSG_CHANNEL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#MSG_REQUEST_FAILURE">MSG_REQUEST_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#MSG_USERAUTH_REQUEST">MSG_USERAUTH_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#MSG_CHANNEL_REQUEST">MSG_CHANNEL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#MSG_REQUEST_FAILURE">MSG_REQUEST_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#MSG_USERAUTH_REQUEST">MSG_USERAUTH_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#MSG_CHANNEL_REQUEST">MSG_CHANNEL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#MSG_REQUEST_FAILURE">MSG_REQUEST_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#MSG_USERAUTH_REQUEST">MSG_USERAUTH_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#MSG_CHANNEL_REQUEST">MSG_CHANNEL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#MSG_REQUEST_FAILURE">MSG_REQUEST_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#MSG_USERAUTH_SUCCESS">MSG_USERAUTH_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#MSG_CHANNEL_REQUEST">MSG_CHANNEL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#MSG_REQUEST_FAILURE">MSG_REQUEST_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#MSG_USERAUTH_SUCCESS">MSG_USERAUTH_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#MSG_CHANNEL_REQUEST">MSG_CHANNEL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#MSG_REQUEST_FAILURE">MSG_REQUEST_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#MSG_USERAUTH_SUCCESS">MSG_USERAUTH_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#MSG_CHANNEL_REQUEST">MSG_CHANNEL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#MSG_REQUEST_FAILURE">MSG_REQUEST_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#MSG_USERAUTH_SUCCESS">MSG_USERAUTH_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#MSG_CHANNEL_REQUEST">MSG_CHANNEL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#MSG_REQUEST_FAILURE">MSG_REQUEST_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#MSG_USERAUTH_SUCCESS">MSG_USERAUTH_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#MSG_CHANNEL_REQUEST">MSG_CHANNEL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#MSG_REQUEST_FAILURE">MSG_REQUEST_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#MSG_USERAUTH_SUCCESS">MSG_USERAUTH_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#MSG_CHANNEL_REQUEST">MSG_CHANNEL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#MSG_REQUEST_FAILURE">MSG_REQUEST_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#MSG_USERAUTH_SUCCESS">MSG_USERAUTH_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#MSG_CHANNEL_REQUEST">MSG_CHANNEL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#MSG_REQUEST_SUCCESS">MSG_REQUEST_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#MSG_USERAUTH_SUCCESS">MSG_USERAUTH_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#MSG_CHANNEL_REQUEST">MSG_CHANNEL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#MSG_REQUEST_SUCCESS">MSG_REQUEST_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#MSG_USERAUTH_SUCCESS">MSG_USERAUTH_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#MSG_CHANNEL_REQUEST">MSG_CHANNEL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#MSG_REQUEST_SUCCESS">MSG_REQUEST_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#MSG_USERAUTH_SUCCESS">MSG_USERAUTH_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#MSG_CHANNEL_REQUEST">MSG_CHANNEL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#MSG_REQUEST_SUCCESS">MSG_REQUEST_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#MSG_USERAUTH_SUCCESS">MSG_USERAUTH_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#MSG_CHANNEL_REQUEST">MSG_CHANNEL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#MSG_REQUEST_SUCCESS">MSG_REQUEST_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#MSG_USERAUTH_SUCCESS">MSG_USERAUTH_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#MSG_CHANNEL_REQUEST">MSG_CHANNEL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#MSG_REQUEST_SUCCESS">MSG_REQUEST_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#MSG_USERAUTH_SUCCESS">MSG_USERAUTH_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#MSG_CHANNEL_REQUEST">MSG_CHANNEL_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#MSG_REQUEST_SUCCESS">MSG_REQUEST_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#MSG_USERAUTH_SUCCESS">MSG_USERAUTH_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#MSG_CHANNEL_SUCCESS">MSG_CHANNEL_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#MSG_REQUEST_SUCCESS">MSG_REQUEST_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#MSG_USERAUTH_SUCCESS">MSG_USERAUTH_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#MSG_CHANNEL_SUCCESS">MSG_CHANNEL_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#MSG_REQUEST_SUCCESS">MSG_REQUEST_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#MSG_USERAUTH_SUCCESS">MSG_USERAUTH_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#MSG_CHANNEL_SUCCESS">MSG_CHANNEL_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#MSG_REQUEST_SUCCESS">MSG_REQUEST_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#MSG_USERAUTH_SUCCESS">MSG_USERAUTH_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#MSG_CHANNEL_SUCCESS">MSG_CHANNEL_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#MSG_REQUEST_SUCCESS">MSG_REQUEST_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#MSG_USERAUTH_SUCCESS">MSG_USERAUTH_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#MSG_CHANNEL_SUCCESS">MSG_CHANNEL_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#MSG_REQUEST_SUCCESS">MSG_REQUEST_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#MSG_USERAUTH_SUCCESS">MSG_USERAUTH_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#MSG_CHANNEL_SUCCESS">MSG_CHANNEL_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#MSG_REQUEST_SUCCESS">MSG_REQUEST_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#MSG_USERAUTH_SUCCESS">MSG_USERAUTH_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#MSG_CHANNEL_SUCCESS">MSG_CHANNEL_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#MSG_REQUEST_SUCCESS">MSG_REQUEST_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#MSG_USERAUTH_SUCCESS">MSG_USERAUTH_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#MSG_CHANNEL_SUCCESS">MSG_CHANNEL_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#MSG_REQUEST_SUCCESS">MSG_REQUEST_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index">&nbsp;</td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#MSG_CHANNEL_SUCCESS">MSG_CHANNEL_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#MSG_REQUEST_SUCCESS">MSG_REQUEST_SUCCESS</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index">&nbsp;</td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="N">N</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex.KexGex-class.html#name">name</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex.KexGex-class.html">KexGex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet.NeedRekeyException-class.html">NeedRekeyException</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.BufferedFile-class.html#next">next()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.BufferedFile-class.html">BufferedFile</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1.KexGroup1-class.html#name">name</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1.KexGroup1-class.html">KexGroup1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util.Counter-class.html#new">new()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util.Counter-class.html">Counter</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPClient-class.html#normalize">normalize()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPClient-class.html">SFTPClient</a>)</span></td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="O">O</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPServerInterface-class.html#open">open()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPServerInterface-class.html">SFTPServerInterface</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#OPEN_FAILED_CONNECT_FAILED">OPEN_FAILED_CONNECT_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#open_channel">open_channel()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#OPEN_FAILED_CONNECT_FAILED">OPEN_FAILED_CONNECT_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#OPEN_FAILED_CONNECT_FAILED">OPEN_FAILED_CONNECT_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#OPEN_FAILED_CONNECT_FAILED">OPEN_FAILED_CONNECT_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#OPEN_FAILED_CONNECT_FAILED">OPEN_FAILED_CONNECT_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#OPEN_FAILED_CONNECT_FAILED">OPEN_FAILED_CONNECT_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#OPEN_FAILED_RESOURCE_SHORTAGE">OPEN_FAILED_RESOURCE_SHORTAGE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#OPEN_FAILED_RESOURCE_SHORTAGE">OPEN_FAILED_RESOURCE_SHORTAGE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#OPEN_FAILED_RESOURCE_SHORTAGE">OPEN_FAILED_RESOURCE_SHORTAGE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#OPEN_FAILED_RESOURCE_SHORTAGE">OPEN_FAILED_RESOURCE_SHORTAGE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#OPEN_FAILED_RESOURCE_SHORTAGE">OPEN_FAILED_RESOURCE_SHORTAGE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#open_forwarded_tcpip_channel">open_forwarded_tcpip_channel()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#OPEN_FAILED_RESOURCE_SHORTAGE">OPEN_FAILED_RESOURCE_SHORTAGE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#open_session">open_session()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#OPEN_FAILED_RESOURCE_SHORTAGE">OPEN_FAILED_RESOURCE_SHORTAGE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SSHClient-class.html#open_sftp">open_sftp()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SSHClient-class.html">SSHClient</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#OPEN_FAILED_RESOURCE_SHORTAGE">OPEN_FAILED_RESOURCE_SHORTAGE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#open_sftp_client">open_sftp_client()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#OPEN_FAILED_RESOURCE_SHORTAGE">OPEN_FAILED_RESOURCE_SHORTAGE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#OPEN_SUCCEEDED">OPEN_SUCCEEDED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#OPEN_FAILED_RESOURCE_SHORTAGE">OPEN_FAILED_RESOURCE_SHORTAGE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#OPEN_SUCCEEDED">OPEN_SUCCEEDED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#OPEN_FAILED_RESOURCE_SHORTAGE">OPEN_FAILED_RESOURCE_SHORTAGE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#OPEN_SUCCEEDED">OPEN_SUCCEEDED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#OPEN_FAILED_RESOURCE_SHORTAGE">OPEN_FAILED_RESOURCE_SHORTAGE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#OPEN_SUCCEEDED">OPEN_SUCCEEDED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#OPEN_FAILED_RESOURCE_SHORTAGE">OPEN_FAILED_RESOURCE_SHORTAGE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#OPEN_SUCCEEDED">OPEN_SUCCEEDED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#OPEN_FAILED_RESOURCE_SHORTAGE">OPEN_FAILED_RESOURCE_SHORTAGE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#OPEN_SUCCEEDED">OPEN_SUCCEEDED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#OPEN_FAILED_RESOURCE_SHORTAGE">OPEN_FAILED_RESOURCE_SHORTAGE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#OPEN_SUCCEEDED">OPEN_SUCCEEDED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#OPEN_FAILED_RESOURCE_SHORTAGE">OPEN_FAILED_RESOURCE_SHORTAGE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#OPEN_SUCCEEDED">OPEN_SUCCEEDED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#OPEN_FAILED_RESOURCE_SHORTAGE">OPEN_FAILED_RESOURCE_SHORTAGE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#OPEN_SUCCEEDED">OPEN_SUCCEEDED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#OPEN_FAILED_CONNECT_FAILED">OPEN_FAILED_CONNECT_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#OPEN_FAILED_RESOURCE_SHORTAGE">OPEN_FAILED_RESOURCE_SHORTAGE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#OPEN_SUCCEEDED">OPEN_SUCCEEDED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#OPEN_FAILED_CONNECT_FAILED">OPEN_FAILED_CONNECT_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#OPEN_FAILED_RESOURCE_SHORTAGE">OPEN_FAILED_RESOURCE_SHORTAGE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#OPEN_SUCCEEDED">OPEN_SUCCEEDED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#OPEN_FAILED_CONNECT_FAILED">OPEN_FAILED_CONNECT_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#OPEN_FAILED_RESOURCE_SHORTAGE">OPEN_FAILED_RESOURCE_SHORTAGE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#OPEN_SUCCEEDED">OPEN_SUCCEEDED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#OPEN_FAILED_CONNECT_FAILED">OPEN_FAILED_CONNECT_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#OPEN_FAILED_RESOURCE_SHORTAGE">OPEN_FAILED_RESOURCE_SHORTAGE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#OPEN_SUCCEEDED">OPEN_SUCCEEDED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#OPEN_FAILED_CONNECT_FAILED">OPEN_FAILED_CONNECT_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#OPEN_SUCCEEDED">OPEN_SUCCEEDED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#OPEN_FAILED_CONNECT_FAILED">OPEN_FAILED_CONNECT_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#OPEN_SUCCEEDED">OPEN_SUCCEEDED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#OPEN_FAILED_CONNECT_FAILED">OPEN_FAILED_CONNECT_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#OPEN_SUCCEEDED">OPEN_SUCCEEDED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#OPEN_FAILED_CONNECT_FAILED">OPEN_FAILED_CONNECT_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#OPEN_SUCCEEDED">OPEN_SUCCEEDED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#OPEN_FAILED_CONNECT_FAILED">OPEN_FAILED_CONNECT_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#OPEN_SUCCEEDED">OPEN_SUCCEEDED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#OPEN_FAILED_CONNECT_FAILED">OPEN_FAILED_CONNECT_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#OPEN_SUCCEEDED">OPEN_SUCCEEDED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#OPEN_FAILED_CONNECT_FAILED">OPEN_FAILED_CONNECT_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#OPEN_SUCCEEDED">OPEN_SUCCEEDED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#OPEN_FAILED_CONNECT_FAILED">OPEN_FAILED_CONNECT_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#OPEN_SUCCEEDED">OPEN_SUCCEEDED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#OPEN_FAILED_CONNECT_FAILED">OPEN_FAILED_CONNECT_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#open_x11_channel">open_x11_channel()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#OPEN_FAILED_CONNECT_FAILED">OPEN_FAILED_CONNECT_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pipe.OrPipe-class.html">OrPipe</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pipe-module.html" onclick="show_private();">paramiko.pipe</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#OPEN_FAILED_CONNECT_FAILED">OPEN_FAILED_CONNECT_FAILED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-<td width="33%" class="link-index">&nbsp;</td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="P">P</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#P">P</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html">pkey</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#PY22">PY22</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html">packet</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pipe.PosixPipe-class.html">PosixPipe</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pipe-module.html" onclick="show_private();">paramiko.pipe</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#PY22">PY22</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.win_pageant.PageantConnection-class.html">PageantConnection</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.win_pageant-module.html">paramiko.win_pageant</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex.KexGex-class.html#preferred_bits">preferred_bits</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex.KexGex-class.html">KexGex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#PY22">PY22</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko-module.html">paramiko</a></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPFile-class.html#prefetch">prefetch()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPFile-class.html">SFTPFile</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#PY22">PY22</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SSHConfig-class.html#parse">parse()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SSHConfig-class.html">SSHConfig</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.primes-module.html">primes</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#PY22">PY22</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex.KexGex-class.html#parse_next">parse_next()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex.KexGex-class.html">KexGex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPClient-class.html#put">put()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPClient-class.html">SFTPClient</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#PY22">PY22</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1.KexGroup1-class.html#parse_next">parse_next()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1.KexGroup1-class.html">KexGroup1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport.ChannelMap-class.html#put">put()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport.ChannelMap-class.html">ChannelMap</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#PY22">PY22</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#parse_ssh_config">parse_ssh_config()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#PY22">PY22</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#PY22">PY22</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.ssh_exception.PartialAuthentication-class.html">PartialAuthentication</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ssh_exception-module.html" onclick="show_private();">paramiko.ssh_exception</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#PY22">PY22</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#PY22">PY22</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.PasswordRequiredException-class.html">PasswordRequiredException</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#PY22">PY22</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#PY22">PY22</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.util.PFilter-class.html">PFilter</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#PY22">PY22</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#PY22">PY22</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.pipe-module.html">pipe</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#PY22">PY22</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#PY22">PY22</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.buffered_pipe.PipeTimeout-class.html">PipeTimeout</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.buffered_pipe-module.html" onclick="show_private();">paramiko.buffered_pipe</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#PY22">PY22</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#PY22">PY22</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.PKey-class.html">PKey</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#PY22">PY22</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#PY22">PY22</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="R">R</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.BufferedFile-class.html#read">read()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.BufferedFile-class.html">BufferedFile</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPClient-class.html#rename">rename()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPClient-class.html">SFTPClient</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#rng">rng</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPHandle-class.html#read">read()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPHandle-class.html">SFTPHandle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPServerInterface-class.html#rename">rename()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPServerInterface-class.html">SFTPServerInterface</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#rng">rng</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.buffered_pipe.BufferedPipe-class.html#read">read()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.buffered_pipe.BufferedPipe-class.html">BufferedPipe</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#renegotiate_keys">renegotiate_keys()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#rng">rng</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.primes.ModulusPack-class.html#read_file">read_file()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.primes.ModulusPack-class.html">ModulusPack</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#request_port_forward">request_port_forward()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#rng">rng</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.buffered_pipe.BufferedPipe-class.html#read_ready">read_ready()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.buffered_pipe.BufferedPipe-class.html">BufferedPipe</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#request_x11">request_x11()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#rng">rng</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.BufferedFile-class.html#readline">readline()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.BufferedFile-class.html">BufferedFile</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#resize_pty">resize_pty()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#rng">rng</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.BufferedFile-class.html#readlines">readlines()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.BufferedFile-class.html">BufferedFile</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.resource-module.html">resource</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#rng">rng</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPClient-class.html#readlink">readlink()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPClient-class.html">SFTPClient</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.resource-module.html#ResourceManager">ResourceManager</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.resource-module.html" onclick="show_private();">paramiko.resource</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#rng">rng</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPServerInterface-class.html#readlink">readlink()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPServerInterface-class.html">SFTPServerInterface</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Message-class.html#rewind">rewind()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Message-class.html">Message</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#rng">rng</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPFile-class.html#readv">readv()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPFile-class.html">SFTPFile</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPClient-class.html#rmdir">rmdir()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPClient-class.html">SFTPClient</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#rng">rng</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#recv">recv()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPServerInterface-class.html#rmdir">rmdir()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPServerInterface-class.html">SFTPServerInterface</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#rng">rng</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.win_pageant.PageantConnection-class.html#recv">recv()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.win_pageant.PageantConnection-class.html">PageantConnection</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#rng">rng</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#rng">rng</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#recv_exit_status">recv_exit_status()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#rng">rng</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#rng">rng</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#recv_ready">recv_ready()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#rng">rng</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#rng">rng</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#recv_stderr">recv_stderr()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#rng">rng</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.RSAKey-class.html">RSAKey</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#recv_stderr_ready">recv_stderr_ready()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#rng">rng</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html">rsakey</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.RejectPolicy-class.html">RejectPolicy</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#rng">rng</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#run">run()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPServerInterface-class.html#remove">remove()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPServerInterface-class.html">SFTPServerInterface</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#rng">rng</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index">&nbsp;</td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="S">S</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#safe_string">safe_string()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#SFTP_DESC">SFTP_DESC</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#SFTP_NO_SUCH_FILE">SFTP_NO_SUCH_FILE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.HostKeys-class.html#save">save()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.HostKeys-class.html">HostKeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#SFTP_EOF">SFTP_EOF</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#SFTP_NO_SUCH_FILE">SFTP_NO_SUCH_FILE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SSHClient-class.html#save_host_keys">save_host_keys()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SSHClient-class.html">SSHClient</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#SFTP_EOF">SFTP_EOF</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#SFTP_NO_SUCH_FILE">SFTP_NO_SUCH_FILE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SecurityOptions-class.html">SecurityOptions</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#SFTP_EOF">SFTP_EOF</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#SFTP_NO_SUCH_FILE">SFTP_NO_SUCH_FILE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.BufferedFile-class.html#seek">seek()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.BufferedFile-class.html">BufferedFile</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#SFTP_EOF">SFTP_EOF</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#SFTP_NO_SUCH_FILE">SFTP_NO_SUCH_FILE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPFile-class.html#seek">seek()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPFile-class.html">SFTPFile</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#SFTP_EOF">SFTP_EOF</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#SFTP_NO_SUCH_FILE">SFTP_NO_SUCH_FILE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.BufferedFile-class.html#SEEK_CUR">SEEK_CUR</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.BufferedFile-class.html">BufferedFile</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#SFTP_EOF">SFTP_EOF</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#SFTP_OK">SFTP_OK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.BufferedFile-class.html#SEEK_END">SEEK_END</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.BufferedFile-class.html">BufferedFile</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#SFTP_EOF">SFTP_EOF</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#SFTP_OK">SFTP_OK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.BufferedFile-class.html#SEEK_SET">SEEK_SET</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.BufferedFile-class.html">BufferedFile</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#SFTP_FAILURE">SFTP_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#SFTP_OK">SFTP_OK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#send">send()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#SFTP_FAILURE">SFTP_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#SFTP_OK">SFTP_OK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.win_pageant.PageantConnection-class.html#send">send()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.win_pageant.PageantConnection-class.html">PageantConnection</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#SFTP_FAILURE">SFTP_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#SFTP_OK">SFTP_OK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#send_exit_status">send_exit_status()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#SFTP_FAILURE">SFTP_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#SFTP_OK">SFTP_OK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#send_ignore">send_ignore()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#SFTP_FAILURE">SFTP_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#SFTP_OK">SFTP_OK</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#send_ready">send_ready()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#SFTP_FAILURE">SFTP_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#SFTP_OP_UNSUPPORTED">SFTP_OP_UNSUPPORTED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#send_stderr">send_stderr()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#SFTP_FAILURE">SFTP_FAILURE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#SFTP_OP_UNSUPPORTED">SFTP_OP_UNSUPPORTED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#sendall">sendall()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html">sftp_file</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#SFTP_OP_UNSUPPORTED">SFTP_OP_UNSUPPORTED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#sendall_stderr">sendall_stderr()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#SFTP_FLAG_APPEND">SFTP_FLAG_APPEND</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#SFTP_OP_UNSUPPORTED">SFTP_OP_UNSUPPORTED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html">server</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#SFTP_FLAG_APPEND">SFTP_FLAG_APPEND</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#SFTP_OP_UNSUPPORTED">SFTP_OP_UNSUPPORTED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.ServerInterface-class.html">ServerInterface</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#SFTP_FLAG_APPEND">SFTP_FLAG_APPEND</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#SFTP_OP_UNSUPPORTED">SFTP_OP_UNSUPPORTED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPServerInterface-class.html#session_ended">session_ended()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPServerInterface-class.html">SFTPServerInterface</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#SFTP_FLAG_APPEND">SFTP_FLAG_APPEND</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#SFTP_OP_UNSUPPORTED">SFTP_OP_UNSUPPORTED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPServerInterface-class.html#session_started">session_started()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPServerInterface-class.html">SFTPServerInterface</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#SFTP_FLAG_APPEND">SFTP_FLAG_APPEND</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#SFTP_PERMISSION_DENIED">SFTP_PERMISSION_DENIED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.pipe.OrPipe-class.html#set">set()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pipe.OrPipe-class.html">OrPipe</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#SFTP_FLAG_APPEND">SFTP_FLAG_APPEND</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#SFTP_PERMISSION_DENIED">SFTP_PERMISSION_DENIED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.pipe.PosixPipe-class.html#set">set()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pipe.PosixPipe-class.html">PosixPipe</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#SFTP_FLAG_APPEND">SFTP_FLAG_APPEND</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#SFTP_PERMISSION_DENIED">SFTP_PERMISSION_DENIED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.pipe.WindowsPipe-class.html#set">set()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pipe.WindowsPipe-class.html">WindowsPipe</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#SFTP_FLAG_CREATE">SFTP_FLAG_CREATE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#SFTP_PERMISSION_DENIED">SFTP_PERMISSION_DENIED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#set_combine_stderr">set_combine_stderr()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#SFTP_FLAG_CREATE">SFTP_FLAG_CREATE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#SFTP_PERMISSION_DENIED">SFTP_PERMISSION_DENIED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.buffered_pipe.BufferedPipe-class.html#set_event">set_event()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.buffered_pipe.BufferedPipe-class.html">BufferedPipe</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#SFTP_FLAG_CREATE">SFTP_FLAG_CREATE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#SFTP_PERMISSION_DENIED">SFTP_PERMISSION_DENIED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPServer-class.html#set_file_attr">set_file_attr()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPServer-class.html">SFTPServer</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#SFTP_FLAG_CREATE">SFTP_FLAG_CREATE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#SFTP_PERMISSION_DENIED">SFTP_PERMISSION_DENIED</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.pipe.PosixPipe-class.html#set_forever">set_forever()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pipe.PosixPipe-class.html">PosixPipe</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#SFTP_FLAG_CREATE">SFTP_FLAG_CREATE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html">sftp_server</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.pipe.WindowsPipe-class.html#set_forever">set_forever()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pipe.WindowsPipe-class.html">WindowsPipe</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#SFTP_FLAG_CREATE">SFTP_FLAG_CREATE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html">sftp_si</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#set_hexdump">set_hexdump()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#SFTP_FLAG_CREATE">SFTP_FLAG_CREATE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPAttributes-class.html">SFTPAttributes</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#set_keepalive">set_keepalive()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#SFTP_FLAG_EXCL">SFTP_FLAG_EXCL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPClient-class.html">SFTPClient</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SSHClient-class.html#set_log_channel">set_log_channel()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SSHClient-class.html">SSHClient</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#SFTP_FLAG_EXCL">SFTP_FLAG_EXCL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPError-class.html">SFTPError</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#set_log_channel">set_log_channel()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#SFTP_FLAG_EXCL">SFTP_FLAG_EXCL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPFile-class.html">SFTPFile</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SSHClient-class.html#set_missing_host_key_policy">set_missing_host_key_policy()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SSHClient-class.html">SSHClient</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#SFTP_FLAG_EXCL">SFTP_FLAG_EXCL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPHandle-class.html">SFTPHandle</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#set_name">set_name()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#SFTP_FLAG_EXCL">SFTP_FLAG_EXCL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPServer-class.html">SFTPServer</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPFile-class.html#set_pipelined">set_pipelined()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPFile-class.html">SFTPFile</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#SFTP_FLAG_EXCL">SFTP_FLAG_EXCL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPServerInterface-class.html">SFTPServerInterface</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#set_subsystem_handler">set_subsystem_handler()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#SFTP_FLAG_EXCL">SFTP_FLAG_EXCL</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#shutdown">shutdown()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#setblocking">setblocking()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#SFTP_FLAG_READ">SFTP_FLAG_READ</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#shutdown_read">shutdown_read()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPFile-class.html#setblocking">setblocking()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPFile-class.html">SFTPFile</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#SFTP_FLAG_READ">SFTP_FLAG_READ</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#shutdown_write">shutdown_write()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.logging22.StreamHandler-class.html#setFormatter">setFormatter()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.logging22.StreamHandler-class.html">StreamHandler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#SFTP_FLAG_READ">SFTP_FLAG_READ</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.AgentKey-class.html#sign_ssh_data">sign_ssh_data()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.AgentKey-class.html">AgentKey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.logging22.logger-class.html#setLevel">setLevel()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.logging22.logger-class.html">logger</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#SFTP_FLAG_READ">SFTP_FLAG_READ</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.DSSKey-class.html#sign_ssh_data">sign_ssh_data()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.DSSKey-class.html">DSSKey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#settimeout">settimeout()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#SFTP_FLAG_READ">SFTP_FLAG_READ</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.PKey-class.html#sign_ssh_data">sign_ssh_data()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.PKey-class.html">PKey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPFile-class.html#settimeout">settimeout()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPFile-class.html">SFTPFile</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#SFTP_FLAG_READ">SFTP_FLAG_READ</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.RSAKey-class.html#sign_ssh_data">sign_ssh_data()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.RSAKey-class.html">RSAKey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTP-class.html">SFTP</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#SFTP_FLAG_READ">SFTP_FLAG_READ</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.agent-module.html#SSH2_AGENT_IDENTITIES_ANSWER">SSH2_AGENT_IDENTITIES_ANSWER</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.agent-module.html" onclick="show_private();">paramiko.agent</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html">sftp</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#SFTP_FLAG_TRUNC">SFTP_FLAG_TRUNC</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.agent-module.html#SSH2_AGENT_SIGN_RESPONSE">SSH2_AGENT_SIGN_RESPONSE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.agent-module.html" onclick="show_private();">paramiko.agent</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html">sftp_attr</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#SFTP_FLAG_TRUNC">SFTP_FLAG_TRUNC</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.agent-module.html#SSH2_AGENTC_REQUEST_IDENTITIES">SSH2_AGENTC_REQUEST_IDENTITIES</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.agent-module.html" onclick="show_private();">paramiko.agent</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#SFTP_BAD_MESSAGE">SFTP_BAD_MESSAGE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#SFTP_FLAG_TRUNC">SFTP_FLAG_TRUNC</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.agent-module.html#SSH2_AGENTC_SIGN_REQUEST">SSH2_AGENTC_SIGN_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.agent-module.html" onclick="show_private();">paramiko.agent</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#SFTP_BAD_MESSAGE">SFTP_BAD_MESSAGE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#SFTP_FLAG_TRUNC">SFTP_FLAG_TRUNC</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.ssh_exception-module.html">ssh_exception</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#SFTP_BAD_MESSAGE">SFTP_BAD_MESSAGE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#SFTP_FLAG_TRUNC">SFTP_FLAG_TRUNC</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#SSH_PORT">SSH_PORT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#SFTP_BAD_MESSAGE">SFTP_BAD_MESSAGE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#SFTP_FLAG_TRUNC">SFTP_FLAG_TRUNC</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SSHClient-class.html">SSHClient</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#SFTP_BAD_MESSAGE">SFTP_BAD_MESSAGE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#SFTP_FLAG_TRUNC">SFTP_FLAG_TRUNC</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SSHConfig-class.html">SSHConfig</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#SFTP_BAD_MESSAGE">SFTP_BAD_MESSAGE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#SFTP_FLAG_WRITE">SFTP_FLAG_WRITE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SSHException-class.html">SSHException</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#SFTP_BAD_MESSAGE">SFTP_BAD_MESSAGE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#SFTP_FLAG_WRITE">SFTP_FLAG_WRITE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#start_client">start_client()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html">sftp_client</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#SFTP_FLAG_WRITE">SFTP_FLAG_WRITE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex.KexGex-class.html#start_kex">start_kex()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex.KexGex-class.html">KexGex</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#SFTP_CONNECTION_LOST">SFTP_CONNECTION_LOST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#SFTP_FLAG_WRITE">SFTP_FLAG_WRITE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1.KexGroup1-class.html#start_kex">start_kex()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1.KexGroup1-class.html">KexGroup1</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#SFTP_CONNECTION_LOST">SFTP_CONNECTION_LOST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#SFTP_FLAG_WRITE">SFTP_FLAG_WRITE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#start_server">start_server()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#SFTP_CONNECTION_LOST">SFTP_CONNECTION_LOST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#SFTP_FLAG_WRITE">SFTP_FLAG_WRITE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPServer-class.html#start_subsystem">start_subsystem()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPServer-class.html">SFTPServer</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#SFTP_CONNECTION_LOST">SFTP_CONNECTION_LOST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#SFTP_FLAG_WRITE">SFTP_FLAG_WRITE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SubsystemHandler-class.html#start_subsystem">start_subsystem()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SubsystemHandler-class.html">SubsystemHandler</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#SFTP_CONNECTION_LOST">SFTP_CONNECTION_LOST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html">sftp_handle</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPClient-class.html#stat">stat()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPClient-class.html">SFTPClient</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#SFTP_CONNECTION_LOST">SFTP_CONNECTION_LOST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#SFTP_NO_CONNECTION">SFTP_NO_CONNECTION</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPFile-class.html#stat">stat()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPFile-class.html">SFTPFile</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#SFTP_CONNECTION_LOST">SFTP_CONNECTION_LOST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#SFTP_NO_CONNECTION">SFTP_NO_CONNECTION</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPHandle-class.html#stat">stat()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPHandle-class.html">SFTPHandle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#SFTP_DESC">SFTP_DESC</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#SFTP_NO_CONNECTION">SFTP_NO_CONNECTION</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPServerInterface-class.html#stat">stat()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPServerInterface-class.html">SFTPServerInterface</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#SFTP_DESC">SFTP_DESC</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#SFTP_NO_CONNECTION">SFTP_NO_CONNECTION</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#stop_thread">stop_thread()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#SFTP_DESC">SFTP_DESC</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#SFTP_NO_CONNECTION">SFTP_NO_CONNECTION</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.logging22.StreamHandler-class.html">StreamHandler</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.logging22-module.html">paramiko.logging22</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#SFTP_DESC">SFTP_DESC</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#SFTP_NO_CONNECTION">SFTP_NO_CONNECTION</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SubsystemHandler-class.html">SubsystemHandler</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#SFTP_DESC">SFTP_DESC</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#SFTP_NO_CONNECTION">SFTP_NO_CONNECTION</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPClient-class.html#symlink">symlink()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPClient-class.html">SFTPClient</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#SFTP_DESC">SFTP_DESC</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#SFTP_NO_SUCH_FILE">SFTP_NO_SUCH_FILE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPServerInterface-class.html#symlink">symlink()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPServerInterface-class.html">SFTPServerInterface</a>)</span></td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="T">T</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#tb_strings">tb_strings()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html">Transport</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPFile-class.html#truncate">truncate()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPFile-class.html">SFTPFile</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.BufferedFile-class.html#tell">tell()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.BufferedFile-class.html">BufferedFile</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html">transport</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index">&nbsp;</td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys.HostKeyEntry-class.html#to_line">to_line()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys.HostKeyEntry-class.html">HostKeyEntry</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPClient-class.html#truncate">truncate()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPClient-class.html">SFTPClient</a>)</span></td>
-<td width="33%" class="link-index">&nbsp;</td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="U">U</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#unhexify">unhexify()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#use_compression">use_compression()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPClient-class.html#utime">utime()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPClient-class.html">SFTPClient</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPClient-class.html#unlink">unlink()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPClient-class.html">SFTPClient</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html">util</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPFile-class.html#utime">utime()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPFile-class.html">SFTPFile</a>)</span></td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="V">V</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.HostKeys-class.html#values">values()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.HostKeys-class.html">HostKeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.DSSKey-class.html#verify_ssh_sig">verify_ssh_sig()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.DSSKey-class.html">DSSKey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.RSAKey-class.html#verify_ssh_sig">verify_ssh_sig()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.RSAKey-class.html">RSAKey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.transport.ChannelMap-class.html#values">values()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport.ChannelMap-class.html">ChannelMap</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.PKey-class.html#verify_ssh_sig">verify_ssh_sig()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.PKey-class.html">PKey</a>)</span></td>
-<td width="33%" class="link-index">&nbsp;</td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="W">W</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#WARNING">WARNING</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#WARNING">WARNING</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.win_pageant-module.html">win_pageant</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#WARNING">WARNING</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#WARNING">WARNING</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pipe.WindowsPipe-class.html">WindowsPipe</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pipe-module.html" onclick="show_private();">paramiko.pipe</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#WARNING">WARNING</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#WARNING">WARNING</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.BufferedFile-class.html#write">write()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.BufferedFile-class.html">BufferedFile</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#WARNING">WARNING</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#WARNING">WARNING</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPHandle-class.html#write">write()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPHandle-class.html">SFTPHandle</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#WARNING">WARNING</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#WARNING">WARNING</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.DSSKey-class.html#write_private_key">write_private_key()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.DSSKey-class.html">DSSKey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#WARNING">WARNING</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#WARNING">WARNING</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.PKey-class.html#write_private_key">write_private_key()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.PKey-class.html">PKey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#WARNING">WARNING</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#WARNING">WARNING</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.RSAKey-class.html#write_private_key">write_private_key()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.RSAKey-class.html">RSAKey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#WARNING">WARNING</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#WARNING">WARNING</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.DSSKey-class.html#write_private_key_file">write_private_key_file()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.DSSKey-class.html">DSSKey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.logging22-module.html#WARNING">WARNING</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.logging22-module.html">paramiko.logging22</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#WARNING">WARNING</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.PKey-class.html#write_private_key_file">write_private_key_file()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.PKey-class.html">PKey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#WARNING">WARNING</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#WARNING">WARNING</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.RSAKey-class.html#write_private_key_file">write_private_key_file()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.RSAKey-class.html">RSAKey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#WARNING">WARNING</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.WarningPolicy-class.html">WarningPolicy</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.BufferedFile-class.html#writelines">writelines()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.BufferedFile-class.html">BufferedFile</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#WARNING">WARNING</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.win_pageant-module.html#win32con_WM_COPYDATA">win32con_WM_COPYDATA</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.win_pageant-module.html">paramiko.win_pageant</a>)</span></td>
-<td width="33%" class="link-index">&nbsp;</td>
-</tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="X">X</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.BufferedFile-class.html#xreadlines">xreadlines()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.BufferedFile-class.html">BufferedFile</a>)</span></td>
-<td width="33%" class="link-index">&nbsp;</td>
-<td width="33%" class="link-index">&nbsp;</td>
-</tr>
-<tr><td class="link-index">&nbsp;</td><td class="link-index">&nbsp;</td><td class="link-index">&nbsp;</td></tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="Z">Z</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.compress.ZlibCompressor-class.html">ZlibCompressor</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.compress-module.html" onclick="show_private();">paramiko.compress</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.compress.ZlibDecompressor-class.html">ZlibDecompressor</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.compress-module.html" onclick="show_private();">paramiko.compress</a>)</span></td>
-<td width="33%" class="link-index">&nbsp;</td>
-</tr>
-<tr><td class="link-index">&nbsp;</td><td class="link-index">&nbsp;</td><td class="link-index">&nbsp;</td></tr>
-</table>
-</td></tr>
-<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="_">_</a></h2></td>
-<td valign="top">
-<table class="link-index" width="100%" border="1">
-<tr>
-<td width="33%" class="link-index"><a href="paramiko-module.html#__author__">__author__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.win_pageant.PageantConnection-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.win_pageant.PageantConnection-class.html">PageantConnection</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.PKey-class.html#__str__">__str__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.PKey-class.html">PKey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.compress.ZlibCompressor-class.html#__call__">__call__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.compress.ZlibCompressor-class.html">ZlibCompressor</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.BufferedFile-class.html#__iter__">__iter__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.BufferedFile-class.html">BufferedFile</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.RSAKey-class.html#__str__">__str__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.RSAKey-class.html">RSAKey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.compress.ZlibDecompressor-class.html#__call__">__call__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.compress.ZlibDecompressor-class.html">ZlibDecompressor</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util.enumerate-class.html#__iter__">__iter__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util.enumerate-class.html">enumerate</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPAttributes-class.html#__str__">__str__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPAttributes-class.html">SFTPAttributes</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.util.Counter-class.html#__call__">__call__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util.Counter-class.html">Counter</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.buffered_pipe.BufferedPipe-class.html#__len__">__len__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.buffered_pipe.BufferedPipe-class.html">BufferedPipe</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.ber.BER-class.html#__str__">__str__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ber.BER-class.html">BER</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.PKey-class.html#__cmp__">__cmp__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.PKey-class.html">PKey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport.ChannelMap-class.html#__len__">__len__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport.ChannelMap-class.html">ChannelMap</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko-module.html#__version__">__version__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.BufferedFile-class.html#__del__">__del__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.BufferedFile-class.html">BufferedFile</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko-module.html#__license__">__license__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko-module.html#__version_info__">__version_info__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#__del__">__del__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko-module.html">paramiko</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#_active_threads">_active_threads</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPFile-class.html#__del__">__del__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPFile-class.html">SFTPFile</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.agent-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.agent-module.html" onclick="show_private();">paramiko.agent</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.win_pageant-module.html#_AGENT_COPYDATA_ID">_AGENT_COPYDATA_ID</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.win_pageant-module.html">paramiko.win_pageant</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.HostKeys-class.html#__getitem__">__getitem__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.HostKeys-class.html">HostKeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.auth_handler-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.win_pageant-module.html#_AGENT_MAX_MSGLEN">_AGENT_MAX_MSGLEN</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.win_pageant-module.html">paramiko.win_pageant</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.DSSKey-class.html#__hash__">__hash__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.DSSKey-class.html">DSSKey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.ber-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ber-module.html" onclick="show_private();">paramiko.ber</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#_channel_handler_table">_channel_handler_table</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.RSAKey-class.html#__hash__">__hash__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.RSAKey-class.html">RSAKey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.buffered_pipe-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.buffered_pipe-module.html" onclick="show_private();">paramiko.buffered_pipe</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#_cipher_info">_cipher_info</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Agent-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Agent-class.html">Agent</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.channel-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.PKey-class.html#_CIPHER_TABLE">_CIPHER_TABLE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.PKey-class.html">PKey</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.AgentKey-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.AgentKey-class.html">AgentKey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.client-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#_CLIENT_ID">_CLIENT_ID</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.BadAuthenticationType-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.BadAuthenticationType-class.html">BadAuthenticationType</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.common-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#_compression_info">_compression_info</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.BadHostKeyException-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.BadHostKeyException-class.html">BadHostKeyException</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.compress-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.compress-module.html" onclick="show_private();">paramiko.compress</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.BufferedFile-class.html#_DEFAULT_BUFSIZE">_DEFAULT_BUFSIZE</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.BufferedFile-class.html">BufferedFile</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.BufferedFile-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.BufferedFile-class.html">BufferedFile</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.config-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.config-module.html" onclick="show_private();">paramiko.config</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#_g_thread_counter">_g_thread_counter</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.dsskey-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#_g_thread_ids">_g_thread_ids</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.ChannelException-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ChannelException-class.html">ChannelException</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.file-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.file-module.html" onclick="show_private();">paramiko.file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#_g_thread_lock">_g_thread_lock</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.DSSKey-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.DSSKey-class.html">DSSKey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SecurityOptions-class.html#_get_ciphers">_get_ciphers()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SecurityOptions-class.html">SecurityOptions</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.HostKeys-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.HostKeys-class.html">HostKeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SecurityOptions-class.html#_get_compression">_get_compression()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SecurityOptions-class.html">SecurityOptions</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Message-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Message-class.html">Message</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SecurityOptions-class.html#_get_digests">_get_digests()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SecurityOptions-class.html">SecurityOptions</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.PKey-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.PKey-class.html">PKey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.logging22-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.logging22-module.html">paramiko.logging22</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SecurityOptions-class.html#_get_kex">_get_kex()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SecurityOptions-class.html">SecurityOptions</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.RSAKey-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.RSAKey-class.html">RSAKey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.message-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.message-module.html" onclick="show_private();">paramiko.message</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SecurityOptions-class.html#_get_key_types">_get_key_types()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SecurityOptions-class.html">SecurityOptions</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPAttributes-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPAttributes-class.html">SFTPAttributes</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.packet-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#_handler_table">_handler_table</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPClient-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPClient-class.html">SFTPClient</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pipe-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pipe-module.html" onclick="show_private();">paramiko.pipe</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.win_pageant-module.html#_has_ctypes">_has_ctypes</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.win_pageant-module.html">paramiko.win_pageant</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPFile-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPFile-class.html">SFTPFile</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.pkey-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.win_pageant-module.html#_has_win32all">_has_win32all</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.win_pageant-module.html">paramiko.win_pageant</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPHandle-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPHandle-class.html">SFTPHandle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.primes-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.primes-module.html" onclick="show_private();">paramiko.primes</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#_hash_class">_hash_class</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPServer-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPServer-class.html">SFTPServer</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.resource-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.resource-module.html" onclick="show_private();">paramiko.resource</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#_kex_info">_kex_info</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SFTPServerInterface-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPServerInterface-class.html">SFTPServerInterface</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.rsakey-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#_key_info">_key_info</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SSHClient-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SSHClient-class.html">SSHClient</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.server-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.logging22-module.html#_logger">_logger</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.logging22-module.html">paramiko.logging22</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SSHConfig-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SSHConfig-class.html">SSHConfig</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#_mac_info">_mac_info</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SecurityOptions-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SecurityOptions-class.html">SecurityOptions</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_attr-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#_modulus_pack">_modulus_pack</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.SubsystemHandler-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SubsystemHandler-class.html">SubsystemHandler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_client-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#_MSG_KEXDH_GEX_GROUP">_MSG_KEXDH_GEX_GROUP</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_file-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#_MSG_KEXDH_GEX_INIT">_MSG_KEXDH_GEX_INIT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.ber.BER-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ber.BER-class.html">BER</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_handle-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#_MSG_KEXDH_GEX_REPLY">_MSG_KEXDH_GEX_REPLY</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.buffered_pipe.BufferedPipe-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.buffered_pipe.BufferedPipe-class.html">BufferedPipe</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_server-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#_MSG_KEXDH_GEX_REQUEST">_MSG_KEXDH_GEX_REQUEST</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.channel.ChannelStderrFile-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.channel.ChannelStderrFile-class.html">ChannelStderrFile</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp_si-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex-module.html#_MSG_KEXDH_GEX_REQUEST_OLD">_MSG_KEXDH_GEX_REQUEST_OLD</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.compress.ZlibCompressor-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.compress.ZlibCompressor-class.html">ZlibCompressor</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.ssh_exception-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ssh_exception-module.html" onclick="show_private();">paramiko.ssh_exception</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#_MSG_KEXDH_INIT">_MSG_KEXDH_INIT</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.compress.ZlibDecompressor-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.compress.ZlibDecompressor-class.html">ZlibDecompressor</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.transport-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1-module.html#_MSG_KEXDH_REPLY">_MSG_KEXDH_REPLY</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys.HostKeyEntry-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys.HostKeyEntry-class.html">HostKeyEntry</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.util-module.html#_pfilter">_pfilter</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util-module.html">paramiko.util</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_gex.KexGex-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_gex.KexGex-class.html">KexGex</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.win_pageant-module.html#__package__">__package__</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.win_pageant-module.html">paramiko.win_pageant</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#_preferred_ciphers">_preferred_ciphers</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.kex_group1.KexGroup1-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.kex_group1.KexGroup1-class.html">KexGroup1</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Channel-class.html#__repr__">__repr__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Channel-class.html">Channel</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#_preferred_compression">_preferred_compression</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.logging22.Formatter-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.logging22.Formatter-class.html">Formatter</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Message-class.html#__repr__">__repr__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Message-class.html">Message</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#_preferred_kex">_preferred_kex</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.logging22.StreamHandler-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.logging22.StreamHandler-class.html">StreamHandler</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SFTPAttributes-class.html#__repr__">__repr__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SFTPAttributes-class.html">SFTPAttributes</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#_preferred_keys">_preferred_keys</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.logging22.logger-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.logging22.logger-class.html">logger</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SecurityOptions-class.html#__repr__">__repr__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SecurityOptions-class.html">SecurityOptions</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#_preferred_macs">_preferred_macs</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.pipe.OrPipe-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pipe.OrPipe-class.html">OrPipe</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#__repr__">__repr__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Transport-class.html#_PROTO_ID">_PROTO_ID</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Transport-class.html">Transport</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.pipe.PosixPipe-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pipe.PosixPipe-class.html">PosixPipe</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.ber.BER-class.html#__repr__">__repr__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ber.BER-class.html">BER</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SecurityOptions-class.html#_set_ciphers">_set_ciphers()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SecurityOptions-class.html">SecurityOptions</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.pipe.WindowsPipe-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.pipe.WindowsPipe-class.html">WindowsPipe</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.hostkeys.HostKeyEntry-class.html#__repr__">__repr__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.hostkeys.HostKeyEntry-class.html">HostKeyEntry</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SecurityOptions-class.html#_set_compression">_set_compression()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SecurityOptions-class.html">SecurityOptions</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.primes.ModulusPack-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.primes.ModulusPack-class.html">ModulusPack</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.HostKeys-class.html#__setitem__">__setitem__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.HostKeys-class.html">HostKeys</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SecurityOptions-class.html#_set_digests">_set_digests()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SecurityOptions-class.html">SecurityOptions</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.ssh_exception.PartialAuthentication-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.ssh_exception.PartialAuthentication-class.html">PartialAuthentication</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.AgentKey-class.html#__str__">__str__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.AgentKey-class.html">AgentKey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SecurityOptions-class.html#_set_kex">_set_kex()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SecurityOptions-class.html">SecurityOptions</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.transport.ChannelMap-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.transport.ChannelMap-class.html">ChannelMap</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.BadAuthenticationType-class.html#__str__">__str__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.BadAuthenticationType-class.html">BadAuthenticationType</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.SecurityOptions-class.html#_set_key_types">_set_key_types()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.SecurityOptions-class.html">SecurityOptions</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.util.Counter-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util.Counter-class.html">Counter</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.DSSKey-class.html#__str__">__str__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.DSSKey-class.html">DSSKey</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.sftp-module.html#_VERSION">_VERSION</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a>)</span></td>
-</tr>
-<tr>
-<td width="33%" class="link-index"><a href="paramiko.util.enumerate-class.html#__init__">__init__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.util.enumerate-class.html">enumerate</a>)</span></td>
-<td width="33%" class="link-index"><a href="paramiko.Message-class.html#__str__">__str__()</a><br />
-<span class="index-where">(in&nbsp;<a href="paramiko.Message-class.html">Message</a>)</span></td>
-<td width="33%" class="link-index">&nbsp;</td>
-</tr>
-</table>
-</td></tr>
-</table>
-<br /><br /><!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th bgcolor="#70b0f0" class="navbar-select"
- >&nbsp;&nbsp;&nbsp;Indices&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:01 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/index.html b/docs/index.html
deleted file mode 100644
index d1e8877..0000000
--- a/docs/index.html
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
- "DTD/xhtml1-frameset.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title> API Documentation </title>
-</head>
-<frameset cols="20%,80%">
- <frameset rows="30%,70%">
- <frame src="toc.html" name="moduleListFrame"
- id="moduleListFrame" />
- <frame src="toc-everything.html" name="moduleFrame"
- id="moduleFrame" />
- </frameset>
- <frame src="paramiko-module.html" name="mainFrame" id="mainFrame" />
-</frameset>
-</html>
diff --git a/docs/module-tree.html b/docs/module-tree.html
deleted file mode 100644
index 3e08e6a..0000000
--- a/docs/module-tree.html
+++ /dev/null
@@ -1,155 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Module Hierarchy</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th bgcolor="#70b0f0" class="navbar-select"
- >&nbsp;&nbsp;&nbsp;Trees&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">&nbsp;</td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="module-tree.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<center><b>
- [ <a href="module-tree.html">Module Hierarchy</a>
- | <a href="class-tree.html">Class Hierarchy</a> ]
-</b></center><br />
-<h1 class="epydoc">Module Hierarchy</h1>
-<ul class="nomargin-top">
- <li> <strong class="uidlink"><a href="paramiko-module.html">paramiko</a></strong>: <em class="summary"><i>Paramiko</i> (a combination of the esperanto words for
- &quot;paranoid&quot; and &quot;friend&quot;) is a module for python
- 2.3 or greater that implements the SSH2 protocol for secure
- (encrypted and authenticated) connections to remote machines.</em>
- <ul>
- <li class="private"> <strong class="uidlink"><a href="paramiko.agent-module.html" onclick="show_private();">paramiko.agent</a></strong>: <em class="summary">SSH Agent interface for Unix clients.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a></strong>: <em class="summary">AuthHandler</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.ber-module.html" onclick="show_private();">paramiko.ber</a></strong> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.buffered_pipe-module.html" onclick="show_private();">paramiko.buffered_pipe</a></strong>: <em class="summary">Attempt to generalize the &quot;feeder&quot; part of a Channel: an
- object which can be read from and closed, but is reading from a
- buffer fed by another thread.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a></strong>: <em class="summary">Abstraction for an SSH2 channel.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a></strong>: <em class="summary"><a href="paramiko.SSHClient-class.html" class="link">SSHClient</a>.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a></strong>: <em class="summary">Common constants and global variables.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.compress-module.html" onclick="show_private();">paramiko.compress</a></strong>: <em class="summary">Compression implementations for a Transport.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.config-module.html" onclick="show_private();">paramiko.config</a></strong>: <em class="summary"><a href="paramiko.SSHConfig-class.html" class="link">SSHConfig</a>.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a></strong>: <em class="summary"><a href="paramiko.DSSKey-class.html" class="link">DSSKey</a></em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.file-module.html" onclick="show_private();">paramiko.file</a></strong>: <em class="summary">BufferedFile.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a></strong>: <em class="summary"><a href="paramiko.HostKeys-class.html" class="link">HostKeys</a></em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a></strong>: <em class="summary">Variant on <a href="paramiko.kex_group1.KexGroup1-class.html"
- class="link">KexGroup1</a> where the prime &quot;p&quot; and
- generator &quot;g&quot; are provided by the server.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a></strong>: <em class="summary">Standard SSH key exchange (&quot;kex&quot; if you wanna sound
- cool).</em> </li>
- <li> <strong class="uidlink"><a href="paramiko.logging22-module.html">paramiko.logging22</a></strong>: <em class="summary">Stub out logging on python &lt; 2.3.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.message-module.html" onclick="show_private();">paramiko.message</a></strong>: <em class="summary">Implementation of an SSH2 &quot;message&quot;.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a></strong>: <em class="summary">Packetizer.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.pipe-module.html" onclick="show_private();">paramiko.pipe</a></strong>: <em class="summary">Abstraction of a one-way pipe where the read end can be used in
- select().</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a></strong>: <em class="summary">Common API for all public keys.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.primes-module.html" onclick="show_private();">paramiko.primes</a></strong>: <em class="summary">Utility functions for dealing with primes.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.resource-module.html" onclick="show_private();">paramiko.resource</a></strong>: <em class="summary">Resource manager.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a></strong>: <em class="summary"><a href="paramiko.RSAKey-class.html" class="link">RSAKey</a></em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a></strong>: <em class="summary"><a href="paramiko.ServerInterface-class.html"
- class="link">ServerInterface</a> is an interface to override for
- server support.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a></strong> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a></strong> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a></strong>: <em class="summary">Client-mode SFTP support.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a></strong>: <em class="summary"><a href="paramiko.SFTPFile-class.html" class="link">SFTPFile</a></em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a></strong>: <em class="summary">Abstraction of an SFTP file handle (for server mode).</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a></strong>: <em class="summary">Server-mode SFTP support.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a></strong>: <em class="summary"><a href="paramiko.SFTPServerInterface-class.html"
- class="link">SFTPServerInterface</a> is an interface to override
- for SFTP server support.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.ssh_exception-module.html" onclick="show_private();">paramiko.ssh_exception</a></strong>: <em class="summary">Exceptions defined by paramiko.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a></strong>: <em class="summary"><a href="paramiko.Transport-class.html" class="link">Transport</a>
- handles the core SSH2 protocol.</em> </li>
- <li> <strong class="uidlink"><a href="paramiko.util-module.html">paramiko.util</a></strong>: <em class="summary">Useful functions used by the rest of paramiko.</em> </li>
- <li> <strong class="uidlink"><a href="paramiko.win_pageant-module.html">paramiko.win_pageant</a></strong>: <em class="summary">Functions for communicating with Pageant, the basic windows ssh
- agent program.</em> </li>
- </ul>
- </li>
-</ul>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th bgcolor="#70b0f0" class="navbar-select"
- >&nbsp;&nbsp;&nbsp;Trees&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:01 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko-module.html b/docs/paramiko-module.html
deleted file mode 100644
index 33e51b0..0000000
--- a/docs/paramiko-module.html
+++ /dev/null
@@ -1,513 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th bgcolor="#70b0f0" class="navbar-select"
- >&nbsp;&nbsp;&nbsp;Home&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- Package&nbsp;paramiko
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== PACKAGE DESCRIPTION ==================== -->
-<h1 class="epydoc">Package paramiko</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html">source&nbsp;code</a></span></p>
-<p><i>Paramiko</i> (a combination of the esperanto words for
- &quot;paranoid&quot; and &quot;friend&quot;) is a module for python 2.3
- or greater that implements the SSH2 protocol for secure (encrypted and
- authenticated) connections to remote machines. Unlike SSL (aka TLS), the
- SSH2 protocol does not require hierarchical certificates signed by a
- powerful central authority. You may know SSH2 as the protocol that
- replaced <code>telnet</code> and <code>rsh</code> for secure access to
- remote shells, but the protocol also includes the ability to open
- arbitrary channels to remote services across an encrypted tunnel. (This
- is how <code>sftp</code> works, for example.)</p>
- <p>The high-level client API starts with creation of an <a
- href="paramiko.SSHClient-class.html" class="link">SSHClient</a> object.
- For more direct control, pass a socket (or socket-like object) to a <a
- href="paramiko.Transport-class.html" class="link">Transport</a>, and use
- <a href="paramiko.Transport-class.html#start_server"
- class="link">start_server</a> or <a
- href="paramiko.Transport-class.html#start_client"
- class="link">start_client</a> to negoatite with the remote host as either
- a server or client. As a client, you are responsible for authenticating
- using a password or private key, and checking the server's host key.
- <i>(Key signature and verification is done by paramiko, but you will need
- to provide private keys and check that the content of a public key
- matches what you expected to see.)</i> As a server, you are responsible
- for deciding which users, passwords, and keys to allow, and what kind of
- channels to allow.</p>
- <p>Once you have finished, either side may request flow-controlled <a
- href="paramiko.Channel-class.html" class="link">Channel</a>s to the other
- side, which are python objects that act like sockets, but send and
- receive data over the encrypted session.</p>
- <p>Paramiko is written entirely in python (no C or platform-dependent
- code) and is released under the GNU Lesser General Public License
- (LGPL).</p>
- <p>Website: <a href="http://www.lag.net/paramiko/"
- target="_top">http://www.lag.net/paramiko/</a></p>
-
-<hr />
-<div class="fields"> <p><strong>Version:</strong>
- 1.7.7.1 (George)
- </p>
- <p><strong>Author:</strong>
- Robey Pointer
- </p>
- <p><strong>Contact:</strong>
- robeypointer@gmail.com
- </p>
- <p><strong>License:</strong>
- GNU Lesser General Public License (LGPL)
- </p>
- <p><strong>Date:</strong>
- 21 May 2011
- </p>
-</div><!-- ==================== SUBMODULES ==================== -->
-<a name="section-Submodules"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Submodules</span></td>
-</tr>
- <tr><td class="summary">
- <ul class="nomargin">
- <li class="private"> <strong class="uidlink"><a href="paramiko.agent-module.html" onclick="show_private();">paramiko.agent</a></strong>: <em class="summary">SSH Agent interface for Unix clients.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.auth_handler-module.html" onclick="show_private();">paramiko.auth_handler</a></strong>: <em class="summary">AuthHandler</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.ber-module.html" onclick="show_private();">paramiko.ber</a></strong> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.buffered_pipe-module.html" onclick="show_private();">paramiko.buffered_pipe</a></strong>: <em class="summary">Attempt to generalize the &quot;feeder&quot; part of a Channel: an
- object which can be read from and closed, but is reading from a
- buffer fed by another thread.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.channel-module.html" onclick="show_private();">paramiko.channel</a></strong>: <em class="summary">Abstraction for an SSH2 channel.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.client-module.html" onclick="show_private();">paramiko.client</a></strong>: <em class="summary"><a href="paramiko.SSHClient-class.html" class="link">SSHClient</a>.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.common-module.html" onclick="show_private();">paramiko.common</a></strong>: <em class="summary">Common constants and global variables.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.compress-module.html" onclick="show_private();">paramiko.compress</a></strong>: <em class="summary">Compression implementations for a Transport.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.config-module.html" onclick="show_private();">paramiko.config</a></strong>: <em class="summary"><a href="paramiko.SSHConfig-class.html" class="link">SSHConfig</a>.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.dsskey-module.html" onclick="show_private();">paramiko.dsskey</a></strong>: <em class="summary"><a href="paramiko.DSSKey-class.html" class="link">DSSKey</a></em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.file-module.html" onclick="show_private();">paramiko.file</a></strong>: <em class="summary">BufferedFile.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.hostkeys-module.html" onclick="show_private();">paramiko.hostkeys</a></strong>: <em class="summary"><a href="paramiko.HostKeys-class.html" class="link">HostKeys</a></em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.kex_gex-module.html" onclick="show_private();">paramiko.kex_gex</a></strong>: <em class="summary">Variant on <a href="paramiko.kex_group1.KexGroup1-class.html"
- class="link">KexGroup1</a> where the prime &quot;p&quot; and
- generator &quot;g&quot; are provided by the server.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.kex_group1-module.html" onclick="show_private();">paramiko.kex_group1</a></strong>: <em class="summary">Standard SSH key exchange (&quot;kex&quot; if you wanna sound
- cool).</em> </li>
- <li> <strong class="uidlink"><a href="paramiko.logging22-module.html">paramiko.logging22</a></strong>: <em class="summary">Stub out logging on python &lt; 2.3.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.message-module.html" onclick="show_private();">paramiko.message</a></strong>: <em class="summary">Implementation of an SSH2 &quot;message&quot;.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.packet-module.html" onclick="show_private();">paramiko.packet</a></strong>: <em class="summary">Packetizer.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.pipe-module.html" onclick="show_private();">paramiko.pipe</a></strong>: <em class="summary">Abstraction of a one-way pipe where the read end can be used in
- select().</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.pkey-module.html" onclick="show_private();">paramiko.pkey</a></strong>: <em class="summary">Common API for all public keys.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.primes-module.html" onclick="show_private();">paramiko.primes</a></strong>: <em class="summary">Utility functions for dealing with primes.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.resource-module.html" onclick="show_private();">paramiko.resource</a></strong>: <em class="summary">Resource manager.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.rsakey-module.html" onclick="show_private();">paramiko.rsakey</a></strong>: <em class="summary"><a href="paramiko.RSAKey-class.html" class="link">RSAKey</a></em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.server-module.html" onclick="show_private();">paramiko.server</a></strong>: <em class="summary"><a href="paramiko.ServerInterface-class.html"
- class="link">ServerInterface</a> is an interface to override for
- server support.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.sftp-module.html" onclick="show_private();">paramiko.sftp</a></strong> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.sftp_attr-module.html" onclick="show_private();">paramiko.sftp_attr</a></strong> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.sftp_client-module.html" onclick="show_private();">paramiko.sftp_client</a></strong>: <em class="summary">Client-mode SFTP support.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.sftp_file-module.html" onclick="show_private();">paramiko.sftp_file</a></strong>: <em class="summary"><a href="paramiko.SFTPFile-class.html" class="link">SFTPFile</a></em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.sftp_handle-module.html" onclick="show_private();">paramiko.sftp_handle</a></strong>: <em class="summary">Abstraction of an SFTP file handle (for server mode).</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.sftp_server-module.html" onclick="show_private();">paramiko.sftp_server</a></strong>: <em class="summary">Server-mode SFTP support.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.sftp_si-module.html" onclick="show_private();">paramiko.sftp_si</a></strong>: <em class="summary"><a href="paramiko.SFTPServerInterface-class.html"
- class="link">SFTPServerInterface</a> is an interface to override
- for SFTP server support.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.ssh_exception-module.html" onclick="show_private();">paramiko.ssh_exception</a></strong>: <em class="summary">Exceptions defined by paramiko.</em> </li>
- <li class="private"> <strong class="uidlink"><a href="paramiko.transport-module.html" onclick="show_private();">paramiko.transport</a></strong>: <em class="summary"><a href="paramiko.Transport-class.html" class="link">Transport</a>
- handles the core SSH2 protocol.</em> </li>
- <li> <strong class="uidlink"><a href="paramiko.util-module.html">paramiko.util</a></strong>: <em class="summary">Useful functions used by the rest of paramiko.</em> </li>
- <li> <strong class="uidlink"><a href="paramiko.win_pageant-module.html">paramiko.win_pageant</a></strong>: <em class="summary">Functions for communicating with Pageant, the basic windows ssh
- agent program.</em> </li>
- </ul></td></tr>
-</table>
-
-<br />
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Classes</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.SecurityOptions-class.html" class="summary-name">SecurityOptions</a><br />
- Simple object containing the security preferences of an ssh
- transport.
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.Transport-class.html" class="summary-name">Transport</a><br />
- An SSH Transport attaches to a stream (usually a socket),
- negotiates an encrypted session, authenticates, and then creates
- stream tunnels, called <a href="paramiko.Channel-class.html"
- class="link">Channel</a>s, across the session.
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.SSHClient-class.html" class="summary-name">SSHClient</a><br />
- A high-level representation of a session with an SSH server.
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.MissingHostKeyPolicy-class.html" class="summary-name">MissingHostKeyPolicy</a><br />
- Interface for defining the policy that <a
- href="paramiko.SSHClient-class.html" class="link">SSHClient</a>
- should use when the SSH server's hostname is not in either the
- system host keys or the application's keys.
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.AutoAddPolicy-class.html" class="summary-name">AutoAddPolicy</a><br />
- Policy for automatically adding the hostname and new host key to
- the local <a href="paramiko.HostKeys-class.html"
- class="link">HostKeys</a> object, and saving it.
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.RejectPolicy-class.html" class="summary-name">RejectPolicy</a><br />
- Policy for automatically rejecting the unknown hostname &amp; key.
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.WarningPolicy-class.html" class="summary-name">WarningPolicy</a><br />
- Policy for logging a python-style warning for an unknown host key,
- but accepting it.
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.Channel-class.html" class="summary-name">Channel</a><br />
- A secure tunnel across an SSH <a
- href="paramiko.Transport-class.html" class="link">Transport</a>.
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.SSHException-class.html" class="summary-name">SSHException</a><br />
- Exception raised by failures in SSH2 protocol negotiation or logic
- errors.
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.PasswordRequiredException-class.html" class="summary-name">PasswordRequiredException</a><br />
- Exception raised when a password is needed to unlock a private key
- file.
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.BadAuthenticationType-class.html" class="summary-name">BadAuthenticationType</a><br />
- Exception raised when an authentication type (like password) is
- used, but the server isn't allowing that type.
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.ChannelException-class.html" class="summary-name">ChannelException</a><br />
- Exception raised when an attempt to open a new <a
- href="paramiko.Channel-class.html" class="link">Channel</a> fails.
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.BadHostKeyException-class.html" class="summary-name">BadHostKeyException</a><br />
- The host key given by the SSH server did not match what we were
- expecting.
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.AuthenticationException-class.html" class="summary-name">AuthenticationException</a><br />
- Exception raised when authentication failed for some reason.
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.ServerInterface-class.html" class="summary-name">ServerInterface</a><br />
- This class defines an interface for controlling the behavior of
- paramiko in server mode.
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.SubsystemHandler-class.html" class="summary-name">SubsystemHandler</a><br />
- Handler for a subsytem in server mode.
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.RSAKey-class.html" class="summary-name">RSAKey</a><br />
- Representation of an RSA key which can be used to sign and verify
- SSH2 data.
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.DSSKey-class.html" class="summary-name">DSSKey</a><br />
- Representation of a DSS key which can be used to sign an verify
- SSH2 data.
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.SFTPError-class.html" class="summary-name">SFTPError</a>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.SFTP-class.html" class="summary-name">SFTP</a><br />
- an alias for <a href="paramiko.SFTPClient-class.html"
- class="link">SFTPClient</a> for backwards compatability
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.SFTPClient-class.html" class="summary-name">SFTPClient</a><br />
- SFTP client object.
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.SFTPServer-class.html" class="summary-name">SFTPServer</a><br />
- Server-side SFTP subsystem support.
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.SFTPAttributes-class.html" class="summary-name">SFTPAttributes</a><br />
- Representation of the attributes of a file (or proxied file) for
- SFTP in client or server mode.
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.SFTPHandle-class.html" class="summary-name">SFTPHandle</a><br />
- Abstract object representing a handle to an open file (or folder)
- in an SFTP server implementation.
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.SFTPServerInterface-class.html" class="summary-name">SFTPServerInterface</a><br />
- This class defines an interface for controlling the behavior of
- paramiko when using the <a href="paramiko.SFTPServer-class.html"
- class="link">SFTPServer</a> subsystem to provide an SFTP server.
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.SFTPFile-class.html" class="summary-name">SFTPFile</a><br />
- Proxy object for a file on the remote server, in client mode SFTP.
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.Message-class.html" class="summary-name">Message</a><br />
- An SSH2 <i>Message</i> is a stream of bytes that encodes some
- combination of strings, integers, bools, and infinite-precision
- integers (known in python as <i>long</i>s).
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.BufferedFile-class.html" class="summary-name">BufferedFile</a><br />
- Reusable base class to implement python-style file buffering around
- a simpler stream.
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.Agent-class.html" class="summary-name">Agent</a><br />
- Client interface for using private keys from an SSH agent running
- on the local machine.
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.AgentKey-class.html" class="summary-name">AgentKey</a><br />
- Private key held in a local SSH agent.
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.PKey-class.html" class="summary-name">PKey</a><br />
- Base class for public keys.
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.HostKeys-class.html" class="summary-name">HostKeys</a><br />
- Representation of an openssh-style &quot;known hosts&quot; file.
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.SSHConfig-class.html" class="summary-name">SSHConfig</a><br />
- Representation of config information as stored in the format used
- by OpenSSH.
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th bgcolor="#70b0f0" class="navbar-select"
- >&nbsp;&nbsp;&nbsp;Home&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:02 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko-pysrc.html b/docs/paramiko-pysrc.html
deleted file mode 100644
index 607fd59..0000000
--- a/docs/paramiko-pysrc.html
+++ /dev/null
@@ -1,465 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th bgcolor="#70b0f0" class="navbar-select"
- >&nbsp;&nbsp;&nbsp;Home&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- Package&nbsp;paramiko
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko-module.html">Package paramiko</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2003-2011 Robey Pointer &lt;robeypointer@gmail.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring">I{Paramiko} (a combination of the esperanto words for "paranoid" and "friend")</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">is a module for python 2.3 or greater that implements the SSH2 protocol for</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-docstring">secure (encrypted and authenticated) connections to remote machines. Unlike</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-docstring">SSL (aka TLS), the SSH2 protocol does not require hierarchical certificates</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-docstring">signed by a powerful central authority. You may know SSH2 as the protocol that</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-docstring">replaced C{telnet} and C{rsh} for secure access to remote shells, but the</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-docstring">protocol also includes the ability to open arbitrary channels to remote</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"><tt class="py-docstring">services across an encrypted tunnel. (This is how C{sftp} works, for example.)</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"><tt class="py-docstring">The high-level client API starts with creation of an L{SSHClient} object.</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"><tt class="py-docstring">For more direct control, pass a socket (or socket-like object) to a</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"><tt class="py-docstring">L{Transport}, and use L{start_server &lt;Transport.start_server&gt;} or</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"><tt class="py-docstring">L{start_client &lt;Transport.start_client&gt;} to negoatite</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"><tt class="py-docstring">with the remote host as either a server or client. As a client, you are</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"><tt class="py-docstring">responsible for authenticating using a password or private key, and checking</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"><tt class="py-docstring">the server's host key. I{(Key signature and verification is done by paramiko,</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"><tt class="py-docstring">but you will need to provide private keys and check that the content of a</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"><tt class="py-docstring">public key matches what you expected to see.)} As a server, you are</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"><tt class="py-docstring">responsible for deciding which users, passwords, and keys to allow, and what</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"><tt class="py-docstring">kind of channels to allow.</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"><tt class="py-docstring">Once you have finished, either side may request flow-controlled L{Channel}s to</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"><tt class="py-docstring">the other side, which are python objects that act like sockets, but send and</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"><tt class="py-docstring">receive data over the encrypted session.</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"><tt class="py-docstring">Paramiko is written entirely in python (no C or platform-dependent code) and is</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"><tt class="py-docstring">released under the GNU Lesser General Public License (LGPL).</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"><tt class="py-docstring">Website: U{http://www.lag.net/paramiko/}</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"><tt class="py-docstring">@version: 1.7.7.1 (George)</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"><tt class="py-docstring">@author: Robey Pointer</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"><tt class="py-docstring">@contact: robeypointer@gmail.com</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"><tt class="py-docstring">@license: GNU Lesser General Public License (LGPL)</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"><tt class="py-keyword">if</tt> <tt class="py-name">sys</tt><tt class="py-op">.</tt><tt class="py-name">version_info</tt> <tt class="py-op">&lt;</tt> <tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">RuntimeError</tt><tt class="py-op">(</tt><tt class="py-string">'You need python 2.2 for this module.'</tt><tt class="py-op">)</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"><tt id="link-0" class="py-name" targets="Variable paramiko.__author__=paramiko-module.html#__author__"><a title="paramiko.__author__" class="py-name" href="#" onclick="return doclink('link-0', '__author__', 'link-0');">__author__</a></tt> <tt class="py-op">=</tt> <tt class="py-string">"Robey Pointer &lt;robeypointer@gmail.com&gt;"</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"><tt class="py-name">__date__</tt> <tt class="py-op">=</tt> <tt class="py-string">"21 May 2011"</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"><tt id="link-1" class="py-name" targets="Variable paramiko.__version__=paramiko-module.html#__version__"><a title="paramiko.__version__" class="py-name" href="#" onclick="return doclink('link-1', '__version__', 'link-1');">__version__</a></tt> <tt class="py-op">=</tt> <tt class="py-string">"1.7.7.1 (George)"</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"><tt id="link-2" class="py-name" targets="Variable paramiko.__version_info__=paramiko-module.html#__version_info__"><a title="paramiko.__version_info__" class="py-name" href="#" onclick="return doclink('link-2', '__version_info__', 'link-2');">__version_info__</a></tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-number">7</tt><tt class="py-op">,</tt> <tt class="py-number">7</tt><tt class="py-op">,</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"><tt id="link-3" class="py-name" targets="Variable paramiko.__license__=paramiko-module.html#__license__"><a title="paramiko.__license__" class="py-name" href="#" onclick="return doclink('link-3', '__license__', 'link-3');">__license__</a></tt> <tt class="py-op">=</tt> <tt class="py-string">"GNU Lesser General Public License (LGPL)"</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-4" class="py-name" targets="Module paramiko.transport=paramiko.transport-module.html"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-4', 'transport', 'link-4');">transport</a></tt> <tt class="py-keyword">import</tt> <tt id="link-5" class="py-name" targets="Class paramiko.SecurityOptions=paramiko.SecurityOptions-class.html"><a title="paramiko.SecurityOptions" class="py-name" href="#" onclick="return doclink('link-5', 'SecurityOptions', 'link-5');">SecurityOptions</a></tt><tt class="py-op">,</tt> <tt id="link-6" class="py-name" targets="Class paramiko.Transport=paramiko.Transport-class.html"><a title="paramiko.Transport" class="py-name" href="#" onclick="return doclink('link-6', 'Transport', 'link-6');">Transport</a></tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-7" class="py-name" targets="Module paramiko.client=paramiko.client-module.html"><a title="paramiko.client" class="py-name" href="#" onclick="return doclink('link-7', 'client', 'link-7');">client</a></tt> <tt class="py-keyword">import</tt> <tt id="link-8" class="py-name" targets="Class paramiko.SSHClient=paramiko.SSHClient-class.html"><a title="paramiko.SSHClient" class="py-name" href="#" onclick="return doclink('link-8', 'SSHClient', 'link-8');">SSHClient</a></tt><tt class="py-op">,</tt> <tt id="link-9" class="py-name" targets="Class paramiko.MissingHostKeyPolicy=paramiko.MissingHostKeyPolicy-class.html"><a title="paramiko.MissingHostKeyPolicy" class="py-name" href="#" onclick="return doclink('link-9', 'MissingHostKeyPolicy', 'link-9');">MissingHostKeyPolicy</a></tt><tt class="py-op">,</tt> <tt id="link-10" class="py-name" targets="Class paramiko.AutoAddPolicy=paramiko.AutoAddPolicy-class.html"><a title="paramiko.AutoAddPolicy" class="py-name" href="#" onclick="return doclink('link-10', 'AutoAddPolicy', 'link-10');">AutoAddPolicy</a></tt><tt class="py-op">,</tt> <tt id="link-11" class="py-name" targets="Class paramiko.RejectPolicy=paramiko.RejectPolicy-class.html"><a title="paramiko.RejectPolicy" class="py-name" href="#" onclick="return doclink('link-11', 'RejectPolicy', 'link-11');">RejectPolicy</a></tt><tt class="py-op">,</tt> <tt id="link-12" class="py-name" targets="Class paramiko.WarningPolicy=paramiko.WarningPolicy-class.html"><a title="paramiko.WarningPolicy" class="py-name" href="#" onclick="return doclink('link-12', 'WarningPolicy', 'link-12');">WarningPolicy</a></tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-13" class="py-name" targets="Module paramiko.auth_handler=paramiko.auth_handler-module.html"><a title="paramiko.auth_handler" class="py-name" href="#" onclick="return doclink('link-13', 'auth_handler', 'link-13');">auth_handler</a></tt> <tt class="py-keyword">import</tt> <tt class="py-name">AuthHandler</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-14" class="py-name" targets="Module paramiko.channel=paramiko.channel-module.html"><a title="paramiko.channel" class="py-name" href="#" onclick="return doclink('link-14', 'channel', 'link-14');">channel</a></tt> <tt class="py-keyword">import</tt> <tt id="link-15" class="py-name" targets="Class paramiko.Channel=paramiko.Channel-class.html"><a title="paramiko.Channel" class="py-name" href="#" onclick="return doclink('link-15', 'Channel', 'link-15');">Channel</a></tt><tt class="py-op">,</tt> <tt class="py-name">ChannelFile</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-16" class="py-name" targets="Module paramiko.ssh_exception=paramiko.ssh_exception-module.html"><a title="paramiko.ssh_exception" class="py-name" href="#" onclick="return doclink('link-16', 'ssh_exception', 'link-16');">ssh_exception</a></tt> <tt class="py-keyword">import</tt> <tt id="link-17" class="py-name" targets="Class paramiko.SSHException=paramiko.SSHException-class.html"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-17', 'SSHException', 'link-17');">SSHException</a></tt><tt class="py-op">,</tt> <tt id="link-18" class="py-name" targets="Class paramiko.PasswordRequiredException=paramiko.PasswordRequiredException-class.html"><a title="paramiko.PasswordRequiredException" class="py-name" href="#" onclick="return doclink('link-18', 'PasswordRequiredException', 'link-18');">PasswordRequiredException</a></tt><tt class="py-op">,</tt> \ </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt id="link-19" class="py-name" targets="Class paramiko.BadAuthenticationType=paramiko.BadAuthenticationType-class.html"><a title="paramiko.BadAuthenticationType" class="py-name" href="#" onclick="return doclink('link-19', 'BadAuthenticationType', 'link-19');">BadAuthenticationType</a></tt><tt class="py-op">,</tt> <tt id="link-20" class="py-name" targets="Class paramiko.ChannelException=paramiko.ChannelException-class.html"><a title="paramiko.ChannelException" class="py-name" href="#" onclick="return doclink('link-20', 'ChannelException', 'link-20');">ChannelException</a></tt><tt class="py-op">,</tt> <tt id="link-21" class="py-name" targets="Class paramiko.BadHostKeyException=paramiko.BadHostKeyException-class.html"><a title="paramiko.BadHostKeyException" class="py-name" href="#" onclick="return doclink('link-21', 'BadHostKeyException', 'link-21');">BadHostKeyException</a></tt><tt class="py-op">,</tt> \ </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt id="link-22" class="py-name" targets="Class paramiko.AuthenticationException=paramiko.AuthenticationException-class.html"><a title="paramiko.AuthenticationException" class="py-name" href="#" onclick="return doclink('link-22', 'AuthenticationException', 'link-22');">AuthenticationException</a></tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-23" class="py-name" targets="Module paramiko.server=paramiko.server-module.html"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-23', 'server', 'link-23');">server</a></tt> <tt class="py-keyword">import</tt> <tt id="link-24" class="py-name" targets="Class paramiko.ServerInterface=paramiko.ServerInterface-class.html"><a title="paramiko.ServerInterface" class="py-name" href="#" onclick="return doclink('link-24', 'ServerInterface', 'link-24');">ServerInterface</a></tt><tt class="py-op">,</tt> <tt id="link-25" class="py-name" targets="Class paramiko.SubsystemHandler=paramiko.SubsystemHandler-class.html"><a title="paramiko.SubsystemHandler" class="py-name" href="#" onclick="return doclink('link-25', 'SubsystemHandler', 'link-25');">SubsystemHandler</a></tt><tt class="py-op">,</tt> <tt class="py-name">InteractiveQuery</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-26" class="py-name" targets="Module paramiko.rsakey=paramiko.rsakey-module.html"><a title="paramiko.rsakey" class="py-name" href="#" onclick="return doclink('link-26', 'rsakey', 'link-26');">rsakey</a></tt> <tt class="py-keyword">import</tt> <tt id="link-27" class="py-name" targets="Class paramiko.RSAKey=paramiko.RSAKey-class.html"><a title="paramiko.RSAKey" class="py-name" href="#" onclick="return doclink('link-27', 'RSAKey', 'link-27');">RSAKey</a></tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-28" class="py-name" targets="Module paramiko.dsskey=paramiko.dsskey-module.html"><a title="paramiko.dsskey" class="py-name" href="#" onclick="return doclink('link-28', 'dsskey', 'link-28');">dsskey</a></tt> <tt class="py-keyword">import</tt> <tt id="link-29" class="py-name" targets="Class paramiko.DSSKey=paramiko.DSSKey-class.html"><a title="paramiko.DSSKey" class="py-name" href="#" onclick="return doclink('link-29', 'DSSKey', 'link-29');">DSSKey</a></tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-30" class="py-name" targets="Module paramiko.sftp=paramiko.sftp-module.html"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-30', 'sftp', 'link-30');">sftp</a></tt> <tt class="py-keyword">import</tt> <tt id="link-31" class="py-name" targets="Class paramiko.SFTPError=paramiko.SFTPError-class.html"><a title="paramiko.SFTPError" class="py-name" href="#" onclick="return doclink('link-31', 'SFTPError', 'link-31');">SFTPError</a></tt><tt class="py-op">,</tt> <tt class="py-name">BaseSFTP</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-32" class="py-name" targets="Module paramiko.sftp_client=paramiko.sftp_client-module.html"><a title="paramiko.sftp_client" class="py-name" href="#" onclick="return doclink('link-32', 'sftp_client', 'link-32');">sftp_client</a></tt> <tt class="py-keyword">import</tt> <tt id="link-33" class="py-name" targets="Class paramiko.SFTP=paramiko.SFTP-class.html"><a title="paramiko.SFTP" class="py-name" href="#" onclick="return doclink('link-33', 'SFTP', 'link-33');">SFTP</a></tt><tt class="py-op">,</tt> <tt id="link-34" class="py-name" targets="Class paramiko.SFTPClient=paramiko.SFTPClient-class.html"><a title="paramiko.SFTPClient" class="py-name" href="#" onclick="return doclink('link-34', 'SFTPClient', 'link-34');">SFTPClient</a></tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-35" class="py-name" targets="Module paramiko.sftp_server=paramiko.sftp_server-module.html"><a title="paramiko.sftp_server" class="py-name" href="#" onclick="return doclink('link-35', 'sftp_server', 'link-35');">sftp_server</a></tt> <tt class="py-keyword">import</tt> <tt id="link-36" class="py-name" targets="Class paramiko.SFTPServer=paramiko.SFTPServer-class.html"><a title="paramiko.SFTPServer" class="py-name" href="#" onclick="return doclink('link-36', 'SFTPServer', 'link-36');">SFTPServer</a></tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-37" class="py-name" targets="Module paramiko.sftp_attr=paramiko.sftp_attr-module.html"><a title="paramiko.sftp_attr" class="py-name" href="#" onclick="return doclink('link-37', 'sftp_attr', 'link-37');">sftp_attr</a></tt> <tt class="py-keyword">import</tt> <tt id="link-38" class="py-name" targets="Class paramiko.SFTPAttributes=paramiko.SFTPAttributes-class.html"><a title="paramiko.SFTPAttributes" class="py-name" href="#" onclick="return doclink('link-38', 'SFTPAttributes', 'link-38');">SFTPAttributes</a></tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-39" class="py-name" targets="Module paramiko.sftp_handle=paramiko.sftp_handle-module.html"><a title="paramiko.sftp_handle" class="py-name" href="#" onclick="return doclink('link-39', 'sftp_handle', 'link-39');">sftp_handle</a></tt> <tt class="py-keyword">import</tt> <tt id="link-40" class="py-name" targets="Class paramiko.SFTPHandle=paramiko.SFTPHandle-class.html"><a title="paramiko.SFTPHandle" class="py-name" href="#" onclick="return doclink('link-40', 'SFTPHandle', 'link-40');">SFTPHandle</a></tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-41" class="py-name" targets="Module paramiko.sftp_si=paramiko.sftp_si-module.html"><a title="paramiko.sftp_si" class="py-name" href="#" onclick="return doclink('link-41', 'sftp_si', 'link-41');">sftp_si</a></tt> <tt class="py-keyword">import</tt> <tt id="link-42" class="py-name" targets="Class paramiko.SFTPServerInterface=paramiko.SFTPServerInterface-class.html"><a title="paramiko.SFTPServerInterface" class="py-name" href="#" onclick="return doclink('link-42', 'SFTPServerInterface', 'link-42');">SFTPServerInterface</a></tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-43" class="py-name" targets="Module paramiko.sftp_file=paramiko.sftp_file-module.html"><a title="paramiko.sftp_file" class="py-name" href="#" onclick="return doclink('link-43', 'sftp_file', 'link-43');">sftp_file</a></tt> <tt class="py-keyword">import</tt> <tt id="link-44" class="py-name" targets="Class paramiko.SFTPFile=paramiko.SFTPFile-class.html"><a title="paramiko.SFTPFile" class="py-name" href="#" onclick="return doclink('link-44', 'SFTPFile', 'link-44');">SFTPFile</a></tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-45" class="py-name" targets="Module paramiko.message=paramiko.message-module.html"><a title="paramiko.message" class="py-name" href="#" onclick="return doclink('link-45', 'message', 'link-45');">message</a></tt> <tt class="py-keyword">import</tt> <tt id="link-46" class="py-name" targets="Class paramiko.Message=paramiko.Message-class.html"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-46', 'Message', 'link-46');">Message</a></tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-47" class="py-name" targets="Module paramiko.packet=paramiko.packet-module.html"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-47', 'packet', 'link-47');">packet</a></tt> <tt class="py-keyword">import</tt> <tt class="py-name">Packetizer</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-48" class="py-name" targets="Method paramiko.SFTPClient.file()=paramiko.SFTPClient-class.html#file,Module paramiko.file=paramiko.file-module.html"><a title="paramiko.SFTPClient.file
-paramiko.file" class="py-name" href="#" onclick="return doclink('link-48', 'file', 'link-48');">file</a></tt> <tt class="py-keyword">import</tt> <tt id="link-49" class="py-name" targets="Class paramiko.BufferedFile=paramiko.BufferedFile-class.html"><a title="paramiko.BufferedFile" class="py-name" href="#" onclick="return doclink('link-49', 'BufferedFile', 'link-49');">BufferedFile</a></tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-50" class="py-name" targets="Module paramiko.agent=paramiko.agent-module.html"><a title="paramiko.agent" class="py-name" href="#" onclick="return doclink('link-50', 'agent', 'link-50');">agent</a></tt> <tt class="py-keyword">import</tt> <tt id="link-51" class="py-name" targets="Class paramiko.Agent=paramiko.Agent-class.html"><a title="paramiko.Agent" class="py-name" href="#" onclick="return doclink('link-51', 'Agent', 'link-51');">Agent</a></tt><tt class="py-op">,</tt> <tt id="link-52" class="py-name" targets="Class paramiko.AgentKey=paramiko.AgentKey-class.html"><a title="paramiko.AgentKey" class="py-name" href="#" onclick="return doclink('link-52', 'AgentKey', 'link-52');">AgentKey</a></tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-53" class="py-name" targets="Module paramiko.pkey=paramiko.pkey-module.html"><a title="paramiko.pkey" class="py-name" href="#" onclick="return doclink('link-53', 'pkey', 'link-53');">pkey</a></tt> <tt class="py-keyword">import</tt> <tt id="link-54" class="py-name" targets="Class paramiko.PKey=paramiko.PKey-class.html"><a title="paramiko.PKey" class="py-name" href="#" onclick="return doclink('link-54', 'PKey', 'link-54');">PKey</a></tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-55" class="py-name" targets="Module paramiko.hostkeys=paramiko.hostkeys-module.html"><a title="paramiko.hostkeys" class="py-name" href="#" onclick="return doclink('link-55', 'hostkeys', 'link-55');">hostkeys</a></tt> <tt class="py-keyword">import</tt> <tt id="link-56" class="py-name" targets="Class paramiko.HostKeys=paramiko.HostKeys-class.html"><a title="paramiko.HostKeys" class="py-name" href="#" onclick="return doclink('link-56', 'HostKeys', 'link-56');">HostKeys</a></tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-57" class="py-name" targets="Module paramiko.config=paramiko.config-module.html"><a title="paramiko.config" class="py-name" href="#" onclick="return doclink('link-57', 'config', 'link-57');">config</a></tt> <tt class="py-keyword">import</tt> <tt id="link-58" class="py-name" targets="Class paramiko.SSHConfig=paramiko.SSHConfig-class.html"><a title="paramiko.SSHConfig" class="py-name" href="#" onclick="return doclink('link-58', 'SSHConfig', 'link-58');">SSHConfig</a></tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"><tt class="py-comment"># fix module names for epydoc</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"><tt class="py-keyword">for</tt> <tt class="py-name">c</tt> <tt class="py-keyword">in</tt> <tt class="py-name">locals</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-59" class="py-name" targets="Method paramiko.HostKeys.values()=paramiko.HostKeys-class.html#values,Method paramiko.transport.ChannelMap.values()=paramiko.transport.ChannelMap-class.html#values"><a title="paramiko.HostKeys.values
-paramiko.transport.ChannelMap.values" class="py-name" href="#" onclick="return doclink('link-59', 'values', 'link-59');">values</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">issubclass</tt><tt class="py-op">(</tt><tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">c</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">type</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">c</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">__name__</tt> <tt class="py-op">==</tt> <tt class="py-string">'classobj'</tt><tt class="py-op">:</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-comment"># classobj for exceptions :/</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-name">c</tt><tt class="py-op">.</tt><tt class="py-name">__module__</tt> <tt class="py-op">=</tt> <tt class="py-name">__name__</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"><tt class="py-keyword">del</tt> <tt class="py-name">c</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-60" class="py-name" targets="Module paramiko.common=paramiko.common-module.html"><a title="paramiko.common" class="py-name" href="#" onclick="return doclink('link-60', 'common', 'link-60');">common</a></tt> <tt class="py-keyword">import</tt> <tt id="link-61" class="py-name" targets="Variable paramiko.auth_handler.AUTH_SUCCESSFUL=paramiko.auth_handler-module.html#AUTH_SUCCESSFUL,Variable paramiko.channel.AUTH_SUCCESSFUL=paramiko.channel-module.html#AUTH_SUCCESSFUL,Variable paramiko.client.AUTH_SUCCESSFUL=paramiko.client-module.html#AUTH_SUCCESSFUL,Variable paramiko.common.AUTH_SUCCESSFUL=paramiko.common-module.html#AUTH_SUCCESSFUL,Variable paramiko.dsskey.AUTH_SUCCESSFUL=paramiko.dsskey-module.html#AUTH_SUCCESSFUL,Variable paramiko.hostkeys.AUTH_SUCCESSFUL=paramiko.hostkeys-module.html#AUTH_SUCCESSFUL,Variable paramiko.kex_gex.AUTH_SUCCESSFUL=paramiko.kex_gex-module.html#AUTH_SUCCESSFUL,Variable paramiko.kex_group1.AUTH_SUCCESSFUL=paramiko.kex_group1-module.html#AUTH_SUCCESSFUL,Variable paramiko.packet.AUTH_SUCCESSFUL=paramiko.packet-module.html#AUTH_SUCCESSFUL,Variable paramiko.pkey.AUTH_SUCCESSFUL=paramiko.pkey-module.html#AUTH_SUCCESSFUL,Variable paramiko.rsakey.AUTH_SUCCESSFUL=paramiko.rsakey-module.html#AUTH_SUCCESSFUL,Variable paramiko.server.AUTH_SUCCESSFUL=paramiko.server-module.html#AUTH_SUCCESSFUL,Variable paramiko.sftp.AUTH_SUCCESSFUL=paramiko.sftp-module.html#AUTH_SUCCESSFUL,Variable paramiko.sftp_attr.AUTH_SUCCESSFUL=paramiko.sftp_attr-module.html#AUTH_SUCCESSFUL,Variable paramiko.sftp_client.AUTH_SUCCESSFUL=paramiko.sftp_client-module.html#AUTH_SUCCESSFUL,Variable paramiko.sftp_file.AUTH_SUCCESSFUL=paramiko.sftp_file-module.html#AUTH_SUCCESSFUL,Variable paramiko.sftp_handle.AUTH_SUCCESSFUL=paramiko.sftp_handle-module.html#AUTH_SUCCESSFUL,Variable paramiko.sftp_server.AUTH_SUCCESSFUL=paramiko.sftp_server-module.html#AUTH_SUCCESSFUL,Variable paramiko.sftp_si.AUTH_SUCCESSFUL=paramiko.sftp_si-module.html#AUTH_SUCCESSFUL,Variable paramiko.transport.AUTH_SUCCESSFUL=paramiko.transport-module.html#AUTH_SUCCESSFUL,Variable paramiko.util.AUTH_SUCCESSFUL=paramiko.util-module.html#AUTH_SUCCESSFUL"><a title="paramiko.auth_handler.AUTH_SUCCESSFUL
-paramiko.channel.AUTH_SUCCESSFUL
-paramiko.client.AUTH_SUCCESSFUL
-paramiko.common.AUTH_SUCCESSFUL
-paramiko.dsskey.AUTH_SUCCESSFUL
-paramiko.hostkeys.AUTH_SUCCESSFUL
-paramiko.kex_gex.AUTH_SUCCESSFUL
-paramiko.kex_group1.AUTH_SUCCESSFUL
-paramiko.packet.AUTH_SUCCESSFUL
-paramiko.pkey.AUTH_SUCCESSFUL
-paramiko.rsakey.AUTH_SUCCESSFUL
-paramiko.server.AUTH_SUCCESSFUL
-paramiko.sftp.AUTH_SUCCESSFUL
-paramiko.sftp_attr.AUTH_SUCCESSFUL
-paramiko.sftp_client.AUTH_SUCCESSFUL
-paramiko.sftp_file.AUTH_SUCCESSFUL
-paramiko.sftp_handle.AUTH_SUCCESSFUL
-paramiko.sftp_server.AUTH_SUCCESSFUL
-paramiko.sftp_si.AUTH_SUCCESSFUL
-paramiko.transport.AUTH_SUCCESSFUL
-paramiko.util.AUTH_SUCCESSFUL" class="py-name" href="#" onclick="return doclink('link-61', 'AUTH_SUCCESSFUL', 'link-61');">AUTH_SUCCESSFUL</a></tt><tt class="py-op">,</tt> <tt id="link-62" class="py-name" targets="Variable paramiko.auth_handler.AUTH_PARTIALLY_SUCCESSFUL=paramiko.auth_handler-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.channel.AUTH_PARTIALLY_SUCCESSFUL=paramiko.channel-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.client.AUTH_PARTIALLY_SUCCESSFUL=paramiko.client-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.common.AUTH_PARTIALLY_SUCCESSFUL=paramiko.common-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.dsskey.AUTH_PARTIALLY_SUCCESSFUL=paramiko.dsskey-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.hostkeys.AUTH_PARTIALLY_SUCCESSFUL=paramiko.hostkeys-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.kex_gex.AUTH_PARTIALLY_SUCCESSFUL=paramiko.kex_gex-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.kex_group1.AUTH_PARTIALLY_SUCCESSFUL=paramiko.kex_group1-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.packet.AUTH_PARTIALLY_SUCCESSFUL=paramiko.packet-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.pkey.AUTH_PARTIALLY_SUCCESSFUL=paramiko.pkey-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.rsakey.AUTH_PARTIALLY_SUCCESSFUL=paramiko.rsakey-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.server.AUTH_PARTIALLY_SUCCESSFUL=paramiko.server-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.sftp.AUTH_PARTIALLY_SUCCESSFUL=paramiko.sftp-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.sftp_attr.AUTH_PARTIALLY_SUCCESSFUL=paramiko.sftp_attr-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.sftp_client.AUTH_PARTIALLY_SUCCESSFUL=paramiko.sftp_client-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.sftp_file.AUTH_PARTIALLY_SUCCESSFUL=paramiko.sftp_file-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.sftp_handle.AUTH_PARTIALLY_SUCCESSFUL=paramiko.sftp_handle-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.sftp_server.AUTH_PARTIALLY_SUCCESSFUL=paramiko.sftp_server-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.sftp_si.AUTH_PARTIALLY_SUCCESSFUL=paramiko.sftp_si-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.transport.AUTH_PARTIALLY_SUCCESSFUL=paramiko.transport-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.util.AUTH_PARTIALLY_SUCCESSFUL=paramiko.util-module.html#AUTH_PARTIALLY_SUCCESSFUL"><a title="paramiko.auth_handler.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.channel.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.client.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.common.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.dsskey.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.hostkeys.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.kex_gex.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.kex_group1.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.packet.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.pkey.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.rsakey.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.server.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.sftp.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.sftp_attr.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.sftp_client.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.sftp_file.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.sftp_handle.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.sftp_server.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.sftp_si.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.transport.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.util.AUTH_PARTIALLY_SUCCESSFUL" class="py-name" href="#" onclick="return doclink('link-62', 'AUTH_PARTIALLY_SUCCESSFUL', 'link-62');">AUTH_PARTIALLY_SUCCESSFUL</a></tt><tt class="py-op">,</tt> <tt id="link-63" class="py-name" targets="Variable paramiko.auth_handler.AUTH_FAILED=paramiko.auth_handler-module.html#AUTH_FAILED,Variable paramiko.channel.AUTH_FAILED=paramiko.channel-module.html#AUTH_FAILED,Variable paramiko.client.AUTH_FAILED=paramiko.client-module.html#AUTH_FAILED,Variable paramiko.common.AUTH_FAILED=paramiko.common-module.html#AUTH_FAILED,Variable paramiko.dsskey.AUTH_FAILED=paramiko.dsskey-module.html#AUTH_FAILED,Variable paramiko.hostkeys.AUTH_FAILED=paramiko.hostkeys-module.html#AUTH_FAILED,Variable paramiko.kex_gex.AUTH_FAILED=paramiko.kex_gex-module.html#AUTH_FAILED,Variable paramiko.kex_group1.AUTH_FAILED=paramiko.kex_group1-module.html#AUTH_FAILED,Variable paramiko.packet.AUTH_FAILED=paramiko.packet-module.html#AUTH_FAILED,Variable paramiko.pkey.AUTH_FAILED=paramiko.pkey-module.html#AUTH_FAILED,Variable paramiko.rsakey.AUTH_FAILED=paramiko.rsakey-module.html#AUTH_FAILED,Variable paramiko.server.AUTH_FAILED=paramiko.server-module.html#AUTH_FAILED,Variable paramiko.sftp.AUTH_FAILED=paramiko.sftp-module.html#AUTH_FAILED,Variable paramiko.sftp_attr.AUTH_FAILED=paramiko.sftp_attr-module.html#AUTH_FAILED,Variable paramiko.sftp_client.AUTH_FAILED=paramiko.sftp_client-module.html#AUTH_FAILED,Variable paramiko.sftp_file.AUTH_FAILED=paramiko.sftp_file-module.html#AUTH_FAILED,Variable paramiko.sftp_handle.AUTH_FAILED=paramiko.sftp_handle-module.html#AUTH_FAILED,Variable paramiko.sftp_server.AUTH_FAILED=paramiko.sftp_server-module.html#AUTH_FAILED,Variable paramiko.sftp_si.AUTH_FAILED=paramiko.sftp_si-module.html#AUTH_FAILED,Variable paramiko.transport.AUTH_FAILED=paramiko.transport-module.html#AUTH_FAILED,Variable paramiko.util.AUTH_FAILED=paramiko.util-module.html#AUTH_FAILED"><a title="paramiko.auth_handler.AUTH_FAILED
-paramiko.channel.AUTH_FAILED
-paramiko.client.AUTH_FAILED
-paramiko.common.AUTH_FAILED
-paramiko.dsskey.AUTH_FAILED
-paramiko.hostkeys.AUTH_FAILED
-paramiko.kex_gex.AUTH_FAILED
-paramiko.kex_group1.AUTH_FAILED
-paramiko.packet.AUTH_FAILED
-paramiko.pkey.AUTH_FAILED
-paramiko.rsakey.AUTH_FAILED
-paramiko.server.AUTH_FAILED
-paramiko.sftp.AUTH_FAILED
-paramiko.sftp_attr.AUTH_FAILED
-paramiko.sftp_client.AUTH_FAILED
-paramiko.sftp_file.AUTH_FAILED
-paramiko.sftp_handle.AUTH_FAILED
-paramiko.sftp_server.AUTH_FAILED
-paramiko.sftp_si.AUTH_FAILED
-paramiko.transport.AUTH_FAILED
-paramiko.util.AUTH_FAILED" class="py-name" href="#" onclick="return doclink('link-63', 'AUTH_FAILED', 'link-63');">AUTH_FAILED</a></tt><tt class="py-op">,</tt> \ </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt id="link-64" class="py-name" targets="Variable paramiko.auth_handler.OPEN_SUCCEEDED=paramiko.auth_handler-module.html#OPEN_SUCCEEDED,Variable paramiko.channel.OPEN_SUCCEEDED=paramiko.channel-module.html#OPEN_SUCCEEDED,Variable paramiko.client.OPEN_SUCCEEDED=paramiko.client-module.html#OPEN_SUCCEEDED,Variable paramiko.common.OPEN_SUCCEEDED=paramiko.common-module.html#OPEN_SUCCEEDED,Variable paramiko.dsskey.OPEN_SUCCEEDED=paramiko.dsskey-module.html#OPEN_SUCCEEDED,Variable paramiko.hostkeys.OPEN_SUCCEEDED=paramiko.hostkeys-module.html#OPEN_SUCCEEDED,Variable paramiko.kex_gex.OPEN_SUCCEEDED=paramiko.kex_gex-module.html#OPEN_SUCCEEDED,Variable paramiko.kex_group1.OPEN_SUCCEEDED=paramiko.kex_group1-module.html#OPEN_SUCCEEDED,Variable paramiko.packet.OPEN_SUCCEEDED=paramiko.packet-module.html#OPEN_SUCCEEDED,Variable paramiko.pkey.OPEN_SUCCEEDED=paramiko.pkey-module.html#OPEN_SUCCEEDED,Variable paramiko.rsakey.OPEN_SUCCEEDED=paramiko.rsakey-module.html#OPEN_SUCCEEDED,Variable paramiko.server.OPEN_SUCCEEDED=paramiko.server-module.html#OPEN_SUCCEEDED,Variable paramiko.sftp.OPEN_SUCCEEDED=paramiko.sftp-module.html#OPEN_SUCCEEDED,Variable paramiko.sftp_attr.OPEN_SUCCEEDED=paramiko.sftp_attr-module.html#OPEN_SUCCEEDED,Variable paramiko.sftp_client.OPEN_SUCCEEDED=paramiko.sftp_client-module.html#OPEN_SUCCEEDED,Variable paramiko.sftp_file.OPEN_SUCCEEDED=paramiko.sftp_file-module.html#OPEN_SUCCEEDED,Variable paramiko.sftp_handle.OPEN_SUCCEEDED=paramiko.sftp_handle-module.html#OPEN_SUCCEEDED,Variable paramiko.sftp_server.OPEN_SUCCEEDED=paramiko.sftp_server-module.html#OPEN_SUCCEEDED,Variable paramiko.sftp_si.OPEN_SUCCEEDED=paramiko.sftp_si-module.html#OPEN_SUCCEEDED,Variable paramiko.transport.OPEN_SUCCEEDED=paramiko.transport-module.html#OPEN_SUCCEEDED,Variable paramiko.util.OPEN_SUCCEEDED=paramiko.util-module.html#OPEN_SUCCEEDED"><a title="paramiko.auth_handler.OPEN_SUCCEEDED
-paramiko.channel.OPEN_SUCCEEDED
-paramiko.client.OPEN_SUCCEEDED
-paramiko.common.OPEN_SUCCEEDED
-paramiko.dsskey.OPEN_SUCCEEDED
-paramiko.hostkeys.OPEN_SUCCEEDED
-paramiko.kex_gex.OPEN_SUCCEEDED
-paramiko.kex_group1.OPEN_SUCCEEDED
-paramiko.packet.OPEN_SUCCEEDED
-paramiko.pkey.OPEN_SUCCEEDED
-paramiko.rsakey.OPEN_SUCCEEDED
-paramiko.server.OPEN_SUCCEEDED
-paramiko.sftp.OPEN_SUCCEEDED
-paramiko.sftp_attr.OPEN_SUCCEEDED
-paramiko.sftp_client.OPEN_SUCCEEDED
-paramiko.sftp_file.OPEN_SUCCEEDED
-paramiko.sftp_handle.OPEN_SUCCEEDED
-paramiko.sftp_server.OPEN_SUCCEEDED
-paramiko.sftp_si.OPEN_SUCCEEDED
-paramiko.transport.OPEN_SUCCEEDED
-paramiko.util.OPEN_SUCCEEDED" class="py-name" href="#" onclick="return doclink('link-64', 'OPEN_SUCCEEDED', 'link-64');">OPEN_SUCCEEDED</a></tt><tt class="py-op">,</tt> <tt id="link-65" class="py-name" targets="Variable paramiko.auth_handler.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.auth_handler-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.channel.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.channel-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.client.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.client-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.common.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.common-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.dsskey.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.dsskey-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.hostkeys.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.hostkeys-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.kex_gex.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.kex_gex-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.kex_group1.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.kex_group1-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.packet.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.packet-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.pkey.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.pkey-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.rsakey.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.rsakey-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.server.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.server-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.sftp.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.sftp-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.sftp_attr.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.sftp_attr-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.sftp_client.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.sftp_client-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.sftp_file.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.sftp_file-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.sftp_handle.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.sftp_handle-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.sftp_server.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.sftp_server-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.sftp_si.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.sftp_si-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.transport.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.transport-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.util.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.util-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED"><a title="paramiko.auth_handler.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.channel.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.client.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.common.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.dsskey.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.hostkeys.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.kex_gex.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.kex_group1.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.packet.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.pkey.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.rsakey.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.server.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_attr.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_client.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_file.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_handle.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_server.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_si.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.transport.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.util.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED" class="py-name" href="#" onclick="return doclink('link-65', 'OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED', 'link-65');">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</a></tt><tt class="py-op">,</tt> <tt id="link-66" class="py-name" targets="Variable paramiko.auth_handler.OPEN_FAILED_CONNECT_FAILED=paramiko.auth_handler-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.channel.OPEN_FAILED_CONNECT_FAILED=paramiko.channel-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.client.OPEN_FAILED_CONNECT_FAILED=paramiko.client-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.common.OPEN_FAILED_CONNECT_FAILED=paramiko.common-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.dsskey.OPEN_FAILED_CONNECT_FAILED=paramiko.dsskey-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.hostkeys.OPEN_FAILED_CONNECT_FAILED=paramiko.hostkeys-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.kex_gex.OPEN_FAILED_CONNECT_FAILED=paramiko.kex_gex-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.kex_group1.OPEN_FAILED_CONNECT_FAILED=paramiko.kex_group1-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.packet.OPEN_FAILED_CONNECT_FAILED=paramiko.packet-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.pkey.OPEN_FAILED_CONNECT_FAILED=paramiko.pkey-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.rsakey.OPEN_FAILED_CONNECT_FAILED=paramiko.rsakey-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.server.OPEN_FAILED_CONNECT_FAILED=paramiko.server-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.sftp.OPEN_FAILED_CONNECT_FAILED=paramiko.sftp-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.sftp_attr.OPEN_FAILED_CONNECT_FAILED=paramiko.sftp_attr-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.sftp_client.OPEN_FAILED_CONNECT_FAILED=paramiko.sftp_client-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.sftp_file.OPEN_FAILED_CONNECT_FAILED=paramiko.sftp_file-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.sftp_handle.OPEN_FAILED_CONNECT_FAILED=paramiko.sftp_handle-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.sftp_server.OPEN_FAILED_CONNECT_FAILED=paramiko.sftp_server-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.sftp_si.OPEN_FAILED_CONNECT_FAILED=paramiko.sftp_si-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.transport.OPEN_FAILED_CONNECT_FAILED=paramiko.transport-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.util.OPEN_FAILED_CONNECT_FAILED=paramiko.util-module.html#OPEN_FAILED_CONNECT_FAILED"><a title="paramiko.auth_handler.OPEN_FAILED_CONNECT_FAILED
-paramiko.channel.OPEN_FAILED_CONNECT_FAILED
-paramiko.client.OPEN_FAILED_CONNECT_FAILED
-paramiko.common.OPEN_FAILED_CONNECT_FAILED
-paramiko.dsskey.OPEN_FAILED_CONNECT_FAILED
-paramiko.hostkeys.OPEN_FAILED_CONNECT_FAILED
-paramiko.kex_gex.OPEN_FAILED_CONNECT_FAILED
-paramiko.kex_group1.OPEN_FAILED_CONNECT_FAILED
-paramiko.packet.OPEN_FAILED_CONNECT_FAILED
-paramiko.pkey.OPEN_FAILED_CONNECT_FAILED
-paramiko.rsakey.OPEN_FAILED_CONNECT_FAILED
-paramiko.server.OPEN_FAILED_CONNECT_FAILED
-paramiko.sftp.OPEN_FAILED_CONNECT_FAILED
-paramiko.sftp_attr.OPEN_FAILED_CONNECT_FAILED
-paramiko.sftp_client.OPEN_FAILED_CONNECT_FAILED
-paramiko.sftp_file.OPEN_FAILED_CONNECT_FAILED
-paramiko.sftp_handle.OPEN_FAILED_CONNECT_FAILED
-paramiko.sftp_server.OPEN_FAILED_CONNECT_FAILED
-paramiko.sftp_si.OPEN_FAILED_CONNECT_FAILED
-paramiko.transport.OPEN_FAILED_CONNECT_FAILED
-paramiko.util.OPEN_FAILED_CONNECT_FAILED" class="py-name" href="#" onclick="return doclink('link-66', 'OPEN_FAILED_CONNECT_FAILED', 'link-66');">OPEN_FAILED_CONNECT_FAILED</a></tt><tt class="py-op">,</tt> \ </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt id="link-67" class="py-name" targets="Variable paramiko.auth_handler.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.auth_handler-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.channel.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.channel-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.client.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.client-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.common.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.common-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.dsskey.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.dsskey-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.hostkeys.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.hostkeys-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.kex_gex.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.kex_gex-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.kex_group1.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.kex_group1-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.packet.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.packet-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.pkey.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.pkey-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.rsakey.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.rsakey-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.server.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.server-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.sftp.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.sftp-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.sftp_attr.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.sftp_attr-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.sftp_client.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.sftp_client-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.sftp_file.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.sftp_file-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.sftp_handle.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.sftp_handle-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.sftp_server.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.sftp_server-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.sftp_si.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.sftp_si-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.transport.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.transport-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.util.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.util-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE"><a title="paramiko.auth_handler.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.channel.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.client.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.common.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.dsskey.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.hostkeys.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.kex_gex.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.kex_group1.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.packet.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.pkey.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.rsakey.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.server.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.sftp.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.sftp_attr.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.sftp_client.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.sftp_file.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.sftp_handle.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.sftp_server.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.sftp_si.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.transport.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.util.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE" class="py-name" href="#" onclick="return doclink('link-67', 'OPEN_FAILED_UNKNOWN_CHANNEL_TYPE', 'link-67');">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</a></tt><tt class="py-op">,</tt> <tt id="link-68" class="py-name" targets="Variable paramiko.auth_handler.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.auth_handler-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.channel.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.channel-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.client.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.client-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.common.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.common-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.dsskey.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.dsskey-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.hostkeys.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.hostkeys-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.kex_gex.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.kex_gex-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.kex_group1.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.kex_group1-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.packet.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.packet-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.pkey.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.pkey-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.rsakey.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.rsakey-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.server.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.server-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.sftp.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.sftp-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.sftp_attr.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.sftp_attr-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.sftp_client.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.sftp_client-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.sftp_file.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.sftp_file-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.sftp_handle.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.sftp_handle-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.sftp_server.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.sftp_server-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.sftp_si.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.sftp_si-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.transport.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.transport-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.util.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.util-module.html#OPEN_FAILED_RESOURCE_SHORTAGE"><a title="paramiko.auth_handler.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.channel.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.client.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.common.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.dsskey.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.hostkeys.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.kex_gex.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.kex_group1.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.packet.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.pkey.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.rsakey.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.server.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.sftp.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.sftp_attr.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.sftp_client.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.sftp_file.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.sftp_handle.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.sftp_server.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.sftp_si.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.transport.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.util.OPEN_FAILED_RESOURCE_SHORTAGE" class="py-name" href="#" onclick="return doclink('link-68', 'OPEN_FAILED_RESOURCE_SHORTAGE', 'link-68');">OPEN_FAILED_RESOURCE_SHORTAGE</a></tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-69" class="py-name"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-69', 'sftp', 'link-30');">sftp</a></tt> <tt class="py-keyword">import</tt> <tt id="link-70" class="py-name" targets="Variable paramiko.sftp.SFTP_OK=paramiko.sftp-module.html#SFTP_OK,Variable paramiko.sftp_attr.SFTP_OK=paramiko.sftp_attr-module.html#SFTP_OK,Variable paramiko.sftp_client.SFTP_OK=paramiko.sftp_client-module.html#SFTP_OK,Variable paramiko.sftp_file.SFTP_OK=paramiko.sftp_file-module.html#SFTP_OK,Variable paramiko.sftp_handle.SFTP_OK=paramiko.sftp_handle-module.html#SFTP_OK,Variable paramiko.sftp_server.SFTP_OK=paramiko.sftp_server-module.html#SFTP_OK,Variable paramiko.sftp_si.SFTP_OK=paramiko.sftp_si-module.html#SFTP_OK"><a title="paramiko.sftp.SFTP_OK
-paramiko.sftp_attr.SFTP_OK
-paramiko.sftp_client.SFTP_OK
-paramiko.sftp_file.SFTP_OK
-paramiko.sftp_handle.SFTP_OK
-paramiko.sftp_server.SFTP_OK
-paramiko.sftp_si.SFTP_OK" class="py-name" href="#" onclick="return doclink('link-70', 'SFTP_OK', 'link-70');">SFTP_OK</a></tt><tt class="py-op">,</tt> <tt id="link-71" class="py-name" targets="Variable paramiko.sftp.SFTP_EOF=paramiko.sftp-module.html#SFTP_EOF,Variable paramiko.sftp_attr.SFTP_EOF=paramiko.sftp_attr-module.html#SFTP_EOF,Variable paramiko.sftp_client.SFTP_EOF=paramiko.sftp_client-module.html#SFTP_EOF,Variable paramiko.sftp_file.SFTP_EOF=paramiko.sftp_file-module.html#SFTP_EOF,Variable paramiko.sftp_handle.SFTP_EOF=paramiko.sftp_handle-module.html#SFTP_EOF,Variable paramiko.sftp_server.SFTP_EOF=paramiko.sftp_server-module.html#SFTP_EOF,Variable paramiko.sftp_si.SFTP_EOF=paramiko.sftp_si-module.html#SFTP_EOF"><a title="paramiko.sftp.SFTP_EOF
-paramiko.sftp_attr.SFTP_EOF
-paramiko.sftp_client.SFTP_EOF
-paramiko.sftp_file.SFTP_EOF
-paramiko.sftp_handle.SFTP_EOF
-paramiko.sftp_server.SFTP_EOF
-paramiko.sftp_si.SFTP_EOF" class="py-name" href="#" onclick="return doclink('link-71', 'SFTP_EOF', 'link-71');">SFTP_EOF</a></tt><tt class="py-op">,</tt> <tt id="link-72" class="py-name" targets="Variable paramiko.sftp.SFTP_NO_SUCH_FILE=paramiko.sftp-module.html#SFTP_NO_SUCH_FILE,Variable paramiko.sftp_attr.SFTP_NO_SUCH_FILE=paramiko.sftp_attr-module.html#SFTP_NO_SUCH_FILE,Variable paramiko.sftp_client.SFTP_NO_SUCH_FILE=paramiko.sftp_client-module.html#SFTP_NO_SUCH_FILE,Variable paramiko.sftp_file.SFTP_NO_SUCH_FILE=paramiko.sftp_file-module.html#SFTP_NO_SUCH_FILE,Variable paramiko.sftp_handle.SFTP_NO_SUCH_FILE=paramiko.sftp_handle-module.html#SFTP_NO_SUCH_FILE,Variable paramiko.sftp_server.SFTP_NO_SUCH_FILE=paramiko.sftp_server-module.html#SFTP_NO_SUCH_FILE,Variable paramiko.sftp_si.SFTP_NO_SUCH_FILE=paramiko.sftp_si-module.html#SFTP_NO_SUCH_FILE"><a title="paramiko.sftp.SFTP_NO_SUCH_FILE
-paramiko.sftp_attr.SFTP_NO_SUCH_FILE
-paramiko.sftp_client.SFTP_NO_SUCH_FILE
-paramiko.sftp_file.SFTP_NO_SUCH_FILE
-paramiko.sftp_handle.SFTP_NO_SUCH_FILE
-paramiko.sftp_server.SFTP_NO_SUCH_FILE
-paramiko.sftp_si.SFTP_NO_SUCH_FILE" class="py-name" href="#" onclick="return doclink('link-72', 'SFTP_NO_SUCH_FILE', 'link-72');">SFTP_NO_SUCH_FILE</a></tt><tt class="py-op">,</tt> <tt id="link-73" class="py-name" targets="Variable paramiko.sftp.SFTP_PERMISSION_DENIED=paramiko.sftp-module.html#SFTP_PERMISSION_DENIED,Variable paramiko.sftp_attr.SFTP_PERMISSION_DENIED=paramiko.sftp_attr-module.html#SFTP_PERMISSION_DENIED,Variable paramiko.sftp_client.SFTP_PERMISSION_DENIED=paramiko.sftp_client-module.html#SFTP_PERMISSION_DENIED,Variable paramiko.sftp_file.SFTP_PERMISSION_DENIED=paramiko.sftp_file-module.html#SFTP_PERMISSION_DENIED,Variable paramiko.sftp_handle.SFTP_PERMISSION_DENIED=paramiko.sftp_handle-module.html#SFTP_PERMISSION_DENIED,Variable paramiko.sftp_server.SFTP_PERMISSION_DENIED=paramiko.sftp_server-module.html#SFTP_PERMISSION_DENIED,Variable paramiko.sftp_si.SFTP_PERMISSION_DENIED=paramiko.sftp_si-module.html#SFTP_PERMISSION_DENIED"><a title="paramiko.sftp.SFTP_PERMISSION_DENIED
-paramiko.sftp_attr.SFTP_PERMISSION_DENIED
-paramiko.sftp_client.SFTP_PERMISSION_DENIED
-paramiko.sftp_file.SFTP_PERMISSION_DENIED
-paramiko.sftp_handle.SFTP_PERMISSION_DENIED
-paramiko.sftp_server.SFTP_PERMISSION_DENIED
-paramiko.sftp_si.SFTP_PERMISSION_DENIED" class="py-name" href="#" onclick="return doclink('link-73', 'SFTP_PERMISSION_DENIED', 'link-73');">SFTP_PERMISSION_DENIED</a></tt><tt class="py-op">,</tt> <tt id="link-74" class="py-name" targets="Variable paramiko.sftp.SFTP_FAILURE=paramiko.sftp-module.html#SFTP_FAILURE,Variable paramiko.sftp_attr.SFTP_FAILURE=paramiko.sftp_attr-module.html#SFTP_FAILURE,Variable paramiko.sftp_client.SFTP_FAILURE=paramiko.sftp_client-module.html#SFTP_FAILURE,Variable paramiko.sftp_file.SFTP_FAILURE=paramiko.sftp_file-module.html#SFTP_FAILURE,Variable paramiko.sftp_handle.SFTP_FAILURE=paramiko.sftp_handle-module.html#SFTP_FAILURE,Variable paramiko.sftp_server.SFTP_FAILURE=paramiko.sftp_server-module.html#SFTP_FAILURE,Variable paramiko.sftp_si.SFTP_FAILURE=paramiko.sftp_si-module.html#SFTP_FAILURE"><a title="paramiko.sftp.SFTP_FAILURE
-paramiko.sftp_attr.SFTP_FAILURE
-paramiko.sftp_client.SFTP_FAILURE
-paramiko.sftp_file.SFTP_FAILURE
-paramiko.sftp_handle.SFTP_FAILURE
-paramiko.sftp_server.SFTP_FAILURE
-paramiko.sftp_si.SFTP_FAILURE" class="py-name" href="#" onclick="return doclink('link-74', 'SFTP_FAILURE', 'link-74');">SFTP_FAILURE</a></tt><tt class="py-op">,</tt> \ </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt id="link-75" class="py-name" targets="Variable paramiko.sftp.SFTP_BAD_MESSAGE=paramiko.sftp-module.html#SFTP_BAD_MESSAGE,Variable paramiko.sftp_attr.SFTP_BAD_MESSAGE=paramiko.sftp_attr-module.html#SFTP_BAD_MESSAGE,Variable paramiko.sftp_client.SFTP_BAD_MESSAGE=paramiko.sftp_client-module.html#SFTP_BAD_MESSAGE,Variable paramiko.sftp_file.SFTP_BAD_MESSAGE=paramiko.sftp_file-module.html#SFTP_BAD_MESSAGE,Variable paramiko.sftp_handle.SFTP_BAD_MESSAGE=paramiko.sftp_handle-module.html#SFTP_BAD_MESSAGE,Variable paramiko.sftp_server.SFTP_BAD_MESSAGE=paramiko.sftp_server-module.html#SFTP_BAD_MESSAGE,Variable paramiko.sftp_si.SFTP_BAD_MESSAGE=paramiko.sftp_si-module.html#SFTP_BAD_MESSAGE"><a title="paramiko.sftp.SFTP_BAD_MESSAGE
-paramiko.sftp_attr.SFTP_BAD_MESSAGE
-paramiko.sftp_client.SFTP_BAD_MESSAGE
-paramiko.sftp_file.SFTP_BAD_MESSAGE
-paramiko.sftp_handle.SFTP_BAD_MESSAGE
-paramiko.sftp_server.SFTP_BAD_MESSAGE
-paramiko.sftp_si.SFTP_BAD_MESSAGE" class="py-name" href="#" onclick="return doclink('link-75', 'SFTP_BAD_MESSAGE', 'link-75');">SFTP_BAD_MESSAGE</a></tt><tt class="py-op">,</tt> <tt id="link-76" class="py-name" targets="Variable paramiko.sftp.SFTP_NO_CONNECTION=paramiko.sftp-module.html#SFTP_NO_CONNECTION,Variable paramiko.sftp_attr.SFTP_NO_CONNECTION=paramiko.sftp_attr-module.html#SFTP_NO_CONNECTION,Variable paramiko.sftp_client.SFTP_NO_CONNECTION=paramiko.sftp_client-module.html#SFTP_NO_CONNECTION,Variable paramiko.sftp_file.SFTP_NO_CONNECTION=paramiko.sftp_file-module.html#SFTP_NO_CONNECTION,Variable paramiko.sftp_handle.SFTP_NO_CONNECTION=paramiko.sftp_handle-module.html#SFTP_NO_CONNECTION,Variable paramiko.sftp_server.SFTP_NO_CONNECTION=paramiko.sftp_server-module.html#SFTP_NO_CONNECTION,Variable paramiko.sftp_si.SFTP_NO_CONNECTION=paramiko.sftp_si-module.html#SFTP_NO_CONNECTION"><a title="paramiko.sftp.SFTP_NO_CONNECTION
-paramiko.sftp_attr.SFTP_NO_CONNECTION
-paramiko.sftp_client.SFTP_NO_CONNECTION
-paramiko.sftp_file.SFTP_NO_CONNECTION
-paramiko.sftp_handle.SFTP_NO_CONNECTION
-paramiko.sftp_server.SFTP_NO_CONNECTION
-paramiko.sftp_si.SFTP_NO_CONNECTION" class="py-name" href="#" onclick="return doclink('link-76', 'SFTP_NO_CONNECTION', 'link-76');">SFTP_NO_CONNECTION</a></tt><tt class="py-op">,</tt> <tt id="link-77" class="py-name" targets="Variable paramiko.sftp.SFTP_CONNECTION_LOST=paramiko.sftp-module.html#SFTP_CONNECTION_LOST,Variable paramiko.sftp_attr.SFTP_CONNECTION_LOST=paramiko.sftp_attr-module.html#SFTP_CONNECTION_LOST,Variable paramiko.sftp_client.SFTP_CONNECTION_LOST=paramiko.sftp_client-module.html#SFTP_CONNECTION_LOST,Variable paramiko.sftp_file.SFTP_CONNECTION_LOST=paramiko.sftp_file-module.html#SFTP_CONNECTION_LOST,Variable paramiko.sftp_handle.SFTP_CONNECTION_LOST=paramiko.sftp_handle-module.html#SFTP_CONNECTION_LOST,Variable paramiko.sftp_server.SFTP_CONNECTION_LOST=paramiko.sftp_server-module.html#SFTP_CONNECTION_LOST,Variable paramiko.sftp_si.SFTP_CONNECTION_LOST=paramiko.sftp_si-module.html#SFTP_CONNECTION_LOST"><a title="paramiko.sftp.SFTP_CONNECTION_LOST
-paramiko.sftp_attr.SFTP_CONNECTION_LOST
-paramiko.sftp_client.SFTP_CONNECTION_LOST
-paramiko.sftp_file.SFTP_CONNECTION_LOST
-paramiko.sftp_handle.SFTP_CONNECTION_LOST
-paramiko.sftp_server.SFTP_CONNECTION_LOST
-paramiko.sftp_si.SFTP_CONNECTION_LOST" class="py-name" href="#" onclick="return doclink('link-77', 'SFTP_CONNECTION_LOST', 'link-77');">SFTP_CONNECTION_LOST</a></tt><tt class="py-op">,</tt> <tt id="link-78" class="py-name" targets="Variable paramiko.sftp.SFTP_OP_UNSUPPORTED=paramiko.sftp-module.html#SFTP_OP_UNSUPPORTED,Variable paramiko.sftp_attr.SFTP_OP_UNSUPPORTED=paramiko.sftp_attr-module.html#SFTP_OP_UNSUPPORTED,Variable paramiko.sftp_client.SFTP_OP_UNSUPPORTED=paramiko.sftp_client-module.html#SFTP_OP_UNSUPPORTED,Variable paramiko.sftp_file.SFTP_OP_UNSUPPORTED=paramiko.sftp_file-module.html#SFTP_OP_UNSUPPORTED,Variable paramiko.sftp_handle.SFTP_OP_UNSUPPORTED=paramiko.sftp_handle-module.html#SFTP_OP_UNSUPPORTED,Variable paramiko.sftp_server.SFTP_OP_UNSUPPORTED=paramiko.sftp_server-module.html#SFTP_OP_UNSUPPORTED,Variable paramiko.sftp_si.SFTP_OP_UNSUPPORTED=paramiko.sftp_si-module.html#SFTP_OP_UNSUPPORTED"><a title="paramiko.sftp.SFTP_OP_UNSUPPORTED
-paramiko.sftp_attr.SFTP_OP_UNSUPPORTED
-paramiko.sftp_client.SFTP_OP_UNSUPPORTED
-paramiko.sftp_file.SFTP_OP_UNSUPPORTED
-paramiko.sftp_handle.SFTP_OP_UNSUPPORTED
-paramiko.sftp_server.SFTP_OP_UNSUPPORTED
-paramiko.sftp_si.SFTP_OP_UNSUPPORTED" class="py-name" href="#" onclick="return doclink('link-78', 'SFTP_OP_UNSUPPORTED', 'link-78');">SFTP_OP_UNSUPPORTED</a></tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"><tt class="py-name">__all__</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-string">'Transport'</tt><tt class="py-op">,</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-string">'SSHClient'</tt><tt class="py-op">,</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-string">'MissingHostKeyPolicy'</tt><tt class="py-op">,</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt class="py-string">'AutoAddPolicy'</tt><tt class="py-op">,</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-string">'RejectPolicy'</tt><tt class="py-op">,</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-string">'WarningPolicy'</tt><tt class="py-op">,</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-string">'SecurityOptions'</tt><tt class="py-op">,</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-string">'SubsystemHandler'</tt><tt class="py-op">,</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-string">'Channel'</tt><tt class="py-op">,</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-string">'PKey'</tt><tt class="py-op">,</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-string">'RSAKey'</tt><tt class="py-op">,</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-string">'DSSKey'</tt><tt class="py-op">,</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-string">'Message'</tt><tt class="py-op">,</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-string">'SSHException'</tt><tt class="py-op">,</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-string">'AuthenticationException'</tt><tt class="py-op">,</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-string">'PasswordRequiredException'</tt><tt class="py-op">,</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-string">'BadAuthenticationType'</tt><tt class="py-op">,</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt class="py-string">'ChannelException'</tt><tt class="py-op">,</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-string">'BadHostKeyException'</tt><tt class="py-op">,</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-string">'SFTP'</tt><tt class="py-op">,</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-string">'SFTPFile'</tt><tt class="py-op">,</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-string">'SFTPHandle'</tt><tt class="py-op">,</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-string">'SFTPClient'</tt><tt class="py-op">,</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-string">'SFTPServer'</tt><tt class="py-op">,</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-string">'SFTPError'</tt><tt class="py-op">,</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-string">'SFTPAttributes'</tt><tt class="py-op">,</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-string">'SFTPServerInterface'</tt><tt class="py-op">,</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-string">'ServerInterface'</tt><tt class="py-op">,</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-string">'BufferedFile'</tt><tt class="py-op">,</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-string">'Agent'</tt><tt class="py-op">,</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-string">'AgentKey'</tt><tt class="py-op">,</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-string">'HostKeys'</tt><tt class="py-op">,</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-string">'SSHConfig'</tt><tt class="py-op">,</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-string">'util'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th bgcolor="#70b0f0" class="navbar-select"
- >&nbsp;&nbsp;&nbsp;Home&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:07 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.Agent-class.html b/docs/paramiko.Agent-class.html
deleted file mode 100644
index 41ed7fa..0000000
--- a/docs/paramiko.Agent-class.html
+++ /dev/null
@@ -1,233 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.Agent</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Class&nbsp;Agent
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.Agent-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Agent</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#Agent">source&nbsp;code</a></span></p>
-<p>Client interface for using private keys from an SSH agent running on
- the local machine. If an SSH agent is running, this class can be used to
- connect to it and retreive <a href="paramiko.PKey-class.html"
- class="link">PKey</a> objects which can be used when attempting to
- authenticate to remote SSH servers.</p>
- <p>Because the SSH agent protocol uses environment variables and
- unix-domain sockets, this probably doesn't work on Windows. It does work
- on most posix platforms though (Linux and MacOS X, for example).</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Agent-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Open a session with the local machine's SSH agent, if one is running.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.agent-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="close"></a><span class="summary-sig-name">close</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Close the SSH agent connection.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.agent-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">tuple of <a href="paramiko.AgentKey-class.html"
- class="link">AgentKey</a></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Agent-class.html#get_keys" class="summary-sig-name">get_keys</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return the list of keys available through the SSH agent, if any.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.agent-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.agent-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Open a session with the local machine's SSH agent, if one is running.
- If no agent is running, initialization will succeed, but <a
- href="paramiko.Agent-class.html#get_keys" class="link">get_keys</a> will
- return an empty tuple.</p>
- <dl class="fields">
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if an SSH agent is found, but speaks an incompatible protocol</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="get_keys"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_keys</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.agent-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return the list of keys available through the SSH agent, if any. If
- no SSH agent was running (or it couldn't be contacted), an empty list
- will be returned.</p>
- <dl class="fields">
- <dt>Returns: tuple of <a href="paramiko.AgentKey-class.html"
- class="link">AgentKey</a></dt>
- <dd>a list of keys available on the SSH agent</dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.AgentKey-class.html b/docs/paramiko.AgentKey-class.html
deleted file mode 100644
index 3034e6c..0000000
--- a/docs/paramiko.AgentKey-class.html
+++ /dev/null
@@ -1,399 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.AgentKey</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Class&nbsp;AgentKey
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.AgentKey-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class AgentKey</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#AgentKey">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- <a href="paramiko.PKey-class.html">PKey</a> --+
- |
- <strong class="uidshort">AgentKey</strong>
-</pre>
-
-<hr />
-<p>Private key held in a local SSH agent. This type of key can be used
- for authenticating to a remote server (signing). Most other key
- operations work as expected.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.AgentKey-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">agent</span>,
- <span class="summary-sig-arg">blob</span>)</span><br />
- Create a new instance of this public key type.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.agent-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">str</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.AgentKey-class.html#__str__" class="summary-sig-name">__str__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return a string of an SSH <a href="paramiko.Message-class.html"
- class="link">Message</a> made up of the public part(s) of this key.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.agent-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">str</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.AgentKey-class.html#get_name" class="summary-sig-name">get_name</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return the name of this private key implementation.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.agent-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"><a href="paramiko.Message-class.html" class="link">Message</a></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.AgentKey-class.html#sign_ssh_data" class="summary-sig-name">sign_ssh_data</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">rng</span>,
- <span class="summary-sig-arg">data</span>)</span><br />
- Sign a blob of data with this private key, and return a <a
- href="paramiko.Message-class.html" class="link">Message</a>
- representing an SSH signature message.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.agent-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code><a href="paramiko.PKey-class.html">PKey</a></code></b>:
- <code><a href="paramiko.PKey-class.html#__cmp__">__cmp__</a></code>,
- <code><a href="paramiko.PKey-class.html#can_sign">can_sign</a></code>,
- <code><a href="paramiko.PKey-class.html#get_base64">get_base64</a></code>,
- <code><a href="paramiko.PKey-class.html#get_bits">get_bits</a></code>,
- <code><a href="paramiko.PKey-class.html#get_fingerprint">get_fingerprint</a></code>,
- <code><a href="paramiko.PKey-class.html#verify_ssh_sig">verify_ssh_sig</a></code>,
- <code><a href="paramiko.PKey-class.html#write_private_key">write_private_key</a></code>,
- <code><a href="paramiko.PKey-class.html#write_private_key_file">write_private_key_file</a></code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS METHODS ==================== -->
-<a name="section-ClassMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Class Methods</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code><a href="paramiko.PKey-class.html">PKey</a></code></b>:
- <code><a href="paramiko.PKey-class.html#from_private_key">from_private_key</a></code>,
- <code><a href="paramiko.PKey-class.html#from_private_key_file">from_private_key_file</a></code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">agent</span>,
- <span class="sig-arg">blob</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.agent-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Create a new instance of this public key type. If <code>msg</code> is
- given, the key's public part(s) will be filled in from the message. If
- <code>data</code> is given, the key's public part(s) will be filled in
- from the string.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>msg</code></strong> - an optional SSH <a href="paramiko.Message-class.html"
- class="link">Message</a> containing a public key of this type.</li>
- <li><strong class="pname"><code>data</code></strong> - an optional string containing a public key of this type</li>
- </ul></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if a key cannot be created from the <code>data</code> or
- <code>msg</code> given, or no key was passed in.</li>
- </ul></dd>
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="__str__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__str__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Informal representation operator)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.agent-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return a string of an SSH <a href="paramiko.Message-class.html"
- class="link">Message</a> made up of the public part(s) of this key. This
- string is suitable for passing to <a
- href="paramiko.AgentKey-class.html#__init__" class="link">__init__</a> to
- re-create the key object later.</p>
- <dl class="fields">
- <dt>Returns: str</dt>
- <dd>string representation of an SSH key message.</dd>
- <dt>Overrides:
- object.__str__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="get_name"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_name</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.agent-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return the name of this private key implementation.</p>
- <dl class="fields">
- <dt>Returns: str</dt>
- <dd>name of this private key type, in SSH terminology (for example,
- <code>&quot;ssh-rsa&quot;</code>).</dd>
- <dt>Overrides:
- <a href="paramiko.PKey-class.html#get_name">PKey.get_name</a>
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="sign_ssh_data"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">sign_ssh_data</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">rng</span>,
- <span class="sig-arg">data</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.agent-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Sign a blob of data with this private key, and return a <a
- href="paramiko.Message-class.html" class="link">Message</a> representing
- an SSH signature message.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>rng</code></strong> - a secure random number generator.</li>
- <li><strong class="pname"><code>data</code></strong> - the data to sign.</li>
- </ul></dd>
- <dt>Returns: <a href="paramiko.Message-class.html" class="link">Message</a></dt>
- <dd>an SSH signature message.</dd>
- <dt>Overrides:
- <a href="paramiko.PKey-class.html#sign_ssh_data">PKey.sign_ssh_data</a>
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.AuthenticationException-class.html b/docs/paramiko.AuthenticationException-class.html
deleted file mode 100644
index 9eca0ff..0000000
--- a/docs/paramiko.AuthenticationException-class.html
+++ /dev/null
@@ -1,185 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.AuthenticationException</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Class&nbsp;AuthenticationException
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.AuthenticationException-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class AuthenticationException</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#AuthenticationException">source&nbsp;code</a></span></p>
-<pre class="base-tree">
- object --+
- |
-exceptions.BaseException --+
- |
- exceptions.Exception --+
- |
- <a href="paramiko.SSHException-class.html">SSHException</a> --+
- |
- <strong class="uidshort">AuthenticationException</strong>
-</pre>
-
-<dl><dt>Known Subclasses:</dt>
-<dd>
- <ul class="subclass-list">
-<li><a href="paramiko.BadAuthenticationType-class.html">BadAuthenticationType</a></li><li>, <a href="paramiko.PasswordRequiredException-class.html">PasswordRequiredException</a></li><li>, <a href="paramiko.ssh_exception.PartialAuthentication-class.html">ssh_exception.PartialAuthentication</a></li> </ul>
-</dd></dl>
-
-<hr />
-<p>Exception raised when authentication failed for some reason. It may
- be possible to retry with different credentials. (Other classes specify
- more specific reasons.)</p>
-
-<hr />
-<div class="fields"> <p><strong>Since:</strong>
- 1.6
- </p>
-</div><!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.Exception</code></b>:
- <code>__init__</code>,
- <code>__new__</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.BaseException</code></b>:
- <code>__delattr__</code>,
- <code>__getattribute__</code>,
- <code>__getitem__</code>,
- <code>__getslice__</code>,
- <code>__reduce__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__setstate__</code>,
- <code>__str__</code>,
- <code>__unicode__</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__format__</code>,
- <code>__hash__</code>,
- <code>__reduce_ex__</code>,
- <code>__sizeof__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.BaseException</code></b>:
- <code>args</code>,
- <code>message</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.AutoAddPolicy-class.html b/docs/paramiko.AutoAddPolicy-class.html
deleted file mode 100644
index 6acbd2a..0000000
--- a/docs/paramiko.AutoAddPolicy-class.html
+++ /dev/null
@@ -1,224 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.AutoAddPolicy</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Class&nbsp;AutoAddPolicy
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.AutoAddPolicy-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class AutoAddPolicy</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#AutoAddPolicy">source&nbsp;code</a></span></p>
-<pre class="base-tree">
- object --+
- |
-<a href="paramiko.MissingHostKeyPolicy-class.html">MissingHostKeyPolicy</a> --+
- |
- <strong class="uidshort">AutoAddPolicy</strong>
-</pre>
-
-<hr />
-<p>Policy for automatically adding the hostname and new host key to the
- local <a href="paramiko.HostKeys-class.html" class="link">HostKeys</a>
- object, and saving it. This is used by <a
- href="paramiko.SSHClient-class.html" class="link">SSHClient</a>.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.AutoAddPolicy-class.html#missing_host_key" class="summary-sig-name">missing_host_key</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">client</span>,
- <span class="summary-sig-arg">hostname</span>,
- <span class="summary-sig-arg">key</span>)</span><br />
- Called when an <a href="paramiko.SSHClient-class.html"
- class="link">SSHClient</a> receives a server key for a server that
- isn't in either the system or local <a
- href="paramiko.HostKeys-class.html" class="link">HostKeys</a> object.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="missing_host_key"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">missing_host_key</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">client</span>,
- <span class="sig-arg">hostname</span>,
- <span class="sig-arg">key</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Called when an <a href="paramiko.SSHClient-class.html"
- class="link">SSHClient</a> receives a server key for a server that isn't
- in either the system or local <a href="paramiko.HostKeys-class.html"
- class="link">HostKeys</a> object. To accept the key, simply return. To
- reject, raised an exception (which will be passed to the calling
- application).</p>
- <dl class="fields">
- <dt>Overrides:
- <a href="paramiko.MissingHostKeyPolicy-class.html#missing_host_key">MissingHostKeyPolicy.missing_host_key</a>
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.BadAuthenticationType-class.html b/docs/paramiko.BadAuthenticationType-class.html
deleted file mode 100644
index 243c134..0000000
--- a/docs/paramiko.BadAuthenticationType-class.html
+++ /dev/null
@@ -1,296 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.BadAuthenticationType</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Class&nbsp;BadAuthenticationType
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.BadAuthenticationType-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class BadAuthenticationType</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#BadAuthenticationType">source&nbsp;code</a></span></p>
-<pre class="base-tree">
- object --+
- |
-exceptions.BaseException --+
- |
- exceptions.Exception --+
- |
- <a href="paramiko.SSHException-class.html">SSHException</a> --+
- |
- <a href="paramiko.AuthenticationException-class.html">AuthenticationException</a> --+
- |
- <strong class="uidshort">BadAuthenticationType</strong>
-</pre>
-
-<hr />
-<p>Exception raised when an authentication type (like password) is used,
- but the server isn't allowing that type. (It may only allow public-key,
- for example.)</p>
-
-<hr />
-<div class="fields"> <p><strong>Since:</strong>
- 1.1
- </p>
-</div><!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.BadAuthenticationType-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">explanation</span>,
- <span class="summary-sig-arg">types</span>)</span><br />
- x.__init__(...) initializes x; see x.__class__.__doc__ for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.ssh_exception-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.BadAuthenticationType-class.html#__str__" class="summary-sig-name">__str__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- str(x)</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.ssh_exception-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.Exception</code></b>:
- <code>__new__</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.BaseException</code></b>:
- <code>__delattr__</code>,
- <code>__getattribute__</code>,
- <code>__getitem__</code>,
- <code>__getslice__</code>,
- <code>__reduce__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__setstate__</code>,
- <code>__unicode__</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__format__</code>,
- <code>__hash__</code>,
- <code>__reduce_ex__</code>,
- <code>__sizeof__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== INSTANCE VARIABLES ==================== -->
-<a name="section-InstanceVariables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">list</span>
- </td><td class="summary">
- <a name="allowed_types"></a><span class="summary-name">allowed_types</span> = <code title="[]"><code class="variable-group">[</code><code class="variable-group">]</code></code><br />
- list of allowed authentication types provided by the server (possible
- values are: <code>&quot;none&quot;</code>,
- <code>&quot;password&quot;</code>, and
- <code>&quot;publickey&quot;</code>).
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.BaseException</code></b>:
- <code>args</code>,
- <code>message</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">explanation</span>,
- <span class="sig-arg">types</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.ssh_exception-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see x.__class__.__doc__ for
- signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="__str__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__str__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Informal representation operator)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.ssh_exception-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>str(x)</p>
- <dl class="fields">
- <dt>Overrides:
- object.__str__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.BadHostKeyException-class.html b/docs/paramiko.BadHostKeyException-class.html
deleted file mode 100644
index a62448c..0000000
--- a/docs/paramiko.BadHostKeyException-class.html
+++ /dev/null
@@ -1,268 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.BadHostKeyException</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Class&nbsp;BadHostKeyException
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.BadHostKeyException-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class BadHostKeyException</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#BadHostKeyException">source&nbsp;code</a></span></p>
-<pre class="base-tree">
- object --+
- |
-exceptions.BaseException --+
- |
- exceptions.Exception --+
- |
- <a href="paramiko.SSHException-class.html">SSHException</a> --+
- |
- <strong class="uidshort">BadHostKeyException</strong>
-</pre>
-
-<hr />
-<p>The host key given by the SSH server did not match what we were
- expecting.</p>
-
-<hr />
-<div class="fields"> <p><strong>Since:</strong>
- 1.6
- </p>
-</div><!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.BadHostKeyException-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">hostname</span>,
- <span class="summary-sig-arg">got_key</span>,
- <span class="summary-sig-arg">expected_key</span>)</span><br />
- x.__init__(...) initializes x; see x.__class__.__doc__ for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.ssh_exception-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.Exception</code></b>:
- <code>__new__</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.BaseException</code></b>:
- <code>__delattr__</code>,
- <code>__getattribute__</code>,
- <code>__getitem__</code>,
- <code>__getslice__</code>,
- <code>__reduce__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__setstate__</code>,
- <code>__str__</code>,
- <code>__unicode__</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__format__</code>,
- <code>__hash__</code>,
- <code>__reduce_ex__</code>,
- <code>__sizeof__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== INSTANCE VARIABLES ==================== -->
-<a name="section-InstanceVariables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"><a href="paramiko.PKey-class.html" class="link">PKey</a></span>
- </td><td class="summary">
- <a name="expected_key"></a><span class="summary-name">expected_key</span><br />
- the host key expected
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">str</span>
- </td><td class="summary">
- <a name="hostname"></a><span class="summary-name">hostname</span><br />
- the hostname of the SSH server
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"><a href="paramiko.PKey-class.html" class="link">PKey</a></span>
- </td><td class="summary">
- <a name="key"></a><span class="summary-name">key</span><br />
- the host key presented by the server
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.BaseException</code></b>:
- <code>args</code>,
- <code>message</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">hostname</span>,
- <span class="sig-arg">got_key</span>,
- <span class="sig-arg">expected_key</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.ssh_exception-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see x.__class__.__doc__ for
- signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.BufferedFile-class.html b/docs/paramiko.BufferedFile-class.html
deleted file mode 100644
index 13a3c66..0000000
--- a/docs/paramiko.BufferedFile-class.html
+++ /dev/null
@@ -1,856 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.BufferedFile</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Class&nbsp;BufferedFile
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.BufferedFile-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class BufferedFile</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#BufferedFile">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- <strong class="uidshort">BufferedFile</strong>
-</pre>
-
-<dl><dt>Known Subclasses:</dt>
-<dd>
- <ul class="subclass-list">
-<li class="private">ChannelFile</li><li>, <a href="paramiko.SFTPFile-class.html">SFTPFile</a></li> </ul>
-</dd></dl>
-
-<hr />
-<p>Reusable base class to implement python-style file buffering around a
- simpler stream.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__del__"></a><span class="summary-sig-name">__del__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.file-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.BufferedFile-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- x.__init__(...) initializes x; see x.__class__.__doc__ for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.file-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">iterator</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.BufferedFile-class.html#__iter__" class="summary-sig-name">__iter__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Returns an iterator that can be used to iterate over the lines in
- this file.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.file-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.BufferedFile-class.html#close" class="summary-sig-name">close</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Close the file.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.file-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.BufferedFile-class.html#flush" class="summary-sig-name">flush</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Write out any data in the write buffer.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.file-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">str</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.BufferedFile-class.html#next" class="summary-sig-name">next</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Returns the next line from the input, or raises <code
- class="link">StopIteration</code> when EOF is hit.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.file-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">str</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.BufferedFile-class.html#read" class="summary-sig-name">read</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">size</span>=<span class="summary-sig-default">None</span>)</span><br />
- Read at most <code>size</code> bytes from the file (less if we hit
- the end of the file first).</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.file-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">str</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.BufferedFile-class.html#readline" class="summary-sig-name">readline</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">size</span>=<span class="summary-sig-default">None</span>)</span><br />
- Read one entire line from the file.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.file-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">list</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.BufferedFile-class.html#readlines" class="summary-sig-name">readlines</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">sizehint</span>=<span class="summary-sig-default">None</span>)</span><br />
- Read all remaining lines using <a
- href="paramiko.BufferedFile-class.html#readline"
- class="link">readline</a> and return them as a list.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.file-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.BufferedFile-class.html#seek" class="summary-sig-name">seek</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">offset</span>,
- <span class="summary-sig-arg">whence</span>=<span class="summary-sig-default">0</span>)</span><br />
- Set the file's current position, like stdio's <code>fseek</code>.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.file-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">int</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.BufferedFile-class.html#tell" class="summary-sig-name">tell</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return the file's current position.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.file-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.BufferedFile-class.html#write" class="summary-sig-name">write</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">data</span>)</span><br />
- Write data to the file.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.file-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.BufferedFile-class.html#writelines" class="summary-sig-name">writelines</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">sequence</span>)</span><br />
- Write a sequence of strings to the file.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.file-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">iterator</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.BufferedFile-class.html#xreadlines" class="summary-sig-name">xreadlines</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Identical to <code>iter(f)</code>.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.file-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS VARIABLES ==================== -->
-<a name="section-ClassVariables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Class Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="FLAG_APPEND"></a><span class="summary-name">FLAG_APPEND</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="FLAG_BINARY"></a><span class="summary-name">FLAG_BINARY</span> = <code title="16">16</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="FLAG_BUFFERED"></a><span class="summary-name">FLAG_BUFFERED</span> = <code title="32">32</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="FLAG_LINE_BUFFERED"></a><span class="summary-name">FLAG_LINE_BUFFERED</span> = <code title="64">64</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="FLAG_READ"></a><span class="summary-name">FLAG_READ</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="FLAG_UNIVERSAL_NEWLINE"></a><span class="summary-name">FLAG_UNIVERSAL_NEWLINE</span> = <code title="128">128</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="FLAG_WRITE"></a><span class="summary-name">FLAG_WRITE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SEEK_CUR"></a><span class="summary-name">SEEK_CUR</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SEEK_END"></a><span class="summary-name">SEEK_END</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SEEK_SET"></a><span class="summary-name">SEEK_SET</span> = <code title="0">0</code>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.file-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see x.__class__.__doc__ for
- signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="__iter__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__iter__</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.file-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Returns an iterator that can be used to iterate over the lines in this
- file. This iterator happens to return the file itself, since a file is
- its own iterator.</p>
- <dl class="fields">
- <dt>Returns: iterator</dt>
- <dd>an interator.</dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'>ValueError</strong></code> - if the file is closed.</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="close"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">close</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.file-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Close the file. Future read and write operations will fail.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="flush"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">flush</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.file-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Write out any data in the write buffer. This may do nothing if write
- buffering is not turned on.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="next"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">next</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.file-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Returns the next line from the input, or raises <code
- class="link">StopIteration</code> when EOF is hit. Unlike python file
- objects, it's okay to mix calls to <code>next</code> and <a
- href="paramiko.BufferedFile-class.html#readline"
- class="link">readline</a>.</p>
- <dl class="fields">
- <dt>Returns: str</dt>
- <dd>a line read from the file.</dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'>StopIteration</strong></code> - when the end of the file is reached.</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="read"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">read</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">size</span>=<span class="sig-default">None</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.file-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Read at most <code>size</code> bytes from the file (less if we hit the
- end of the file first). If the <code>size</code> argument is negative or
- omitted, read all the remaining data in the file.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>size</code></strong> (int) - maximum number of bytes to read</li>
- </ul></dd>
- <dt>Returns: str</dt>
- <dd>data read from the file, or an empty string if EOF was
- encountered immediately</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="readline"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">readline</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">size</span>=<span class="sig-default">None</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.file-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Read one entire line from the file. A trailing newline character is
- kept in the string (but may be absent when a file ends with an incomplete
- line). If the size argument is present and non-negative, it is a maximum
- byte count (including the trailing newline) and an incomplete line may be
- returned. An empty string is returned only when EOF is encountered
- immediately.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>size</code></strong> (int) - maximum length of returned string.</li>
- </ul></dd>
- <dt>Returns: str</dt>
- <dd>next line of the file, or an empty string if the end of the file
- has been reached.</dd>
- </dl>
-<div class="fields"> <p><strong>Note:</strong>
- Unlike stdio's <code>fgets()</code>, the returned string contains
- null characters (<code>'\0'</code>) if they occurred in the input.
- </p>
-</div></td></tr></table>
-</div>
-<a name="readlines"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">readlines</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">sizehint</span>=<span class="sig-default">None</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.file-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Read all remaining lines using <a
- href="paramiko.BufferedFile-class.html#readline"
- class="link">readline</a> and return them as a list. If the optional
- <code>sizehint</code> argument is present, instead of reading up to EOF,
- whole lines totalling approximately sizehint bytes (possibly after
- rounding up to an internal buffer size) are read.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>sizehint</code></strong> (int) - desired maximum number of bytes to read.</li>
- </ul></dd>
- <dt>Returns: list</dt>
- <dd>list of lines read from the file.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="seek"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">seek</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">offset</span>,
- <span class="sig-arg">whence</span>=<span class="sig-default">0</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.file-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Set the file's current position, like stdio's <code>fseek</code>. Not
- all file objects support seeking.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>offset</code></strong> (int) - position to move to within the file, relative to
- <code>whence</code>.</li>
- <li><strong class="pname"><code>whence</code></strong> (int) - type of movement: 0 = absolute; 1 = relative to the current
- position; 2 = relative to the end of the file.</li>
- </ul></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'>IOError</strong></code> - if the file doesn't support random access.</li>
- </ul></dd>
- </dl>
-<div class="fields"> <p><strong>Note:</strong>
- If a file is opened in append mode (<code>'a'</code> or
- <code>'a+'</code>), any seek operations will be undone at the next
- write (as the file position will move back to the end of the file).
- </p>
-</div></td></tr></table>
-</div>
-<a name="tell"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">tell</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.file-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return the file's current position. This may not be accurate or
- useful if the underlying file doesn't support random access, or was
- opened in append mode.</p>
- <dl class="fields">
- <dt>Returns: int</dt>
- <dd>file position (in bytes).</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="write"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">write</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">data</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.file-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Write data to the file. If write buffering is on
- (<code>bufsize</code> was specified and non-zero), some or all of the
- data may not actually be written yet. (Use <a
- href="paramiko.BufferedFile-class.html#flush" class="link">flush</a> or
- <a href="paramiko.BufferedFile-class.html#close" class="link">close</a>
- to force buffered data to be written out.)</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>data</code></strong> (str) - data to write.</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="writelines"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">writelines</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">sequence</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.file-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Write a sequence of strings to the file. The sequence can be any
- iterable object producing strings, typically a list of strings. (The
- name is intended to match <a
- href="paramiko.BufferedFile-class.html#readlines"
- class="link">readlines</a>; <code>writelines</code> does not add line
- separators.)</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>sequence</code></strong> (sequence) - an iterable sequence of strings.</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="xreadlines"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">xreadlines</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.file-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Identical to <code>iter(f)</code>. This is a deprecated file
- interface that predates python iterator support.</p>
- <dl class="fields">
- <dt>Returns: iterator</dt>
- <dd>an iterator.</dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.Channel-class.html b/docs/paramiko.Channel-class.html
deleted file mode 100644
index aa4c6fa..0000000
--- a/docs/paramiko.Channel-class.html
+++ /dev/null
@@ -1,1998 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.Channel</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Class&nbsp;Channel
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.Channel-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Channel</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#Channel">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- <strong class="uidshort">Channel</strong>
-</pre>
-
-<hr />
-<p>A secure tunnel across an SSH <a href="paramiko.Transport-class.html"
- class="link">Transport</a>. A Channel is meant to behave like a socket,
- and has an API that should be indistinguishable from the python socket
- API.</p>
- <p>Because SSH2 has a windowing kind of flow control, if you stop reading
- data from a Channel and its buffer fills up, the server will be unable to
- send you any more data until you read some of it. (This won't affect
- other channels on the same transport -- all channels on a single
- transport are flow-controlled independently.) Similarly, if the server
- isn't reading data you send, calls to <a
- href="paramiko.Channel-class.html#send" class="link">send</a> may block,
- unless you set a timeout. This is exactly like a normal network socket,
- so it shouldn't be too surprising.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__del__"></a><span class="summary-sig-name">__del__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">chanid</span>)</span><br />
- Create a new channel.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">str</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#__repr__" class="summary-sig-name">__repr__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return a string representation of this object, for debugging.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#close" class="summary-sig-name">close</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Close the channel.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#exec_command" class="summary-sig-name">exec_command</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">command</span>)</span><br />
- Execute a command on the server.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">bool</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#exit_status_ready" class="summary-sig-name">exit_status_ready</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return true if the remote process has exited and returned an exit
- status.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">int</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#fileno" class="summary-sig-name">fileno</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Returns an OS-level file descriptor which can be used for polling,
- but but <i>not</i> for reading or writing.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">int</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#get_id" class="summary-sig-name">get_id</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return the ID # for this channel.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">str</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#get_name" class="summary-sig-name">get_name</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Get the name of this channel that was previously set by <a
- href="paramiko.Channel-class.html#set_name"
- class="link">set_name</a>.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#get_pty" class="summary-sig-name">get_pty</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">term</span>=<span class="summary-sig-default"><code class="variable-quote">'</code><code class="variable-string">vt100</code><code class="variable-quote">'</code></span>,
- <span class="summary-sig-arg">width</span>=<span class="summary-sig-default">80</span>,
- <span class="summary-sig-arg">height</span>=<span class="summary-sig-default">24</span>)</span><br />
- Request a pseudo-terminal from the server.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"><a href="paramiko.Transport-class.html" class="link">Transport</a></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#get_transport" class="summary-sig-name">get_transport</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return the <a href="paramiko.Transport-class.html"
- class="link">Transport</a> associated with this channel.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">tuple(str, int)</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#getpeername" class="summary-sig-name">getpeername</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return the address of the remote side of this Channel, if possible.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">float</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#gettimeout" class="summary-sig-name">gettimeout</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Returns the timeout in seconds (as a float) associated with socket
- operations, or <code>None</code> if no timeout is set.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#invoke_shell" class="summary-sig-name">invoke_shell</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Request an interactive shell session on this channel.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#invoke_subsystem" class="summary-sig-name">invoke_subsystem</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">subsystem</span>)</span><br />
- Request a subsystem on the server (for example, <code>sftp</code>).</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">ChannelFile</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#makefile" class="summary-sig-name">makefile</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*params</span>)</span><br />
- Return a file-like object associated with this channel.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">ChannelFile</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#makefile_stderr" class="summary-sig-name">makefile_stderr</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*params</span>)</span><br />
- Return a file-like object associated with this channel's stderr
- stream.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">str</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#recv" class="summary-sig-name">recv</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">nbytes</span>)</span><br />
- Receive data from the channel.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">int</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#recv_exit_status" class="summary-sig-name">recv_exit_status</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return the exit status from the process on the server.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">boolean</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#recv_ready" class="summary-sig-name">recv_ready</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Returns true if data is buffered and ready to be read from this
- channel.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">str</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#recv_stderr" class="summary-sig-name">recv_stderr</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">nbytes</span>)</span><br />
- Receive data from the channel's stderr stream.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">boolean</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#recv_stderr_ready" class="summary-sig-name">recv_stderr_ready</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Returns true if data is buffered and ready to be read from this
- channel's stderr stream.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#request_x11" class="summary-sig-name">request_x11</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">screen_number</span>=<span class="summary-sig-default">0</span>,
- <span class="summary-sig-arg">auth_protocol</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">auth_cookie</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">single_connection</span>=<span class="summary-sig-default">False</span>,
- <span class="summary-sig-arg">handler</span>=<span class="summary-sig-default">None</span>)</span><br />
- Request an x11 session on this channel.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#resize_pty" class="summary-sig-name">resize_pty</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">width</span>=<span class="summary-sig-default">80</span>,
- <span class="summary-sig-arg">height</span>=<span class="summary-sig-default">24</span>)</span><br />
- Resize the pseudo-terminal.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">int</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#send" class="summary-sig-name">send</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">s</span>)</span><br />
- Send data to the channel.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#send_exit_status" class="summary-sig-name">send_exit_status</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">status</span>)</span><br />
- Send the exit status of an executed command to the client.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">boolean</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#send_ready" class="summary-sig-name">send_ready</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Returns true if data can be written to this channel without blocking.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">int</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#send_stderr" class="summary-sig-name">send_stderr</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">s</span>)</span><br />
- Send data to the channel on the &quot;stderr&quot; stream.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#sendall" class="summary-sig-name">sendall</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">s</span>)</span><br />
- Send data to the channel, without allowing partial results.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#sendall_stderr" class="summary-sig-name">sendall_stderr</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">s</span>)</span><br />
- Send data to the channel's &quot;stderr&quot; stream, without
- allowing partial results.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">bool</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#set_combine_stderr" class="summary-sig-name">set_combine_stderr</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">combine</span>)</span><br />
- Set whether stderr should be combined into stdout on this channel.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#set_name" class="summary-sig-name">set_name</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">name</span>)</span><br />
- Set a name for this channel.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#setblocking" class="summary-sig-name">setblocking</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">blocking</span>)</span><br />
- Set blocking or non-blocking mode of the channel: if
- <code>blocking</code> is 0, the channel is set to non-blocking mode;
- otherwise it's set to blocking mode.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#settimeout" class="summary-sig-name">settimeout</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">timeout</span>)</span><br />
- Set a timeout on blocking read/write operations.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#shutdown" class="summary-sig-name">shutdown</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">how</span>)</span><br />
- Shut down one or both halves of the connection.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#shutdown_read" class="summary-sig-name">shutdown_read</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Shutdown the receiving side of this socket, closing the stream in the
- incoming direction.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Channel-class.html#shutdown_write" class="summary-sig-name">shutdown_write</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Shutdown the sending side of this socket, closing the stream in the
- outgoing direction.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">chanid</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Create a new channel. The channel is not associated with any
- particular session or <a href="paramiko.Transport-class.html"
- class="link">Transport</a> until the Transport attaches it. Normally you
- would only call this method from the constructor of a subclass of <a
- href="paramiko.Channel-class.html" class="link">Channel</a>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>chanid</code></strong> (int) - the ID of this channel, as passed by an existing <a
- href="paramiko.Transport-class.html" class="link">Transport</a>.</li>
- </ul></dd>
- <dt>Overrides:
- object.__init__
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="__repr__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__repr__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Representation operator)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return a string representation of this object, for debugging.</p>
- <dl class="fields">
- <dt>Returns: str</dt>
- <dt>Overrides:
- object.__repr__
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="close"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">close</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Close the channel. All future read/write operations on the channel
- will fail. The remote end will receive no more data (after queued data
- is flushed). Channels are automatically closed when their <a
- href="paramiko.Transport-class.html" class="link">Transport</a> is closed
- or when they are garbage collected.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="exec_command"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">exec_command</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">command</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Execute a command on the server. If the server allows it, the channel
- will then be directly connected to the stdin, stdout, and stderr of the
- command being executed.</p>
- <p>When the command finishes executing, the channel will be closed and
- can't be reused. You must open a new channel if you wish to execute
- another command.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>command</code></strong> (str) - a shell command to execute.</li>
- </ul></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if the request was rejected or the channel was closed</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="exit_status_ready"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">exit_status_ready</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return true if the remote process has exited and returned an exit
- status. You may use this to poll the process status if you don't want to
- block in <a href="paramiko.Channel-class.html#recv_exit_status"
- class="link">recv_exit_status</a>. Note that the server may not return an
- exit status in some cases (like bad servers).</p>
- <dl class="fields">
- <dt>Returns: bool</dt>
- <dd>True if <a href="paramiko.Channel-class.html#recv_exit_status"
- class="link">recv_exit_status</a> will return immediately</dd>
- </dl>
-<div class="fields"> <p><strong>Since:</strong>
- 1.7.3
- </p>
-</div></td></tr></table>
-</div>
-<a name="fileno"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">fileno</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Returns an OS-level file descriptor which can be used for polling, but
- but <i>not</i> for reading or writing. This is primaily to allow
- python's <code>select</code> module to work.</p>
- <p>The first time <code>fileno</code> is called on a channel, a pipe is
- created to simulate real OS-level file descriptor (FD) behavior. Because
- of this, two OS-level FDs are created, which will use up FDs faster than
- normal. (You won't notice this effect unless you have hundreds of
- channels open at the same time.)</p>
- <dl class="fields">
- <dt>Returns: int</dt>
- <dd>an OS-level file descriptor</dd>
- </dl>
-<div class="fields"> <p><strong>Warning:</strong>
- This method causes channel reads to be slightly less efficient.
- </p>
-</div></td></tr></table>
-</div>
-<a name="get_id"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_id</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return the ID # for this channel. The channel ID is unique across a
- <a href="paramiko.Transport-class.html" class="link">Transport</a> and
- usually a small number. It's also the number passed to <a
- href="paramiko.ServerInterface-class.html#check_channel_request"
- class="link">ServerInterface.check_channel_request</a> when determining
- whether to accept a channel request in server mode.</p>
- <dl class="fields">
- <dt>Returns: int</dt>
- <dd>the ID of this channel.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="get_name"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_name</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Get the name of this channel that was previously set by <a
- href="paramiko.Channel-class.html#set_name"
- class="link">set_name</a>.</p>
- <dl class="fields">
- <dt>Returns: str</dt>
- <dd>the name of this channel.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="get_pty"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_pty</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">term</span>=<span class="sig-default"><code class="variable-quote">'</code><code class="variable-string">vt100</code><code class="variable-quote">'</code></span>,
- <span class="sig-arg">width</span>=<span class="sig-default">80</span>,
- <span class="sig-arg">height</span>=<span class="sig-default">24</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Request a pseudo-terminal from the server. This is usually used right
- after creating a client channel, to ask the server to provide some basic
- terminal semantics for a shell invoked with <a
- href="paramiko.Channel-class.html#invoke_shell"
- class="link">invoke_shell</a>. It isn't necessary (or desirable) to call
- this method if you're going to exectue a single command with <a
- href="paramiko.Channel-class.html#exec_command"
- class="link">exec_command</a>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>term</code></strong> (str) - the terminal type to emulate (for example, <code>'vt100'</code>)</li>
- <li><strong class="pname"><code>width</code></strong> (int) - width (in characters) of the terminal screen</li>
- <li><strong class="pname"><code>height</code></strong> (int) - height (in characters) of the terminal screen</li>
- </ul></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if the request was rejected or the channel was closed</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="get_transport"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_transport</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return the <a href="paramiko.Transport-class.html"
- class="link">Transport</a> associated with this channel.</p>
- <dl class="fields">
- <dt>Returns: <a href="paramiko.Transport-class.html" class="link">Transport</a></dt>
- <dd>the <a href="paramiko.Transport-class.html"
- class="link">Transport</a> that was used to create this channel.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="getpeername"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">getpeername</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return the address of the remote side of this Channel, if possible.
- This is just a wrapper around <code>'getpeername'</code> on the
- Transport, used to provide enough of a socket-like interface to allow
- asyncore to work. (asyncore likes to call
- <code>'getpeername'</code>.)</p>
- <dl class="fields">
- <dt>Returns: tuple(str, int)</dt>
- <dd>the address if the remote host, if known</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="gettimeout"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">gettimeout</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Returns the timeout in seconds (as a float) associated with socket
- operations, or <code>None</code> if no timeout is set. This reflects the
- last call to <a href="paramiko.Channel-class.html#setblocking"
- class="link">setblocking</a> or <a
- href="paramiko.Channel-class.html#settimeout"
- class="link">settimeout</a>.</p>
- <dl class="fields">
- <dt>Returns: float</dt>
- <dd>timeout in seconds, or <code>None</code>.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="invoke_shell"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">invoke_shell</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Request an interactive shell session on this channel. If the server
- allows it, the channel will then be directly connected to the stdin,
- stdout, and stderr of the shell.</p>
- <p>Normally you would call <a href="paramiko.Channel-class.html#get_pty"
- class="link">get_pty</a> before this, in which case the shell will
- operate through the pty, and the channel will be connected to the stdin
- and stdout of the pty.</p>
- <p>When the shell exits, the channel will be closed and can't be reused.
- You must open a new channel if you wish to open another shell.</p>
- <dl class="fields">
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if the request was rejected or the channel was closed</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="invoke_subsystem"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">invoke_subsystem</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">subsystem</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Request a subsystem on the server (for example, <code>sftp</code>).
- If the server allows it, the channel will then be directly connected to
- the requested subsystem.</p>
- <p>When the subsystem finishes, the channel will be closed and can't be
- reused.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>subsystem</code></strong> (str) - name of the subsystem being requested.</li>
- </ul></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if the request was rejected or the channel was closed</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="makefile"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">makefile</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">*params</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return a file-like object associated with this channel. The optional
- <code>mode</code> and <code>bufsize</code> arguments are interpreted the
- same way as by the built-in <code>file()</code> function in python.</p>
- <dl class="fields">
- <dt>Returns: ChannelFile</dt>
- <dd>object which can be used for python file I/O.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="makefile_stderr"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">makefile_stderr</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">*params</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return a file-like object associated with this channel's stderr
- stream. Only channels using <a
- href="paramiko.Channel-class.html#exec_command"
- class="link">exec_command</a> or <a
- href="paramiko.Channel-class.html#invoke_shell"
- class="link">invoke_shell</a> without a pty will ever have data on the
- stderr stream.</p>
- <p>The optional <code>mode</code> and <code>bufsize</code> arguments are
- interpreted the same way as by the built-in <code>file()</code> function
- in python. For a client, it only makes sense to open this file for
- reading. For a server, it only makes sense to open this file for
- writing.</p>
- <dl class="fields">
- <dt>Returns: ChannelFile</dt>
- <dd>object which can be used for python file I/O.</dd>
- </dl>
-<div class="fields"> <p><strong>Since:</strong>
- 1.1
- </p>
-</div></td></tr></table>
-</div>
-<a name="recv"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">recv</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">nbytes</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Receive data from the channel. The return value is a string
- representing the data received. The maximum amount of data to be
- received at once is specified by <code>nbytes</code>. If a string of
- length zero is returned, the channel stream has closed.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>nbytes</code></strong> (int) - maximum number of bytes to read.</li>
- </ul></dd>
- <dt>Returns: str</dt>
- <dd>data.</dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'>socket.timeout</strong></code> - if no data is ready before the timeout set by <a
- href="paramiko.Channel-class.html#settimeout"
- class="link">settimeout</a>.</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="recv_exit_status"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">recv_exit_status</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return the exit status from the process on the server. This is mostly
- useful for retrieving the reults of an <a
- href="paramiko.Channel-class.html#exec_command"
- class="link">exec_command</a>. If the command hasn't finished yet, this
- method will wait until it does, or until the channel is closed. If no
- exit status is provided by the server, -1 is returned.</p>
- <dl class="fields">
- <dt>Returns: int</dt>
- <dd>the exit code of the process on the server.</dd>
- </dl>
-<div class="fields"> <p><strong>Since:</strong>
- 1.2
- </p>
-</div></td></tr></table>
-</div>
-<a name="recv_ready"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">recv_ready</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Returns true if data is buffered and ready to be read from this
- channel. A <code>False</code> result does not mean that the channel has
- closed; it means you may need to wait before more data arrives.</p>
- <dl class="fields">
- <dt>Returns: boolean</dt>
- <dd><code>True</code> if a <a href="paramiko.Channel-class.html#recv"
- class="link">recv</a> call on this channel would immediately
- return at least one byte; <code>False</code> otherwise.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="recv_stderr"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">recv_stderr</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">nbytes</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Receive data from the channel's stderr stream. Only channels using <a
- href="paramiko.Channel-class.html#exec_command"
- class="link">exec_command</a> or <a
- href="paramiko.Channel-class.html#invoke_shell"
- class="link">invoke_shell</a> without a pty will ever have data on the
- stderr stream. The return value is a string representing the data
- received. The maximum amount of data to be received at once is specified
- by <code>nbytes</code>. If a string of length zero is returned, the
- channel stream has closed.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>nbytes</code></strong> (int) - maximum number of bytes to read.</li>
- </ul></dd>
- <dt>Returns: str</dt>
- <dd>data.</dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'>socket.timeout</strong></code> - if no data is ready before the timeout set by <a
- href="paramiko.Channel-class.html#settimeout"
- class="link">settimeout</a>.</li>
- </ul></dd>
- </dl>
-<div class="fields"> <p><strong>Since:</strong>
- 1.1
- </p>
-</div></td></tr></table>
-</div>
-<a name="recv_stderr_ready"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">recv_stderr_ready</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Returns true if data is buffered and ready to be read from this
- channel's stderr stream. Only channels using <a
- href="paramiko.Channel-class.html#exec_command"
- class="link">exec_command</a> or <a
- href="paramiko.Channel-class.html#invoke_shell"
- class="link">invoke_shell</a> without a pty will ever have data on the
- stderr stream.</p>
- <dl class="fields">
- <dt>Returns: boolean</dt>
- <dd><code>True</code> if a <a
- href="paramiko.Channel-class.html#recv_stderr"
- class="link">recv_stderr</a> call on this channel would
- immediately return at least one byte; <code>False</code>
- otherwise.</dd>
- </dl>
-<div class="fields"> <p><strong>Since:</strong>
- 1.1
- </p>
-</div></td></tr></table>
-</div>
-<a name="request_x11"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">request_x11</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">screen_number</span>=<span class="sig-default">0</span>,
- <span class="sig-arg">auth_protocol</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">auth_cookie</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">single_connection</span>=<span class="sig-default">False</span>,
- <span class="sig-arg">handler</span>=<span class="sig-default">None</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Request an x11 session on this channel. If the server allows it,
- further x11 requests can be made from the server to the client, when an
- x11 application is run in a shell session.</p>
- <p>From RFC4254:</p>
-<pre class="literalblock">
- It is RECOMMENDED that the 'x11 authentication cookie' that is
- sent be a fake, random cookie, and that the cookie be checked and
- replaced by the real cookie when a connection request is received.
-</pre>
- <p>If you omit the auth_cookie, a new secure random 128-bit value will be
- generated, used, and returned. You will need to use this value to verify
- incoming x11 requests and replace them with the actual local x11 cookie
- (which requires some knoweldge of the x11 protocol).</p>
- <p>If a handler is passed in, the handler is called from another thread
- whenever a new x11 connection arrives. The default handler queues up
- incoming x11 connections, which may be retrieved using <a
- href="paramiko.Transport-class.html#accept"
- class="link">Transport.accept</a>. The handler's calling signature
- is:</p>
-<pre class="literalblock">
- handler(channel: Channel, (address: str, port: int))
-</pre>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>screen_number</code></strong> (int) - the x11 screen number (0, 10, etc)</li>
- <li><strong class="pname"><code>auth_protocol</code></strong> (str) - the name of the X11 authentication method used; if none is given,
- <code>&quot;MIT-MAGIC-COOKIE-1&quot;</code> is used</li>
- <li><strong class="pname"><code>auth_cookie</code></strong> (str) - hexadecimal string containing the x11 auth cookie; if none is
- given, a secure random 128-bit value is generated</li>
- <li><strong class="pname"><code>single_connection</code></strong> (bool) - if True, only a single x11 connection will be forwarded (by
- default, any number of x11 connections can arrive over this
- session)</li>
- <li><strong class="pname"><code>handler</code></strong> (function) - an optional handler to use for incoming X11 connections</li>
- </ul></dd>
- <dt>Returns:</dt>
- <dd>the auth_cookie used</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="resize_pty"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">resize_pty</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">width</span>=<span class="sig-default">80</span>,
- <span class="sig-arg">height</span>=<span class="sig-default">24</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Resize the pseudo-terminal. This can be used to change the width and
- height of the terminal emulation created in a previous <a
- href="paramiko.Channel-class.html#get_pty" class="link">get_pty</a>
- call.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>width</code></strong> (int) - new width (in characters) of the terminal screen</li>
- <li><strong class="pname"><code>height</code></strong> (int) - new height (in characters) of the terminal screen</li>
- </ul></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if the request was rejected or the channel was closed</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="send"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">send</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">s</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Send data to the channel. Returns the number of bytes sent, or 0 if
- the channel stream is closed. Applications are responsible for checking
- that all data has been sent: if only some of the data was transmitted,
- the application needs to attempt delivery of the remaining data.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>s</code></strong> (str) - data to send</li>
- </ul></dd>
- <dt>Returns: int</dt>
- <dd>number of bytes actually sent</dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'>socket.timeout</strong></code> - if no data could be sent before the timeout set by <a
- href="paramiko.Channel-class.html#settimeout"
- class="link">settimeout</a>.</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="send_exit_status"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">send_exit_status</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">status</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Send the exit status of an executed command to the client. (This
- really only makes sense in server mode.) Many clients expect to get some
- sort of status code back from an executed command after it completes.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>status</code></strong> (int) - the exit code of the process</li>
- </ul></dd>
- </dl>
-<div class="fields"> <p><strong>Since:</strong>
- 1.2
- </p>
-</div></td></tr></table>
-</div>
-<a name="send_ready"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">send_ready</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Returns true if data can be written to this channel without blocking.
- This means the channel is either closed (so any write attempt would
- return immediately) or there is at least one byte of space in the
- outbound buffer. If there is at least one byte of space in the outbound
- buffer, a <a href="paramiko.Channel-class.html#send"
- class="link">send</a> call will succeed immediately and return the number
- of bytes actually written.</p>
- <dl class="fields">
- <dt>Returns: boolean</dt>
- <dd><code>True</code> if a <a href="paramiko.Channel-class.html#send"
- class="link">send</a> call on this channel would immediately
- succeed or fail</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="send_stderr"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">send_stderr</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">s</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Send data to the channel on the &quot;stderr&quot; stream. This is
- normally only used by servers to send output from shell commands --
- clients won't use this. Returns the number of bytes sent, or 0 if the
- channel stream is closed. Applications are responsible for checking that
- all data has been sent: if only some of the data was transmitted, the
- application needs to attempt delivery of the remaining data.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>s</code></strong> (str) - data to send.</li>
- </ul></dd>
- <dt>Returns: int</dt>
- <dd>number of bytes actually sent.</dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'>socket.timeout</strong></code> - if no data could be sent before the timeout set by <a
- href="paramiko.Channel-class.html#settimeout"
- class="link">settimeout</a>.</li>
- </ul></dd>
- </dl>
-<div class="fields"> <p><strong>Since:</strong>
- 1.1
- </p>
-</div></td></tr></table>
-</div>
-<a name="sendall"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">sendall</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">s</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Send data to the channel, without allowing partial results. Unlike <a
- href="paramiko.Channel-class.html#send" class="link">send</a>, this
- method continues to send data from the given string until either all data
- has been sent or an error occurs. Nothing is returned.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>s</code></strong> (str) - data to send.</li>
- </ul></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'>socket.timeout</strong></code> - if sending stalled for longer than the timeout set by <a
- href="paramiko.Channel-class.html#settimeout"
- class="link">settimeout</a>.</li>
- <li><code><strong class='fraise'>socket.error</strong></code> - if an error occured before the entire string was sent.</li>
- </ul></dd>
- </dl>
-<div class="fields"> <p><strong>Note:</strong>
- If the channel is closed while only part of the data hase been
- sent, there is no way to determine how much data (if any) was sent.
- This is irritating, but identically follows python's API.
- </p>
-</div></td></tr></table>
-</div>
-<a name="sendall_stderr"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">sendall_stderr</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">s</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Send data to the channel's &quot;stderr&quot; stream, without allowing
- partial results. Unlike <a
- href="paramiko.Channel-class.html#send_stderr"
- class="link">send_stderr</a>, this method continues to send data from the
- given string until all data has been sent or an error occurs. Nothing is
- returned.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>s</code></strong> (str) - data to send to the client as &quot;stderr&quot; output.</li>
- </ul></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'>socket.timeout</strong></code> - if sending stalled for longer than the timeout set by <a
- href="paramiko.Channel-class.html#settimeout"
- class="link">settimeout</a>.</li>
- <li><code><strong class='fraise'>socket.error</strong></code> - if an error occured before the entire string was sent.</li>
- </ul></dd>
- </dl>
-<div class="fields"> <p><strong>Since:</strong>
- 1.1
- </p>
-</div></td></tr></table>
-</div>
-<a name="set_combine_stderr"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">set_combine_stderr</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">combine</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Set whether stderr should be combined into stdout on this channel. The
- default is <code>False</code>, but in some cases it may be convenient to
- have both streams combined.</p>
- <p>If this is <code>False</code>, and <a
- href="paramiko.Channel-class.html#exec_command"
- class="link">exec_command</a> is called (or <code>invoke_shell</code>
- with no pty), output to stderr will not show up through the <a
- href="paramiko.Channel-class.html#recv" class="link">recv</a> and <a
- href="paramiko.Channel-class.html#recv_ready" class="link">recv_ready</a>
- calls. You will have to use <a
- href="paramiko.Channel-class.html#recv_stderr"
- class="link">recv_stderr</a> and <a
- href="paramiko.Channel-class.html#recv_stderr_ready"
- class="link">recv_stderr_ready</a> to get stderr output.</p>
- <p>If this is <code>True</code>, data will never show up via <a
- href="paramiko.Channel-class.html#recv_stderr"
- class="link">recv_stderr</a> or <a
- href="paramiko.Channel-class.html#recv_stderr_ready"
- class="link">recv_stderr_ready</a>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>combine</code></strong> (bool) - <code>True</code> if stderr output should be combined into stdout
- on this channel.</li>
- </ul></dd>
- <dt>Returns: bool</dt>
- <dd>previous setting.</dd>
- </dl>
-<div class="fields"> <p><strong>Since:</strong>
- 1.1
- </p>
-</div></td></tr></table>
-</div>
-<a name="set_name"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">set_name</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">name</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Set a name for this channel. Currently it's only used to set the name
- of the channel in logfile entries. The name can be fetched with the <a
- href="paramiko.Channel-class.html#get_name" class="link">get_name</a>
- method.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>name</code></strong> (str) - new channel name</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="setblocking"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">setblocking</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">blocking</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Set blocking or non-blocking mode of the channel: if
- <code>blocking</code> is 0, the channel is set to non-blocking mode;
- otherwise it's set to blocking mode. Initially all channels are in
- blocking mode.</p>
- <p>In non-blocking mode, if a <a href="paramiko.Channel-class.html#recv"
- class="link">recv</a> call doesn't find any data, or if a <a
- href="paramiko.Channel-class.html#send" class="link">send</a> call can't
- immediately dispose of the data, an error exception is raised. In
- blocking mode, the calls block until they can proceed. An EOF condition
- is considered &quot;immediate data&quot; for <a
- href="paramiko.Channel-class.html#recv" class="link">recv</a>, so if the
- channel is closed in the read direction, it will never block.</p>
- <p><code>chan.setblocking(0)</code> is equivalent to
- <code>chan.settimeout(0)</code>; <code>chan.setblocking(1)</code> is
- equivalent to <code>chan.settimeout(None)</code>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>blocking</code></strong> (int) - 0 to set non-blocking mode; non-0 to set blocking mode.</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="settimeout"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">settimeout</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">timeout</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Set a timeout on blocking read/write operations. The
- <code>timeout</code> argument can be a nonnegative float expressing
- seconds, or <code>None</code>. If a float is given, subsequent channel
- read/write operations will raise a timeout exception if the timeout
- period value has elapsed before the operation has completed. Setting a
- timeout of <code>None</code> disables timeouts on socket operations.</p>
- <p><code>chan.settimeout(0.0)</code> is equivalent to
- <code>chan.setblocking(0)</code>; <code>chan.settimeout(None)</code> is
- equivalent to <code>chan.setblocking(1)</code>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>timeout</code></strong> (float) - seconds to wait for a pending read/write operation before raising
- <code>socket.timeout</code>, or <code>None</code> for no timeout.</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="shutdown"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">shutdown</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">how</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Shut down one or both halves of the connection. If <code>how</code>
- is 0, further receives are disallowed. If <code>how</code> is 1, further
- sends are disallowed. If <code>how</code> is 2, further sends and
- receives are disallowed. This closes the stream in one or both
- directions.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>how</code></strong> (int) - 0 (stop receiving), 1 (stop sending), or 2 (stop receiving and
- sending).</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="shutdown_read"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">shutdown_read</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Shutdown the receiving side of this socket, closing the stream in the
- incoming direction. After this call, future reads on this channel will
- fail instantly. This is a convenience method, equivalent to
- <code>shutdown(0)</code>, for people who don't make it a habit to
- memorize unix constants from the 1970s.</p>
- <dl class="fields">
- </dl>
-<div class="fields"> <p><strong>Since:</strong>
- 1.2
- </p>
-</div></td></tr></table>
-</div>
-<a name="shutdown_write"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">shutdown_write</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Shutdown the sending side of this socket, closing the stream in the
- outgoing direction. After this call, future writes on this channel will
- fail instantly. This is a convenience method, equivalent to
- <code>shutdown(1)</code>, for people who don't make it a habit to
- memorize unix constants from the 1970s.</p>
- <dl class="fields">
- </dl>
-<div class="fields"> <p><strong>Since:</strong>
- 1.2
- </p>
-</div></td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.ChannelException-class.html b/docs/paramiko.ChannelException-class.html
deleted file mode 100644
index 26e4f7d..0000000
--- a/docs/paramiko.ChannelException-class.html
+++ /dev/null
@@ -1,250 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.ChannelException</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Class&nbsp;ChannelException
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.ChannelException-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class ChannelException</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#ChannelException">source&nbsp;code</a></span></p>
-<pre class="base-tree">
- object --+
- |
-exceptions.BaseException --+
- |
- exceptions.Exception --+
- |
- <a href="paramiko.SSHException-class.html">SSHException</a> --+
- |
- <strong class="uidshort">ChannelException</strong>
-</pre>
-
-<hr />
-<p>Exception raised when an attempt to open a new <a
- href="paramiko.Channel-class.html" class="link">Channel</a> fails.</p>
-
-<hr />
-<div class="fields"> <p><strong>Since:</strong>
- 1.6
- </p>
-</div><!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.ChannelException-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">code</span>,
- <span class="summary-sig-arg">text</span>)</span><br />
- x.__init__(...) initializes x; see x.__class__.__doc__ for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.ssh_exception-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.Exception</code></b>:
- <code>__new__</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.BaseException</code></b>:
- <code>__delattr__</code>,
- <code>__getattribute__</code>,
- <code>__getitem__</code>,
- <code>__getslice__</code>,
- <code>__reduce__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__setstate__</code>,
- <code>__str__</code>,
- <code>__unicode__</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__format__</code>,
- <code>__hash__</code>,
- <code>__reduce_ex__</code>,
- <code>__sizeof__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== INSTANCE VARIABLES ==================== -->
-<a name="section-InstanceVariables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">int</span>
- </td><td class="summary">
- <a name="code"></a><span class="summary-name">code</span><br />
- the error code returned by the server
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.BaseException</code></b>:
- <code>args</code>,
- <code>message</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">code</span>,
- <span class="sig-arg">text</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.ssh_exception-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see x.__class__.__doc__ for
- signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.DSSKey-class.html b/docs/paramiko.DSSKey-class.html
deleted file mode 100644
index 8f44a94..0000000
--- a/docs/paramiko.DSSKey-class.html
+++ /dev/null
@@ -1,750 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.DSSKey</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Class&nbsp;DSSKey
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.DSSKey-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class DSSKey</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#DSSKey">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- <a href="paramiko.PKey-class.html">PKey</a> --+
- |
- <strong class="uidshort">DSSKey</strong>
-</pre>
-
-<hr />
-<p>Representation of a DSS key which can be used to sign an verify SSH2
- data.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.DSSKey-class.html#__hash__" class="summary-sig-name">__hash__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- hash(x)</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.dsskey-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.DSSKey-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">msg</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">data</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">filename</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">password</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">vals</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">file_obj</span>=<span class="summary-sig-default">None</span>)</span><br />
- Create a new instance of this public key type.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.dsskey-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">str</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.DSSKey-class.html#__str__" class="summary-sig-name">__str__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return a string of an SSH <a href="paramiko.Message-class.html"
- class="link">Message</a> made up of the public part(s) of this key.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.dsskey-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">bool</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.DSSKey-class.html#can_sign" class="summary-sig-name">can_sign</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return <code>True</code> if this key has the private part necessary
- for signing data.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.dsskey-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">int</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.DSSKey-class.html#get_bits" class="summary-sig-name">get_bits</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return the number of significant bits in this key.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.dsskey-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">str</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.DSSKey-class.html#get_name" class="summary-sig-name">get_name</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return the name of this private key implementation.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.dsskey-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"><a href="paramiko.Message-class.html" class="link">Message</a></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.DSSKey-class.html#sign_ssh_data" class="summary-sig-name">sign_ssh_data</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">rng</span>,
- <span class="summary-sig-arg">data</span>)</span><br />
- Sign a blob of data with this private key, and return a <a
- href="paramiko.Message-class.html" class="link">Message</a>
- representing an SSH signature message.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.dsskey-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">boolean</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.DSSKey-class.html#verify_ssh_sig" class="summary-sig-name">verify_ssh_sig</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">data</span>,
- <span class="summary-sig-arg">msg</span>)</span><br />
- Given a blob of data, and an SSH message representing a signature of
- that data, verify that it was signed with this key.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.dsskey-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.DSSKey-class.html#write_private_key" class="summary-sig-name">write_private_key</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">file_obj</span>,
- <span class="summary-sig-arg">password</span>=<span class="summary-sig-default">None</span>)</span><br />
- Write private key contents into a file (or file-like) object.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.dsskey-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.DSSKey-class.html#write_private_key_file" class="summary-sig-name">write_private_key_file</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">filename</span>,
- <span class="summary-sig-arg">password</span>=<span class="summary-sig-default">None</span>)</span><br />
- Write private key contents into a file.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.dsskey-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code><a href="paramiko.PKey-class.html">PKey</a></code></b>:
- <code><a href="paramiko.PKey-class.html#__cmp__">__cmp__</a></code>,
- <code><a href="paramiko.PKey-class.html#get_base64">get_base64</a></code>,
- <code><a href="paramiko.PKey-class.html#get_fingerprint">get_fingerprint</a></code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS METHODS ==================== -->
-<a name="section-ClassMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Class Methods</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code><a href="paramiko.PKey-class.html">PKey</a></code></b>:
- <code><a href="paramiko.PKey-class.html#from_private_key">from_private_key</a></code>,
- <code><a href="paramiko.PKey-class.html#from_private_key_file">from_private_key_file</a></code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== STATIC METHODS ==================== -->
-<a name="section-StaticMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Static Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"><a href="paramiko.DSSKey-class.html" class="link">DSSKey</a></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.DSSKey-class.html#generate" class="summary-sig-name">generate</a>(<span class="summary-sig-arg">bits</span>=<span class="summary-sig-default">1024</span>,
- <span class="summary-sig-arg">progress_func</span>=<span class="summary-sig-default">None</span>)</span><br />
- Generate a new private DSS key.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko-pysrc.html#DSSKey.generate">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__hash__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__hash__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Hashing function)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.dsskey-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>hash(x)</p>
- <dl class="fields">
- <dt>Overrides:
- object.__hash__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">msg</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">data</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">filename</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">password</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">vals</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">file_obj</span>=<span class="sig-default">None</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.dsskey-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Create a new instance of this public key type. If <code>msg</code> is
- given, the key's public part(s) will be filled in from the message. If
- <code>data</code> is given, the key's public part(s) will be filled in
- from the string.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>msg</code></strong> - an optional SSH <a href="paramiko.Message-class.html"
- class="link">Message</a> containing a public key of this type.</li>
- <li><strong class="pname"><code>data</code></strong> - an optional string containing a public key of this type</li>
- </ul></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if a key cannot be created from the <code>data</code> or
- <code>msg</code> given, or no key was passed in.</li>
- </ul></dd>
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="__str__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__str__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Informal representation operator)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.dsskey-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return a string of an SSH <a href="paramiko.Message-class.html"
- class="link">Message</a> made up of the public part(s) of this key. This
- string is suitable for passing to <a
- href="paramiko.AgentKey-class.html#__init__" class="link">__init__</a> to
- re-create the key object later.</p>
- <dl class="fields">
- <dt>Returns: str</dt>
- <dd>string representation of an SSH key message.</dd>
- <dt>Overrides:
- object.__str__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="can_sign"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">can_sign</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.dsskey-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return <code>True</code> if this key has the private part necessary
- for signing data.</p>
- <dl class="fields">
- <dt>Returns: bool</dt>
- <dd><code>True</code> if this is a private key.</dd>
- <dt>Overrides:
- <a href="paramiko.PKey-class.html#can_sign">PKey.can_sign</a>
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="generate"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">generate</span>(<span class="sig-arg">bits</span>=<span class="sig-default">1024</span>,
- <span class="sig-arg">progress_func</span>=<span class="sig-default">None</span>)</span>
- <br /><em class="fname">Static Method</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko-pysrc.html#DSSKey.generate">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Generate a new private DSS key. This factory function can be used to
- generate a new host key or authentication key.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>bits</code></strong> (int) - number of bits the generated key should be.</li>
- <li><strong class="pname"><code>progress_func</code></strong> (function) - an optional function to call at key points in key generation
- (used by <code>pyCrypto.PublicKey</code>).</li>
- </ul></dd>
- <dt>Returns: <a href="paramiko.DSSKey-class.html" class="link">DSSKey</a></dt>
- <dd>new private key</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="get_bits"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_bits</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.dsskey-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return the number of significant bits in this key. This is useful for
- judging the relative security of a key.</p>
- <dl class="fields">
- <dt>Returns: int</dt>
- <dd>bits in the key.</dd>
- <dt>Overrides:
- <a href="paramiko.PKey-class.html#get_bits">PKey.get_bits</a>
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="get_name"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_name</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.dsskey-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return the name of this private key implementation.</p>
- <dl class="fields">
- <dt>Returns: str</dt>
- <dd>name of this private key type, in SSH terminology (for example,
- <code>&quot;ssh-rsa&quot;</code>).</dd>
- <dt>Overrides:
- <a href="paramiko.PKey-class.html#get_name">PKey.get_name</a>
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="sign_ssh_data"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">sign_ssh_data</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">rng</span>,
- <span class="sig-arg">data</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.dsskey-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Sign a blob of data with this private key, and return a <a
- href="paramiko.Message-class.html" class="link">Message</a> representing
- an SSH signature message.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>rng</code></strong> - a secure random number generator.</li>
- <li><strong class="pname"><code>data</code></strong> - the data to sign.</li>
- </ul></dd>
- <dt>Returns: <a href="paramiko.Message-class.html" class="link">Message</a></dt>
- <dd>an SSH signature message.</dd>
- <dt>Overrides:
- <a href="paramiko.PKey-class.html#sign_ssh_data">PKey.sign_ssh_data</a>
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="verify_ssh_sig"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">verify_ssh_sig</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">data</span>,
- <span class="sig-arg">msg</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.dsskey-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Given a blob of data, and an SSH message representing a signature of
- that data, verify that it was signed with this key.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>data</code></strong> - the data that was signed.</li>
- <li><strong class="pname"><code>msg</code></strong> - an SSH signature message</li>
- </ul></dd>
- <dt>Returns: boolean</dt>
- <dd><code>True</code> if the signature verifies correctly;
- <code>False</code> otherwise.</dd>
- <dt>Overrides:
- <a href="paramiko.PKey-class.html#verify_ssh_sig">PKey.verify_ssh_sig</a>
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="write_private_key"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">write_private_key</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">file_obj</span>,
- <span class="sig-arg">password</span>=<span class="sig-default">None</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.dsskey-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Write private key contents into a file (or file-like) object. If the
- password is not <code>None</code>, the key is encrypted before
- writing.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>file_obj</code></strong> - the file object to write into</li>
- <li><strong class="pname"><code>password</code></strong> - an optional password to use to encrypt the key</li>
- </ul></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'>IOError</strong></code> - if there was an error writing to the file</li>
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if the key is invalid</li>
- </ul></dd>
- <dt>Overrides:
- <a href="paramiko.PKey-class.html#write_private_key">PKey.write_private_key</a>
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="write_private_key_file"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">write_private_key_file</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">filename</span>,
- <span class="sig-arg">password</span>=<span class="sig-default">None</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.dsskey-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Write private key contents into a file. If the password is not
- <code>None</code>, the key is encrypted before writing.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>filename</code></strong> - name of the file to write</li>
- <li><strong class="pname"><code>password</code></strong> - an optional password to use to encrypt the key file</li>
- </ul></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'>IOError</strong></code> - if there was an error writing the file</li>
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if the key is invalid</li>
- </ul></dd>
- <dt>Overrides:
- <a href="paramiko.PKey-class.html#write_private_key_file">PKey.write_private_key_file</a>
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.HostKeys-class.html b/docs/paramiko.HostKeys-class.html
deleted file mode 100644
index c823af5..0000000
--- a/docs/paramiko.HostKeys-class.html
+++ /dev/null
@@ -1,643 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.HostKeys</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Class&nbsp;HostKeys
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.HostKeys-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class HostKeys</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#HostKeys">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-UserDict.DictMixin --+
- |
- <strong class="uidshort">HostKeys</strong>
-</pre>
-
-<hr />
-<p>Representation of an openssh-style &quot;known hosts&quot; file. Host
- keys can be read from one or more files, and then individual hosts can be
- looked up to verify server keys during SSH negotiation.</p>
- <p>A HostKeys object can be treated like a dict; any dict lookup is
- equivalent to calling <a href="paramiko.HostKeys-class.html#lookup"
- class="link">lookup</a>.</p>
-
-<hr />
-<div class="fields"> <p><strong>Since:</strong>
- 1.5.3
- </p>
-</div><!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__getitem__"></a><span class="summary-sig-name">__getitem__</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">key</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.hostkeys-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.HostKeys-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">filename</span>=<span class="summary-sig-default">None</span>)</span><br />
- Create a new HostKeys object, optionally loading keys from an openssh
- style host-key file.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.hostkeys-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__setitem__"></a><span class="summary-sig-name">__setitem__</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">hostname</span>,
- <span class="summary-sig-arg">entry</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.hostkeys-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.HostKeys-class.html#add" class="summary-sig-name">add</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">hostname</span>,
- <span class="summary-sig-arg">keytype</span>,
- <span class="summary-sig-arg">key</span>)</span><br />
- Add a host key entry to the table.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.hostkeys-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">bool</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.HostKeys-class.html#check" class="summary-sig-name">check</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">hostname</span>,
- <span class="summary-sig-arg">key</span>)</span><br />
- Return True if the given key is associated with the given hostname in
- this dictionary.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.hostkeys-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.HostKeys-class.html#clear" class="summary-sig-name">clear</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Remove all host keys from the dictionary.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.hostkeys-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="keys"></a><span class="summary-sig-name">keys</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.hostkeys-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.HostKeys-class.html#load" class="summary-sig-name">load</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">filename</span>)</span><br />
- Read a file of known SSH host keys, in the format used by openssh.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.hostkeys-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">dict(str, <a href="paramiko.PKey-class.html" class="link">PKey</a>)</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.HostKeys-class.html#lookup" class="summary-sig-name">lookup</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">hostname</span>)</span><br />
- Find a hostkey entry for a given hostname or IP.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.hostkeys-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.HostKeys-class.html#save" class="summary-sig-name">save</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">filename</span>)</span><br />
- Save host keys into a file, in the format used by openssh.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.hostkeys-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.HostKeys-class.html#values" class="summary-sig-name">values</a>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.hostkeys-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>UserDict.DictMixin</code></b>:
- <code>__cmp__</code>,
- <code>__contains__</code>,
- <code>__iter__</code>,
- <code>__len__</code>,
- <code>__repr__</code>,
- <code>get</code>,
- <code>has_key</code>,
- <code>items</code>,
- <code>iteritems</code>,
- <code>iterkeys</code>,
- <code>itervalues</code>,
- <code>pop</code>,
- <code>popitem</code>,
- <code>setdefault</code>,
- <code>update</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== STATIC METHODS ==================== -->
-<a name="section-StaticMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Static Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">str</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.HostKeys-class.html#hash_host" class="summary-sig-name">hash_host</a>(<span class="summary-sig-arg">hostname</span>,
- <span class="summary-sig-arg">salt</span>=<span class="summary-sig-default">None</span>)</span><br />
- Return a &quot;hashed&quot; form of the hostname, as used by openssh
- when storing hashed hostnames in the known_hosts file.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko-pysrc.html#HostKeys.hash_host">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">filename</span>=<span class="sig-default">None</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.hostkeys-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Create a new HostKeys object, optionally loading keys from an openssh
- style host-key file.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>filename</code></strong> (str) - filename to load host keys from, or <code>None</code></li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="add"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">add</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">hostname</span>,
- <span class="sig-arg">keytype</span>,
- <span class="sig-arg">key</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.hostkeys-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Add a host key entry to the table. Any existing entry for a
- <code>(hostname, keytype)</code> pair will be replaced.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>hostname</code></strong> (str) - the hostname (or IP) to add</li>
- <li><strong class="pname"><code>keytype</code></strong> (str) - key type (<code>&quot;ssh-rsa&quot;</code> or
- <code>&quot;ssh-dss&quot;</code>)</li>
- <li><strong class="pname"><code>key</code></strong> (<a href="paramiko.PKey-class.html" class="link">PKey</a>) - the key to add</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="check"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">check</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">hostname</span>,
- <span class="sig-arg">key</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.hostkeys-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return True if the given key is associated with the given hostname in
- this dictionary.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>hostname</code></strong> (str) - hostname (or IP) of the SSH server</li>
- <li><strong class="pname"><code>key</code></strong> (<a href="paramiko.PKey-class.html" class="link">PKey</a>) - the key to check</li>
- </ul></dd>
- <dt>Returns: bool</dt>
- <dd><code>True</code> if the key is associated with the hostname;
- <code>False</code> if not</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="clear"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">clear</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.hostkeys-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Remove all host keys from the dictionary.</p>
- <dl class="fields">
- <dt>Overrides:
- UserDict.DictMixin.clear
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="hash_host"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">hash_host</span>(<span class="sig-arg">hostname</span>,
- <span class="sig-arg">salt</span>=<span class="sig-default">None</span>)</span>
- <br /><em class="fname">Static Method</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko-pysrc.html#HostKeys.hash_host">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return a &quot;hashed&quot; form of the hostname, as used by openssh
- when storing hashed hostnames in the known_hosts file.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>hostname</code></strong> (str) - the hostname to hash</li>
- <li><strong class="pname"><code>salt</code></strong> (str) - optional salt to use when hashing (must be 20 bytes long)</li>
- </ul></dd>
- <dt>Returns: str</dt>
- <dd>the hashed hostname</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="load"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">load</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">filename</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.hostkeys-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Read a file of known SSH host keys, in the format used by openssh.
- This type of file unfortunately doesn't exist on Windows, but on posix,
- it will usually be stored in
- <code>os.path.expanduser(&quot;~/.ssh/known_hosts&quot;)</code>.</p>
- <p>If this method is called multiple times, the host keys are merged, not
- cleared. So multiple calls to <code>load</code> will just call <a
- href="paramiko.HostKeys-class.html#add" class="link">add</a>, replacing
- any existing entries and adding new ones.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>filename</code></strong> (str) - name of the file to read host keys from</li>
- </ul></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'>IOError</strong></code> - if there was an error reading the file</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="lookup"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">lookup</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">hostname</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.hostkeys-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Find a hostkey entry for a given hostname or IP. If no entry is
- found, <code>None</code> is returned. Otherwise a dictionary of keytype
- to key is returned. The keytype will be either
- <code>&quot;ssh-rsa&quot;</code> or <code>&quot;ssh-dss&quot;</code>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>hostname</code></strong> (str) - the hostname (or IP) to lookup</li>
- </ul></dd>
- <dt>Returns: dict(str, <a href="paramiko.PKey-class.html" class="link">PKey</a>)</dt>
- <dd>keys associated with this host (or <code>None</code>)</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="save"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">save</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">filename</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.hostkeys-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Save host keys into a file, in the format used by openssh. The order
- of keys in the file will be preserved when possible (if these keys were
- loaded from a file originally). The single exception is that combined
- lines will be split into individual key lines, which is arguably a
- bug.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>filename</code></strong> (str) - name of the file to write</li>
- </ul></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'>IOError</strong></code> - if there was an error writing the file</li>
- </ul></dd>
- </dl>
-<div class="fields"> <p><strong>Since:</strong>
- 1.6.1
- </p>
-</div></td></tr></table>
-</div>
-<a name="values"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">values</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.hostkeys-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
-
- <dl class="fields">
- <dt>Overrides:
- UserDict.DictMixin.values
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.Message-class.html b/docs/paramiko.Message-class.html
deleted file mode 100644
index 6e7d0be..0000000
--- a/docs/paramiko.Message-class.html
+++ /dev/null
@@ -1,1101 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.Message</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Class&nbsp;Message
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.Message-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Message</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#Message">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- <strong class="uidshort">Message</strong>
-</pre>
-
-<hr />
-<p>An SSH2 <i>Message</i> is a stream of bytes that encodes some
- combination of strings, integers, bools, and infinite-precision integers
- (known in python as <i>long</i>s). This class builds or breaks down such
- a byte stream.</p>
- <p>Normally you don't need to deal with anything this low-level, but it's
- exposed for people implementing custom extensions, or features that
- paramiko doesn't support yet.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Message-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">content</span>=<span class="summary-sig-default">None</span>)</span><br />
- Create a new SSH2 Message.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">string</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Message-class.html#__repr__" class="summary-sig-name">__repr__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Returns a string representation of this object, for debugging.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">string</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Message-class.html#__str__" class="summary-sig-name">__str__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return the byte stream content of this Message, as a string.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Message-class.html#add" class="summary-sig-name">add</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">*seq</span>)</span><br />
- Add a sequence of items to the stream.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Message-class.html#add_boolean" class="summary-sig-name">add_boolean</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">b</span>)</span><br />
- Add a boolean value to the stream.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Message-class.html#add_byte" class="summary-sig-name">add_byte</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">b</span>)</span><br />
- Write a single byte to the stream, without any formatting.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Message-class.html#add_bytes" class="summary-sig-name">add_bytes</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">b</span>)</span><br />
- Write bytes to the stream, without any formatting.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Message-class.html#add_int" class="summary-sig-name">add_int</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">n</span>)</span><br />
- Add an integer to the stream.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Message-class.html#add_int64" class="summary-sig-name">add_int64</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">n</span>)</span><br />
- Add a 64-bit int to the stream.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Message-class.html#add_list" class="summary-sig-name">add_list</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">l</span>)</span><br />
- Add a list of strings to the stream.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Message-class.html#add_mpint" class="summary-sig-name">add_mpint</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">z</span>)</span><br />
- Add a long int to the stream, encoded as an infinite-precision
- integer.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Message-class.html#add_string" class="summary-sig-name">add_string</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">s</span>)</span><br />
- Add a string to the stream.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">bool</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Message-class.html#get_boolean" class="summary-sig-name">get_boolean</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Fetch a boolean from the stream.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">string</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Message-class.html#get_byte" class="summary-sig-name">get_byte</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return the next byte of the Message, without decomposing it.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">string</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Message-class.html#get_bytes" class="summary-sig-name">get_bytes</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">n</span>)</span><br />
- Return the next <code>n</code> bytes of the Message, without
- decomposing into an int, string, etc.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">int</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Message-class.html#get_int" class="summary-sig-name">get_int</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Fetch an int from the stream.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">long</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Message-class.html#get_int64" class="summary-sig-name">get_int64</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Fetch a 64-bit int from the stream.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">list of strings</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Message-class.html#get_list" class="summary-sig-name">get_list</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Fetch a list of strings from the stream.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">long</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Message-class.html#get_mpint" class="summary-sig-name">get_mpint</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Fetch a long int (mpint) from the stream.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">string</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Message-class.html#get_remainder" class="summary-sig-name">get_remainder</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return the bytes of this Message that haven't already been parsed and
- returned.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">string</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Message-class.html#get_so_far" class="summary-sig-name">get_so_far</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Returns the bytes of this Message that have been parsed and returned.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">string</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Message-class.html#get_string" class="summary-sig-name">get_string</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Fetch a string from the stream.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="rewind"></a><span class="summary-sig-name">rewind</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Rewind the message to the beginning as if no items had been parsed
- out of it yet.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">content</span>=<span class="sig-default">None</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Create a new SSH2 Message.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>content</code></strong> (string) - the byte stream to use as the Message content (passed in only
- when decomposing a Message).</li>
- </ul></dd>
- <dt>Overrides:
- object.__init__
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="__repr__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__repr__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Representation operator)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Returns a string representation of this object, for debugging.</p>
- <dl class="fields">
- <dt>Returns: string</dt>
- <dt>Overrides:
- object.__repr__
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="__str__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__str__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Informal representation operator)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return the byte stream content of this Message, as a string.</p>
- <dl class="fields">
- <dt>Returns: string</dt>
- <dd>the contents of this Message.</dd>
- <dt>Overrides:
- object.__str__
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="add"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">add</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">*seq</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Add a sequence of items to the stream. The values are encoded based
- on their type: str, int, bool, list, or long.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>seq</code></strong> (sequence) - the sequence of items</li>
- </ul></dd>
- </dl>
-<div class="fields"> <p><strong>Bug:</strong>
- longs are encoded non-deterministically. Don't use this method.
- </p>
-</div></td></tr></table>
-</div>
-<a name="add_boolean"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">add_boolean</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">b</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Add a boolean value to the stream.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>b</code></strong> (bool) - boolean value to add</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="add_byte"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">add_byte</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">b</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Write a single byte to the stream, without any formatting.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>b</code></strong> (str) - byte to add</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="add_bytes"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">add_bytes</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">b</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Write bytes to the stream, without any formatting.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>b</code></strong> (str) - bytes to add</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="add_int"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">add_int</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">n</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Add an integer to the stream.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>n</code></strong> (int) - integer to add</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="add_int64"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">add_int64</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">n</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Add a 64-bit int to the stream.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>n</code></strong> (long) - long int to add</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="add_list"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">add_list</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">l</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Add a list of strings to the stream. They are encoded identically to
- a single string of values separated by commas. (Yes, really, that's how
- SSH2 does it.)</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>l</code></strong> (list(str)) - list of strings to add</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="add_mpint"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">add_mpint</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">z</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Add a long int to the stream, encoded as an infinite-precision
- integer. This method only works on positive numbers.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>z</code></strong> (long) - long int to add</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="add_string"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">add_string</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">s</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Add a string to the stream.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>s</code></strong> (str) - string to add</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="get_boolean"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_boolean</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Fetch a boolean from the stream.</p>
- <dl class="fields">
- <dt>Returns: bool</dt>
- <dd><code>True</code> or <code>False</code> (from the Message).</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="get_byte"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_byte</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return the next byte of the Message, without decomposing it. This is
- equivalent to <a href="paramiko.Message-class.html#get_bytes"
- class="link">get_bytes(1)</a>.</p>
- <dl class="fields">
- <dt>Returns: string</dt>
- <dd>the next byte of the Message, or <code>'
- any bytes remaining.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="get_bytes"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_bytes</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">n</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return the next <code>n</code> bytes of the Message, without
- decomposing into an int, string, etc. Just the raw bytes are
- returned.</p>
- <dl class="fields">
- <dt>Returns: string</dt>
- <dd>a string of the next <code>n</code> bytes of the Message, or a
- string of <code>n</code> zero bytes, if there aren't
- <code>n</code> bytes remaining.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="get_int"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_int</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Fetch an int from the stream.</p>
- <dl class="fields">
- <dt>Returns: int</dt>
- <dd>a 32-bit unsigned integer.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="get_int64"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_int64</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Fetch a 64-bit int from the stream.</p>
- <dl class="fields">
- <dt>Returns: long</dt>
- <dd>a 64-bit unsigned integer.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="get_list"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_list</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Fetch a list of strings from the stream. These are trivially encoded
- as comma-separated values in a string.</p>
- <dl class="fields">
- <dt>Returns: list of strings</dt>
- <dd>a list of strings.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="get_mpint"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_mpint</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Fetch a long int (mpint) from the stream.</p>
- <dl class="fields">
- <dt>Returns: long</dt>
- <dd>an arbitrary-length integer.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="get_remainder"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_remainder</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return the bytes of this Message that haven't already been parsed and
- returned.</p>
- <dl class="fields">
- <dt>Returns: string</dt>
- <dd>a string of the bytes not parsed yet.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="get_so_far"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_so_far</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Returns the bytes of this Message that have been parsed and returned.
- The string passed into a Message's constructor can be regenerated by
- concatenating <code>get_so_far</code> and <a
- href="paramiko.Message-class.html#get_remainder"
- class="link">get_remainder</a>.</p>
- <dl class="fields">
- <dt>Returns: string</dt>
- <dd>a string of the bytes parsed so far.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="get_string"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_string</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Fetch a string from the stream. This could be a byte string and may
- contain unprintable characters. (It's not unheard of for a string to
- contain another byte-stream Message.)</p>
- <dl class="fields">
- <dt>Returns: string</dt>
- <dd>a string.</dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.MissingHostKeyPolicy-class.html b/docs/paramiko.MissingHostKeyPolicy-class.html
deleted file mode 100644
index eb51517..0000000
--- a/docs/paramiko.MissingHostKeyPolicy-class.html
+++ /dev/null
@@ -1,232 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.MissingHostKeyPolicy</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Class&nbsp;MissingHostKeyPolicy
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.MissingHostKeyPolicy-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class MissingHostKeyPolicy</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#MissingHostKeyPolicy">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- <strong class="uidshort">MissingHostKeyPolicy</strong>
-</pre>
-
-<dl><dt>Known Subclasses:</dt>
-<dd>
- <ul class="subclass-list">
-<li><a href="paramiko.AutoAddPolicy-class.html">AutoAddPolicy</a></li><li>, <a href="paramiko.RejectPolicy-class.html">RejectPolicy</a></li><li>, <a href="paramiko.WarningPolicy-class.html">WarningPolicy</a></li> </ul>
-</dd></dl>
-
-<hr />
-<p>Interface for defining the policy that <a
- href="paramiko.SSHClient-class.html" class="link">SSHClient</a> should
- use when the SSH server's hostname is not in either the system host keys
- or the application's keys. Pre-made classes implement policies for
- automatically adding the key to the application's <a
- href="paramiko.HostKeys-class.html" class="link">HostKeys</a> object (<a
- href="paramiko.AutoAddPolicy-class.html" class="link">AutoAddPolicy</a>),
- and for automatically rejecting the key (<a
- href="paramiko.RejectPolicy-class.html"
- class="link">RejectPolicy</a>).</p>
- <p>This function may be used to ask the user to verify the key, for
- example.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.MissingHostKeyPolicy-class.html#missing_host_key" class="summary-sig-name">missing_host_key</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">client</span>,
- <span class="summary-sig-arg">hostname</span>,
- <span class="summary-sig-arg">key</span>)</span><br />
- Called when an <a href="paramiko.SSHClient-class.html"
- class="link">SSHClient</a> receives a server key for a server that
- isn't in either the system or local <a
- href="paramiko.HostKeys-class.html" class="link">HostKeys</a> object.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="missing_host_key"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">missing_host_key</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">client</span>,
- <span class="sig-arg">hostname</span>,
- <span class="sig-arg">key</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Called when an <a href="paramiko.SSHClient-class.html"
- class="link">SSHClient</a> receives a server key for a server that isn't
- in either the system or local <a href="paramiko.HostKeys-class.html"
- class="link">HostKeys</a> object. To accept the key, simply return. To
- reject, raised an exception (which will be passed to the calling
- application).</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.PKey-class.html b/docs/paramiko.PKey-class.html
deleted file mode 100644
index 1759963..0000000
--- a/docs/paramiko.PKey-class.html
+++ /dev/null
@@ -1,857 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.PKey</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Class&nbsp;PKey
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.PKey-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class PKey</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#PKey">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- <strong class="uidshort">PKey</strong>
-</pre>
-
-<dl><dt>Known Subclasses:</dt>
-<dd>
- <ul class="subclass-list">
-<li><a href="paramiko.AgentKey-class.html">AgentKey</a></li><li>, <a href="paramiko.DSSKey-class.html">DSSKey</a></li><li>, <a href="paramiko.RSAKey-class.html">RSAKey</a></li> </ul>
-</dd></dl>
-
-<hr />
-<p>Base class for public keys.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">int</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.PKey-class.html#__cmp__" class="summary-sig-name">__cmp__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">other</span>)</span><br />
- Compare this key to another.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.pkey-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.PKey-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">msg</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">data</span>=<span class="summary-sig-default">None</span>)</span><br />
- Create a new instance of this public key type.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.pkey-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">str</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.PKey-class.html#__str__" class="summary-sig-name">__str__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return a string of an SSH <a href="paramiko.Message-class.html"
- class="link">Message</a> made up of the public part(s) of this key.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.pkey-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">bool</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.PKey-class.html#can_sign" class="summary-sig-name">can_sign</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return <code>True</code> if this key has the private part necessary
- for signing data.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.pkey-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">str</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.PKey-class.html#get_base64" class="summary-sig-name">get_base64</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return a base64 string containing the public part of this key.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.pkey-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">int</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.PKey-class.html#get_bits" class="summary-sig-name">get_bits</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return the number of significant bits in this key.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.pkey-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">str</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.PKey-class.html#get_fingerprint" class="summary-sig-name">get_fingerprint</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return an MD5 fingerprint of the public part of this key.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.pkey-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">str</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.PKey-class.html#get_name" class="summary-sig-name">get_name</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return the name of this private key implementation.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.pkey-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"><a href="paramiko.Message-class.html" class="link">Message</a></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.PKey-class.html#sign_ssh_data" class="summary-sig-name">sign_ssh_data</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">rng</span>,
- <span class="summary-sig-arg">data</span>)</span><br />
- Sign a blob of data with this private key, and return a <a
- href="paramiko.Message-class.html" class="link">Message</a>
- representing an SSH signature message.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.pkey-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">boolean</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.PKey-class.html#verify_ssh_sig" class="summary-sig-name">verify_ssh_sig</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">data</span>,
- <span class="summary-sig-arg">msg</span>)</span><br />
- Given a blob of data, and an SSH message representing a signature of
- that data, verify that it was signed with this key.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.pkey-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.PKey-class.html#write_private_key" class="summary-sig-name">write_private_key</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">file_obj</span>,
- <span class="summary-sig-arg">password</span>=<span class="summary-sig-default">None</span>)</span><br />
- Write private key contents into a file (or file-like) object.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.pkey-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.PKey-class.html#write_private_key_file" class="summary-sig-name">write_private_key_file</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">filename</span>,
- <span class="summary-sig-arg">password</span>=<span class="summary-sig-default">None</span>)</span><br />
- Write private key contents into a file.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.pkey-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS METHODS ==================== -->
-<a name="section-ClassMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Class Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"><a href="paramiko.PKey-class.html" class="link">PKey</a></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.PKey-class.html#from_private_key" class="summary-sig-name">from_private_key</a>(<span class="summary-sig-arg">cls</span>,
- <span class="summary-sig-arg">file_obj</span>,
- <span class="summary-sig-arg">password</span>=<span class="summary-sig-default">None</span>)</span><br />
- Create a key object by reading a private key from a file (or
- file-like) object.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko-pysrc.html#PKey.from_private_key">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"><a href="paramiko.PKey-class.html" class="link">PKey</a></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.PKey-class.html#from_private_key_file" class="summary-sig-name">from_private_key_file</a>(<span class="summary-sig-arg">cls</span>,
- <span class="summary-sig-arg">filename</span>,
- <span class="summary-sig-arg">password</span>=<span class="summary-sig-default">None</span>)</span><br />
- Create a key object by reading a private key file.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko-pysrc.html#PKey.from_private_key_file">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__cmp__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__cmp__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">other</span>)</span>
- <br /><em class="fname">(Comparison operator)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.pkey-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Compare this key to another. Returns 0 if this key is equivalent to
- the given key, or non-0 if they are different. Only the public parts of
- the key are compared, so a public key will compare equal to its
- corresponding private key.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>other</code></strong> (<a href="paramiko.PKey-class.html" class="link">PKey</a>) - key to compare to.</li>
- </ul></dd>
- <dt>Returns: int</dt>
- <dd>0 if the two keys are equivalent, non-0 otherwise.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">msg</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">data</span>=<span class="sig-default">None</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.pkey-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Create a new instance of this public key type. If <code>msg</code> is
- given, the key's public part(s) will be filled in from the message. If
- <code>data</code> is given, the key's public part(s) will be filled in
- from the string.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>msg</code></strong> (<a href="paramiko.Message-class.html" class="link">Message</a>) - an optional SSH <a href="paramiko.Message-class.html"
- class="link">Message</a> containing a public key of this type.</li>
- <li><strong class="pname"><code>data</code></strong> (str) - an optional string containing a public key of this type</li>
- </ul></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if a key cannot be created from the <code>data</code> or
- <code>msg</code> given, or no key was passed in.</li>
- </ul></dd>
- <dt>Overrides:
- object.__init__
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="__str__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__str__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Informal representation operator)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.pkey-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return a string of an SSH <a href="paramiko.Message-class.html"
- class="link">Message</a> made up of the public part(s) of this key. This
- string is suitable for passing to <a
- href="paramiko.AgentKey-class.html#__init__" class="link">__init__</a> to
- re-create the key object later.</p>
- <dl class="fields">
- <dt>Returns: str</dt>
- <dd>string representation of an SSH key message.</dd>
- <dt>Overrides:
- object.__str__
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="can_sign"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">can_sign</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.pkey-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return <code>True</code> if this key has the private part necessary
- for signing data.</p>
- <dl class="fields">
- <dt>Returns: bool</dt>
- <dd><code>True</code> if this is a private key.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="from_private_key"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">from_private_key</span>(<span class="sig-arg">cls</span>,
- <span class="sig-arg">file_obj</span>,
- <span class="sig-arg">password</span>=<span class="sig-default">None</span>)</span>
- <br /><em class="fname">Class Method</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko-pysrc.html#PKey.from_private_key">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Create a key object by reading a private key from a file (or
- file-like) object. If the private key is encrypted and
- <code>password</code> is not <code>None</code>, the given password will
- be used to decrypt the key (otherwise <a
- href="paramiko.PasswordRequiredException-class.html"
- class="link">PasswordRequiredException</a> is thrown).</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>file_obj</code></strong> (file) - the file to read from</li>
- <li><strong class="pname"><code>password</code></strong> (str) - an optional password to use to decrypt the key, if it's encrypted</li>
- </ul></dd>
- <dt>Returns: <a href="paramiko.PKey-class.html" class="link">PKey</a></dt>
- <dd>a new key object based on the given private key</dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'>IOError</strong></code> - if there was an error reading the key</li>
- <li><code><strong class='fraise'><a href="paramiko.PasswordRequiredException-class.html">PasswordRequiredException</a></strong></code> - if the private key file is encrypted, and <code>password</code> is
- <code>None</code></li>
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if the key file is invalid</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="from_private_key_file"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">from_private_key_file</span>(<span class="sig-arg">cls</span>,
- <span class="sig-arg">filename</span>,
- <span class="sig-arg">password</span>=<span class="sig-default">None</span>)</span>
- <br /><em class="fname">Class Method</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko-pysrc.html#PKey.from_private_key_file">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Create a key object by reading a private key file. If the private key
- is encrypted and <code>password</code> is not <code>None</code>, the
- given password will be used to decrypt the key (otherwise <a
- href="paramiko.PasswordRequiredException-class.html"
- class="link">PasswordRequiredException</a> is thrown). Through the magic
- of python, this factory method will exist in all subclasses of PKey (such
- as <a href="paramiko.RSAKey-class.html" class="link">RSAKey</a> or <a
- href="paramiko.DSSKey-class.html" class="link">DSSKey</a>), but is
- useless on the abstract PKey class.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>filename</code></strong> (str) - name of the file to read</li>
- <li><strong class="pname"><code>password</code></strong> (str) - an optional password to use to decrypt the key file, if it's
- encrypted</li>
- </ul></dd>
- <dt>Returns: <a href="paramiko.PKey-class.html" class="link">PKey</a></dt>
- <dd>a new key object based on the given private key</dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'>IOError</strong></code> - if there was an error reading the file</li>
- <li><code><strong class='fraise'><a href="paramiko.PasswordRequiredException-class.html">PasswordRequiredException</a></strong></code> - if the private key file is encrypted, and <code>password</code> is
- <code>None</code></li>
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if the key file is invalid</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="get_base64"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_base64</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.pkey-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return a base64 string containing the public part of this key.
- Nothing secret is revealed. This format is compatible with that used to
- store public key files or recognized host keys.</p>
- <dl class="fields">
- <dt>Returns: str</dt>
- <dd>a base64 string containing the public part of the key.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="get_bits"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_bits</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.pkey-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return the number of significant bits in this key. This is useful for
- judging the relative security of a key.</p>
- <dl class="fields">
- <dt>Returns: int</dt>
- <dd>bits in the key.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="get_fingerprint"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_fingerprint</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.pkey-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return an MD5 fingerprint of the public part of this key. Nothing
- secret is revealed.</p>
- <dl class="fields">
- <dt>Returns: str</dt>
- <dd>a 16-byte string (binary) of the MD5 fingerprint, in SSH format.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="get_name"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_name</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.pkey-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return the name of this private key implementation.</p>
- <dl class="fields">
- <dt>Returns: str</dt>
- <dd>name of this private key type, in SSH terminology (for example,
- <code>&quot;ssh-rsa&quot;</code>).</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="sign_ssh_data"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">sign_ssh_data</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">rng</span>,
- <span class="sig-arg">data</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.pkey-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Sign a blob of data with this private key, and return a <a
- href="paramiko.Message-class.html" class="link">Message</a> representing
- an SSH signature message.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>rng</code></strong> (<code class="link">Crypto.Util.rng.RandomPool</code>) - a secure random number generator.</li>
- <li><strong class="pname"><code>data</code></strong> (str) - the data to sign.</li>
- </ul></dd>
- <dt>Returns: <a href="paramiko.Message-class.html" class="link">Message</a></dt>
- <dd>an SSH signature message.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="verify_ssh_sig"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">verify_ssh_sig</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">data</span>,
- <span class="sig-arg">msg</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.pkey-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Given a blob of data, and an SSH message representing a signature of
- that data, verify that it was signed with this key.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>data</code></strong> (str) - the data that was signed.</li>
- <li><strong class="pname"><code>msg</code></strong> (<a href="paramiko.Message-class.html" class="link">Message</a>) - an SSH signature message</li>
- </ul></dd>
- <dt>Returns: boolean</dt>
- <dd><code>True</code> if the signature verifies correctly;
- <code>False</code> otherwise.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="write_private_key"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">write_private_key</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">file_obj</span>,
- <span class="sig-arg">password</span>=<span class="sig-default">None</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.pkey-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Write private key contents into a file (or file-like) object. If the
- password is not <code>None</code>, the key is encrypted before
- writing.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>file_obj</code></strong> (file) - the file object to write into</li>
- <li><strong class="pname"><code>password</code></strong> (str) - an optional password to use to encrypt the key</li>
- </ul></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'>IOError</strong></code> - if there was an error writing to the file</li>
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if the key is invalid</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="write_private_key_file"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">write_private_key_file</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">filename</span>,
- <span class="sig-arg">password</span>=<span class="sig-default">None</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.pkey-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Write private key contents into a file. If the password is not
- <code>None</code>, the key is encrypted before writing.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>filename</code></strong> (str) - name of the file to write</li>
- <li><strong class="pname"><code>password</code></strong> (str) - an optional password to use to encrypt the key file</li>
- </ul></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'>IOError</strong></code> - if there was an error writing the file</li>
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if the key is invalid</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.PasswordRequiredException-class.html b/docs/paramiko.PasswordRequiredException-class.html
deleted file mode 100644
index 36c4cde..0000000
--- a/docs/paramiko.PasswordRequiredException-class.html
+++ /dev/null
@@ -1,176 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.PasswordRequiredException</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Class&nbsp;PasswordRequiredException
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.PasswordRequiredException-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class PasswordRequiredException</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#PasswordRequiredException">source&nbsp;code</a></span></p>
-<pre class="base-tree">
- object --+
- |
-exceptions.BaseException --+
- |
- exceptions.Exception --+
- |
- <a href="paramiko.SSHException-class.html">SSHException</a> --+
- |
- <a href="paramiko.AuthenticationException-class.html">AuthenticationException</a> --+
- |
- <strong class="uidshort">PasswordRequiredException</strong>
-</pre>
-
-<hr />
-<p>Exception raised when a password is needed to unlock a private key
- file.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.Exception</code></b>:
- <code>__init__</code>,
- <code>__new__</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.BaseException</code></b>:
- <code>__delattr__</code>,
- <code>__getattribute__</code>,
- <code>__getitem__</code>,
- <code>__getslice__</code>,
- <code>__reduce__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__setstate__</code>,
- <code>__str__</code>,
- <code>__unicode__</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__format__</code>,
- <code>__hash__</code>,
- <code>__reduce_ex__</code>,
- <code>__sizeof__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.BaseException</code></b>:
- <code>args</code>,
- <code>message</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.RSAKey-class.html b/docs/paramiko.RSAKey-class.html
deleted file mode 100644
index 27eeb53..0000000
--- a/docs/paramiko.RSAKey-class.html
+++ /dev/null
@@ -1,750 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.RSAKey</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Class&nbsp;RSAKey
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.RSAKey-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class RSAKey</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#RSAKey">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- <a href="paramiko.PKey-class.html">PKey</a> --+
- |
- <strong class="uidshort">RSAKey</strong>
-</pre>
-
-<hr />
-<p>Representation of an RSA key which can be used to sign and verify SSH2
- data.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.RSAKey-class.html#__hash__" class="summary-sig-name">__hash__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- hash(x)</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.rsakey-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.RSAKey-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">msg</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">data</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">filename</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">password</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">vals</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">file_obj</span>=<span class="summary-sig-default">None</span>)</span><br />
- Create a new instance of this public key type.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.rsakey-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">str</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.RSAKey-class.html#__str__" class="summary-sig-name">__str__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return a string of an SSH <a href="paramiko.Message-class.html"
- class="link">Message</a> made up of the public part(s) of this key.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.rsakey-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">bool</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.RSAKey-class.html#can_sign" class="summary-sig-name">can_sign</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return <code>True</code> if this key has the private part necessary
- for signing data.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.rsakey-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">int</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.RSAKey-class.html#get_bits" class="summary-sig-name">get_bits</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return the number of significant bits in this key.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.rsakey-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">str</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.RSAKey-class.html#get_name" class="summary-sig-name">get_name</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return the name of this private key implementation.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.rsakey-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"><a href="paramiko.Message-class.html" class="link">Message</a></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.RSAKey-class.html#sign_ssh_data" class="summary-sig-name">sign_ssh_data</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">rpool</span>,
- <span class="summary-sig-arg">data</span>)</span><br />
- Sign a blob of data with this private key, and return a <a
- href="paramiko.Message-class.html" class="link">Message</a>
- representing an SSH signature message.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.rsakey-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">boolean</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.RSAKey-class.html#verify_ssh_sig" class="summary-sig-name">verify_ssh_sig</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">data</span>,
- <span class="summary-sig-arg">msg</span>)</span><br />
- Given a blob of data, and an SSH message representing a signature of
- that data, verify that it was signed with this key.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.rsakey-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.RSAKey-class.html#write_private_key" class="summary-sig-name">write_private_key</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">file_obj</span>,
- <span class="summary-sig-arg">password</span>=<span class="summary-sig-default">None</span>)</span><br />
- Write private key contents into a file (or file-like) object.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.rsakey-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.RSAKey-class.html#write_private_key_file" class="summary-sig-name">write_private_key_file</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">filename</span>,
- <span class="summary-sig-arg">password</span>=<span class="summary-sig-default">None</span>)</span><br />
- Write private key contents into a file.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.rsakey-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code><a href="paramiko.PKey-class.html">PKey</a></code></b>:
- <code><a href="paramiko.PKey-class.html#__cmp__">__cmp__</a></code>,
- <code><a href="paramiko.PKey-class.html#get_base64">get_base64</a></code>,
- <code><a href="paramiko.PKey-class.html#get_fingerprint">get_fingerprint</a></code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS METHODS ==================== -->
-<a name="section-ClassMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Class Methods</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code><a href="paramiko.PKey-class.html">PKey</a></code></b>:
- <code><a href="paramiko.PKey-class.html#from_private_key">from_private_key</a></code>,
- <code><a href="paramiko.PKey-class.html#from_private_key_file">from_private_key_file</a></code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== STATIC METHODS ==================== -->
-<a name="section-StaticMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Static Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"><a href="paramiko.RSAKey-class.html" class="link">RSAKey</a></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.RSAKey-class.html#generate" class="summary-sig-name">generate</a>(<span class="summary-sig-arg">bits</span>,
- <span class="summary-sig-arg">progress_func</span>=<span class="summary-sig-default">None</span>)</span><br />
- Generate a new private RSA key.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko-pysrc.html#RSAKey.generate">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__hash__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__hash__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Hashing function)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.rsakey-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>hash(x)</p>
- <dl class="fields">
- <dt>Overrides:
- object.__hash__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">msg</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">data</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">filename</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">password</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">vals</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">file_obj</span>=<span class="sig-default">None</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.rsakey-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Create a new instance of this public key type. If <code>msg</code> is
- given, the key's public part(s) will be filled in from the message. If
- <code>data</code> is given, the key's public part(s) will be filled in
- from the string.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>msg</code></strong> - an optional SSH <a href="paramiko.Message-class.html"
- class="link">Message</a> containing a public key of this type.</li>
- <li><strong class="pname"><code>data</code></strong> - an optional string containing a public key of this type</li>
- </ul></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if a key cannot be created from the <code>data</code> or
- <code>msg</code> given, or no key was passed in.</li>
- </ul></dd>
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="__str__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__str__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Informal representation operator)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.rsakey-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return a string of an SSH <a href="paramiko.Message-class.html"
- class="link">Message</a> made up of the public part(s) of this key. This
- string is suitable for passing to <a
- href="paramiko.AgentKey-class.html#__init__" class="link">__init__</a> to
- re-create the key object later.</p>
- <dl class="fields">
- <dt>Returns: str</dt>
- <dd>string representation of an SSH key message.</dd>
- <dt>Overrides:
- object.__str__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="can_sign"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">can_sign</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.rsakey-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return <code>True</code> if this key has the private part necessary
- for signing data.</p>
- <dl class="fields">
- <dt>Returns: bool</dt>
- <dd><code>True</code> if this is a private key.</dd>
- <dt>Overrides:
- <a href="paramiko.PKey-class.html#can_sign">PKey.can_sign</a>
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="generate"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">generate</span>(<span class="sig-arg">bits</span>,
- <span class="sig-arg">progress_func</span>=<span class="sig-default">None</span>)</span>
- <br /><em class="fname">Static Method</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko-pysrc.html#RSAKey.generate">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Generate a new private RSA key. This factory function can be used to
- generate a new host key or authentication key.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>bits</code></strong> (int) - number of bits the generated key should be.</li>
- <li><strong class="pname"><code>progress_func</code></strong> (function) - an optional function to call at key points in key generation
- (used by <code>pyCrypto.PublicKey</code>).</li>
- </ul></dd>
- <dt>Returns: <a href="paramiko.RSAKey-class.html" class="link">RSAKey</a></dt>
- <dd>new private key</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="get_bits"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_bits</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.rsakey-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return the number of significant bits in this key. This is useful for
- judging the relative security of a key.</p>
- <dl class="fields">
- <dt>Returns: int</dt>
- <dd>bits in the key.</dd>
- <dt>Overrides:
- <a href="paramiko.PKey-class.html#get_bits">PKey.get_bits</a>
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="get_name"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_name</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.rsakey-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return the name of this private key implementation.</p>
- <dl class="fields">
- <dt>Returns: str</dt>
- <dd>name of this private key type, in SSH terminology (for example,
- <code>&quot;ssh-rsa&quot;</code>).</dd>
- <dt>Overrides:
- <a href="paramiko.PKey-class.html#get_name">PKey.get_name</a>
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="sign_ssh_data"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">sign_ssh_data</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">rpool</span>,
- <span class="sig-arg">data</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.rsakey-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Sign a blob of data with this private key, and return a <a
- href="paramiko.Message-class.html" class="link">Message</a> representing
- an SSH signature message.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>rng</code></strong> - a secure random number generator.</li>
- <li><strong class="pname"><code>data</code></strong> - the data to sign.</li>
- </ul></dd>
- <dt>Returns: <a href="paramiko.Message-class.html" class="link">Message</a></dt>
- <dd>an SSH signature message.</dd>
- <dt>Overrides:
- <a href="paramiko.PKey-class.html#sign_ssh_data">PKey.sign_ssh_data</a>
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="verify_ssh_sig"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">verify_ssh_sig</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">data</span>,
- <span class="sig-arg">msg</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.rsakey-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Given a blob of data, and an SSH message representing a signature of
- that data, verify that it was signed with this key.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>data</code></strong> - the data that was signed.</li>
- <li><strong class="pname"><code>msg</code></strong> - an SSH signature message</li>
- </ul></dd>
- <dt>Returns: boolean</dt>
- <dd><code>True</code> if the signature verifies correctly;
- <code>False</code> otherwise.</dd>
- <dt>Overrides:
- <a href="paramiko.PKey-class.html#verify_ssh_sig">PKey.verify_ssh_sig</a>
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="write_private_key"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">write_private_key</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">file_obj</span>,
- <span class="sig-arg">password</span>=<span class="sig-default">None</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.rsakey-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Write private key contents into a file (or file-like) object. If the
- password is not <code>None</code>, the key is encrypted before
- writing.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>file_obj</code></strong> - the file object to write into</li>
- <li><strong class="pname"><code>password</code></strong> - an optional password to use to encrypt the key</li>
- </ul></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'>IOError</strong></code> - if there was an error writing to the file</li>
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if the key is invalid</li>
- </ul></dd>
- <dt>Overrides:
- <a href="paramiko.PKey-class.html#write_private_key">PKey.write_private_key</a>
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="write_private_key_file"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">write_private_key_file</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">filename</span>,
- <span class="sig-arg">password</span>=<span class="sig-default">None</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.rsakey-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Write private key contents into a file. If the password is not
- <code>None</code>, the key is encrypted before writing.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>filename</code></strong> - name of the file to write</li>
- <li><strong class="pname"><code>password</code></strong> - an optional password to use to encrypt the key file</li>
- </ul></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'>IOError</strong></code> - if there was an error writing the file</li>
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if the key is invalid</li>
- </ul></dd>
- <dt>Overrides:
- <a href="paramiko.PKey-class.html#write_private_key_file">PKey.write_private_key_file</a>
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.RejectPolicy-class.html b/docs/paramiko.RejectPolicy-class.html
deleted file mode 100644
index d5a9747..0000000
--- a/docs/paramiko.RejectPolicy-class.html
+++ /dev/null
@@ -1,223 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.RejectPolicy</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Class&nbsp;RejectPolicy
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.RejectPolicy-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class RejectPolicy</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#RejectPolicy">source&nbsp;code</a></span></p>
-<pre class="base-tree">
- object --+
- |
-<a href="paramiko.MissingHostKeyPolicy-class.html">MissingHostKeyPolicy</a> --+
- |
- <strong class="uidshort">RejectPolicy</strong>
-</pre>
-
-<hr />
-<p>Policy for automatically rejecting the unknown hostname &amp; key.
- This is used by <a href="paramiko.SSHClient-class.html"
- class="link">SSHClient</a>.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.RejectPolicy-class.html#missing_host_key" class="summary-sig-name">missing_host_key</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">client</span>,
- <span class="summary-sig-arg">hostname</span>,
- <span class="summary-sig-arg">key</span>)</span><br />
- Called when an <a href="paramiko.SSHClient-class.html"
- class="link">SSHClient</a> receives a server key for a server that
- isn't in either the system or local <a
- href="paramiko.HostKeys-class.html" class="link">HostKeys</a> object.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="missing_host_key"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">missing_host_key</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">client</span>,
- <span class="sig-arg">hostname</span>,
- <span class="sig-arg">key</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Called when an <a href="paramiko.SSHClient-class.html"
- class="link">SSHClient</a> receives a server key for a server that isn't
- in either the system or local <a href="paramiko.HostKeys-class.html"
- class="link">HostKeys</a> object. To accept the key, simply return. To
- reject, raised an exception (which will be passed to the calling
- application).</p>
- <dl class="fields">
- <dt>Overrides:
- <a href="paramiko.MissingHostKeyPolicy-class.html#missing_host_key">MissingHostKeyPolicy.missing_host_key</a>
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.SFTP-class.html b/docs/paramiko.SFTP-class.html
deleted file mode 100644
index 35767af..0000000
--- a/docs/paramiko.SFTP-class.html
+++ /dev/null
@@ -1,202 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.SFTP</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Class&nbsp;SFTP
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.SFTP-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class SFTP</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#SFTP">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- BaseSFTP --+
- |
- <a href="paramiko.SFTPClient-class.html">SFTPClient</a> --+
- |
- <strong class="uidshort">SFTP</strong>
-</pre>
-
-<hr />
-<p>an alias for <a href="paramiko.SFTPClient-class.html"
- class="link">SFTPClient</a> for backwards compatability</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code><a href="paramiko.SFTPClient-class.html">SFTPClient</a></code></b>:
- <code><a href="paramiko.SFTPClient-class.html#__init__">__init__</a></code>,
- <code><a href="paramiko.SFTPClient-class.html#chdir">chdir</a></code>,
- <code><a href="paramiko.SFTPClient-class.html#chmod">chmod</a></code>,
- <code><a href="paramiko.SFTPClient-class.html#chown">chown</a></code>,
- <code><a href="paramiko.SFTPClient-class.html#close">close</a></code>,
- <code><a href="paramiko.SFTPClient-class.html#file">file</a></code>,
- <code><a href="paramiko.SFTPClient-class.html#get">get</a></code>,
- <code><a href="paramiko.SFTPClient-class.html#get_channel">get_channel</a></code>,
- <code><a href="paramiko.SFTPClient-class.html#getcwd">getcwd</a></code>,
- <code><a href="paramiko.SFTPClient-class.html#listdir">listdir</a></code>,
- <code><a href="paramiko.SFTPClient-class.html#listdir_attr">listdir_attr</a></code>,
- <code><a href="paramiko.SFTPClient-class.html#lstat">lstat</a></code>,
- <code><a href="paramiko.SFTPClient-class.html#mkdir">mkdir</a></code>,
- <code><a href="paramiko.SFTPClient-class.html#normalize">normalize</a></code>,
- <code><a href="paramiko.SFTPClient-class.html#open">open</a></code>,
- <code><a href="paramiko.SFTPClient-class.html#put">put</a></code>,
- <code><a href="paramiko.SFTPClient-class.html#readlink">readlink</a></code>,
- <code><a href="paramiko.SFTPClient-class.html#remove">remove</a></code>,
- <code><a href="paramiko.SFTPClient-class.html#rename">rename</a></code>,
- <code><a href="paramiko.SFTPClient-class.html#rmdir">rmdir</a></code>,
- <code><a href="paramiko.SFTPClient-class.html#stat">stat</a></code>,
- <code><a href="paramiko.SFTPClient-class.html#symlink">symlink</a></code>,
- <code><a href="paramiko.SFTPClient-class.html#truncate">truncate</a></code>,
- <code><a href="paramiko.SFTPClient-class.html#unlink">unlink</a></code>,
- <code><a href="paramiko.SFTPClient-class.html#utime">utime</a></code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS METHODS ==================== -->
-<a name="section-ClassMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Class Methods</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code><a href="paramiko.SFTPClient-class.html">SFTPClient</a></code></b>:
- <code><a href="paramiko.SFTPClient-class.html#from_transport">from_transport</a></code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.SFTPAttributes-class.html b/docs/paramiko.SFTPAttributes-class.html
deleted file mode 100644
index 0724b9b..0000000
--- a/docs/paramiko.SFTPAttributes-class.html
+++ /dev/null
@@ -1,418 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.SFTPAttributes</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Class&nbsp;SFTPAttributes
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.SFTPAttributes-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class SFTPAttributes</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#SFTPAttributes">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- <strong class="uidshort">SFTPAttributes</strong>
-</pre>
-
-<hr />
-<p>Representation of the attributes of a file (or proxied file) for SFTP
- in client or server mode. It attemps to mirror the object returned by
- <code>os.stat</code> as closely as possible, so it may have the following
- fields, with the same meanings as those returned by an
- <code>os.stat</code> object:</p>
- <ul>
- <li>
- st_size
- </li>
- <li>
- st_uid
- </li>
- <li>
- st_gid
- </li>
- <li>
- st_mode
- </li>
- <li>
- st_atime
- </li>
- <li>
- st_mtime
- </li>
- </ul>
- <p>Because SFTP allows flags to have other arbitrary named attributes,
- these are stored in a dict named <code>attr</code>. Occasionally, the
- filename is also stored, in <code>filename</code>.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPAttributes-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Create a new (empty) SFTPAttributes object.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_attr-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPAttributes-class.html#__repr__" class="summary-sig-name">__repr__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- repr(x)</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_attr-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPAttributes-class.html#__str__" class="summary-sig-name">__str__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- create a unix-style long description of the file (like ls -l)</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_attr-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS METHODS ==================== -->
-<a name="section-ClassMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Class Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"><a href="paramiko.SFTPAttributes-class.html"
- class="link">SFTPAttributes</a></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPAttributes-class.html#from_stat" class="summary-sig-name">from_stat</a>(<span class="summary-sig-arg">cls</span>,
- <span class="summary-sig-arg">obj</span>,
- <span class="summary-sig-arg">filename</span>=<span class="summary-sig-default">None</span>)</span><br />
- Create an SFTPAttributes object from an existing <code>stat</code>
- object (an object returned by <code>os.stat</code>).</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko-pysrc.html#SFTPAttributes.from_stat">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS VARIABLES ==================== -->
-<a name="section-ClassVariables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Class Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="FLAG_AMTIME"></a><span class="summary-name">FLAG_AMTIME</span> = <code title="8">8</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="FLAG_EXTENDED"></a><span class="summary-name">FLAG_EXTENDED</span> = <code title="2147483648">2147483648</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="FLAG_PERMISSIONS"></a><span class="summary-name">FLAG_PERMISSIONS</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="FLAG_SIZE"></a><span class="summary-name">FLAG_SIZE</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="FLAG_UIDGID"></a><span class="summary-name">FLAG_UIDGID</span> = <code title="2">2</code>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_attr-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Create a new (empty) SFTPAttributes object. All fields will be
- empty.</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="__repr__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__repr__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Representation operator)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_attr-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>repr(x)</p>
- <dl class="fields">
- <dt>Overrides:
- object.__repr__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="__str__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__str__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Informal representation operator)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_attr-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>create a unix-style long description of the file (like ls -l)</p>
- <dl class="fields">
- <dt>Overrides:
- object.__str__
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="from_stat"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">from_stat</span>(<span class="sig-arg">cls</span>,
- <span class="sig-arg">obj</span>,
- <span class="sig-arg">filename</span>=<span class="sig-default">None</span>)</span>
- <br /><em class="fname">Class Method</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko-pysrc.html#SFTPAttributes.from_stat">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Create an SFTPAttributes object from an existing <code>stat</code>
- object (an object returned by <code>os.stat</code>).</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>obj</code></strong> (object) - an object returned by <code>os.stat</code> (or equivalent).</li>
- <li><strong class="pname"><code>filename</code></strong> (str) - the filename associated with this file.</li>
- </ul></dd>
- <dt>Returns: <a href="paramiko.SFTPAttributes-class.html"
- class="link">SFTPAttributes</a></dt>
- <dd>new <a href="paramiko.SFTPAttributes-class.html"
- class="link">SFTPAttributes</a> object with the same attribute
- fields.</dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.SFTPClient-class.html b/docs/paramiko.SFTPClient-class.html
deleted file mode 100644
index d6b7abd..0000000
--- a/docs/paramiko.SFTPClient-class.html
+++ /dev/null
@@ -1,1536 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.SFTPClient</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Class&nbsp;SFTPClient
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.SFTPClient-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class SFTPClient</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#SFTPClient">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- BaseSFTP --+
- |
- <strong class="uidshort">SFTPClient</strong>
-</pre>
-
-<dl><dt>Known Subclasses:</dt>
-<dd>
- <ul class="subclass-list">
-<li><a href="paramiko.SFTP-class.html">SFTP</a></li> </ul>
-</dd></dl>
-
-<hr />
-<p>SFTP client object. <code>SFTPClient</code> is used to open an sftp
- session across an open ssh <a href="paramiko.Transport-class.html"
- class="link">Transport</a> and do remote file operations.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPClient-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">sock</span>)</span><br />
- Create an SFTP client from an existing <a
- href="paramiko.Channel-class.html" class="link">Channel</a>.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPClient-class.html#chdir" class="summary-sig-name">chdir</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">path</span>)</span><br />
- Change the &quot;current directory&quot; of this SFTP session.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPClient-class.html#chmod" class="summary-sig-name">chmod</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">path</span>,
- <span class="summary-sig-arg">mode</span>)</span><br />
- Change the mode (permissions) of a file.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPClient-class.html#chown" class="summary-sig-name">chown</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">path</span>,
- <span class="summary-sig-arg">uid</span>,
- <span class="summary-sig-arg">gid</span>)</span><br />
- Change the owner (<code>uid</code>) and group (<code>gid</code>) of a
- file.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPClient-class.html#close" class="summary-sig-name">close</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Close the SFTP session and its underlying channel.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">SFTPFile</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPClient-class.html#file" class="summary-sig-name">file</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">filename</span>,
- <span class="summary-sig-arg">mode</span>=<span class="summary-sig-default"><code class="variable-quote">'</code><code class="variable-string">r</code><code class="variable-quote">'</code></span>,
- <span class="summary-sig-arg">bufsize</span>=<span class="summary-sig-default">-1</span>)</span><br />
- Open a file on the remote server.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPClient-class.html#get" class="summary-sig-name">get</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">remotepath</span>,
- <span class="summary-sig-arg">localpath</span>,
- <span class="summary-sig-arg">callback</span>=<span class="summary-sig-default">None</span>)</span><br />
- Copy a remote file (<code>remotepath</code>) from the SFTP server to
- the local host as <code>localpath</code>.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"><a href="paramiko.Channel-class.html" class="link">Channel</a></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPClient-class.html#get_channel" class="summary-sig-name">get_channel</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return the underlying <a href="paramiko.Channel-class.html"
- class="link">Channel</a> object for this SFTP session.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">str</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPClient-class.html#getcwd" class="summary-sig-name">getcwd</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return the &quot;current working directory&quot; for this SFTP
- session, as emulated by paramiko.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">list of str</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPClient-class.html#listdir" class="summary-sig-name">listdir</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">path</span>=<span class="summary-sig-default"><code class="variable-quote">'</code><code class="variable-string">.</code><code class="variable-quote">'</code></span>)</span><br />
- Return a list containing the names of the entries in the given
- <code>path</code>.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">list of <a href="paramiko.SFTPAttributes-class.html"
- class="link">SFTPAttributes</a></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPClient-class.html#listdir_attr" class="summary-sig-name">listdir_attr</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">path</span>=<span class="summary-sig-default"><code class="variable-quote">'</code><code class="variable-string">.</code><code class="variable-quote">'</code></span>)</span><br />
- Return a list containing <a href="paramiko.SFTPAttributes-class.html"
- class="link">SFTPAttributes</a> objects corresponding to files in the
- given <code>path</code>.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">SFTPAttributes</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPClient-class.html#lstat" class="summary-sig-name">lstat</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">path</span>)</span><br />
- Retrieve information about a file on the remote system, without
- following symbolic links (shortcuts).</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPClient-class.html#mkdir" class="summary-sig-name">mkdir</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">path</span>,
- <span class="summary-sig-arg">mode</span>=<span class="summary-sig-default">511</span>)</span><br />
- Create a folder (directory) named <code>path</code> with numeric mode
- <code>mode</code>.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">str</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPClient-class.html#normalize" class="summary-sig-name">normalize</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">path</span>)</span><br />
- Return the normalized path (on the server) of a given path.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">SFTPFile</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPClient-class.html#open" class="summary-sig-name">open</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">filename</span>,
- <span class="summary-sig-arg">mode</span>=<span class="summary-sig-default"><code class="variable-quote">'</code><code class="variable-string">r</code><code class="variable-quote">'</code></span>,
- <span class="summary-sig-arg">bufsize</span>=<span class="summary-sig-default">-1</span>)</span><br />
- Open a file on the remote server.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">SFTPAttributes</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPClient-class.html#put" class="summary-sig-name">put</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">localpath</span>,
- <span class="summary-sig-arg">remotepath</span>,
- <span class="summary-sig-arg">callback</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">confirm</span>=<span class="summary-sig-default">True</span>)</span><br />
- Copy a local file (<code>localpath</code>) to the SFTP server as
- <code>remotepath</code>.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">str</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPClient-class.html#readlink" class="summary-sig-name">readlink</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">path</span>)</span><br />
- Return the target of a symbolic link (shortcut).</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPClient-class.html#remove" class="summary-sig-name">remove</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">path</span>)</span><br />
- Remove the file at the given path.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPClient-class.html#rename" class="summary-sig-name">rename</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">oldpath</span>,
- <span class="summary-sig-arg">newpath</span>)</span><br />
- Rename a file or folder from <code>oldpath</code> to
- <code>newpath</code>.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPClient-class.html#rmdir" class="summary-sig-name">rmdir</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">path</span>)</span><br />
- Remove the folder named <code>path</code>.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">SFTPAttributes</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPClient-class.html#stat" class="summary-sig-name">stat</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">path</span>)</span><br />
- Retrieve information about a file on the remote system.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPClient-class.html#symlink" class="summary-sig-name">symlink</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">source</span>,
- <span class="summary-sig-arg">dest</span>)</span><br />
- Create a symbolic link (shortcut) of the <code>source</code> path at
- <code>destination</code>.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPClient-class.html#truncate" class="summary-sig-name">truncate</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">path</span>,
- <span class="summary-sig-arg">size</span>)</span><br />
- Change the size of the file specified by <code>path</code>.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPClient-class.html#unlink" class="summary-sig-name">unlink</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">path</span>)</span><br />
- Remove the file at the given path.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPClient-class.html#utime" class="summary-sig-name">utime</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">path</span>,
- <span class="summary-sig-arg">times</span>)</span><br />
- Set the access and modified times of the file specified by
- <code>path</code>.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS METHODS ==================== -->
-<a name="section-ClassMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Class Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"><a href="paramiko.SFTPClient-class.html" class="link">SFTPClient</a></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPClient-class.html#from_transport" class="summary-sig-name">from_transport</a>(<span class="summary-sig-arg">cls</span>,
- <span class="summary-sig-arg">t</span>)</span><br />
- Create an SFTP client channel from an open <a
- href="paramiko.Transport-class.html" class="link">Transport</a>.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko-pysrc.html#SFTPClient.from_transport">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">sock</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Create an SFTP client from an existing <a
- href="paramiko.Channel-class.html" class="link">Channel</a>. The channel
- should already have requested the <code>&quot;sftp&quot;</code>
- subsystem.</p>
- <p>An alternate way to create an SFTP client context is by using <a
- href="paramiko.SFTPClient-class.html#from_transport"
- class="link">from_transport</a>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>sock</code></strong> (<a href="paramiko.Channel-class.html" class="link">Channel</a>) - an open <a href="paramiko.Channel-class.html"
- class="link">Channel</a> using the <code>&quot;sftp&quot;</code>
- subsystem</li>
- </ul></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if there's an exception while negotiating sftp</li>
- </ul></dd>
- <dt>Overrides:
- object.__init__
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="chdir"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">chdir</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">path</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Change the &quot;current directory&quot; of this SFTP session. Since
- SFTP doesn't really have the concept of a current working directory, this
- is emulated by paramiko. Once you use this method to set a working
- directory, all operations on this SFTPClient object will be relative to
- that path. You can pass in <code>None</code> to stop using a current
- working directory.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>path</code></strong> (str) - new current working directory</li>
- </ul></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'>IOError</strong></code> - if the requested path doesn't exist on the server</li>
- </ul></dd>
- </dl>
-<div class="fields"> <p><strong>Since:</strong>
- 1.4
- </p>
-</div></td></tr></table>
-</div>
-<a name="chmod"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">chmod</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">path</span>,
- <span class="sig-arg">mode</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Change the mode (permissions) of a file. The permissions are
- unix-style and identical to those used by python's <code>os.chmod</code>
- function.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>path</code></strong> (str) - path of the file to change the permissions of</li>
- <li><strong class="pname"><code>mode</code></strong> (int) - new permissions</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="chown"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">chown</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">path</span>,
- <span class="sig-arg">uid</span>,
- <span class="sig-arg">gid</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Change the owner (<code>uid</code>) and group (<code>gid</code>) of a
- file. As with python's <code>os.chown</code> function, you must pass
- both arguments, so if you only want to change one, use <a
- href="paramiko.SFTPClient-class.html#stat" class="link">stat</a> first to
- retrieve the current owner and group.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>path</code></strong> (str) - path of the file to change the owner and group of</li>
- <li><strong class="pname"><code>uid</code></strong> (int) - new owner's uid</li>
- <li><strong class="pname"><code>gid</code></strong> (int) - new group id</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="close"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">close</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Close the SFTP session and its underlying channel.</p>
- <dl class="fields">
- </dl>
-<div class="fields"> <p><strong>Since:</strong>
- 1.4
- </p>
-</div></td></tr></table>
-</div>
-<a name="file"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">file</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">filename</span>,
- <span class="sig-arg">mode</span>=<span class="sig-default"><code class="variable-quote">'</code><code class="variable-string">r</code><code class="variable-quote">'</code></span>,
- <span class="sig-arg">bufsize</span>=<span class="sig-default">-1</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Open a file on the remote server. The arguments are the same as for
- python's built-in <code>file</code> (aka <code>open</code>). A file-like
- object is returned, which closely mimics the behavior of a normal python
- file object.</p>
- <p>The mode indicates how the file is to be opened: <code>'r'</code> for
- reading, <code>'w'</code> for writing (truncating an existing file),
- <code>'a'</code> for appending, <code>'r+'</code> for reading/writing,
- <code>'w+'</code> for reading/writing (truncating an existing file),
- <code>'a+'</code> for reading/appending. The python <code>'b'</code>
- flag is ignored, since SSH treats all files as binary. The
- <code>'U'</code> flag is supported in a compatible way.</p>
- <p>Since 1.5.2, an <code>'x'</code> flag indicates that the operation
- should only succeed if the file was created and did not previously exist.
- This has no direct mapping to python's file flags, but is commonly known
- as the <code>O_EXCL</code> flag in posix.</p>
- <p>The file will be buffered in standard python style by default, but can
- be altered with the <code>bufsize</code> parameter. <code>0</code> turns
- off buffering, <code>1</code> uses line buffering, and any number greater
- than 1 (<code>&gt;1</code>) uses that specific buffer size.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>filename</code></strong> (str) - name of the file to open</li>
- <li><strong class="pname"><code>mode</code></strong> (str) - mode (python-style) to open in</li>
- <li><strong class="pname"><code>bufsize</code></strong> (int) - desired buffering (-1 = default buffer size)</li>
- </ul></dd>
- <dt>Returns: SFTPFile</dt>
- <dd>a file object representing the open file</dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'>IOError</strong></code> - if the file could not be opened.</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="from_transport"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">from_transport</span>(<span class="sig-arg">cls</span>,
- <span class="sig-arg">t</span>)</span>
- <br /><em class="fname">Class Method</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko-pysrc.html#SFTPClient.from_transport">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Create an SFTP client channel from an open <a
- href="paramiko.Transport-class.html" class="link">Transport</a>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>t</code></strong> (<a href="paramiko.Transport-class.html"
- class="link">Transport</a>) - an open <a href="paramiko.Transport-class.html"
- class="link">Transport</a> which is already authenticated</li>
- </ul></dd>
- <dt>Returns: <a href="paramiko.SFTPClient-class.html" class="link">SFTPClient</a></dt>
- <dd>a new <a href="paramiko.SFTPClient-class.html"
- class="link">SFTPClient</a> object, referring to an sftp session
- (channel) across the transport</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="get"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">remotepath</span>,
- <span class="sig-arg">localpath</span>,
- <span class="sig-arg">callback</span>=<span class="sig-default">None</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Copy a remote file (<code>remotepath</code>) from the SFTP server to
- the local host as <code>localpath</code>. Any exception raised by
- operations will be passed through. This method is primarily provided as
- a convenience.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>remotepath</code></strong> (str) - the remote file to copy</li>
- <li><strong class="pname"><code>localpath</code></strong> (str) - the destination path on the local host</li>
- <li><strong class="pname"><code>callback</code></strong> (function(int, int)) - optional callback function that accepts the bytes transferred so
- far and the total bytes to be transferred (since 1.7.4)</li>
- </ul></dd>
- </dl>
-<div class="fields"> <p><strong>Since:</strong>
- 1.4
- </p>
-</div></td></tr></table>
-</div>
-<a name="get_channel"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_channel</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return the underlying <a href="paramiko.Channel-class.html"
- class="link">Channel</a> object for this SFTP session. This might be
- useful for doing things like setting a timeout on the channel.</p>
- <dl class="fields">
- <dt>Returns: <a href="paramiko.Channel-class.html" class="link">Channel</a></dt>
- <dd>the SSH channel</dd>
- </dl>
-<div class="fields"> <p><strong>Since:</strong>
- 1.7.1
- </p>
-</div></td></tr></table>
-</div>
-<a name="getcwd"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">getcwd</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return the &quot;current working directory&quot; for this SFTP
- session, as emulated by paramiko. If no directory has been set with <a
- href="paramiko.SFTPClient-class.html#chdir" class="link">chdir</a>, this
- method will return <code>None</code>.</p>
- <dl class="fields">
- <dt>Returns: str</dt>
- <dd>the current working directory on the server, or <code>None</code></dd>
- </dl>
-<div class="fields"> <p><strong>Since:</strong>
- 1.4
- </p>
-</div></td></tr></table>
-</div>
-<a name="listdir"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">listdir</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">path</span>=<span class="sig-default"><code class="variable-quote">'</code><code class="variable-string">.</code><code class="variable-quote">'</code></span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return a list containing the names of the entries in the given
- <code>path</code>. The list is in arbitrary order. It does not include
- the special entries <code>'.'</code> and <code>'..'</code> even if they
- are present in the folder. This method is meant to mirror
- <code>os.listdir</code> as closely as possible. For a list of full <a
- href="paramiko.SFTPAttributes-class.html" class="link">SFTPAttributes</a>
- objects, see <a href="paramiko.SFTPClient-class.html#listdir_attr"
- class="link">listdir_attr</a>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>path</code></strong> (str) - path to list (defaults to <code>'.'</code>)</li>
- </ul></dd>
- <dt>Returns: list of str</dt>
- <dd>list of filenames</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="listdir_attr"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">listdir_attr</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">path</span>=<span class="sig-default"><code class="variable-quote">'</code><code class="variable-string">.</code><code class="variable-quote">'</code></span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return a list containing <a href="paramiko.SFTPAttributes-class.html"
- class="link">SFTPAttributes</a> objects corresponding to files in the
- given <code>path</code>. The list is in arbitrary order. It does not
- include the special entries <code>'.'</code> and <code>'..'</code> even
- if they are present in the folder.</p>
- <p>The returned <a href="paramiko.SFTPAttributes-class.html"
- class="link">SFTPAttributes</a> objects will each have an additional
- field: <code>longname</code>, which may contain a formatted string of the
- file's attributes, in unix format. The content of this string will
- probably depend on the SFTP server implementation.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>path</code></strong> (str) - path to list (defaults to <code>'.'</code>)</li>
- </ul></dd>
- <dt>Returns: list of <a href="paramiko.SFTPAttributes-class.html"
- class="link">SFTPAttributes</a></dt>
- <dd>list of attributes</dd>
- </dl>
-<div class="fields"> <p><strong>Since:</strong>
- 1.2
- </p>
-</div></td></tr></table>
-</div>
-<a name="lstat"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">lstat</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">path</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Retrieve information about a file on the remote system, without
- following symbolic links (shortcuts). This otherwise behaves exactly the
- same as <a href="paramiko.SFTPClient-class.html#stat"
- class="link">stat</a>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>path</code></strong> (str) - the filename to stat</li>
- </ul></dd>
- <dt>Returns: SFTPAttributes</dt>
- <dd>an object containing attributes about the given file</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="mkdir"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">mkdir</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">path</span>,
- <span class="sig-arg">mode</span>=<span class="sig-default">511</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Create a folder (directory) named <code>path</code> with numeric mode
- <code>mode</code>. The default mode is 0777 (octal). On some systems,
- mode is ignored. Where it is used, the current umask value is first
- masked out.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>path</code></strong> (str) - name of the folder to create</li>
- <li><strong class="pname"><code>mode</code></strong> (int) - permissions (posix-style) for the newly-created folder</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="normalize"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">normalize</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">path</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return the normalized path (on the server) of a given path. This can
- be used to quickly resolve symbolic links or determine what the server is
- considering to be the &quot;current folder&quot; (by passing
- <code>'.'</code> as <code>path</code>).</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>path</code></strong> (str) - path to be normalized</li>
- </ul></dd>
- <dt>Returns: str</dt>
- <dd>normalized form of the given path</dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'>IOError</strong></code> - if the path can't be resolved on the server</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="open"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">open</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">filename</span>,
- <span class="sig-arg">mode</span>=<span class="sig-default"><code class="variable-quote">'</code><code class="variable-string">r</code><code class="variable-quote">'</code></span>,
- <span class="sig-arg">bufsize</span>=<span class="sig-default">-1</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Open a file on the remote server. The arguments are the same as for
- python's built-in <code>file</code> (aka <code>open</code>). A file-like
- object is returned, which closely mimics the behavior of a normal python
- file object.</p>
- <p>The mode indicates how the file is to be opened: <code>'r'</code> for
- reading, <code>'w'</code> for writing (truncating an existing file),
- <code>'a'</code> for appending, <code>'r+'</code> for reading/writing,
- <code>'w+'</code> for reading/writing (truncating an existing file),
- <code>'a+'</code> for reading/appending. The python <code>'b'</code>
- flag is ignored, since SSH treats all files as binary. The
- <code>'U'</code> flag is supported in a compatible way.</p>
- <p>Since 1.5.2, an <code>'x'</code> flag indicates that the operation
- should only succeed if the file was created and did not previously exist.
- This has no direct mapping to python's file flags, but is commonly known
- as the <code>O_EXCL</code> flag in posix.</p>
- <p>The file will be buffered in standard python style by default, but can
- be altered with the <code>bufsize</code> parameter. <code>0</code> turns
- off buffering, <code>1</code> uses line buffering, and any number greater
- than 1 (<code>&gt;1</code>) uses that specific buffer size.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>filename</code></strong> (str) - name of the file to open</li>
- <li><strong class="pname"><code>mode</code></strong> (str) - mode (python-style) to open in</li>
- <li><strong class="pname"><code>bufsize</code></strong> (int) - desired buffering (-1 = default buffer size)</li>
- </ul></dd>
- <dt>Returns: SFTPFile</dt>
- <dd>a file object representing the open file</dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'>IOError</strong></code> - if the file could not be opened.</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="put"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">put</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">localpath</span>,
- <span class="sig-arg">remotepath</span>,
- <span class="sig-arg">callback</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">confirm</span>=<span class="sig-default">True</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Copy a local file (<code>localpath</code>) to the SFTP server as
- <code>remotepath</code>. Any exception raised by operations will be
- passed through. This method is primarily provided as a convenience.</p>
- <p>The SFTP operations use pipelining for speed.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>localpath</code></strong> (str) - the local file to copy</li>
- <li><strong class="pname"><code>remotepath</code></strong> (str) - the destination path on the SFTP server</li>
- <li><strong class="pname"><code>callback</code></strong> (function(int, int)) - optional callback function that accepts the bytes transferred so
- far and the total bytes to be transferred (since 1.7.4)</li>
- <li><strong class="pname"><code>confirm</code></strong> (bool) - whether to do a stat() on the file afterwards to confirm the file
- size (since 1.7.7)</li>
- </ul></dd>
- <dt>Returns: SFTPAttributes</dt>
- <dd>an object containing attributes about the given file (since
- 1.7.4)</dd>
- </dl>
-<div class="fields"> <p><strong>Since:</strong>
- 1.4
- </p>
-</div></td></tr></table>
-</div>
-<a name="readlink"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">readlink</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">path</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return the target of a symbolic link (shortcut). You can use <a
- href="paramiko.SFTPClient-class.html#symlink" class="link">symlink</a> to
- create these. The result may be either an absolute or relative
- pathname.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>path</code></strong> (str) - path of the symbolic link file</li>
- </ul></dd>
- <dt>Returns: str</dt>
- <dd>target path</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="remove"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">remove</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">path</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Remove the file at the given path. This only works on files; for
- removing folders (directories), use <a
- href="paramiko.SFTPClient-class.html#rmdir" class="link">rmdir</a>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>path</code></strong> (str) - path (absolute or relative) of the file to remove</li>
- </ul></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'>IOError</strong></code> - if the path refers to a folder (directory)</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="rename"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">rename</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">oldpath</span>,
- <span class="sig-arg">newpath</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Rename a file or folder from <code>oldpath</code> to
- <code>newpath</code>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>oldpath</code></strong> (str) - existing name of the file or folder</li>
- <li><strong class="pname"><code>newpath</code></strong> (str) - new name for the file or folder</li>
- </ul></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'>IOError</strong></code> - if <code>newpath</code> is a folder, or something else goes wrong</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="rmdir"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">rmdir</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">path</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Remove the folder named <code>path</code>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>path</code></strong> (str) - name of the folder to remove</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="stat"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">stat</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">path</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Retrieve information about a file on the remote system. The return
- value is an object whose attributes correspond to the attributes of
- python's <code>stat</code> structure as returned by <code>os.stat</code>,
- except that it contains fewer fields. An SFTP server may return as much
- or as little info as it wants, so the results may vary from server to
- server.</p>
- <p>Unlike a python <code>stat</code> object, the result may not be
- accessed as a tuple. This is mostly due to the author's slack
- factor.</p>
- <p>The fields supported are: <code>st_mode</code>, <code>st_size</code>,
- <code>st_uid</code>, <code>st_gid</code>, <code>st_atime</code>, and
- <code>st_mtime</code>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>path</code></strong> (str) - the filename to stat</li>
- </ul></dd>
- <dt>Returns: SFTPAttributes</dt>
- <dd>an object containing attributes about the given file</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="symlink"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">symlink</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">source</span>,
- <span class="sig-arg">dest</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Create a symbolic link (shortcut) of the <code>source</code> path at
- <code>destination</code>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>source</code></strong> (str) - path of the original file</li>
- <li><strong class="pname"><code>dest</code></strong> (str) - path of the newly created symlink</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="truncate"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">truncate</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">path</span>,
- <span class="sig-arg">size</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Change the size of the file specified by <code>path</code>. This
- usually extends or shrinks the size of the file, just like the
- <code>truncate()</code> method on python file objects.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>path</code></strong> (str) - path of the file to modify</li>
- <li><strong class="pname"><code>size</code></strong> (int or long) - the new size of the file</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="unlink"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">unlink</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">path</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Remove the file at the given path. This only works on files; for
- removing folders (directories), use <a
- href="paramiko.SFTPClient-class.html#rmdir" class="link">rmdir</a>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>path</code></strong> (str) - path (absolute or relative) of the file to remove</li>
- </ul></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'>IOError</strong></code> - if the path refers to a folder (directory)</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="utime"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">utime</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">path</span>,
- <span class="sig-arg">times</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Set the access and modified times of the file specified by
- <code>path</code>. If <code>times</code> is <code>None</code>, then the
- file's access and modified times are set to the current time. Otherwise,
- <code>times</code> must be a 2-tuple of numbers, of the form
- <code>(atime, mtime)</code>, which is used to set the access and modified
- times, respectively. This bizarre API is mimicked from python for the
- sake of consistency -- I apologize.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>path</code></strong> (str) - path of the file to modify</li>
- <li><strong class="pname"><code>times</code></strong> (tuple(int)) - <code>None</code> or a tuple of (access time, modified time) in
- standard internet epoch time (seconds since 01 January 1970 GMT)</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.SFTPError-class.html b/docs/paramiko.SFTPError-class.html
deleted file mode 100644
index db75cdf..0000000
--- a/docs/paramiko.SFTPError-class.html
+++ /dev/null
@@ -1,169 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.SFTPError</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Class&nbsp;SFTPError
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.SFTPError-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class SFTPError</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#SFTPError">source&nbsp;code</a></span></p>
-<pre class="base-tree">
- object --+
- |
-exceptions.BaseException --+
- |
- exceptions.Exception --+
- |
- <strong class="uidshort">SFTPError</strong>
-</pre>
-
-<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.Exception</code></b>:
- <code>__init__</code>,
- <code>__new__</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.BaseException</code></b>:
- <code>__delattr__</code>,
- <code>__getattribute__</code>,
- <code>__getitem__</code>,
- <code>__getslice__</code>,
- <code>__reduce__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__setstate__</code>,
- <code>__str__</code>,
- <code>__unicode__</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__format__</code>,
- <code>__hash__</code>,
- <code>__reduce_ex__</code>,
- <code>__sizeof__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.BaseException</code></b>:
- <code>args</code>,
- <code>message</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.SFTPFile-class.html b/docs/paramiko.SFTPFile-class.html
deleted file mode 100644
index 8485072..0000000
--- a/docs/paramiko.SFTPFile-class.html
+++ /dev/null
@@ -1,1011 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.SFTPFile</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Class&nbsp;SFTPFile
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.SFTPFile-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class SFTPFile</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#SFTPFile">source&nbsp;code</a></span></p>
-<pre class="base-tree">
- object --+
- |
-<a href="paramiko.BufferedFile-class.html">BufferedFile</a> --+
- |
- <strong class="uidshort">SFTPFile</strong>
-</pre>
-
-<hr />
-<p>Proxy object for a file on the remote server, in client mode SFTP.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPFile-class.html#__del__" class="summary-sig-name">__del__</a>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_file-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPFile-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">sftp</span>,
- <span class="summary-sig-arg">handle</span>,
- <span class="summary-sig-arg">mode</span>=<span class="summary-sig-default"><code class="variable-quote">'</code><code class="variable-string">r</code><code class="variable-quote">'</code></span>,
- <span class="summary-sig-arg">bufsize</span>=<span class="summary-sig-default">-1</span>)</span><br />
- x.__init__(...) initializes x; see x.__class__.__doc__ for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_file-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">str</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPFile-class.html#check" class="summary-sig-name">check</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">hash_algorithm</span>,
- <span class="summary-sig-arg">offset</span>=<span class="summary-sig-default">0</span>,
- <span class="summary-sig-arg">length</span>=<span class="summary-sig-default">0</span>,
- <span class="summary-sig-arg">block_size</span>=<span class="summary-sig-default">0</span>)</span><br />
- Ask the server for a hash of a section of this file.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_file-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPFile-class.html#chmod" class="summary-sig-name">chmod</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">mode</span>)</span><br />
- Change the mode (permissions) of this file.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_file-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPFile-class.html#chown" class="summary-sig-name">chown</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">uid</span>,
- <span class="summary-sig-arg">gid</span>)</span><br />
- Change the owner (<code>uid</code>) and group (<code>gid</code>) of
- this file.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_file-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPFile-class.html#close" class="summary-sig-name">close</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Close the file.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_file-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">float</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPFile-class.html#gettimeout" class="summary-sig-name">gettimeout</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Returns the timeout in seconds (as a float) associated with the
- socket or ssh <a href="paramiko.Channel-class.html"
- class="link">Channel</a> used for this file.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_file-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPFile-class.html#prefetch" class="summary-sig-name">prefetch</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Pre-fetch the remaining contents of this file in anticipation of
- future <a href="paramiko.BufferedFile-class.html#read"
- class="link">read</a> calls.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_file-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">list(str)</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPFile-class.html#readv" class="summary-sig-name">readv</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">chunks</span>)</span><br />
- Read a set of blocks from the file by (offset, length).</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_file-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPFile-class.html#seek" class="summary-sig-name">seek</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">offset</span>,
- <span class="summary-sig-arg">whence</span>=<span class="summary-sig-default">0</span>)</span><br />
- Set the file's current position, like stdio's <code>fseek</code>.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_file-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPFile-class.html#set_pipelined" class="summary-sig-name">set_pipelined</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">pipelined</span>=<span class="summary-sig-default">True</span>)</span><br />
- Turn on/off the pipelining of write operations to this file.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_file-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPFile-class.html#setblocking" class="summary-sig-name">setblocking</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">blocking</span>)</span><br />
- Set blocking or non-blocking mode on the underiying socket or ssh <a
- href="paramiko.Channel-class.html" class="link">Channel</a>.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_file-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPFile-class.html#settimeout" class="summary-sig-name">settimeout</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">timeout</span>)</span><br />
- Set a timeout on read/write operations on the underlying socket or
- ssh <a href="paramiko.Channel-class.html" class="link">Channel</a>.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_file-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">SFTPAttributes</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPFile-class.html#stat" class="summary-sig-name">stat</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Retrieve information about this file from the remote system.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_file-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPFile-class.html#truncate" class="summary-sig-name">truncate</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">size</span>)</span><br />
- Change the size of this file.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_file-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPFile-class.html#utime" class="summary-sig-name">utime</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">times</span>)</span><br />
- Set the access and modified times of this file.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_file-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code><a href="paramiko.BufferedFile-class.html">BufferedFile</a></code></b>:
- <code><a href="paramiko.BufferedFile-class.html#__iter__">__iter__</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#flush">flush</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#next">next</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#read">read</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#readline">readline</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#readlines">readlines</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#tell">tell</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#write">write</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#writelines">writelines</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#xreadlines">xreadlines</a></code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS VARIABLES ==================== -->
-<a name="section-ClassVariables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Class Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MAX_REQUEST_SIZE"></a><span class="summary-name">MAX_REQUEST_SIZE</span> = <code title="32768">32768</code>
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code><a href="paramiko.BufferedFile-class.html">BufferedFile</a></code></b>:
- <code><a href="paramiko.BufferedFile-class.html#FLAG_APPEND">FLAG_APPEND</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#FLAG_BINARY">FLAG_BINARY</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#FLAG_BUFFERED">FLAG_BUFFERED</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#FLAG_LINE_BUFFERED">FLAG_LINE_BUFFERED</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#FLAG_READ">FLAG_READ</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#FLAG_UNIVERSAL_NEWLINE">FLAG_UNIVERSAL_NEWLINE</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#FLAG_WRITE">FLAG_WRITE</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#SEEK_CUR">SEEK_CUR</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#SEEK_END">SEEK_END</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#SEEK_SET">SEEK_SET</a></code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__del__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__del__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Destructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_file-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
-
- <dl class="fields">
- <dt>Overrides:
- <a href="paramiko.BufferedFile-class.html#__del__">BufferedFile.__del__</a>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">sftp</span>,
- <span class="sig-arg">handle</span>,
- <span class="sig-arg">mode</span>=<span class="sig-default"><code class="variable-quote">'</code><code class="variable-string">r</code><code class="variable-quote">'</code></span>,
- <span class="sig-arg">bufsize</span>=<span class="sig-default">-1</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_file-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see x.__class__.__doc__ for
- signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="check"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">check</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">hash_algorithm</span>,
- <span class="sig-arg">offset</span>=<span class="sig-default">0</span>,
- <span class="sig-arg">length</span>=<span class="sig-default">0</span>,
- <span class="sig-arg">block_size</span>=<span class="sig-default">0</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_file-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Ask the server for a hash of a section of this file. This can be used
- to verify a successful upload or download, or for various rsync-like
- operations.</p>
- <p>The file is hashed from <code>offset</code>, for <code>length</code>
- bytes. If <code>length</code> is 0, the remainder of the file is hashed.
- Thus, if both <code>offset</code> and <code>length</code> are zero, the
- entire file is hashed.</p>
- <p>Normally, <code>block_size</code> will be 0 (the default), and this
- method will return a byte string representing the requested hash (for
- example, a string of length 16 for MD5, or 20 for SHA-1). If a non-zero
- <code>block_size</code> is given, each chunk of the file (from
- <code>offset</code> to <code>offset + length</code>) of
- <code>block_size</code> bytes is computed as a separate hash. The hash
- results are all concatenated and returned as a single string.</p>
- <p>For example, <code>check('sha1', 0, 1024, 512)</code> will return a
- string of length 40. The first 20 bytes will be the SHA-1 of the first
- 512 bytes of the file, and the last 20 bytes will be the SHA-1 of the
- next 512 bytes.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>hash_algorithm</code></strong> (str) - the name of the hash algorithm to use (normally
- <code>&quot;sha1&quot;</code> or <code>&quot;md5&quot;</code>)</li>
- <li><strong class="pname"><code>offset</code></strong> (int or long) - offset into the file to begin hashing (0 means to start from the
- beginning)</li>
- <li><strong class="pname"><code>length</code></strong> (int or long) - number of bytes to hash (0 means continue to the end of the file)</li>
- <li><strong class="pname"><code>block_size</code></strong> (int) - number of bytes to hash per result (must not be less than 256; 0
- means to compute only one hash of the entire segment)</li>
- </ul></dd>
- <dt>Returns: str</dt>
- <dd>string of bytes representing the hash of each block, concatenated
- together</dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'>IOError</strong></code> - if the server doesn't support the &quot;check-file&quot; extension,
- or possibly doesn't support the hash algorithm requested</li>
- </ul></dd>
- </dl>
-<div class="fields"> <p><strong>Note:</strong>
- Many (most?) servers don't support this extension yet.
- </p>
- <p><strong>Since:</strong>
- 1.4
- </p>
-</div></td></tr></table>
-</div>
-<a name="chmod"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">chmod</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">mode</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_file-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Change the mode (permissions) of this file. The permissions are
- unix-style and identical to those used by python's <code>os.chmod</code>
- function.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>mode</code></strong> (int) - new permissions</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="chown"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">chown</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">uid</span>,
- <span class="sig-arg">gid</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_file-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Change the owner (<code>uid</code>) and group (<code>gid</code>) of
- this file. As with python's <code>os.chown</code> function, you must
- pass both arguments, so if you only want to change one, use <a
- href="paramiko.SFTPFile-class.html#stat" class="link">stat</a> first to
- retrieve the current owner and group.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>uid</code></strong> (int) - new owner's uid</li>
- <li><strong class="pname"><code>gid</code></strong> (int) - new group id</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="close"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">close</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_file-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Close the file. Future read and write operations will fail.</p>
- <dl class="fields">
- <dt>Overrides:
- <a href="paramiko.BufferedFile-class.html#close">BufferedFile.close</a>
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="gettimeout"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">gettimeout</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_file-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Returns the timeout in seconds (as a float) associated with the socket
- or ssh <a href="paramiko.Channel-class.html" class="link">Channel</a>
- used for this file.</p>
- <dl class="fields">
- <dt>Returns: float</dt>
- </dl>
-<div class="fields"> <p><strong>See Also:</strong>
- <a href="paramiko.Channel-class.html#gettimeout"
- class="link">Channel.gettimeout</a>
- </p>
-</div></td></tr></table>
-</div>
-<a name="prefetch"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">prefetch</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_file-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Pre-fetch the remaining contents of this file in anticipation of
- future <a href="paramiko.BufferedFile-class.html#read"
- class="link">read</a> calls. If reading the entire file, pre-fetching
- can dramatically improve the download speed by avoiding roundtrip
- latency. The file's contents are incrementally buffered in a background
- thread.</p>
- <p>The prefetched data is stored in a buffer until read via the <a
- href="paramiko.BufferedFile-class.html#read" class="link">read</a>
- method. Once data has been read, it's removed from the buffer. The data
- may be read in a random order (using <a
- href="paramiko.SFTPFile-class.html#seek" class="link">seek</a>); chunks
- of the buffer that haven't been read will continue to be buffered.</p>
- <dl class="fields">
- </dl>
-<div class="fields"> <p><strong>Since:</strong>
- 1.5.1
- </p>
-</div></td></tr></table>
-</div>
-<a name="readv"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">readv</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">chunks</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_file-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Read a set of blocks from the file by (offset, length). This is more
- efficient than doing a series of <a
- href="paramiko.SFTPFile-class.html#seek" class="link">seek</a> and <a
- href="paramiko.BufferedFile-class.html#read" class="link">read</a> calls,
- since the prefetch machinery is used to retrieve all the requested blocks
- at once.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>chunks</code></strong> (list(tuple(long, int))) - a list of (offset, length) tuples indicating which sections of
- the file to read</li>
- </ul></dd>
- <dt>Returns: list(str)</dt>
- <dd>a list of blocks read, in the same order as in
- <code>chunks</code></dd>
- </dl>
-<div class="fields"> <p><strong>Since:</strong>
- 1.5.4
- </p>
-</div></td></tr></table>
-</div>
-<a name="seek"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">seek</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">offset</span>,
- <span class="sig-arg">whence</span>=<span class="sig-default">0</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_file-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Set the file's current position, like stdio's <code>fseek</code>. Not
- all file objects support seeking.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>offset</code></strong> - position to move to within the file, relative to
- <code>whence</code>.</li>
- <li><strong class="pname"><code>whence</code></strong> - type of movement: 0 = absolute; 1 = relative to the current
- position; 2 = relative to the end of the file.</li>
- </ul></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'>IOError</strong></code> - if the file doesn't support random access.</li>
- </ul></dd>
- <dt>Overrides:
- <a href="paramiko.BufferedFile-class.html#seek">BufferedFile.seek</a>
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="set_pipelined"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">set_pipelined</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">pipelined</span>=<span class="sig-default">True</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_file-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Turn on/off the pipelining of write operations to this file. When
- pipelining is on, paramiko won't wait for the server response after each
- write operation. Instead, they're collected as they come in. At the
- first non-write operation (including <a
- href="paramiko.SFTPFile-class.html#close" class="link">close</a>), all
- remaining server responses are collected. This means that if there was
- an error with one of your later writes, an exception might be thrown from
- within <a href="paramiko.SFTPFile-class.html#close"
- class="link">close</a> instead of <a
- href="paramiko.BufferedFile-class.html#write" class="link">write</a>.</p>
- <p>By default, files are <i>not</i> pipelined.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>pipelined</code></strong> (bool) - <code>True</code> if pipelining should be turned on for this
- file; <code>False</code> otherwise</li>
- </ul></dd>
- </dl>
-<div class="fields"> <p><strong>Since:</strong>
- 1.5
- </p>
-</div></td></tr></table>
-</div>
-<a name="setblocking"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">setblocking</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">blocking</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_file-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Set blocking or non-blocking mode on the underiying socket or ssh <a
- href="paramiko.Channel-class.html" class="link">Channel</a>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>blocking</code></strong> (int) - 0 to set non-blocking mode; non-0 to set blocking mode.</li>
- </ul></dd>
- </dl>
-<div class="fields"> <p><strong>See Also:</strong>
- <a href="paramiko.Channel-class.html#setblocking"
- class="link">Channel.setblocking</a>
- </p>
-</div></td></tr></table>
-</div>
-<a name="settimeout"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">settimeout</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">timeout</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_file-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Set a timeout on read/write operations on the underlying socket or ssh
- <a href="paramiko.Channel-class.html" class="link">Channel</a>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>timeout</code></strong> (float) - seconds to wait for a pending read/write operation before raising
- <code>socket.timeout</code>, or <code>None</code> for no timeout</li>
- </ul></dd>
- </dl>
-<div class="fields"> <p><strong>See Also:</strong>
- <a href="paramiko.Channel-class.html#settimeout"
- class="link">Channel.settimeout</a>
- </p>
-</div></td></tr></table>
-</div>
-<a name="stat"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">stat</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_file-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Retrieve information about this file from the remote system. This is
- exactly like <a href="paramiko.SFTPClient-class.html#stat"
- class="link">SFTP.stat</a>, except that it operates on an already-open
- file.</p>
- <dl class="fields">
- <dt>Returns: SFTPAttributes</dt>
- <dd>an object containing attributes about this file.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="truncate"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">truncate</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">size</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_file-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Change the size of this file. This usually extends or shrinks the
- size of the file, just like the <code>truncate()</code> method on python
- file objects.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>size</code></strong> (int or long) - the new size of the file</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="utime"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">utime</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">times</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_file-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Set the access and modified times of this file. If <code>times</code>
- is <code>None</code>, then the file's access and modified times are set
- to the current time. Otherwise, <code>times</code> must be a 2-tuple of
- numbers, of the form <code>(atime, mtime)</code>, which is used to set
- the access and modified times, respectively. This bizarre API is
- mimicked from python for the sake of consistency -- I apologize.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>times</code></strong> (tuple(int)) - <code>None</code> or a tuple of (access time, modified time) in
- standard internet epoch time (seconds since 01 January 1970 GMT)</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.SFTPHandle-class.html b/docs/paramiko.SFTPHandle-class.html
deleted file mode 100644
index fa258af..0000000
--- a/docs/paramiko.SFTPHandle-class.html
+++ /dev/null
@@ -1,476 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.SFTPHandle</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Class&nbsp;SFTPHandle
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.SFTPHandle-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class SFTPHandle</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#SFTPHandle">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- <strong class="uidshort">SFTPHandle</strong>
-</pre>
-
-<hr />
-<p>Abstract object representing a handle to an open file (or folder) in
- an SFTP server implementation. Each handle has a string representation
- used by the client to refer to the underlying file.</p>
- <p>Server implementations can (and should) subclass SFTPHandle to
- implement features of a file handle, like <a
- href="paramiko.SFTPHandle-class.html#stat" class="link">stat</a> or <a
- href="paramiko.SFTPHandle-class.html#chattr" class="link">chattr</a>.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPHandle-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">flags</span>=<span class="summary-sig-default">0</span>)</span><br />
- Create a new file handle representing a local file being served over
- SFTP.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_handle-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">int</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPHandle-class.html#chattr" class="summary-sig-name">chattr</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">attr</span>)</span><br />
- Change the attributes of this file.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_handle-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPHandle-class.html#close" class="summary-sig-name">close</a>(<span class="summary-sig-arg">self</span>)</span><br />
- When a client closes a file, this method is called on the handle.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_handle-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">str</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPHandle-class.html#read" class="summary-sig-name">read</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">offset</span>,
- <span class="summary-sig-arg">length</span>)</span><br />
- Read up to <code>length</code> bytes from this file, starting at
- position <code>offset</code>.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_handle-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"><a href="paramiko.SFTPAttributes-class.html"
- class="link">SFTPAttributes</a> <i>or error code</i></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPHandle-class.html#stat" class="summary-sig-name">stat</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return an <a href="paramiko.SFTPAttributes-class.html"
- class="link">SFTPAttributes</a> object referring to this open file,
- or an error code.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_handle-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPHandle-class.html#write" class="summary-sig-name">write</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">offset</span>,
- <span class="summary-sig-arg">data</span>)</span><br />
- Write <code>data</code> into this file at position
- <code>offset</code>.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_handle-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">flags</span>=<span class="sig-default">0</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_handle-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Create a new file handle representing a local file being served over
- SFTP. If <code>flags</code> is passed in, it's used to determine if the
- file is open in append mode.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>flags</code></strong> (int) - optional flags as passed to <a
- href="paramiko.SFTPServerInterface-class.html#open"
- class="link">SFTPServerInterface.open</a></li>
- </ul></dd>
- <dt>Overrides:
- object.__init__
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="chattr"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">chattr</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">attr</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_handle-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Change the attributes of this file. The <code>attr</code> object will
- contain only those fields provided by the client in its request, so you
- should check for the presence of fields before using them.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>attr</code></strong> (<a href="paramiko.SFTPAttributes-class.html"
- class="link">SFTPAttributes</a>) - the attributes to change on this file.</li>
- </ul></dd>
- <dt>Returns: int</dt>
- <dd>an error code like SFTP_OK.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="close"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">close</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_handle-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>When a client closes a file, this method is called on the handle.
- Normally you would use this method to close the underlying OS level file
- object(s).</p>
- <p>The default implementation checks for attributes on <code>self</code>
- named <code>readfile</code> and/or <code>writefile</code>, and if either
- or both are present, their <code>close()</code> methods are called. This
- means that if you are using the default implementations of <a
- href="paramiko.SFTPHandle-class.html#read" class="link">read</a> and <a
- href="paramiko.SFTPHandle-class.html#write" class="link">write</a>, this
- method's default implementation should be fine also.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="read"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">read</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">offset</span>,
- <span class="sig-arg">length</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_handle-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Read up to <code>length</code> bytes from this file, starting at
- position <code>offset</code>. The offset may be a python long, since
- SFTP allows it to be 64 bits.</p>
- <p>If the end of the file has been reached, this method may return an
- empty string to signify EOF, or it may also return SFTP_EOF.</p>
- <p>The default implementation checks for an attribute on
- <code>self</code> named <code>readfile</code>, and if present, performs
- the read operation on the python file-like object found there. (This is
- meant as a time saver for the common case where you are wrapping a python
- file object.)</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>offset</code></strong> (int or long) - position in the file to start reading from.</li>
- <li><strong class="pname"><code>length</code></strong> (int) - number of bytes to attempt to read.</li>
- </ul></dd>
- <dt>Returns: str</dt>
- <dd>data read from the file, or an SFTP error code.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="stat"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">stat</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_handle-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return an <a href="paramiko.SFTPAttributes-class.html"
- class="link">SFTPAttributes</a> object referring to this open file, or an
- error code. This is equivalent to <a
- href="paramiko.SFTPServerInterface-class.html#stat"
- class="link">SFTPServerInterface.stat</a>, except it's called on an open
- file instead of a path.</p>
- <dl class="fields">
- <dt>Returns: <a href="paramiko.SFTPAttributes-class.html"
- class="link">SFTPAttributes</a> <i>or error code</i></dt>
- <dd>an attributes object for the given file, or an SFTP error code
- (like SFTP_PERMISSION_DENIED).</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="write"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">write</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">offset</span>,
- <span class="sig-arg">data</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_handle-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Write <code>data</code> into this file at position
- <code>offset</code>. Extending the file past its original end is
- expected. Unlike python's normal <code>write()</code> methods, this
- method cannot do a partial write: it must write all of <code>data</code>
- or else return an error.</p>
- <p>The default implementation checks for an attribute on
- <code>self</code> named <code>writefile</code>, and if present, performs
- the write operation on the python file-like object found there. The
- attribute is named differently from <code>readfile</code> to make it easy
- to implement read-only (or write-only) files, but if both attributes are
- present, they should refer to the same file.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>offset</code></strong> (int or long) - position in the file to start reading from.</li>
- <li><strong class="pname"><code>data</code></strong> (str) - data to write into the file.</li>
- </ul></dd>
- <dt>Returns:</dt>
- <dd>an SFTP error code like SFTP_OK.</dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.SFTPServer-class.html b/docs/paramiko.SFTPServer-class.html
deleted file mode 100644
index 9cb08b6..0000000
--- a/docs/paramiko.SFTPServer-class.html
+++ /dev/null
@@ -1,477 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.SFTPServer</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Class&nbsp;SFTPServer
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.SFTPServer-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class SFTPServer</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#SFTPServer">source&nbsp;code</a></span></p>
-<pre class="base-tree">
- object --+
- |
- BaseSFTP --+
- |
- object --+ |
- | |
-threading._Verbose --+ |
- | |
- threading.Thread --+ |
- | |
- <a href="paramiko.SubsystemHandler-class.html">SubsystemHandler</a> --+
- |
- <strong class="uidshort">SFTPServer</strong>
-</pre>
-
-<hr />
-<p>Server-side SFTP subsystem support. Since this is a <a
- href="paramiko.SubsystemHandler-class.html"
- class="link">SubsystemHandler</a>, it can be (and is meant to be) set as
- the handler for <code>&quot;sftp&quot;</code> requests. Use <a
- href="paramiko.Transport-class.html#set_subsystem_handler"
- class="link">Transport.set_subsystem_handler</a> to activate this
- class.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPServer-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">channel</span>,
- <span class="summary-sig-arg">name</span>,
- <span class="summary-sig-arg">server</span>,
- <span class="summary-sig-arg">sftp_si</span>=<span class="summary-sig-default">&lt;class 'paramiko.SFTPServerInterface'&gt;</span>,
- <span class="summary-sig-arg">*largs</span>,
- <span class="summary-sig-arg">**kwargs</span>)</span><br />
- The constructor for SFTPServer is meant to be called from within the
- <a href="paramiko.Transport-class.html" class="link">Transport</a> as
- a subsystem handler.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_server-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPServer-class.html#finish_subsystem" class="summary-sig-name">finish_subsystem</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Perform any cleanup at the end of a subsystem.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_server-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPServer-class.html#start_subsystem" class="summary-sig-name">start_subsystem</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">name</span>,
- <span class="summary-sig-arg">transport</span>,
- <span class="summary-sig-arg">channel</span>)</span><br />
- Process an ssh subsystem in server mode.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_server-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code><a href="paramiko.SubsystemHandler-class.html">SubsystemHandler</a></code></b>:
- <code><a href="paramiko.SubsystemHandler-class.html#get_server">get_server</a></code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>threading.Thread</code></b>:
- <code>__repr__</code>,
- <code>getName</code>,
- <code>isAlive</code>,
- <code>isDaemon</code>,
- <code>is_alive</code>,
- <code>join</code>,
- <code>run</code>,
- <code>setDaemon</code>,
- <code>setName</code>,
- <code>start</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== STATIC METHODS ==================== -->
-<a name="section-StaticMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Static Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">int</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPServer-class.html#convert_errno" class="summary-sig-name">convert_errno</a>(<span class="summary-sig-arg">e</span>)</span><br />
- Convert an errno value (as from an <code>OSError</code> or
- <code>IOError</code>) into a standard SFTP result code.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko-pysrc.html#SFTPServer.convert_errno">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPServer-class.html#set_file_attr" class="summary-sig-name">set_file_attr</a>(<span class="summary-sig-arg">filename</span>,
- <span class="summary-sig-arg">attr</span>)</span><br />
- Change a file's attributes on the local filesystem.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko-pysrc.html#SFTPServer.set_file_attr">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>threading.Thread</code></b>:
- <code>daemon</code>,
- <code>ident</code>,
- <code>name</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">channel</span>,
- <span class="sig-arg">name</span>,
- <span class="sig-arg">server</span>,
- <span class="sig-arg">sftp_si</span>=<span class="sig-default">&lt;class 'paramiko.SFTPServerInterface'&gt;</span>,
- <span class="sig-arg">*largs</span>,
- <span class="sig-arg">**kwargs</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_server-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>The constructor for SFTPServer is meant to be called from within the
- <a href="paramiko.Transport-class.html" class="link">Transport</a> as a
- subsystem handler. <code>server</code> and any additional parameters or
- keyword parameters are passed from the original call to <a
- href="paramiko.Transport-class.html#set_subsystem_handler"
- class="link">Transport.set_subsystem_handler</a>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>channel</code></strong> (<a href="paramiko.Channel-class.html" class="link">Channel</a>) - channel passed from the <a href="paramiko.Transport-class.html"
- class="link">Transport</a>.</li>
- <li><strong class="pname"><code>name</code></strong> (str) - name of the requested subsystem.</li>
- <li><strong class="pname"><code>server</code></strong> (<a href="paramiko.ServerInterface-class.html"
- class="link">ServerInterface</a>) - the server object associated with this channel and subsystem</li>
- <li><strong class="pname"><code>sftp_si</code></strong> (class) - a subclass of <a href="paramiko.SFTPServerInterface-class.html"
- class="link">SFTPServerInterface</a> to use for handling
- individual requests.</li>
- </ul></dd>
- <dt>Overrides:
- object.__init__
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="convert_errno"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">convert_errno</span>(<span class="sig-arg">e</span>)</span>
- <br /><em class="fname">Static Method</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko-pysrc.html#SFTPServer.convert_errno">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Convert an errno value (as from an <code>OSError</code> or
- <code>IOError</code>) into a standard SFTP result code. This is a
- convenience function for trapping exceptions in server code and returning
- an appropriate result.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>e</code></strong> (int) - an errno code, as from <code>OSError.errno</code>.</li>
- </ul></dd>
- <dt>Returns: int</dt>
- <dd>an SFTP error code like SFTP_NO_SUCH_FILE.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="finish_subsystem"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">finish_subsystem</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_server-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Perform any cleanup at the end of a subsystem. The default
- implementation just closes the channel.</p>
- <dl class="fields">
- <dt>Overrides:
- <a href="paramiko.SubsystemHandler-class.html#finish_subsystem">SubsystemHandler.finish_subsystem</a>
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="set_file_attr"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">set_file_attr</span>(<span class="sig-arg">filename</span>,
- <span class="sig-arg">attr</span>)</span>
- <br /><em class="fname">Static Method</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko-pysrc.html#SFTPServer.set_file_attr">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Change a file's attributes on the local filesystem. The contents of
- <code>attr</code> are used to change the permissions, owner, group
- ownership, and/or modification &amp; access time of the file, depending
- on which attributes are present in <code>attr</code>.</p>
- <p>This is meant to be a handy helper function for translating SFTP file
- requests into local file operations.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>filename</code></strong> (str) - name of the file to alter (should usually be an absolute path).</li>
- <li><strong class="pname"><code>attr</code></strong> (<a href="paramiko.SFTPAttributes-class.html"
- class="link">SFTPAttributes</a>) - attributes to change.</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="start_subsystem"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">start_subsystem</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">name</span>,
- <span class="sig-arg">transport</span>,
- <span class="sig-arg">channel</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_server-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Process an ssh subsystem in server mode. This method is called on a
- new object (and in a new thread) for each subsystem request. It is
- assumed that all subsystem logic will take place here, and when the
- subsystem is finished, this method will return. After this method
- returns, the channel is closed.</p>
- <p>The combination of <code>transport</code> and <code>channel</code> are
- unique; this handler corresponds to exactly one <a
- href="paramiko.Channel-class.html" class="link">Channel</a> on one <a
- href="paramiko.Transport-class.html" class="link">Transport</a>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>name</code></strong> - name of the requested subsystem.</li>
- <li><strong class="pname"><code>transport</code></strong> - the server-mode <a href="paramiko.Transport-class.html"
- class="link">Transport</a>.</li>
- <li><strong class="pname"><code>channel</code></strong> - the channel associated with this subsystem request.</li>
- </ul></dd>
- <dt>Overrides:
- <a href="paramiko.SubsystemHandler-class.html#start_subsystem">SubsystemHandler.start_subsystem</a>
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.SFTPServerInterface-class.html b/docs/paramiko.SFTPServerInterface-class.html
deleted file mode 100644
index 9474b77..0000000
--- a/docs/paramiko.SFTPServerInterface-class.html
+++ /dev/null
@@ -1,979 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.SFTPServerInterface</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Class&nbsp;SFTPServerInterface
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.SFTPServerInterface-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class SFTPServerInterface</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#SFTPServerInterface">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- <strong class="uidshort">SFTPServerInterface</strong>
-</pre>
-
-<hr />
-<p>This class defines an interface for controlling the behavior of
- paramiko when using the <a href="paramiko.SFTPServer-class.html"
- class="link">SFTPServer</a> subsystem to provide an SFTP server.</p>
- <p>Methods on this class are called from the SFTP session's thread, so
- you can block as long as necessary without affecting other sessions (even
- other SFTP sessions). However, raising an exception will usually cause
- the SFTP session to abruptly end, so you will usually want to catch
- exceptions and return an appropriate error code.</p>
- <p>All paths are in string form instead of unicode because not all SFTP
- clients &amp; servers obey the requirement that paths be encoded in
- UTF-8.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPServerInterface-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">server</span>,
- <span class="summary-sig-arg">*largs</span>,
- <span class="summary-sig-arg">**kwargs</span>)</span><br />
- Create a new SFTPServerInterface object.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_si-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPServerInterface-class.html#canonicalize" class="summary-sig-name">canonicalize</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">path</span>)</span><br />
- Return the canonical form of a path on the server.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_si-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">int</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPServerInterface-class.html#chattr" class="summary-sig-name">chattr</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">path</span>,
- <span class="summary-sig-arg">attr</span>)</span><br />
- Change the attributes of a file.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_si-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">list of <a href="paramiko.SFTPAttributes-class.html"
- class="link">SFTPAttributes</a> <i>or error code</i></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPServerInterface-class.html#list_folder" class="summary-sig-name">list_folder</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">path</span>)</span><br />
- Return a list of files within a given folder.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_si-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"><a href="paramiko.SFTPAttributes-class.html"
- class="link">SFTPAttributes</a> <i>or error code</i></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPServerInterface-class.html#lstat" class="summary-sig-name">lstat</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">path</span>)</span><br />
- Return an <a href="paramiko.SFTPAttributes-class.html"
- class="link">SFTPAttributes</a> object for a path on the server, or
- an error code.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_si-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">int</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPServerInterface-class.html#mkdir" class="summary-sig-name">mkdir</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">path</span>,
- <span class="summary-sig-arg">attr</span>)</span><br />
- Create a new directory with the given attributes.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_si-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPServerInterface-class.html#open" class="summary-sig-name">open</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">path</span>,
- <span class="summary-sig-arg">flags</span>,
- <span class="summary-sig-arg">attr</span>)</span><br />
- Open a file on the server and create a handle for future operations
- on that file.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_si-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">str <i>or error code</i></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPServerInterface-class.html#readlink" class="summary-sig-name">readlink</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">path</span>)</span><br />
- Return the target of a symbolic link (or shortcut) on the server.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_si-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">int</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPServerInterface-class.html#remove" class="summary-sig-name">remove</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">path</span>)</span><br />
- Delete a file, if possible.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_si-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">int</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPServerInterface-class.html#rename" class="summary-sig-name">rename</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">oldpath</span>,
- <span class="summary-sig-arg">newpath</span>)</span><br />
- Rename (or move) a file.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_si-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">int</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPServerInterface-class.html#rmdir" class="summary-sig-name">rmdir</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">path</span>)</span><br />
- Remove a directory if it exists.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_si-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPServerInterface-class.html#session_ended" class="summary-sig-name">session_ended</a>(<span class="summary-sig-arg">self</span>)</span><br />
- The SFTP server session has just ended, either cleanly or via an
- exception.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_si-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPServerInterface-class.html#session_started" class="summary-sig-name">session_started</a>(<span class="summary-sig-arg">self</span>)</span><br />
- The SFTP server session has just started.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_si-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"><a href="paramiko.SFTPAttributes-class.html"
- class="link">SFTPAttributes</a> <i>or error code</i></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPServerInterface-class.html#stat" class="summary-sig-name">stat</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">path</span>)</span><br />
- Return an <a href="paramiko.SFTPAttributes-class.html"
- class="link">SFTPAttributes</a> object for a path on the server, or
- an error code.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_si-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">int</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SFTPServerInterface-class.html#symlink" class="summary-sig-name">symlink</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">target_path</span>,
- <span class="summary-sig-arg">path</span>)</span><br />
- Create a symbolic link on the server, as new pathname
- <code>path</code>, with <code>target_path</code> as the target of the
- link.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.sftp_si-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">server</span>,
- <span class="sig-arg">*largs</span>,
- <span class="sig-arg">**kwargs</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_si-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Create a new SFTPServerInterface object. This method does nothing by
- default and is meant to be overridden by subclasses.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>server</code></strong> (<a href="paramiko.ServerInterface-class.html"
- class="link">ServerInterface</a>) - the server object associated with this channel and SFTP subsystem</li>
- </ul></dd>
- <dt>Overrides:
- object.__init__
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="canonicalize"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">canonicalize</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">path</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_si-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return the canonical form of a path on the server. For example, if
- the server's home folder is <code>/home/foo</code>, the path
- <code>&quot;../betty&quot;</code> would be canonicalized to
- <code>&quot;/home/betty&quot;</code>. Note the obvious security issues:
- if you're serving files only from a specific folder, you probably don't
- want this method to reveal path names outside that folder.</p>
- <p>You may find the python methods in <code>os.path</code> useful,
- especially <code>os.path.normpath</code> and
- <code>os.path.realpath</code>.</p>
- <p>The default implementation returns <code>os.path.normpath('/' +
- path)</code>.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="chattr"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">chattr</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">path</span>,
- <span class="sig-arg">attr</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_si-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Change the attributes of a file. The <code>attr</code> object will
- contain only those fields provided by the client in its request, so you
- should check for the presence of fields before using them.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>path</code></strong> (str) - requested path (relative or absolute) of the file to change.</li>
- <li><strong class="pname"><code>attr</code></strong> (<a href="paramiko.SFTPAttributes-class.html"
- class="link">SFTPAttributes</a>) - requested attributes to change on the file.</li>
- </ul></dd>
- <dt>Returns: int</dt>
- <dd>an error code like SFTP_OK.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="list_folder"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">list_folder</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">path</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_si-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return a list of files within a given folder. The <code>path</code>
- will use posix notation (<code>&quot;/&quot;</code> separates folder
- names) and may be an absolute or relative path.</p>
- <p>The list of files is expected to be a list of <a
- href="paramiko.SFTPAttributes-class.html" class="link">SFTPAttributes</a>
- objects, which are similar in structure to the objects returned by
- <code>os.stat</code>. In addition, each object should have its
- <code>filename</code> field filled in, since this is important to a
- directory listing and not normally present in <code>os.stat</code>
- results. The method <a
- href="paramiko.SFTPAttributes-class.html#from_stat"
- class="link">SFTPAttributes.from_stat</a> will usually do what you
- want.</p>
- <p>In case of an error, you should return one of the <code>SFTP_*</code>
- error codes, such as SFTP_PERMISSION_DENIED.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>path</code></strong> (str) - the requested path (relative or absolute) to be listed.</li>
- </ul></dd>
- <dt>Returns: list of <a href="paramiko.SFTPAttributes-class.html"
- class="link">SFTPAttributes</a> <i>or error code</i></dt>
- <dd>a list of the files in the given folder, using <a
- href="paramiko.SFTPAttributes-class.html"
- class="link">SFTPAttributes</a> objects.</dd>
- </dl>
-<div class="fields"> <p><strong>Note:</strong>
- You should normalize the given <code>path</code> first (see the
- <code>os.path</code> module) and check appropriate permissions
- before returning the list of files. Be careful of malicious
- clients attempting to use relative paths to escape restricted
- folders, if you're doing a direct translation from the SFTP server
- path to your local filesystem.
- </p>
-</div></td></tr></table>
-</div>
-<a name="lstat"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">lstat</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">path</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_si-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return an <a href="paramiko.SFTPAttributes-class.html"
- class="link">SFTPAttributes</a> object for a path on the server, or an
- error code. If your server supports symbolic links (also known as
- &quot;aliases&quot;), you should <i>not</i> follow them -- instead, you
- should return data on the symlink or alias itself. (<a
- href="paramiko.SFTPServerInterface-class.html#stat" class="link">stat</a>
- is the corresponding call that follows symlinks/aliases.)</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>path</code></strong> (str) - the requested path (relative or absolute) to fetch file
- statistics for.</li>
- </ul></dd>
- <dt>Returns: <a href="paramiko.SFTPAttributes-class.html"
- class="link">SFTPAttributes</a> <i>or error code</i></dt>
- <dd>an attributes object for the given file, or an SFTP error code
- (like SFTP_PERMISSION_DENIED).</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="mkdir"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">mkdir</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">path</span>,
- <span class="sig-arg">attr</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_si-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Create a new directory with the given attributes. The
- <code>attr</code> object may be considered a &quot;hint&quot; and
- ignored.</p>
- <p>The <code>attr</code> object will contain only those fields provided
- by the client in its request, so you should use <code>hasattr</code> to
- check for the presense of fields before using them. In some cases, the
- <code>attr</code> object may be completely empty.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>path</code></strong> (str) - requested path (relative or absolute) of the new folder.</li>
- <li><strong class="pname"><code>attr</code></strong> (<a href="paramiko.SFTPAttributes-class.html"
- class="link">SFTPAttributes</a>) - requested attributes of the new folder.</li>
- </ul></dd>
- <dt>Returns: int</dt>
- <dd>an SFTP error code like SFTP_OK.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="open"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">open</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">path</span>,
- <span class="sig-arg">flags</span>,
- <span class="sig-arg">attr</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_si-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Open a file on the server and create a handle for future operations on
- that file. On success, a new object subclassed from <a
- href="paramiko.SFTPHandle-class.html" class="link">SFTPHandle</a> should
- be returned. This handle will be used for future operations on the file
- (read, write, etc). On failure, an error code such as
- SFTP_PERMISSION_DENIED should be returned.</p>
- <p><code>flags</code> contains the requested mode for opening (read-only,
- write-append, etc) as a bitset of flags from the <code>os</code>
- module:</p>
- <ul>
- <li>
- <code>os.O_RDONLY</code>
- </li>
- <li>
- <code>os.O_WRONLY</code>
- </li>
- <li>
- <code>os.O_RDWR</code>
- </li>
- <li>
- <code>os.O_APPEND</code>
- </li>
- <li>
- <code>os.O_CREAT</code>
- </li>
- <li>
- <code>os.O_TRUNC</code>
- </li>
- <li>
- <code>os.O_EXCL</code>
- </li>
- </ul>
- <p>(One of <code>os.O_RDONLY</code>, <code>os.O_WRONLY</code>, or
- <code>os.O_RDWR</code> will always be set.)</p>
- <p>The <code>attr</code> object contains requested attributes of the file
- if it has to be created. Some or all attribute fields may be missing if
- the client didn't specify them.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>path</code></strong> (str) - the requested path (relative or absolute) of the file to be
- opened.</li>
- <li><strong class="pname"><code>flags</code></strong> (int) - flags or'd together from the <code>os</code> module indicating
- the requested mode for opening the file.</li>
- <li><strong class="pname"><code>attr</code></strong> (<a href="paramiko.SFTPAttributes-class.html"
- class="link">SFTPAttributes</a>) - requested attributes of the file if it is newly created.</li>
- </ul></dd>
- <dt>Returns:</dt>
- <dd>a new <a href="paramiko.SFTPHandle-class.html"
- class="link">SFTPHandle</a> <i>or error code</i>. @rtype <a
- href="paramiko.SFTPHandle-class.html" class="link">SFTPHandle</a></dd>
- </dl>
-<div class="fields"> <p><strong>Note:</strong>
- The SFTP protocol defines all files to be in &quot;binary&quot;
- mode. There is no equivalent to python's &quot;text&quot; mode.
- </p>
-</div></td></tr></table>
-</div>
-<a name="readlink"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">readlink</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">path</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_si-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return the target of a symbolic link (or shortcut) on the server. If
- the specified path doesn't refer to a symbolic link, an error should be
- returned.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>path</code></strong> (str) - path (relative or absolute) of the symbolic link.</li>
- </ul></dd>
- <dt>Returns: str <i>or error code</i></dt>
- <dd>the target path of the symbolic link, or an error code like
- SFTP_NO_SUCH_FILE.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="remove"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">remove</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">path</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_si-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Delete a file, if possible.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>path</code></strong> (str) - the requested path (relative or absolute) of the file to delete.</li>
- </ul></dd>
- <dt>Returns: int</dt>
- <dd>an SFTP error code like SFTP_OK.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="rename"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">rename</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">oldpath</span>,
- <span class="sig-arg">newpath</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_si-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Rename (or move) a file. The SFTP specification implies that this
- method can be used to move an existing file into a different folder, and
- since there's no other (easy) way to move files via SFTP, it's probably a
- good idea to implement &quot;move&quot; in this method too, even for
- files that cross disk partition boundaries, if at all possible.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>oldpath</code></strong> (str) - the requested path (relative or absolute) of the existing file.</li>
- <li><strong class="pname"><code>newpath</code></strong> (str) - the requested new path of the file.</li>
- </ul></dd>
- <dt>Returns: int</dt>
- <dd>an SFTP error code like SFTP_OK.</dd>
- </dl>
-<div class="fields"> <p><strong>Note:</strong>
- You should return an error if a file with the same name as
- <code>newpath</code> already exists. (The rename operation should
- be non-desctructive.)
- </p>
-</div></td></tr></table>
-</div>
-<a name="rmdir"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">rmdir</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">path</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_si-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Remove a directory if it exists. The <code>path</code> should refer
- to an existing, empty folder -- otherwise this method should return an
- error.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>path</code></strong> (str) - requested path (relative or absolute) of the folder to remove.</li>
- </ul></dd>
- <dt>Returns: int</dt>
- <dd>an SFTP error code like SFTP_OK.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="session_ended"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">session_ended</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_si-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>The SFTP server session has just ended, either cleanly or via an
- exception. This method is meant to be overridden to perform any
- necessary cleanup before this <code>SFTPServerInterface</code> object is
- destroyed.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="session_started"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">session_started</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_si-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>The SFTP server session has just started. This method is meant to be
- overridden to perform any necessary setup before handling callbacks from
- SFTP operations.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="stat"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">stat</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">path</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_si-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return an <a href="paramiko.SFTPAttributes-class.html"
- class="link">SFTPAttributes</a> object for a path on the server, or an
- error code. If your server supports symbolic links (also known as
- &quot;aliases&quot;), you should follow them. (<a
- href="paramiko.SFTPServerInterface-class.html#lstat"
- class="link">lstat</a> is the corresponding call that doesn't follow
- symlinks/aliases.)</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>path</code></strong> (str) - the requested path (relative or absolute) to fetch file
- statistics for.</li>
- </ul></dd>
- <dt>Returns: <a href="paramiko.SFTPAttributes-class.html"
- class="link">SFTPAttributes</a> <i>or error code</i></dt>
- <dd>an attributes object for the given file, or an SFTP error code
- (like SFTP_PERMISSION_DENIED).</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="symlink"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">symlink</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">target_path</span>,
- <span class="sig-arg">path</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.sftp_si-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Create a symbolic link on the server, as new pathname
- <code>path</code>, with <code>target_path</code> as the target of the
- link.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>target_path</code></strong> (str) - path (relative or absolute) of the target for this new symbolic
- link.</li>
- <li><strong class="pname"><code>path</code></strong> (str) - path (relative or absolute) of the symbolic link to create.</li>
- </ul></dd>
- <dt>Returns: int</dt>
- <dd>an error code like <code>SFTP_OK</code>.</dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.SSHClient-class.html b/docs/paramiko.SSHClient-class.html
deleted file mode 100644
index d45aef1..0000000
--- a/docs/paramiko.SSHClient-class.html
+++ /dev/null
@@ -1,845 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.SSHClient</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Class&nbsp;SSHClient
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.SSHClient-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class SSHClient</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#SSHClient">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- <strong class="uidshort">SSHClient</strong>
-</pre>
-
-<hr />
-<p>A high-level representation of a session with an SSH server. This
- class wraps <a href="paramiko.Transport-class.html"
- class="link">Transport</a>, <a href="paramiko.Channel-class.html"
- class="link">Channel</a>, and <a href="paramiko.SFTPClient-class.html"
- class="link">SFTPClient</a> to take care of most aspects of
- authenticating and opening channels. A typical use case is:</p>
-<pre class="literalblock">
- client = SSHClient()
- client.load_system_host_keys()
- client.connect('ssh.example.com')
- stdin, stdout, stderr = client.exec_command('ls -l')
-</pre>
- <p>You may pass in explicit overrides for authentication and server host
- key checking. The default mechanism is to try to use local key files or
- an SSH agent (if one is running).</p>
-
-<hr />
-<div class="fields"> <p><strong>Since:</strong>
- 1.6
- </p>
-</div><!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SSHClient-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Create a new SSHClient.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="close"></a><span class="summary-sig-name">close</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Close this SSHClient and its underlying <a
- href="paramiko.Transport-class.html" class="link">Transport</a>.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SSHClient-class.html#connect" class="summary-sig-name">connect</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">hostname</span>,
- <span class="summary-sig-arg">port</span>=<span class="summary-sig-default">22</span>,
- <span class="summary-sig-arg">username</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">password</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">pkey</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">key_filename</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">timeout</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">allow_agent</span>=<span class="summary-sig-default">True</span>,
- <span class="summary-sig-arg">look_for_keys</span>=<span class="summary-sig-default">True</span>,
- <span class="summary-sig-arg">compress</span>=<span class="summary-sig-default">False</span>)</span><br />
- Connect to an SSH server and authenticate to it.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">tuple(ChannelFile, ChannelFile, ChannelFile)</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SSHClient-class.html#exec_command" class="summary-sig-name">exec_command</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">command</span>,
- <span class="summary-sig-arg">bufsize</span>=<span class="summary-sig-default">-1</span>)</span><br />
- Execute a command on the SSH server.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"><a href="paramiko.HostKeys-class.html" class="link">HostKeys</a></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SSHClient-class.html#get_host_keys" class="summary-sig-name">get_host_keys</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Get the local <a href="paramiko.HostKeys-class.html"
- class="link">HostKeys</a> object.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"><a href="paramiko.Transport-class.html" class="link">Transport</a></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SSHClient-class.html#get_transport" class="summary-sig-name">get_transport</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return the underlying <a href="paramiko.Transport-class.html"
- class="link">Transport</a> object for this SSH connection.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"><a href="paramiko.Channel-class.html" class="link">Channel</a></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SSHClient-class.html#invoke_shell" class="summary-sig-name">invoke_shell</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">term</span>=<span class="summary-sig-default"><code class="variable-quote">'</code><code class="variable-string">vt100</code><code class="variable-quote">'</code></span>,
- <span class="summary-sig-arg">width</span>=<span class="summary-sig-default">80</span>,
- <span class="summary-sig-arg">height</span>=<span class="summary-sig-default">24</span>)</span><br />
- Start an interactive shell session on the SSH server.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SSHClient-class.html#load_host_keys" class="summary-sig-name">load_host_keys</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">filename</span>)</span><br />
- Load host keys from a local host-key file.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SSHClient-class.html#load_system_host_keys" class="summary-sig-name">load_system_host_keys</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">filename</span>=<span class="summary-sig-default">None</span>)</span><br />
- Load host keys from a system (read-only) file.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"><a href="paramiko.SFTPClient-class.html" class="link">SFTPClient</a></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SSHClient-class.html#open_sftp" class="summary-sig-name">open_sftp</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Open an SFTP session on the SSH server.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SSHClient-class.html#save_host_keys" class="summary-sig-name">save_host_keys</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">filename</span>)</span><br />
- Save the host keys back to a file.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SSHClient-class.html#set_log_channel" class="summary-sig-name">set_log_channel</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">name</span>)</span><br />
- Set the channel for logging.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SSHClient-class.html#set_missing_host_key_policy" class="summary-sig-name">set_missing_host_key_policy</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">policy</span>)</span><br />
- Set the policy to use when connecting to a server that doesn't have a
- host key in either the system or local <a
- href="paramiko.HostKeys-class.html" class="link">HostKeys</a>
- objects.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Create a new SSHClient.</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="connect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">connect</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">hostname</span>,
- <span class="sig-arg">port</span>=<span class="sig-default">22</span>,
- <span class="sig-arg">username</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">password</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">pkey</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">key_filename</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">timeout</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">allow_agent</span>=<span class="sig-default">True</span>,
- <span class="sig-arg">look_for_keys</span>=<span class="sig-default">True</span>,
- <span class="sig-arg">compress</span>=<span class="sig-default">False</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Connect to an SSH server and authenticate to it. The server's host
- key is checked against the system host keys (see <a
- href="paramiko.SSHClient-class.html#load_system_host_keys"
- class="link">load_system_host_keys</a>) and any local host keys (<a
- href="paramiko.SSHClient-class.html#load_host_keys"
- class="link">load_host_keys</a>). If the server's hostname is not found
- in either set of host keys, the missing host key policy is used (see <a
- href="paramiko.SSHClient-class.html#set_missing_host_key_policy"
- class="link">set_missing_host_key_policy</a>). The default policy is to
- reject the key and raise an <a href="paramiko.SSHException-class.html"
- class="link">SSHException</a>.</p>
- <p>Authentication is attempted in the following order of priority:</p>
- <ul>
- <li>
- The <code>pkey</code> or <code>key_filename</code> passed in (if any)
- </li>
- <li>
- Any key we can find through an SSH agent
- </li>
- <li>
- Any &quot;id_rsa&quot; or &quot;id_dsa&quot; key discoverable in
- <code>~/.ssh/</code>
- </li>
- <li>
- Plain username/password auth, if a password was given
- </li>
- </ul>
- <p>If a private key requires a password to unlock it, and a password is
- passed in, that password will be used to attempt to unlock the key.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>hostname</code></strong> (str) - the server to connect to</li>
- <li><strong class="pname"><code>port</code></strong> (int) - the server port to connect to</li>
- <li><strong class="pname"><code>username</code></strong> (str) - the username to authenticate as (defaults to the current local
- username)</li>
- <li><strong class="pname"><code>password</code></strong> (str) - a password to use for authentication or for unlocking a private
- key</li>
- <li><strong class="pname"><code>pkey</code></strong> (<a href="paramiko.PKey-class.html" class="link">PKey</a>) - an optional private key to use for authentication</li>
- <li><strong class="pname"><code>key_filename</code></strong> (str or list(str)) - the filename, or list of filenames, of optional private key(s) to
- try for authentication</li>
- <li><strong class="pname"><code>timeout</code></strong> (float) - an optional timeout (in seconds) for the TCP connect</li>
- <li><strong class="pname"><code>allow_agent</code></strong> (bool) - set to False to disable connecting to the SSH agent</li>
- <li><strong class="pname"><code>look_for_keys</code></strong> (bool) - set to False to disable searching for discoverable private key
- files in <code>~/.ssh/</code></li>
- <li><strong class="pname"><code>compress</code></strong> (bool) - set to True to turn on compression</li>
- </ul></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'><a href="paramiko.BadHostKeyException-class.html">BadHostKeyException</a></strong></code> - if the server's host key could not be verified</li>
- <li><code><strong class='fraise'><a href="paramiko.AuthenticationException-class.html">AuthenticationException</a></strong></code> - if authentication failed</li>
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if there was any other error connecting or establishing an SSH
- session</li>
- <li><code><strong class='fraise'>socket.error</strong></code> - if a socket error occurred while connecting</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="exec_command"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">exec_command</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">command</span>,
- <span class="sig-arg">bufsize</span>=<span class="sig-default">-1</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Execute a command on the SSH server. A new <a
- href="paramiko.Channel-class.html" class="link">Channel</a> is opened and
- the requested command is executed. The command's input and output
- streams are returned as python <code>file</code>-like objects
- representing stdin, stdout, and stderr.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>command</code></strong> (str) - the command to execute</li>
- <li><strong class="pname"><code>bufsize</code></strong> (int) - interpreted the same way as by the built-in <code>file()</code>
- function in python</li>
- </ul></dd>
- <dt>Returns: tuple(ChannelFile, ChannelFile, ChannelFile)</dt>
- <dd>the stdin, stdout, and stderr of the executing command</dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if the server fails to execute the command</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="get_host_keys"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_host_keys</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Get the local <a href="paramiko.HostKeys-class.html"
- class="link">HostKeys</a> object. This can be used to examine the local
- host keys or change them.</p>
- <dl class="fields">
- <dt>Returns: <a href="paramiko.HostKeys-class.html" class="link">HostKeys</a></dt>
- <dd>the local host keys</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="get_transport"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_transport</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return the underlying <a href="paramiko.Transport-class.html"
- class="link">Transport</a> object for this SSH connection. This can be
- used to perform lower-level tasks, like opening specific kinds of
- channels.</p>
- <dl class="fields">
- <dt>Returns: <a href="paramiko.Transport-class.html" class="link">Transport</a></dt>
- <dd>the Transport for this connection</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="invoke_shell"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">invoke_shell</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">term</span>=<span class="sig-default"><code class="variable-quote">'</code><code class="variable-string">vt100</code><code class="variable-quote">'</code></span>,
- <span class="sig-arg">width</span>=<span class="sig-default">80</span>,
- <span class="sig-arg">height</span>=<span class="sig-default">24</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Start an interactive shell session on the SSH server. A new <a
- href="paramiko.Channel-class.html" class="link">Channel</a> is opened and
- connected to a pseudo-terminal using the requested terminal type and
- size.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>term</code></strong> (str) - the terminal type to emulate (for example,
- <code>&quot;vt100&quot;</code>)</li>
- <li><strong class="pname"><code>width</code></strong> (int) - the width (in characters) of the terminal window</li>
- <li><strong class="pname"><code>height</code></strong> (int) - the height (in characters) of the terminal window</li>
- </ul></dd>
- <dt>Returns: <a href="paramiko.Channel-class.html" class="link">Channel</a></dt>
- <dd>a new channel connected to the remote shell</dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if the server fails to invoke a shell</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="load_host_keys"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">load_host_keys</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">filename</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Load host keys from a local host-key file. Host keys read with this
- method will be checked <i>after</i> keys loaded via <a
- href="paramiko.SSHClient-class.html#load_system_host_keys"
- class="link">load_system_host_keys</a>, but will be saved back by <a
- href="paramiko.SSHClient-class.html#save_host_keys"
- class="link">save_host_keys</a> (so they can be modified). The missing
- host key policy <a href="paramiko.AutoAddPolicy-class.html"
- class="link">AutoAddPolicy</a> adds keys to this set and saves them, when
- connecting to a previously-unknown server.</p>
- <p>This method can be called multiple times. Each new set of host keys
- will be merged with the existing set (new replacing old if there are
- conflicts). When automatically saving, the last hostname is used.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>filename</code></strong> (str) - the filename to read</li>
- </ul></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'>IOError</strong></code> - if the filename could not be read</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="load_system_host_keys"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">load_system_host_keys</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">filename</span>=<span class="sig-default">None</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Load host keys from a system (read-only) file. Host keys read with
- this method will not be saved back by <a
- href="paramiko.SSHClient-class.html#save_host_keys"
- class="link">save_host_keys</a>.</p>
- <p>This method can be called multiple times. Each new set of host keys
- will be merged with the existing set (new replacing old if there are
- conflicts).</p>
- <p>If <code>filename</code> is left as <code>None</code>, an attempt will
- be made to read keys from the user's local &quot;known hosts&quot; file,
- as used by OpenSSH, and no exception will be raised if the file can't be
- read. This is probably only useful on posix.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>filename</code></strong> (str) - the filename to read, or <code>None</code></li>
- </ul></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'>IOError</strong></code> - if a filename was provided and the file could not be read</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="open_sftp"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">open_sftp</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Open an SFTP session on the SSH server.</p>
- <dl class="fields">
- <dt>Returns: <a href="paramiko.SFTPClient-class.html" class="link">SFTPClient</a></dt>
- <dd>a new SFTP session object</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="save_host_keys"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">save_host_keys</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">filename</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Save the host keys back to a file. Only the host keys loaded with <a
- href="paramiko.SSHClient-class.html#load_host_keys"
- class="link">load_host_keys</a> (plus any added directly) will be saved
- -- not any host keys loaded with <a
- href="paramiko.SSHClient-class.html#load_system_host_keys"
- class="link">load_system_host_keys</a>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>filename</code></strong> (str) - the filename to save to</li>
- </ul></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'>IOError</strong></code> - if the file could not be written</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="set_log_channel"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">set_log_channel</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">name</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Set the channel for logging. The default is
- <code>&quot;paramiko.transport&quot;</code> but it can be set to anything
- you want.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>name</code></strong> (str) - new channel name for logging</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="set_missing_host_key_policy"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">set_missing_host_key_policy</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">policy</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Set the policy to use when connecting to a server that doesn't have a
- host key in either the system or local <a
- href="paramiko.HostKeys-class.html" class="link">HostKeys</a> objects.
- The default policy is to reject all unknown servers (using <a
- href="paramiko.RejectPolicy-class.html" class="link">RejectPolicy</a>).
- You may substitute <a href="paramiko.AutoAddPolicy-class.html"
- class="link">AutoAddPolicy</a> or write your own policy class.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>policy</code></strong> (<a href="paramiko.MissingHostKeyPolicy-class.html"
- class="link">MissingHostKeyPolicy</a>) - the policy to use when receiving a host key from a
- previously-unknown server</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.SSHConfig-class.html b/docs/paramiko.SSHConfig-class.html
deleted file mode 100644
index d46115c..0000000
--- a/docs/paramiko.SSHConfig-class.html
+++ /dev/null
@@ -1,309 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.SSHConfig</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Class&nbsp;SSHConfig
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.SSHConfig-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class SSHConfig</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#SSHConfig">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- <strong class="uidshort">SSHConfig</strong>
-</pre>
-
-<hr />
-<p>Representation of config information as stored in the format used by
- OpenSSH. Queries can be made via <a
- href="paramiko.SSHConfig-class.html#lookup" class="link">lookup</a>. The
- format is described in OpenSSH's <code>ssh_config</code> man page. This
- class is provided primarily as a convenience to posix users (since the
- OpenSSH format is a de-facto standard on posix) but should work fine on
- Windows too.</p>
-
-<hr />
-<div class="fields"> <p><strong>Since:</strong>
- 1.6
- </p>
-</div><!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SSHConfig-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Create a new OpenSSH config object.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.config-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SSHConfig-class.html#lookup" class="summary-sig-name">lookup</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">hostname</span>)</span><br />
- Return a dict of config options for a given hostname.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.config-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SSHConfig-class.html#parse" class="summary-sig-name">parse</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">file_obj</span>)</span><br />
- Read an OpenSSH config from the given file object.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.config-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.config-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Create a new OpenSSH config object.</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="lookup"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">lookup</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">hostname</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.config-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return a dict of config options for a given hostname.</p>
- <p>The host-matching rules of OpenSSH's <code>ssh_config</code> man page
- are used, which means that all configuration options from matching host
- specifications are merged, with more specific hostmasks taking
- precedence. In other words, if <code>&quot;Port&quot;</code> is set under
- <code>&quot;Host *&quot;</code> and also <code>&quot;Host
- *.example.com&quot;</code>, and the lookup is for
- <code>&quot;ssh.example.com&quot;</code>, then the port entry for
- <code>&quot;Host *.example.com&quot;</code> will win out.</p>
- <p>The keys in the returned dict are all normalized to lowercase (look
- for <code>&quot;port&quot;</code>, not <code>&quot;Port&quot;</code>. No
- other processing is done to the keys or values.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>hostname</code></strong> (str) - the hostname to lookup</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="parse"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">parse</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">file_obj</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.config-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Read an OpenSSH config from the given file object.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>file_obj</code></strong> (file) - a file-like object to read the config file from</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.SSHException-class.html b/docs/paramiko.SSHException-class.html
deleted file mode 100644
index 7867d5d..0000000
--- a/docs/paramiko.SSHException-class.html
+++ /dev/null
@@ -1,178 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.SSHException</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Class&nbsp;SSHException
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.SSHException-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class SSHException</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#SSHException">source&nbsp;code</a></span></p>
-<pre class="base-tree">
- object --+
- |
-exceptions.BaseException --+
- |
- exceptions.Exception --+
- |
- <strong class="uidshort">SSHException</strong>
-</pre>
-
-<dl><dt>Known Subclasses:</dt>
-<dd>
- <ul class="subclass-list">
-<li><a href="paramiko.AuthenticationException-class.html">AuthenticationException</a></li><li>, <a href="paramiko.BadHostKeyException-class.html">BadHostKeyException</a></li><li>, <a href="paramiko.ChannelException-class.html">ChannelException</a></li> </ul>
-</dd></dl>
-
-<hr />
-<p>Exception raised by failures in SSH2 protocol negotiation or logic
- errors.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.Exception</code></b>:
- <code>__init__</code>,
- <code>__new__</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.BaseException</code></b>:
- <code>__delattr__</code>,
- <code>__getattribute__</code>,
- <code>__getitem__</code>,
- <code>__getslice__</code>,
- <code>__reduce__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__setstate__</code>,
- <code>__str__</code>,
- <code>__unicode__</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__format__</code>,
- <code>__hash__</code>,
- <code>__reduce_ex__</code>,
- <code>__sizeof__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.BaseException</code></b>:
- <code>args</code>,
- <code>message</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.SecurityOptions-class.html b/docs/paramiko.SecurityOptions-class.html
deleted file mode 100644
index 3133bed..0000000
--- a/docs/paramiko.SecurityOptions-class.html
+++ /dev/null
@@ -1,397 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.SecurityOptions</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Class&nbsp;SecurityOptions
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.SecurityOptions-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class SecurityOptions</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#SecurityOptions">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- <strong class="uidshort">SecurityOptions</strong>
-</pre>
-
-<hr />
-<p>Simple object containing the security preferences of an ssh transport.
- These are tuples of acceptable ciphers, digests, key types, and key
- exchange algorithms, listed in order of preference.</p>
- <p>Changing the contents and/or order of these fields affects the
- underlying <a href="paramiko.Transport-class.html"
- class="link">Transport</a> (but only if you change them before starting
- the session). If you try to add an algorithm that paramiko doesn't
- recognize, <code>ValueError</code> will be raised. If you try to assign
- something besides a tuple to one of the fields, <code>TypeError</code>
- will be raised.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SecurityOptions-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">transport</span>)</span><br />
- x.__init__(...) initializes x; see x.__class__.__doc__ for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">str</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SecurityOptions-class.html#__repr__" class="summary-sig-name">__repr__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Returns a string representation of this object, for debugging.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.SecurityOptions-class.html#ciphers" class="summary-name">ciphers</a><br />
- Symmetric encryption ciphers
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.SecurityOptions-class.html#compression" class="summary-name">compression</a><br />
- Compression algorithms
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.SecurityOptions-class.html#digests" class="summary-name">digests</a><br />
- Digest (one-way hash) algorithms
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.SecurityOptions-class.html#kex" class="summary-name">kex</a><br />
- Key exchange algorithms
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.SecurityOptions-class.html#key_types" class="summary-name">key_types</a><br />
- Public-key algorithms
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">transport</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see x.__class__.__doc__ for
- signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="__repr__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__repr__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Representation operator)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Returns a string representation of this object, for debugging.</p>
- <dl class="fields">
- <dt>Returns: str</dt>
- <dt>Overrides:
- object.__repr__
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== PROPERTY DETAILS ==================== -->
-<a name="section-PropertyDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Property Details</span></td>
-</tr>
-</table>
-<a name="ciphers"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">ciphers</h3>
- <p>Symmetric encryption ciphers</p>
- <dl class="fields">
- <dt>Get Method:</dt>
- <dd class="value"><span class="summary-sig"><a href="paramiko.SecurityOptions-class.html#_get_ciphers" class="summary-sig-name" onclick="show_private();">_get_ciphers</a>(<span class="summary-sig-arg">self</span>)</span>
- </dd>
- <dt>Set Method:</dt>
- <dd class="value"><span class="summary-sig"><a href="paramiko.SecurityOptions-class.html#_set_ciphers" class="summary-sig-name" onclick="show_private();">_set_ciphers</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">x</span>)</span>
- </dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="compression"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">compression</h3>
- <p>Compression algorithms</p>
- <dl class="fields">
- <dt>Get Method:</dt>
- <dd class="value"><span class="summary-sig"><a href="paramiko.SecurityOptions-class.html#_get_compression" class="summary-sig-name" onclick="show_private();">_get_compression</a>(<span class="summary-sig-arg">self</span>)</span>
- </dd>
- <dt>Set Method:</dt>
- <dd class="value"><span class="summary-sig"><a href="paramiko.SecurityOptions-class.html#_set_compression" class="summary-sig-name" onclick="show_private();">_set_compression</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">x</span>)</span>
- </dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="digests"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">digests</h3>
- <p>Digest (one-way hash) algorithms</p>
- <dl class="fields">
- <dt>Get Method:</dt>
- <dd class="value"><span class="summary-sig"><a href="paramiko.SecurityOptions-class.html#_get_digests" class="summary-sig-name" onclick="show_private();">_get_digests</a>(<span class="summary-sig-arg">self</span>)</span>
- </dd>
- <dt>Set Method:</dt>
- <dd class="value"><span class="summary-sig"><a href="paramiko.SecurityOptions-class.html#_set_digests" class="summary-sig-name" onclick="show_private();">_set_digests</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">x</span>)</span>
- </dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="kex"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">kex</h3>
- <p>Key exchange algorithms</p>
- <dl class="fields">
- <dt>Get Method:</dt>
- <dd class="value"><span class="summary-sig"><a href="paramiko.SecurityOptions-class.html#_get_kex" class="summary-sig-name" onclick="show_private();">_get_kex</a>(<span class="summary-sig-arg">self</span>)</span>
- </dd>
- <dt>Set Method:</dt>
- <dd class="value"><span class="summary-sig"><a href="paramiko.SecurityOptions-class.html#_set_kex" class="summary-sig-name" onclick="show_private();">_set_kex</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">x</span>)</span>
- </dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="key_types"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">key_types</h3>
- <p>Public-key algorithms</p>
- <dl class="fields">
- <dt>Get Method:</dt>
- <dd class="value"><span class="summary-sig"><a href="paramiko.SecurityOptions-class.html#_get_key_types" class="summary-sig-name" onclick="show_private();">_get_key_types</a>(<span class="summary-sig-arg">self</span>)</span>
- </dd>
- <dt>Set Method:</dt>
- <dd class="value"><span class="summary-sig"><a href="paramiko.SecurityOptions-class.html#_set_key_types" class="summary-sig-name" onclick="show_private();">_set_key_types</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">x</span>)</span>
- </dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.ServerInterface-class.html b/docs/paramiko.ServerInterface-class.html
deleted file mode 100644
index 7cf53a6..0000000
--- a/docs/paramiko.ServerInterface-class.html
+++ /dev/null
@@ -1,1247 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.ServerInterface</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Class&nbsp;ServerInterface
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.ServerInterface-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class ServerInterface</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#ServerInterface">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- <strong class="uidshort">ServerInterface</strong>
-</pre>
-
-<hr />
-<p>This class defines an interface for controlling the behavior of
- paramiko in server mode.</p>
- <p>Methods on this class are called from paramiko's primary thread, so
- you shouldn't do too much work in them. (Certainly nothing that blocks
- or sleeps.)</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#cancel_port_forward_request" class="summary-sig-name">cancel_port_forward_request</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">address</span>,
- <span class="summary-sig-arg">port</span>)</span><br />
- The client would like to cancel a previous port-forwarding request.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">int or InteractiveQuery</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#check_auth_interactive" class="summary-sig-name">check_auth_interactive</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">username</span>,
- <span class="summary-sig-arg">submethods</span>)</span><br />
- Begin an interactive authentication challenge, if supported.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">int or InteractiveQuery</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#check_auth_interactive_response" class="summary-sig-name">check_auth_interactive_response</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">responses</span>)</span><br />
- Continue or finish an interactive authentication challenge, if
- supported.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">int</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#check_auth_none" class="summary-sig-name">check_auth_none</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">username</span>)</span><br />
- Determine if a client may open channels with no (further)
- authentication.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">int</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#check_auth_password" class="summary-sig-name">check_auth_password</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">username</span>,
- <span class="summary-sig-arg">password</span>)</span><br />
- Determine if a given username and password supplied by the client is
- acceptable for use in authentication.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">int</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#check_auth_publickey" class="summary-sig-name">check_auth_publickey</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">username</span>,
- <span class="summary-sig-arg">key</span>)</span><br />
- Determine if a given key supplied by the client is acceptable for use
- in authentication.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">int</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#check_channel_direct_tcpip_request" class="summary-sig-name">check_channel_direct_tcpip_request</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">chanid</span>,
- <span class="summary-sig-arg">origin</span>,
- <span class="summary-sig-arg">destination</span>)</span><br />
- Determine if a local port forwarding channel will be granted, and
- return <code>OPEN_SUCCEEDED</code> or an error code.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">bool</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#check_channel_exec_request" class="summary-sig-name">check_channel_exec_request</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">channel</span>,
- <span class="summary-sig-arg">command</span>)</span><br />
- Determine if a shell command will be executed for the client.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">bool</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#check_channel_pty_request" class="summary-sig-name">check_channel_pty_request</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">channel</span>,
- <span class="summary-sig-arg">term</span>,
- <span class="summary-sig-arg">width</span>,
- <span class="summary-sig-arg">height</span>,
- <span class="summary-sig-arg">pixelwidth</span>,
- <span class="summary-sig-arg">pixelheight</span>,
- <span class="summary-sig-arg">modes</span>)</span><br />
- Determine if a pseudo-terminal of the given dimensions (usually
- requested for shell access) can be provided on the given channel.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">int</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#check_channel_request" class="summary-sig-name">check_channel_request</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">kind</span>,
- <span class="summary-sig-arg">chanid</span>)</span><br />
- Determine if a channel request of a given type will be granted, and
- return <code>OPEN_SUCCEEDED</code> or an error code.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">bool</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#check_channel_shell_request" class="summary-sig-name">check_channel_shell_request</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">channel</span>)</span><br />
- Determine if a shell will be provided to the client on the given
- channel.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">bool</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#check_channel_subsystem_request" class="summary-sig-name">check_channel_subsystem_request</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">channel</span>,
- <span class="summary-sig-arg">name</span>)</span><br />
- Determine if a requested subsystem will be provided to the client on
- the given channel.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">bool</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#check_channel_window_change_request" class="summary-sig-name">check_channel_window_change_request</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">channel</span>,
- <span class="summary-sig-arg">width</span>,
- <span class="summary-sig-arg">height</span>,
- <span class="summary-sig-arg">pixelwidth</span>,
- <span class="summary-sig-arg">pixelheight</span>)</span><br />
- Determine if the pseudo-terminal on the given channel can be resized.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">bool</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#check_channel_x11_request" class="summary-sig-name">check_channel_x11_request</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">channel</span>,
- <span class="summary-sig-arg">single_connection</span>,
- <span class="summary-sig-arg">auth_protocol</span>,
- <span class="summary-sig-arg">auth_cookie</span>,
- <span class="summary-sig-arg">screen_number</span>)</span><br />
- Determine if the client will be provided with an X11 session.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">bool</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#check_global_request" class="summary-sig-name">check_global_request</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">kind</span>,
- <span class="summary-sig-arg">msg</span>)</span><br />
- Handle a global request of the given <code>kind</code>.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">int</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#check_port_forward_request" class="summary-sig-name">check_port_forward_request</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">address</span>,
- <span class="summary-sig-arg">port</span>)</span><br />
- Handle a request for port forwarding.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">str</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#get_allowed_auths" class="summary-sig-name">get_allowed_auths</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">username</span>)</span><br />
- Return a list of authentication methods supported by the server.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="cancel_port_forward_request"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">cancel_port_forward_request</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">address</span>,
- <span class="sig-arg">port</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>The client would like to cancel a previous port-forwarding request. If
- the given address and port is being forwarded across this ssh connection,
- the port should be closed.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>address</code></strong> (str) - the forwarded address</li>
- <li><strong class="pname"><code>port</code></strong> (int) - the forwarded port</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="check_auth_interactive"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">check_auth_interactive</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">username</span>,
- <span class="sig-arg">submethods</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Begin an interactive authentication challenge, if supported. You
- should override this method in server mode if you want to support the
- <code>&quot;keyboard-interactive&quot;</code> auth type, which requires
- you to send a series of questions for the client to answer.</p>
- <p>Return AUTH_FAILED if this auth method isn't supported. Otherwise,
- you should return an InteractiveQuery object containing the prompts and
- instructions for the user. The response will be sent via a call to <a
- href="paramiko.ServerInterface-class.html#check_auth_interactive_response"
- class="link">check_auth_interactive_response</a>.</p>
- <p>The default implementation always returns AUTH_FAILED.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>username</code></strong> (str) - the username of the authenticating client</li>
- <li><strong class="pname"><code>submethods</code></strong> (str) - a comma-separated list of methods preferred by the client
- (usually empty)</li>
- </ul></dd>
- <dt>Returns: int or InteractiveQuery</dt>
- <dd>AUTH_FAILED if this auth method isn't supported; otherwise an
- object containing queries for the user</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="check_auth_interactive_response"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">check_auth_interactive_response</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">responses</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Continue or finish an interactive authentication challenge, if
- supported. You should override this method in server mode if you want to
- support the <code>&quot;keyboard-interactive&quot;</code> auth type.</p>
- <p>Return AUTH_FAILED if the responses are not accepted, AUTH_SUCCESSFUL
- if the responses are accepted and complete the authentication, or
- AUTH_PARTIALLY_SUCCESSFUL if your authentication is stateful, and this
- set of responses is accepted for authentication, but more authentication
- is required. (In this latter case, <a
- href="paramiko.ServerInterface-class.html#get_allowed_auths"
- class="link">get_allowed_auths</a> will be called to report to the client
- what options it has for continuing the authentication.)</p>
- <p>If you wish to continue interactive authentication with more
- questions, you may return an InteractiveQuery object, which should cause
- the client to respond with more answers, calling this method again. This
- cycle can continue indefinitely.</p>
- <p>The default implementation always returns AUTH_FAILED.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>responses</code></strong> (list(str)) - list of responses from the client</li>
- </ul></dd>
- <dt>Returns: int or InteractiveQuery</dt>
- <dd>AUTH_FAILED if the authentication fails; AUTH_SUCCESSFUL if it
- succeeds; AUTH_PARTIALLY_SUCCESSFUL if the interactive auth is
- successful, but authentication must continue; otherwise an object
- containing queries for the user</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="check_auth_none"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">check_auth_none</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">username</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Determine if a client may open channels with no (further)
- authentication.</p>
- <p>Return AUTH_FAILED if the client must authenticate, or AUTH_SUCCESSFUL
- if it's okay for the client to not authenticate.</p>
- <p>The default implementation always returns AUTH_FAILED.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>username</code></strong> (str) - the username of the client.</li>
- </ul></dd>
- <dt>Returns: int</dt>
- <dd>AUTH_FAILED if the authentication fails; AUTH_SUCCESSFUL if it
- succeeds.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="check_auth_password"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">check_auth_password</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">username</span>,
- <span class="sig-arg">password</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Determine if a given username and password supplied by the client is
- acceptable for use in authentication.</p>
- <p>Return AUTH_FAILED if the password is not accepted, AUTH_SUCCESSFUL if
- the password is accepted and completes the authentication, or
- AUTH_PARTIALLY_SUCCESSFUL if your authentication is stateful, and this
- key is accepted for authentication, but more authentication is required.
- (In this latter case, <a
- href="paramiko.ServerInterface-class.html#get_allowed_auths"
- class="link">get_allowed_auths</a> will be called to report to the client
- what options it has for continuing the authentication.)</p>
- <p>The default implementation always returns AUTH_FAILED.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>username</code></strong> (str) - the username of the authenticating client.</li>
- <li><strong class="pname"><code>password</code></strong> (str) - the password given by the client.</li>
- </ul></dd>
- <dt>Returns: int</dt>
- <dd>AUTH_FAILED if the authentication fails; AUTH_SUCCESSFUL if it
- succeeds; AUTH_PARTIALLY_SUCCESSFUL if the password auth is
- successful, but authentication must continue.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="check_auth_publickey"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">check_auth_publickey</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">username</span>,
- <span class="sig-arg">key</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Determine if a given key supplied by the client is acceptable for use
- in authentication. You should override this method in server mode to
- check the username and key and decide if you would accept a signature
- made using this key.</p>
- <p>Return AUTH_FAILED if the key is not accepted, AUTH_SUCCESSFUL if the
- key is accepted and completes the authentication, or
- AUTH_PARTIALLY_SUCCESSFUL if your authentication is stateful, and this
- password is accepted for authentication, but more authentication is
- required. (In this latter case, <a
- href="paramiko.ServerInterface-class.html#get_allowed_auths"
- class="link">get_allowed_auths</a> will be called to report to the client
- what options it has for continuing the authentication.)</p>
- <p>Note that you don't have to actually verify any key signtature here.
- If you're willing to accept the key, paramiko will do the work of
- verifying the client's signature.</p>
- <p>The default implementation always returns AUTH_FAILED.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>username</code></strong> (str) - the username of the authenticating client</li>
- <li><strong class="pname"><code>key</code></strong> (<a href="paramiko.PKey-class.html" class="link">PKey</a>) - the key object provided by the client</li>
- </ul></dd>
- <dt>Returns: int</dt>
- <dd>AUTH_FAILED if the client can't authenticate with this key;
- AUTH_SUCCESSFUL if it can; AUTH_PARTIALLY_SUCCESSFUL if it can
- authenticate with this key but must continue with authentication</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="check_channel_direct_tcpip_request"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">check_channel_direct_tcpip_request</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">chanid</span>,
- <span class="sig-arg">origin</span>,
- <span class="sig-arg">destination</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Determine if a local port forwarding channel will be granted, and
- return <code>OPEN_SUCCEEDED</code> or an error code. This method is
- called in server mode when the client requests a channel, after
- authentication is complete.</p>
- <p>The <code>chanid</code> parameter is a small number that uniquely
- identifies the channel within a <a href="paramiko.Transport-class.html"
- class="link">Transport</a>. A <a href="paramiko.Channel-class.html"
- class="link">Channel</a> object is not created unless this method returns
- <code>OPEN_SUCCEEDED</code> -- once a <a
- href="paramiko.Channel-class.html" class="link">Channel</a> object is
- created, you can call <a href="paramiko.Channel-class.html#get_id"
- class="link">Channel.get_id</a> to retrieve the channel ID.</p>
- <p>The origin and destination parameters are (ip_address, port) tuples
- that correspond to both ends of the TCP connection in the forwarding
- tunnel.</p>
- <p>The return value should either be <code>OPEN_SUCCEEDED</code> (or
- <code>0</code>) to allow the channel request, or one of the following
- error codes to reject it:</p>
- <ul>
- <li>
- <code>OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</code>
- </li>
- <li>
- <code>OPEN_FAILED_CONNECT_FAILED</code>
- </li>
- <li>
- <code>OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</code>
- </li>
- <li>
- <code>OPEN_FAILED_RESOURCE_SHORTAGE</code>
- </li>
- </ul>
- <p>The default implementation always returns
- <code>OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</code>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>chanid</code></strong> (int) - ID of the channel</li>
- <li><strong class="pname"><code>origin</code></strong> (tuple) - 2-tuple containing the IP address and port of the originator
- (client side)</li>
- <li><strong class="pname"><code>destination</code></strong> (tuple) - 2-tuple containing the IP address and port of the destination
- (server side)</li>
- </ul></dd>
- <dt>Returns: int</dt>
- <dd>a success or failure code (listed above)</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="check_channel_exec_request"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">check_channel_exec_request</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">channel</span>,
- <span class="sig-arg">command</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Determine if a shell command will be executed for the client. If this
- method returns <code>True</code>, the channel should be connected to the
- stdin, stdout, and stderr of the shell command.</p>
- <p>The default implementation always returns <code>False</code>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>channel</code></strong> (<a href="paramiko.Channel-class.html" class="link">Channel</a>) - the <a href="paramiko.Channel-class.html"
- class="link">Channel</a> the request arrived on.</li>
- <li><strong class="pname"><code>command</code></strong> (str) - the command to execute.</li>
- </ul></dd>
- <dt>Returns: bool</dt>
- <dd><code>True</code> if this channel is now hooked up to the stdin,
- stdout, and stderr of the executing command; <code>False</code>
- if the command will not be executed.</dd>
- </dl>
-<div class="fields"> <p><strong>Since:</strong>
- 1.1
- </p>
-</div></td></tr></table>
-</div>
-<a name="check_channel_pty_request"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">check_channel_pty_request</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">channel</span>,
- <span class="sig-arg">term</span>,
- <span class="sig-arg">width</span>,
- <span class="sig-arg">height</span>,
- <span class="sig-arg">pixelwidth</span>,
- <span class="sig-arg">pixelheight</span>,
- <span class="sig-arg">modes</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Determine if a pseudo-terminal of the given dimensions (usually
- requested for shell access) can be provided on the given channel.</p>
- <p>The default implementation always returns <code>False</code>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>channel</code></strong> (<a href="paramiko.Channel-class.html" class="link">Channel</a>) - the <a href="paramiko.Channel-class.html"
- class="link">Channel</a> the pty request arrived on.</li>
- <li><strong class="pname"><code>term</code></strong> (str) - type of terminal requested (for example,
- <code>&quot;vt100&quot;</code>).</li>
- <li><strong class="pname"><code>width</code></strong> (int) - width of screen in characters.</li>
- <li><strong class="pname"><code>height</code></strong> (int) - height of screen in characters.</li>
- <li><strong class="pname"><code>pixelwidth</code></strong> (int) - width of screen in pixels, if known (may be <code>0</code> if
- unknown).</li>
- <li><strong class="pname"><code>pixelheight</code></strong> (int) - height of screen in pixels, if known (may be <code>0</code> if
- unknown).</li>
- </ul></dd>
- <dt>Returns: bool</dt>
- <dd><code>True</code> if the psuedo-terminal has been allocated;
- <code>False</code> otherwise.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="check_channel_request"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">check_channel_request</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">kind</span>,
- <span class="sig-arg">chanid</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Determine if a channel request of a given type will be granted, and
- return <code>OPEN_SUCCEEDED</code> or an error code. This method is
- called in server mode when the client requests a channel, after
- authentication is complete.</p>
- <p>If you allow channel requests (and an ssh server that didn't would be
- useless), you should also override some of the channel request methods
- below, which are used to determine which services will be allowed on a
- given channel:</p>
- <ul>
- <li>
- <a
- href="paramiko.ServerInterface-class.html#check_channel_pty_request"
- class="link">check_channel_pty_request</a>
- </li>
- <li>
- <a
- href="paramiko.ServerInterface-class.html#check_channel_shell_request"
- class="link">check_channel_shell_request</a>
- </li>
- <li>
- <a
- href="paramiko.ServerInterface-class.html#check_channel_subsystem_request"
- class="link">check_channel_subsystem_request</a>
- </li>
- <li>
- <a
- href="paramiko.ServerInterface-class.html#check_channel_window_change_request"
- class="link">check_channel_window_change_request</a>
- </li>
- <li>
- <a
- href="paramiko.ServerInterface-class.html#check_channel_x11_request"
- class="link">check_channel_x11_request</a>
- </li>
- </ul>
- <p>The <code>chanid</code> parameter is a small number that uniquely
- identifies the channel within a <a href="paramiko.Transport-class.html"
- class="link">Transport</a>. A <a href="paramiko.Channel-class.html"
- class="link">Channel</a> object is not created unless this method returns
- <code>OPEN_SUCCEEDED</code> -- once a <a
- href="paramiko.Channel-class.html" class="link">Channel</a> object is
- created, you can call <a href="paramiko.Channel-class.html#get_id"
- class="link">Channel.get_id</a> to retrieve the channel ID.</p>
- <p>The return value should either be <code>OPEN_SUCCEEDED</code> (or
- <code>0</code>) to allow the channel request, or one of the following
- error codes to reject it:</p>
- <ul>
- <li>
- <code>OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</code>
- </li>
- <li>
- <code>OPEN_FAILED_CONNECT_FAILED</code>
- </li>
- <li>
- <code>OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</code>
- </li>
- <li>
- <code>OPEN_FAILED_RESOURCE_SHORTAGE</code>
- </li>
- </ul>
- <p>The default implementation always returns
- <code>OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</code>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>kind</code></strong> (str) - the kind of channel the client would like to open (usually
- <code>&quot;session&quot;</code>).</li>
- <li><strong class="pname"><code>chanid</code></strong> (int) - ID of the channel</li>
- </ul></dd>
- <dt>Returns: int</dt>
- <dd>a success or failure code (listed above)</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="check_channel_shell_request"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">check_channel_shell_request</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">channel</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Determine if a shell will be provided to the client on the given
- channel. If this method returns <code>True</code>, the channel should be
- connected to the stdin/stdout of a shell (or something that acts like a
- shell).</p>
- <p>The default implementation always returns <code>False</code>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>channel</code></strong> (<a href="paramiko.Channel-class.html" class="link">Channel</a>) - the <a href="paramiko.Channel-class.html"
- class="link">Channel</a> the request arrived on.</li>
- </ul></dd>
- <dt>Returns: bool</dt>
- <dd><code>True</code> if this channel is now hooked up to a shell;
- <code>False</code> if a shell can't or won't be provided.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="check_channel_subsystem_request"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">check_channel_subsystem_request</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">channel</span>,
- <span class="sig-arg">name</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Determine if a requested subsystem will be provided to the client on
- the given channel. If this method returns <code>True</code>, all future
- I/O through this channel will be assumed to be connected to the requested
- subsystem. An example of a subsystem is <code>sftp</code>.</p>
- <p>The default implementation checks for a subsystem handler assigned via
- <a href="paramiko.Transport-class.html#set_subsystem_handler"
- class="link">Transport.set_subsystem_handler</a>. If one has been set,
- the handler is invoked and this method returns <code>True</code>.
- Otherwise it returns <code>False</code>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>channel</code></strong> (<a href="paramiko.Channel-class.html" class="link">Channel</a>) - the <a href="paramiko.Channel-class.html"
- class="link">Channel</a> the pty request arrived on.</li>
- <li><strong class="pname"><code>name</code></strong> (str) - name of the requested subsystem.</li>
- </ul></dd>
- <dt>Returns: bool</dt>
- <dd><code>True</code> if this channel is now hooked up to the
- requested subsystem; <code>False</code> if that subsystem can't
- or won't be provided.</dd>
- </dl>
-<div class="fields"> <p><strong>Note:</strong>
- Because the default implementation uses the <a
- href="paramiko.Transport-class.html" class="link">Transport</a> to
- identify valid subsystems, you probably won't need to override this
- method.
- </p>
-</div></td></tr></table>
-</div>
-<a name="check_channel_window_change_request"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">check_channel_window_change_request</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">channel</span>,
- <span class="sig-arg">width</span>,
- <span class="sig-arg">height</span>,
- <span class="sig-arg">pixelwidth</span>,
- <span class="sig-arg">pixelheight</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Determine if the pseudo-terminal on the given channel can be resized.
- This only makes sense if a pty was previously allocated on it.</p>
- <p>The default implementation always returns <code>False</code>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>channel</code></strong> (<a href="paramiko.Channel-class.html" class="link">Channel</a>) - the <a href="paramiko.Channel-class.html"
- class="link">Channel</a> the pty request arrived on.</li>
- <li><strong class="pname"><code>width</code></strong> (int) - width of screen in characters.</li>
- <li><strong class="pname"><code>height</code></strong> (int) - height of screen in characters.</li>
- <li><strong class="pname"><code>pixelwidth</code></strong> (int) - width of screen in pixels, if known (may be <code>0</code> if
- unknown).</li>
- <li><strong class="pname"><code>pixelheight</code></strong> (int) - height of screen in pixels, if known (may be <code>0</code> if
- unknown).</li>
- </ul></dd>
- <dt>Returns: bool</dt>
- <dd><code>True</code> if the terminal was resized; <code>False</code>
- if not.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="check_channel_x11_request"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">check_channel_x11_request</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">channel</span>,
- <span class="sig-arg">single_connection</span>,
- <span class="sig-arg">auth_protocol</span>,
- <span class="sig-arg">auth_cookie</span>,
- <span class="sig-arg">screen_number</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Determine if the client will be provided with an X11 session. If this
- method returns <code>True</code>, X11 applications should be routed
- through new SSH channels, using <a
- href="paramiko.Transport-class.html#open_x11_channel"
- class="link">Transport.open_x11_channel</a>.</p>
- <p>The default implementation always returns <code>False</code>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>channel</code></strong> (<a href="paramiko.Channel-class.html" class="link">Channel</a>) - the <a href="paramiko.Channel-class.html"
- class="link">Channel</a> the X11 request arrived on</li>
- <li><strong class="pname"><code>single_connection</code></strong> (bool) - <code>True</code> if only a single X11 channel should be opened</li>
- <li><strong class="pname"><code>auth_protocol</code></strong> (str) - the protocol used for X11 authentication</li>
- <li><strong class="pname"><code>auth_cookie</code></strong> (str) - the cookie used to authenticate to X11</li>
- <li><strong class="pname"><code>screen_number</code></strong> (int) - the number of the X11 screen to connect to</li>
- </ul></dd>
- <dt>Returns: bool</dt>
- <dd><code>True</code> if the X11 session was opened;
- <code>False</code> if not</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="check_global_request"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">check_global_request</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">kind</span>,
- <span class="sig-arg">msg</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Handle a global request of the given <code>kind</code>. This method
- is called in server mode and client mode, whenever the remote host makes
- a global request. If there are any arguments to the request, they will
- be in <code>msg</code>.</p>
- <p>There aren't any useful global requests defined, aside from port
- forwarding, so usually this type of request is an extension to the
- protocol.</p>
- <p>If the request was successful and you would like to return contextual
- data to the remote host, return a tuple. Items in the tuple will be sent
- back with the successful result. (Note that the items in the tuple can
- only be strings, ints, longs, or bools.)</p>
- <p>The default implementation always returns <code>False</code>,
- indicating that it does not support any global requests.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>kind</code></strong> (str) - the kind of global request being made.</li>
- <li><strong class="pname"><code>msg</code></strong> (<a href="paramiko.Message-class.html" class="link">Message</a>) - any extra arguments to the request.</li>
- </ul></dd>
- <dt>Returns: bool</dt>
- <dd><code>True</code> or a tuple of data if the request was granted;
- <code>False</code> otherwise.</dd>
- </dl>
-<div class="fields"> <p><strong>Note:</strong>
- Port forwarding requests are handled separately, in <a
- href="paramiko.ServerInterface-class.html#check_port_forward_request"
- class="link">check_port_forward_request</a>.
- </p>
-</div></td></tr></table>
-</div>
-<a name="check_port_forward_request"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">check_port_forward_request</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">address</span>,
- <span class="sig-arg">port</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Handle a request for port forwarding. The client is asking that
- connections to the given address and port be forwarded back across this
- ssh connection. An address of <code>&quot;0.0.0.0&quot;</code> indicates
- a global address (any address associated with this server) and a port of
- <code>0</code> indicates that no specific port is requested (usually the
- OS will pick a port).</p>
- <p>The default implementation always returns <code>False</code>,
- rejecting the port forwarding request. If the request is accepted, you
- should return the port opened for listening.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>address</code></strong> (str) - the requested address</li>
- <li><strong class="pname"><code>port</code></strong> (int) - the requested port</li>
- </ul></dd>
- <dt>Returns: int</dt>
- <dd>the port number that was opened for listening, or
- <code>False</code> to reject</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="get_allowed_auths"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_allowed_auths</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">username</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return a list of authentication methods supported by the server. This
- list is sent to clients attempting to authenticate, to inform them of
- authentication methods that might be successful.</p>
- <p>The &quot;list&quot; is actually a string of comma-separated names of
- types of authentication. Possible values are
- <code>&quot;password&quot;</code>, <code>&quot;publickey&quot;</code>,
- and <code>&quot;none&quot;</code>.</p>
- <p>The default implementation always returns
- <code>&quot;password&quot;</code>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>username</code></strong> (str) - the username requesting authentication.</li>
- </ul></dd>
- <dt>Returns: str</dt>
- <dd>a comma-separated list of authentication types</dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.SubsystemHandler-class.html b/docs/paramiko.SubsystemHandler-class.html
deleted file mode 100644
index b7003eb..0000000
--- a/docs/paramiko.SubsystemHandler-class.html
+++ /dev/null
@@ -1,393 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.SubsystemHandler</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Class&nbsp;SubsystemHandler
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.SubsystemHandler-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class SubsystemHandler</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#SubsystemHandler">source&nbsp;code</a></span></p>
-<pre class="base-tree">
- object --+
- |
-threading._Verbose --+
- |
- threading.Thread --+
- |
- <strong class="uidshort">SubsystemHandler</strong>
-</pre>
-
-<dl><dt>Known Subclasses:</dt>
-<dd>
- <ul class="subclass-list">
-<li><a href="paramiko.SFTPServer-class.html">SFTPServer</a></li> </ul>
-</dd></dl>
-
-<hr />
-<p>Handler for a subsytem in server mode. If you create a subclass of
- this class and pass it to <a
- href="paramiko.Transport-class.html#set_subsystem_handler"
- class="link">Transport.set_subsystem_handler</a>, an object of this class
- will be created for each request for this subsystem. Each new object
- will be executed within its own new thread by calling <a
- href="paramiko.SubsystemHandler-class.html#start_subsystem"
- class="link">start_subsystem</a>. When that method completes, the channel
- is closed.</p>
- <p>For example, if you made a subclass <code>MP3Handler</code> and
- registered it as the handler for subsystem <code>&quot;mp3&quot;</code>,
- then whenever a client has successfully authenticated and requests
- subsytem <code>&quot;mp3&quot;</code>, an object of class
- <code>MP3Handler</code> will be created, and <a
- href="paramiko.SubsystemHandler-class.html#start_subsystem"
- class="link">start_subsystem</a> will be called on it from a new
- thread.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SubsystemHandler-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">channel</span>,
- <span class="summary-sig-arg">name</span>,
- <span class="summary-sig-arg">server</span>)</span><br />
- Create a new handler for a channel.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SubsystemHandler-class.html#finish_subsystem" class="summary-sig-name">finish_subsystem</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Perform any cleanup at the end of a subsystem.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"><a href="paramiko.ServerInterface-class.html"
- class="link">ServerInterface</a></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="get_server"></a><span class="summary-sig-name">get_server</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Return the <a href="paramiko.ServerInterface-class.html"
- class="link">ServerInterface</a> object associated with this channel
- and subsystem.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.SubsystemHandler-class.html#start_subsystem" class="summary-sig-name">start_subsystem</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">name</span>,
- <span class="summary-sig-arg">transport</span>,
- <span class="summary-sig-arg">channel</span>)</span><br />
- Process an ssh subsystem in server mode.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>threading.Thread</code></b>:
- <code>__repr__</code>,
- <code>getName</code>,
- <code>isAlive</code>,
- <code>isDaemon</code>,
- <code>is_alive</code>,
- <code>join</code>,
- <code>run</code>,
- <code>setDaemon</code>,
- <code>setName</code>,
- <code>start</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>threading.Thread</code></b>:
- <code>daemon</code>,
- <code>ident</code>,
- <code>name</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">channel</span>,
- <span class="sig-arg">name</span>,
- <span class="sig-arg">server</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Create a new handler for a channel. This is used by <a
- href="paramiko.ServerInterface-class.html"
- class="link">ServerInterface</a> to start up a new handler when a channel
- requests this subsystem. You don't need to override this method, but if
- you do, be sure to pass the <code>channel</code> and <code>name</code>
- parameters through to the original <code>__init__</code> method here.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>channel</code></strong> (<a href="paramiko.Channel-class.html" class="link">Channel</a>) - the channel associated with this subsystem request.</li>
- <li><strong class="pname"><code>name</code></strong> (str) - name of the requested subsystem.</li>
- <li><strong class="pname"><code>server</code></strong> (<a href="paramiko.ServerInterface-class.html"
- class="link">ServerInterface</a>) - the server object for the session that started this subsystem</li>
- </ul></dd>
- <dt>Overrides:
- object.__init__
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="finish_subsystem"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">finish_subsystem</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Perform any cleanup at the end of a subsystem. The default
- implementation just closes the channel.</p>
- <dl class="fields">
- </dl>
-<div class="fields"> <p><strong>Since:</strong>
- 1.1
- </p>
-</div></td></tr></table>
-</div>
-<a name="start_subsystem"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">start_subsystem</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">name</span>,
- <span class="sig-arg">transport</span>,
- <span class="sig-arg">channel</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Process an ssh subsystem in server mode. This method is called on a
- new object (and in a new thread) for each subsystem request. It is
- assumed that all subsystem logic will take place here, and when the
- subsystem is finished, this method will return. After this method
- returns, the channel is closed.</p>
- <p>The combination of <code>transport</code> and <code>channel</code> are
- unique; this handler corresponds to exactly one <a
- href="paramiko.Channel-class.html" class="link">Channel</a> on one <a
- href="paramiko.Transport-class.html" class="link">Transport</a>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>name</code></strong> (str) - name of the requested subsystem.</li>
- <li><strong class="pname"><code>transport</code></strong> (<a href="paramiko.Transport-class.html"
- class="link">Transport</a>) - the server-mode <a href="paramiko.Transport-class.html"
- class="link">Transport</a>.</li>
- <li><strong class="pname"><code>channel</code></strong> (<a href="paramiko.Channel-class.html" class="link">Channel</a>) - the channel associated with this subsystem request.</li>
- </ul></dd>
- </dl>
-<div class="fields"> <p><strong>Note:</strong>
- It is the responsibility of this method to exit if the underlying
- <a href="paramiko.Transport-class.html" class="link">Transport</a>
- is closed. This can be done by checking <a
- href="paramiko.Transport-class.html#is_active"
- class="link">Transport.is_active</a> or noticing an EOF on the <a
- href="paramiko.Channel-class.html" class="link">Channel</a>. If
- this method loops forever without checking for this case, your
- python interpreter may refuse to exit because this thread will
- still be running.
- </p>
-</div></td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.Transport-class.html b/docs/paramiko.Transport-class.html
deleted file mode 100644
index e15be3d..0000000
--- a/docs/paramiko.Transport-class.html
+++ /dev/null
@@ -1,2352 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.Transport</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Class&nbsp;Transport
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.Transport-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Transport</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#Transport">source&nbsp;code</a></span></p>
-<pre class="base-tree">
- object --+
- |
-threading._Verbose --+
- |
- threading.Thread --+
- |
- <strong class="uidshort">Transport</strong>
-</pre>
-
-<hr />
-<p>An SSH Transport attaches to a stream (usually a socket), negotiates
- an encrypted session, authenticates, and then creates stream tunnels,
- called <a href="paramiko.Channel-class.html" class="link">Channel</a>s,
- across the session. Multiple channels can be multiplexed across a single
- session (and often are, in the case of port forwardings).</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">sock</span>)</span><br />
- Create a new SSH session over an existing socket, or socket-like
- object.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">str</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#__repr__" class="summary-sig-name">__repr__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Returns a string representation of this object, for debugging.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"><a href="paramiko.Channel-class.html" class="link">Channel</a></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#accept" class="summary-sig-name">accept</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">timeout</span>=<span class="summary-sig-default">None</span>)</span><br />
- Return the next channel opened by the client over this transport, in
- server mode.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#add_server_key" class="summary-sig-name">add_server_key</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">key</span>)</span><br />
- Add a host key to the list of keys used for server mode.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#atfork" class="summary-sig-name">atfork</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Terminate this Transport without closing the session.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">list</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#auth_interactive" class="summary-sig-name">auth_interactive</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">username</span>,
- <span class="summary-sig-arg">handler</span>,
- <span class="summary-sig-arg">submethods</span>=<span class="summary-sig-default"><code class="variable-quote">'</code><code class="variable-string"></code><code class="variable-quote">'</code></span>)</span><br />
- Authenticate to the server interactively.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">list</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#auth_none" class="summary-sig-name">auth_none</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">username</span>)</span><br />
- Try to authenticate to the server using no authentication at all.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">list</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#auth_password" class="summary-sig-name">auth_password</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">username</span>,
- <span class="summary-sig-arg">password</span>,
- <span class="summary-sig-arg">event</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">fallback</span>=<span class="summary-sig-default">True</span>)</span><br />
- Authenticate to the server using a password.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">list</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#auth_publickey" class="summary-sig-name">auth_publickey</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">username</span>,
- <span class="summary-sig-arg">key</span>,
- <span class="summary-sig-arg">event</span>=<span class="summary-sig-default">None</span>)</span><br />
- Authenticate to the server using a private key.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#cancel_port_forward" class="summary-sig-name">cancel_port_forward</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">address</span>,
- <span class="summary-sig-arg">port</span>)</span><br />
- Ask the server to cancel a previous port-forwarding request.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="close"></a><span class="summary-sig-name">close</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Close this session, and any open channels that are tied to it.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#connect" class="summary-sig-name">connect</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">hostkey</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">username</span>=<span class="summary-sig-default"><code class="variable-quote">'</code><code class="variable-string"></code><code class="variable-quote">'</code></span>,
- <span class="summary-sig-arg">password</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">pkey</span>=<span class="summary-sig-default">None</span>)</span><br />
- Negotiate an SSH2 session, and optionally verify the server's host
- key and authenticate using a password or private key.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">Exception</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#get_exception" class="summary-sig-name">get_exception</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return any exception that happened during the last server request.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">bool</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#get_hexdump" class="summary-sig-name">get_hexdump</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return <code>True</code> if the transport is currently logging hex
- dumps of protocol traffic.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">str</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#get_log_channel" class="summary-sig-name">get_log_channel</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return the channel name used for this transport's logging.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"><a href="paramiko.PKey-class.html" class="link">PKey</a></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#get_remote_server_key" class="summary-sig-name">get_remote_server_key</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return the host key of the server (in client mode).</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"><a href="paramiko.SecurityOptions-class.html"
- class="link">SecurityOptions</a></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#get_security_options" class="summary-sig-name">get_security_options</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return a <a href="paramiko.SecurityOptions-class.html"
- class="link">SecurityOptions</a> object which can be used to tweak
- the encryption algorithms this transport will permit, and the order
- of preference for them.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"><a href="paramiko.PKey-class.html" class="link">PKey</a></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#get_server_key" class="summary-sig-name">get_server_key</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return the active host key, in server mode.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">string</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#get_username" class="summary-sig-name">get_username</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return the username this connection is authenticated for.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">tuple(str, int)</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#getpeername" class="summary-sig-name">getpeername</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return the address of the remote side of this Transport, if possible.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"><a href="paramiko.Message-class.html" class="link">Message</a></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#global_request" class="summary-sig-name">global_request</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">kind</span>,
- <span class="summary-sig-arg">data</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">wait</span>=<span class="summary-sig-default">True</span>)</span><br />
- Make a global request to the remote host.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">bool</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#is_active" class="summary-sig-name">is_active</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return true if this session is active (open).</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">bool</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#is_authenticated" class="summary-sig-name">is_authenticated</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return true if this session is active and authenticated.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"><a href="paramiko.Channel-class.html" class="link">Channel</a></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#open_channel" class="summary-sig-name">open_channel</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">kind</span>,
- <span class="summary-sig-arg">dest_addr</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">src_addr</span>=<span class="summary-sig-default">None</span>)</span><br />
- Request a new channel to the server.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#open_forwarded_tcpip_channel" class="summary-sig-name">open_forwarded_tcpip_channel</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">(src_addr, src_port)</span>,
- <span class="summary-sig-arg">(dest_addr, dest_port)</span>)</span><br />
- Request a new channel back to the client, of type
- <code>&quot;forwarded-tcpip&quot;</code>.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"><a href="paramiko.Channel-class.html" class="link">Channel</a></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#open_session" class="summary-sig-name">open_session</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Request a new channel to the server, of type
- <code>&quot;session&quot;</code>.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"><a href="paramiko.SFTPClient-class.html" class="link">SFTPClient</a></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#open_sftp_client" class="summary-sig-name">open_sftp_client</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Create an SFTP client channel from an open transport.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type"><a href="paramiko.Channel-class.html" class="link">Channel</a></span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#open_x11_channel" class="summary-sig-name">open_x11_channel</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">src_addr</span>=<span class="summary-sig-default">None</span>)</span><br />
- Request a new channel to the client, of type
- <code>&quot;x11&quot;</code>.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#renegotiate_keys" class="summary-sig-name">renegotiate_keys</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Force this session to switch to new keys.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">int</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#request_port_forward" class="summary-sig-name">request_port_forward</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">address</span>,
- <span class="summary-sig-arg">port</span>,
- <span class="summary-sig-arg">handler</span>=<span class="summary-sig-default">None</span>)</span><br />
- Ask the server to forward TCP connections from a listening port on
- the server, across this SSH session.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#run" class="summary-sig-name">run</a>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#send_ignore" class="summary-sig-name">send_ignore</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">bytes</span>=<span class="summary-sig-default">None</span>)</span><br />
- Send a junk packet across the encrypted link.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#set_hexdump" class="summary-sig-name">set_hexdump</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">hexdump</span>)</span><br />
- Turn on/off logging a hex dump of protocol traffic at DEBUG level in
- the logs.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#set_keepalive" class="summary-sig-name">set_keepalive</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">interval</span>)</span><br />
- Turn on/off keepalive packets (default is off).</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#set_log_channel" class="summary-sig-name">set_log_channel</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">name</span>)</span><br />
- Set the channel for this transport's logging.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#set_subsystem_handler" class="summary-sig-name">set_subsystem_handler</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">name</span>,
- <span class="summary-sig-arg">handler</span>,
- <span class="summary-sig-arg">*larg</span>,
- <span class="summary-sig-arg">**kwarg</span>)</span><br />
- Set the handler class for a subsystem in server mode.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#start_client" class="summary-sig-name">start_client</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">event</span>=<span class="summary-sig-default">None</span>)</span><br />
- Negotiate a new SSH2 session as a client.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#start_server" class="summary-sig-name">start_server</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">event</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">server</span>=<span class="summary-sig-default">None</span>)</span><br />
- Negotiate a new SSH2 session as a server.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="stop_thread"></a><span class="summary-sig-name">stop_thread</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#use_compression" class="summary-sig-name">use_compression</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">compress</span>=<span class="summary-sig-default">True</span>)</span><br />
- Turn on/off compression.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>threading.Thread</code></b>:
- <code>getName</code>,
- <code>isAlive</code>,
- <code>isDaemon</code>,
- <code>is_alive</code>,
- <code>join</code>,
- <code>setDaemon</code>,
- <code>setName</code>,
- <code>start</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== STATIC METHODS ==================== -->
-<a name="section-StaticMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Static Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">bool</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.Transport-class.html#load_server_moduli" class="summary-sig-name">load_server_moduli</a>(<span class="summary-sig-arg">filename</span>=<span class="summary-sig-default">None</span>)</span><br />
- <i>(optional)</i> Load a file of prime moduli for use in doing
- group-exchange key negotiation in server mode.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko-pysrc.html#Transport.load_server_moduli">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>threading.Thread</code></b>:
- <code>daemon</code>,
- <code>ident</code>,
- <code>name</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">sock</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Create a new SSH session over an existing socket, or socket-like
- object. This only creates the Transport object; it doesn't begin the SSH
- session yet. Use <a href="paramiko.Transport-class.html#connect"
- class="link">connect</a> or <a
- href="paramiko.Transport-class.html#start_client"
- class="link">start_client</a> to begin a client session, or <a
- href="paramiko.Transport-class.html#start_server"
- class="link">start_server</a> to begin a server session.</p>
- <p>If the object is not actually a socket, it must have the following
- methods:</p>
- <ul>
- <li>
- <code>send(str)</code>: Writes from 1 to <code>len(str)</code> bytes,
- and returns an int representing the number of bytes written. Returns
- 0 or raises <code>EOFError</code> if the stream has been closed.
- </li>
- <li>
- <code>recv(int)</code>: Reads from 1 to <code>int</code> bytes and
- returns them as a string. Returns 0 or raises <code>EOFError</code>
- if the stream has been closed.
- </li>
- <li>
- <code>close()</code>: Closes the socket.
- </li>
- <li>
- <code>settimeout(n)</code>: Sets a (float) timeout on I/O operations.
- </li>
- </ul>
- <p>For ease of use, you may also pass in an address (as a tuple) or a
- host string as the <code>sock</code> argument. (A host string is a
- hostname with an optional port (separated by <code>&quot;:&quot;</code>)
- which will be converted into a tuple of <code>(hostname, port)</code>.)
- A socket will be connected to this address and used for communication.
- Exceptions from the <code>socket</code> call may be thrown in this
- case.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>sock</code></strong> (socket) - a socket or socket-like object to create the session over.</li>
- </ul></dd>
- <dt>Overrides:
- object.__init__
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="__repr__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__repr__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Representation operator)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Returns a string representation of this object, for debugging.</p>
- <dl class="fields">
- <dt>Returns: str</dt>
- <dt>Overrides:
- object.__repr__
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="accept"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">accept</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">timeout</span>=<span class="sig-default">None</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return the next channel opened by the client over this transport, in
- server mode. If no channel is opened before the given timeout,
- <code>None</code> is returned.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>timeout</code></strong> (int) - seconds to wait for a channel, or <code>None</code> to wait
- forever</li>
- </ul></dd>
- <dt>Returns: <a href="paramiko.Channel-class.html" class="link">Channel</a></dt>
- <dd>a new Channel opened by the client</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="add_server_key"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">add_server_key</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">key</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Add a host key to the list of keys used for server mode. When
- behaving as a server, the host key is used to sign certain packets during
- the SSH2 negotiation, so that the client can trust that we are who we say
- we are. Because this is used for signing, the key must contain private
- key info, not just the public half. Only one key of each type (RSA or
- DSS) is kept.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>key</code></strong> (<a href="paramiko.PKey-class.html" class="link">PKey</a>) - the host key to add, usually an <a
- href="paramiko.RSAKey-class.html" class="link">RSAKey</a> or <a
- href="paramiko.DSSKey-class.html" class="link">DSSKey</a>.</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="atfork"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">atfork</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Terminate this Transport without closing the session. On posix
- systems, if a Transport is open during process forking, both parent and
- child will share the underlying socket, but only one process can use the
- connection (without corrupting the session). Use this method to clean up
- a Transport object without disrupting the other process.</p>
- <dl class="fields">
- </dl>
-<div class="fields"> <p><strong>Since:</strong>
- 1.5.3
- </p>
-</div></td></tr></table>
-</div>
-<a name="auth_interactive"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">auth_interactive</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">username</span>,
- <span class="sig-arg">handler</span>,
- <span class="sig-arg">submethods</span>=<span class="sig-default"><code class="variable-quote">'</code><code class="variable-string"></code><code class="variable-quote">'</code></span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Authenticate to the server interactively. A handler is used to answer
- arbitrary questions from the server. On many servers, this is just a
- dumb wrapper around PAM.</p>
- <p>This method will block until the authentication succeeds or fails,
- peroidically calling the handler asynchronously to get answers to
- authentication questions. The handler may be called more than once if
- the server continues to ask questions.</p>
- <p>The handler is expected to be a callable that will handle calls of the
- form: <code>handler(title, instructions, prompt_list)</code>. The
- <code>title</code> is meant to be a dialog-window title, and the
- <code>instructions</code> are user instructions (both are strings).
- <code>prompt_list</code> will be a list of prompts, each prompt being a
- tuple of <code>(str, bool)</code>. The string is the prompt and the
- boolean indicates whether the user text should be echoed.</p>
- <p>A sample call would thus be: <code>handler('title', 'instructions',
- [('Password:', False)])</code>.</p>
- <p>The handler should return a list or tuple of answers to the server's
- questions.</p>
- <p>If the server requires multi-step authentication (which is very rare),
- this method will return a list of auth types permissible for the next
- step. Otherwise, in the normal case, an empty list is returned.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>username</code></strong> (string) - the username to authenticate as</li>
- <li><strong class="pname"><code>handler</code></strong> (callable) - a handler for responding to server questions</li>
- <li><strong class="pname"><code>submethods</code></strong> (str) - a string list of desired submethods (optional)</li>
- </ul></dd>
- <dt>Returns: list</dt>
- <dd>list of auth types permissible for the next stage of
- authentication (normally empty).</dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'><a href="paramiko.BadAuthenticationType-class.html">BadAuthenticationType</a></strong></code> - if public-key authentication isn't allowed by the server for this
- user</li>
- <li><code><strong class='fraise'><a href="paramiko.AuthenticationException-class.html">AuthenticationException</a></strong></code> - if the authentication failed</li>
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if there was a network error</li>
- </ul></dd>
- </dl>
-<div class="fields"> <p><strong>Since:</strong>
- 1.5
- </p>
-</div></td></tr></table>
-</div>
-<a name="auth_none"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">auth_none</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">username</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Try to authenticate to the server using no authentication at all. This
- will almost always fail. It may be useful for determining the list of
- authentication types supported by the server, by catching the <a
- href="paramiko.BadAuthenticationType-class.html"
- class="link">BadAuthenticationType</a> exception raised.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>username</code></strong> (string) - the username to authenticate as</li>
- </ul></dd>
- <dt>Returns: list</dt>
- <dd>list of auth types permissible for the next stage of
- authentication (normally empty)</dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'><a href="paramiko.BadAuthenticationType-class.html">BadAuthenticationType</a></strong></code> - if &quot;none&quot; authentication isn't allowed by the server for
- this user</li>
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if the authentication failed due to a network error</li>
- </ul></dd>
- </dl>
-<div class="fields"> <p><strong>Since:</strong>
- 1.5
- </p>
-</div></td></tr></table>
-</div>
-<a name="auth_password"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">auth_password</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">username</span>,
- <span class="sig-arg">password</span>,
- <span class="sig-arg">event</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">fallback</span>=<span class="sig-default">True</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Authenticate to the server using a password. The username and
- password are sent over an encrypted link.</p>
- <p>If an <code>event</code> is passed in, this method will return
- immediately, and the event will be triggered once authentication succeeds
- or fails. On success, <a
- href="paramiko.Transport-class.html#is_authenticated"
- class="link">is_authenticated</a> will return <code>True</code>. On
- failure, you may use <a
- href="paramiko.Transport-class.html#get_exception"
- class="link">get_exception</a> to get more detailed error
- information.</p>
- <p>Since 1.1, if no event is passed, this method will block until the
- authentication succeeds or fails. On failure, an exception is raised.
- Otherwise, the method simply returns.</p>
- <p>Since 1.5, if no event is passed and <code>fallback</code> is
- <code>True</code> (the default), if the server doesn't support plain
- password authentication but does support so-called
- &quot;keyboard-interactive&quot; mode, an attempt will be made to
- authenticate using this interactive mode. If it fails, the normal
- exception will be thrown as if the attempt had never been made. This is
- useful for some recent Gentoo and Debian distributions, which turn off
- plain password authentication in a misguided belief that interactive
- authentication is &quot;more secure&quot;. (It's not.)</p>
- <p>If the server requires multi-step authentication (which is very rare),
- this method will return a list of auth types permissible for the next
- step. Otherwise, in the normal case, an empty list is returned.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>username</code></strong> (str) - the username to authenticate as</li>
- <li><strong class="pname"><code>password</code></strong> (str or unicode) - the password to authenticate with</li>
- <li><strong class="pname"><code>event</code></strong> (threading.Event) - an event to trigger when the authentication attempt is complete
- (whether it was successful or not)</li>
- <li><strong class="pname"><code>fallback</code></strong> (bool) - <code>True</code> if an attempt at an automated
- &quot;interactive&quot; password auth should be made if the
- server doesn't support normal password auth</li>
- </ul></dd>
- <dt>Returns: list</dt>
- <dd>list of auth types permissible for the next stage of
- authentication (normally empty)</dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'><a href="paramiko.BadAuthenticationType-class.html">BadAuthenticationType</a></strong></code> - if password authentication isn't allowed by the server for this
- user (and no event was passed in)</li>
- <li><code><strong class='fraise'><a href="paramiko.AuthenticationException-class.html">AuthenticationException</a></strong></code> - if the authentication failed (and no event was passed in)</li>
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if there was a network error</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="auth_publickey"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">auth_publickey</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">username</span>,
- <span class="sig-arg">key</span>,
- <span class="sig-arg">event</span>=<span class="sig-default">None</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Authenticate to the server using a private key. The key is used to
- sign data from the server, so it must include the private part.</p>
- <p>If an <code>event</code> is passed in, this method will return
- immediately, and the event will be triggered once authentication succeeds
- or fails. On success, <a
- href="paramiko.Transport-class.html#is_authenticated"
- class="link">is_authenticated</a> will return <code>True</code>. On
- failure, you may use <a
- href="paramiko.Transport-class.html#get_exception"
- class="link">get_exception</a> to get more detailed error
- information.</p>
- <p>Since 1.1, if no event is passed, this method will block until the
- authentication succeeds or fails. On failure, an exception is raised.
- Otherwise, the method simply returns.</p>
- <p>If the server requires multi-step authentication (which is very rare),
- this method will return a list of auth types permissible for the next
- step. Otherwise, in the normal case, an empty list is returned.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>username</code></strong> (string) - the username to authenticate as</li>
- <li><strong class="pname"><code>key</code></strong> (<a href="paramiko.PKey-class.html" class="link">PKey</a>) - the private key to authenticate with</li>
- <li><strong class="pname"><code>event</code></strong> (threading.Event) - an event to trigger when the authentication attempt is complete
- (whether it was successful or not)</li>
- </ul></dd>
- <dt>Returns: list</dt>
- <dd>list of auth types permissible for the next stage of
- authentication (normally empty)</dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'><a href="paramiko.BadAuthenticationType-class.html">BadAuthenticationType</a></strong></code> - if public-key authentication isn't allowed by the server for this
- user (and no event was passed in)</li>
- <li><code><strong class='fraise'><a href="paramiko.AuthenticationException-class.html">AuthenticationException</a></strong></code> - if the authentication failed (and no event was passed in)</li>
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if there was a network error</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="cancel_port_forward"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">cancel_port_forward</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">address</span>,
- <span class="sig-arg">port</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Ask the server to cancel a previous port-forwarding request. No more
- connections to the given address &amp; port will be forwarded across this
- ssh connection.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>address</code></strong> (str) - the address to stop forwarding</li>
- <li><strong class="pname"><code>port</code></strong> (int) - the port to stop forwarding</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="connect"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">connect</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">hostkey</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">username</span>=<span class="sig-default"><code class="variable-quote">'</code><code class="variable-string"></code><code class="variable-quote">'</code></span>,
- <span class="sig-arg">password</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">pkey</span>=<span class="sig-default">None</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Negotiate an SSH2 session, and optionally verify the server's host key
- and authenticate using a password or private key. This is a shortcut for
- <a href="paramiko.Transport-class.html#start_client"
- class="link">start_client</a>, <a
- href="paramiko.Transport-class.html#get_remote_server_key"
- class="link">get_remote_server_key</a>, and <a
- href="paramiko.Transport-class.html#auth_password"
- class="link">Transport.auth_password</a> or <a
- href="paramiko.Transport-class.html#auth_publickey"
- class="link">Transport.auth_publickey</a>. Use those methods if you want
- more control.</p>
- <p>You can use this method immediately after creating a Transport to
- negotiate encryption with a server. If it fails, an exception will be
- thrown. On success, the method will return cleanly, and an encrypted
- session exists. You may immediately call <a
- href="paramiko.Transport-class.html#open_channel"
- class="link">open_channel</a> or <a
- href="paramiko.Transport-class.html#open_session"
- class="link">open_session</a> to get a <a
- href="paramiko.Channel-class.html" class="link">Channel</a> object, which
- is used for data transfer.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>hostkey</code></strong> (<a href="paramiko.PKey-class.html" class="link">PKey</a>) - the host key expected from the server, or <code>None</code> if
- you don't want to do host key verification.</li>
- <li><strong class="pname"><code>username</code></strong> (str) - the username to authenticate as.</li>
- <li><strong class="pname"><code>password</code></strong> (str) - a password to use for authentication, if you want to use password
- authentication; otherwise <code>None</code>.</li>
- <li><strong class="pname"><code>pkey</code></strong> (<a href="paramiko.PKey-class.html" class="link">PKey</a>) - a private key to use for authentication, if you want to use
- private key authentication; otherwise <code>None</code>.</li>
- </ul></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if the SSH2 negotiation fails, the host key supplied by the server
- is incorrect, or authentication fails.</li>
- </ul></dd>
- </dl>
-<div class="fields"> <p><strong>Note:</strong>
- If you fail to supply a password or private key, this method may
- succeed, but a subsequent <a
- href="paramiko.Transport-class.html#open_channel"
- class="link">open_channel</a> or <a
- href="paramiko.Transport-class.html#open_session"
- class="link">open_session</a> call may fail because you haven't
- authenticated yet.
- </p>
-</div></td></tr></table>
-</div>
-<a name="get_exception"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_exception</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return any exception that happened during the last server request.
- This can be used to fetch more specific error information after using
- calls like <a href="paramiko.Transport-class.html#start_client"
- class="link">start_client</a>. The exception (if any) is cleared after
- this call.</p>
- <dl class="fields">
- <dt>Returns: Exception</dt>
- <dd>an exception, or <code>None</code> if there is no stored
- exception.</dd>
- </dl>
-<div class="fields"> <p><strong>Since:</strong>
- 1.1
- </p>
-</div></td></tr></table>
-</div>
-<a name="get_hexdump"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_hexdump</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return <code>True</code> if the transport is currently logging hex
- dumps of protocol traffic.</p>
- <dl class="fields">
- <dt>Returns: bool</dt>
- <dd><code>True</code> if hex dumps are being logged</dd>
- </dl>
-<div class="fields"> <p><strong>Since:</strong>
- 1.4
- </p>
-</div></td></tr></table>
-</div>
-<a name="get_log_channel"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_log_channel</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return the channel name used for this transport's logging.</p>
- <dl class="fields">
- <dt>Returns: str</dt>
- <dd>channel name.</dd>
- </dl>
-<div class="fields"> <p><strong>Since:</strong>
- 1.2
- </p>
-</div></td></tr></table>
-</div>
-<a name="get_remote_server_key"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_remote_server_key</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return the host key of the server (in client mode).</p>
- <dl class="fields">
- <dt>Returns: <a href="paramiko.PKey-class.html" class="link">PKey</a></dt>
- <dd>public key of the remote server</dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if no session is currently active.</li>
- </ul></dd>
- </dl>
-<div class="fields"> <p><strong>Note:</strong>
- Previously this call returned a tuple of (key type, key string).
- You can get the same effect by calling <a
- href="paramiko.PKey-class.html#get_name"
- class="link">PKey.get_name</a> for the key type, and
- <code>str(key)</code> for the key string.
- </p>
-</div></td></tr></table>
-</div>
-<a name="get_security_options"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_security_options</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return a <a href="paramiko.SecurityOptions-class.html"
- class="link">SecurityOptions</a> object which can be used to tweak the
- encryption algorithms this transport will permit, and the order of
- preference for them.</p>
- <dl class="fields">
- <dt>Returns: <a href="paramiko.SecurityOptions-class.html"
- class="link">SecurityOptions</a></dt>
- <dd>an object that can be used to change the preferred algorithms for
- encryption, digest (hash), public key, and key exchange.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="get_server_key"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_server_key</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return the active host key, in server mode. After negotiating with
- the client, this method will return the negotiated host key. If only one
- type of host key was set with <a
- href="paramiko.Transport-class.html#add_server_key"
- class="link">add_server_key</a>, that's the only key that will ever be
- returned. But in cases where you have set more than one type of host key
- (for example, an RSA key and a DSS key), the key type will be negotiated
- by the client, and this method will return the key of the type agreed on.
- If the host key has not been negotiated yet, <code>None</code> is
- returned. In client mode, the behavior is undefined.</p>
- <dl class="fields">
- <dt>Returns: <a href="paramiko.PKey-class.html" class="link">PKey</a></dt>
- <dd>host key of the type negotiated by the client, or
- <code>None</code>.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="get_username"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">get_username</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return the username this connection is authenticated for. If the
- session is not authenticated (or authentication failed), this method
- returns <code>None</code>.</p>
- <dl class="fields">
- <dt>Returns: string</dt>
- <dd>username that was authenticated, or <code>None</code>.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="getpeername"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">getpeername</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return the address of the remote side of this Transport, if possible.
- This is effectively a wrapper around <code>'getpeername'</code> on the
- underlying socket. If the socket-like object has no
- <code>'getpeername'</code> method, then <code>(&quot;unknown&quot;,
- 0)</code> is returned.</p>
- <dl class="fields">
- <dt>Returns: tuple(str, int)</dt>
- <dd>the address if the remote host, if known</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="global_request"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">global_request</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">kind</span>,
- <span class="sig-arg">data</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">wait</span>=<span class="sig-default">True</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Make a global request to the remote host. These are normally
- extensions to the SSH2 protocol.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>kind</code></strong> (str) - name of the request.</li>
- <li><strong class="pname"><code>data</code></strong> (tuple) - an optional tuple containing additional data to attach to the
- request.</li>
- <li><strong class="pname"><code>wait</code></strong> (bool) - <code>True</code> if this method should not return until a
- response is received; <code>False</code> otherwise.</li>
- </ul></dd>
- <dt>Returns: <a href="paramiko.Message-class.html" class="link">Message</a></dt>
- <dd>a <a href="paramiko.Message-class.html" class="link">Message</a>
- containing possible additional data if the request was successful
- (or an empty <a href="paramiko.Message-class.html"
- class="link">Message</a> if <code>wait</code> was
- <code>False</code>); <code>None</code> if the request was denied.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="is_active"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">is_active</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return true if this session is active (open).</p>
- <dl class="fields">
- <dt>Returns: bool</dt>
- <dd>True if the session is still active (open); False if the session
- is closed</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="is_authenticated"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">is_authenticated</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return true if this session is active and authenticated.</p>
- <dl class="fields">
- <dt>Returns: bool</dt>
- <dd>True if the session is still open and has been authenticated
- successfully; False if authentication failed and/or the session
- is closed.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="load_server_moduli"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">load_server_moduli</span>(<span class="sig-arg">filename</span>=<span class="sig-default">None</span>)</span>
- <br /><em class="fname">Static Method</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko-pysrc.html#Transport.load_server_moduli">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p><i>(optional)</i> Load a file of prime moduli for use in doing
- group-exchange key negotiation in server mode. It's a rather obscure
- option and can be safely ignored.</p>
- <p>In server mode, the remote client may request
- &quot;group-exchange&quot; key negotiation, which asks the server to send
- a random prime number that fits certain criteria. These primes are
- pretty difficult to compute, so they can't be generated on demand. But
- many systems contain a file of suitable primes (usually named something
- like <code>/etc/ssh/moduli</code>). If you call
- <code>load_server_moduli</code> and it returns <code>True</code>, then
- this file of primes has been loaded and we will support
- &quot;group-exchange&quot; in server mode. Otherwise server mode will
- just claim that it doesn't support that method of key negotiation.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>filename</code></strong> (str) - optional path to the moduli file, if you happen to know that it's
- not in a standard location.</li>
- </ul></dd>
- <dt>Returns: bool</dt>
- <dd>True if a moduli file was successfully loaded; False otherwise.</dd>
- </dl>
-<div class="fields"> <p><strong>Note:</strong>
- This has no effect when used in client mode.
- </p>
-</div></td></tr></table>
-</div>
-<a name="open_channel"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">open_channel</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">kind</span>,
- <span class="sig-arg">dest_addr</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">src_addr</span>=<span class="sig-default">None</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Request a new channel to the server. <a
- href="paramiko.Channel-class.html" class="link">Channel</a>s are
- socket-like objects used for the actual transfer of data across the
- session. You may only request a channel after negotiating encryption
- (using <a href="paramiko.Transport-class.html#connect"
- class="link">connect</a> or <a
- href="paramiko.Transport-class.html#start_client"
- class="link">start_client</a>) and authenticating.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>kind</code></strong> (str) - the kind of channel requested (usually
- <code>&quot;session&quot;</code>,
- <code>&quot;forwarded-tcpip&quot;</code>,
- <code>&quot;direct-tcpip&quot;</code>, or
- <code>&quot;x11&quot;</code>)</li>
- <li><strong class="pname"><code>dest_addr</code></strong> ((str, int)) - the destination address of this port forwarding, if
- <code>kind</code> is <code>&quot;forwarded-tcpip&quot;</code> or
- <code>&quot;direct-tcpip&quot;</code> (ignored for other channel
- types)</li>
- <li><strong class="pname"><code>src_addr</code></strong> ((str, int)) - the source address of this port forwarding, if <code>kind</code>
- is <code>&quot;forwarded-tcpip&quot;</code>,
- <code>&quot;direct-tcpip&quot;</code>, or
- <code>&quot;x11&quot;</code></li>
- </ul></dd>
- <dt>Returns: <a href="paramiko.Channel-class.html" class="link">Channel</a></dt>
- <dd>a new <a href="paramiko.Channel-class.html"
- class="link">Channel</a> on success</dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if the request is rejected or the session ends prematurely</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="open_forwarded_tcpip_channel"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">open_forwarded_tcpip_channel</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">(src_addr, src_port)</span>,
- <span class="sig-arg">(dest_addr, dest_port)</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Request a new channel back to the client, of type
- <code>&quot;forwarded-tcpip&quot;</code>. This is used after a client has
- requested port forwarding, for sending incoming connections back to the
- client.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>src_addr</code></strong> - originator's address</li>
- <li><strong class="pname"><code>src_port</code></strong> - originator's port</li>
- <li><strong class="pname"><code>dest_addr</code></strong> - local (server) connected address</li>
- <li><strong class="pname"><code>dest_port</code></strong> - local (server) connected port</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="open_session"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">open_session</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Request a new channel to the server, of type
- <code>&quot;session&quot;</code>. This is just an alias for
- <code>open_channel('session')</code>.</p>
- <dl class="fields">
- <dt>Returns: <a href="paramiko.Channel-class.html" class="link">Channel</a></dt>
- <dd>a new <a href="paramiko.Channel-class.html"
- class="link">Channel</a></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if the request is rejected or the session ends prematurely</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="open_sftp_client"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">open_sftp_client</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Create an SFTP client channel from an open transport. On success, an
- SFTP session will be opened with the remote host, and a new SFTPClient
- object will be returned.</p>
- <dl class="fields">
- <dt>Returns: <a href="paramiko.SFTPClient-class.html" class="link">SFTPClient</a></dt>
- <dd>a new <a href="paramiko.SFTPClient-class.html"
- class="link">SFTPClient</a> object, referring to an sftp session
- (channel) across this transport</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="open_x11_channel"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">open_x11_channel</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">src_addr</span>=<span class="sig-default">None</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Request a new channel to the client, of type
- <code>&quot;x11&quot;</code>. This is just an alias for
- <code>open_channel('x11', src_addr=src_addr)</code>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>src_addr</code></strong> ((str, int)) - the source address of the x11 server (port is the x11 port, ie.
- 6010)</li>
- </ul></dd>
- <dt>Returns: <a href="paramiko.Channel-class.html" class="link">Channel</a></dt>
- <dd>a new <a href="paramiko.Channel-class.html"
- class="link">Channel</a></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if the request is rejected or the session ends prematurely</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="renegotiate_keys"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">renegotiate_keys</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Force this session to switch to new keys. Normally this is done
- automatically after the session hits a certain number of packets or bytes
- sent or received, but this method gives you the option of forcing new
- keys whenever you want. Negotiating new keys causes a pause in traffic
- both ways as the two sides swap keys and do computations. This method
- returns when the session has switched to new keys.</p>
- <dl class="fields">
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if the key renegotiation failed (which causes the session to end)</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="request_port_forward"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">request_port_forward</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">address</span>,
- <span class="sig-arg">port</span>,
- <span class="sig-arg">handler</span>=<span class="sig-default">None</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Ask the server to forward TCP connections from a listening port on the
- server, across this SSH session.</p>
- <p>If a handler is given, that handler is called from a different thread
- whenever a forwarded connection arrives. The handler parameters are:</p>
-<pre class="literalblock">
- handler(channel, (origin_addr, origin_port), (server_addr, server_port))
-</pre>
- <p>where <code>server_addr</code> and <code>server_port</code> are the
- address and port that the server was listening on.</p>
- <p>If no handler is set, the default behavior is to send new incoming
- forwarded connections into the accept queue, to be picked up via <a
- href="paramiko.Transport-class.html#accept" class="link">accept</a>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>address</code></strong> (str) - the address to bind when forwarding</li>
- <li><strong class="pname"><code>port</code></strong> (int) - the port to forward, or 0 to ask the server to allocate any port</li>
- <li><strong class="pname"><code>handler</code></strong> (function(Channel, (str, int), (str, int))) - optional handler for incoming forwarded connections</li>
- </ul></dd>
- <dt>Returns: int</dt>
- <dd>the port # allocated by the server</dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if the server refused the TCP forward request</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="run"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">run</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
-
- <dl class="fields">
- <dt>Overrides:
- threading.Thread.run
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="send_ignore"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">send_ignore</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">bytes</span>=<span class="sig-default">None</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Send a junk packet across the encrypted link. This is sometimes used
- to add &quot;noise&quot; to a connection to confuse would-be attackers.
- It can also be used as a keep-alive for long lived connections traversing
- firewalls.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>bytes</code></strong> (int) - the number of random bytes to send in the payload of the ignored
- packet -- defaults to a random number from 10 to 41.</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="set_hexdump"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">set_hexdump</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">hexdump</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Turn on/off logging a hex dump of protocol traffic at DEBUG level in
- the logs. Normally you would want this off (which is the default), but
- if you are debugging something, it may be useful.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>hexdump</code></strong> (bool) - <code>True</code> to log protocol traffix (in hex) to the log;
- <code>False</code> otherwise.</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="set_keepalive"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">set_keepalive</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">interval</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Turn on/off keepalive packets (default is off). If this is set, after
- <code>interval</code> seconds without sending any data over the
- connection, a &quot;keepalive&quot; packet will be sent (and ignored by
- the remote host). This can be useful to keep connections alive over a
- NAT, for example.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>interval</code></strong> (int) - seconds to wait before sending a keepalive packet (or 0 to
- disable keepalives).</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="set_log_channel"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">set_log_channel</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">name</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Set the channel for this transport's logging. The default is
- <code>&quot;paramiko.transport&quot;</code> but it can be set to anything
- you want. (See the <code>logging</code> module for more info.) SSH
- Channels will log to a sub-channel of the one specified.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>name</code></strong> (str) - new channel name for logging</li>
- </ul></dd>
- </dl>
-<div class="fields"> <p><strong>Since:</strong>
- 1.1
- </p>
-</div></td></tr></table>
-</div>
-<a name="set_subsystem_handler"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">set_subsystem_handler</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">name</span>,
- <span class="sig-arg">handler</span>,
- <span class="sig-arg">*larg</span>,
- <span class="sig-arg">**kwarg</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Set the handler class for a subsystem in server mode. If a request
- for this subsystem is made on an open ssh channel later, this handler
- will be constructed and called -- see <a
- href="paramiko.SubsystemHandler-class.html"
- class="link">SubsystemHandler</a> for more detailed documentation.</p>
- <p>Any extra parameters (including keyword arguments) are saved and
- passed to the <a href="paramiko.SubsystemHandler-class.html"
- class="link">SubsystemHandler</a> constructor later.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>name</code></strong> (str) - name of the subsystem.</li>
- <li><strong class="pname"><code>handler</code></strong> (class) - subclass of <a href="paramiko.SubsystemHandler-class.html"
- class="link">SubsystemHandler</a> that handles this subsystem.</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="start_client"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">start_client</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">event</span>=<span class="sig-default">None</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Negotiate a new SSH2 session as a client. This is the first step
- after creating a new <a href="paramiko.Transport-class.html"
- class="link">Transport</a>. A separate thread is created for protocol
- negotiation.</p>
- <p>If an event is passed in, this method returns immediately. When
- negotiation is done (successful or not), the given <code>Event</code>
- will be triggered. On failure, <a
- href="paramiko.Transport-class.html#is_active" class="link">is_active</a>
- will return <code>False</code>.</p>
- <p>(Since 1.4) If <code>event</code> is <code>None</code>, this method
- will not return until negotation is done. On success, the method returns
- normally. Otherwise an SSHException is raised.</p>
- <p>After a successful negotiation, you will usually want to authenticate,
- calling <a href="paramiko.Transport-class.html#auth_password"
- class="link">auth_password</a> or <a
- href="paramiko.Transport-class.html#auth_publickey"
- class="link">auth_publickey</a>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>event</code></strong> (threading.Event) - an event to trigger when negotiation is complete (optional)</li>
- </ul></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if negotiation fails (and no <code>event</code> was passed in)</li>
- </ul></dd>
- </dl>
-<div class="fields"> <strong>Notes:</strong>
- <ul class="nomargin-top">
- <li>
- <a href="paramiko.Transport-class.html#connect"
- class="link">connect</a> is a simpler method for connecting as a
- client.
- </li>
- <li>
- After calling this method (or <a
- href="paramiko.Transport-class.html#start_server"
- class="link">start_server</a> or <a
- href="paramiko.Transport-class.html#connect"
- class="link">connect</a>), you should no longer directly read from
- or write to the original socket object.
- </li>
- </ul>
-</div></td></tr></table>
-</div>
-<a name="start_server"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">start_server</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">event</span>=<span class="sig-default">None</span>,
- <span class="sig-arg">server</span>=<span class="sig-default">None</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Negotiate a new SSH2 session as a server. This is the first step
- after creating a new <a href="paramiko.Transport-class.html"
- class="link">Transport</a> and setting up your server host key(s). A
- separate thread is created for protocol negotiation.</p>
- <p>If an event is passed in, this method returns immediately. When
- negotiation is done (successful or not), the given <code>Event</code>
- will be triggered. On failure, <a
- href="paramiko.Transport-class.html#is_active" class="link">is_active</a>
- will return <code>False</code>.</p>
- <p>(Since 1.4) If <code>event</code> is <code>None</code>, this method
- will not return until negotation is done. On success, the method returns
- normally. Otherwise an SSHException is raised.</p>
- <p>After a successful negotiation, the client will need to authenticate.
- Override the methods <a
- href="paramiko.ServerInterface-class.html#get_allowed_auths"
- class="link">get_allowed_auths</a>, <a
- href="paramiko.ServerInterface-class.html#check_auth_none"
- class="link">check_auth_none</a>, <a
- href="paramiko.ServerInterface-class.html#check_auth_password"
- class="link">check_auth_password</a>, and <a
- href="paramiko.ServerInterface-class.html#check_auth_publickey"
- class="link">check_auth_publickey</a> in the given <code>server</code>
- object to control the authentication process.</p>
- <p>After a successful authentication, the client should request to open a
- channel. Override <a
- href="paramiko.ServerInterface-class.html#check_channel_request"
- class="link">check_channel_request</a> in the given <code>server</code>
- object to allow channels to be opened.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>event</code></strong> (threading.Event) - an event to trigger when negotiation is complete.</li>
- <li><strong class="pname"><code>server</code></strong> (<a href="paramiko.ServerInterface-class.html"
- class="link">server.ServerInterface</a>) - an object used to perform authentication and create <a
- href="paramiko.Channel-class.html" class="link">Channel</a>s.</li>
- </ul></dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'><a href="paramiko.SSHException-class.html">SSHException</a></strong></code> - if negotiation fails (and no <code>event</code> was passed in)</li>
- </ul></dd>
- </dl>
-<div class="fields"> <p><strong>Note:</strong>
- After calling this method (or <a
- href="paramiko.Transport-class.html#start_client"
- class="link">start_client</a> or <a
- href="paramiko.Transport-class.html#connect"
- class="link">connect</a>), you should no longer directly read from
- or write to the original socket object.
- </p>
-</div></td></tr></table>
-</div>
-<a name="use_compression"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">use_compression</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">compress</span>=<span class="sig-default">True</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Turn on/off compression. This will only have an affect before
- starting the transport (ie before calling <a
- href="paramiko.Transport-class.html#connect" class="link">connect</a>,
- etc). By default, compression is off since it negatively affects
- interactive sessions.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>compress</code></strong> (bool) - <code>True</code> to ask the remote client/server to compress
- traffic; <code>False</code> to refuse compression</li>
- </ul></dd>
- </dl>
-<div class="fields"> <p><strong>Since:</strong>
- 1.5.2
- </p>
-</div></td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.WarningPolicy-class.html b/docs/paramiko.WarningPolicy-class.html
deleted file mode 100644
index 66be09e..0000000
--- a/docs/paramiko.WarningPolicy-class.html
+++ /dev/null
@@ -1,223 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.WarningPolicy</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Class&nbsp;WarningPolicy
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.WarningPolicy-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class WarningPolicy</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#WarningPolicy">source&nbsp;code</a></span></p>
-<pre class="base-tree">
- object --+
- |
-<a href="paramiko.MissingHostKeyPolicy-class.html">MissingHostKeyPolicy</a> --+
- |
- <strong class="uidshort">WarningPolicy</strong>
-</pre>
-
-<hr />
-<p>Policy for logging a python-style warning for an unknown host key, but
- accepting it. This is used by <a href="paramiko.SSHClient-class.html"
- class="link">SSHClient</a>.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.WarningPolicy-class.html#missing_host_key" class="summary-sig-name">missing_host_key</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">client</span>,
- <span class="summary-sig-arg">hostname</span>,
- <span class="summary-sig-arg">key</span>)</span><br />
- Called when an <a href="paramiko.SSHClient-class.html"
- class="link">SSHClient</a> receives a server key for a server that
- isn't in either the system or local <a
- href="paramiko.HostKeys-class.html" class="link">HostKeys</a> object.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="missing_host_key"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">missing_host_key</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">client</span>,
- <span class="sig-arg">hostname</span>,
- <span class="sig-arg">key</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Called when an <a href="paramiko.SSHClient-class.html"
- class="link">SSHClient</a> receives a server key for a server that isn't
- in either the system or local <a href="paramiko.HostKeys-class.html"
- class="link">HostKeys</a> object. To accept the key, simply return. To
- reject, raised an exception (which will be passed to the calling
- application).</p>
- <dl class="fields">
- <dt>Overrides:
- <a href="paramiko.MissingHostKeyPolicy-class.html#missing_host_key">MissingHostKeyPolicy.missing_host_key</a>
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:04 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.agent-module.html b/docs/paramiko.agent-module.html
deleted file mode 100644
index ba9a85a..0000000
--- a/docs/paramiko.agent-module.html
+++ /dev/null
@@ -1,148 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.agent</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;agent
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.agent-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module agent</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.agent-pysrc.html">source&nbsp;code</a></span></p>
-<p>SSH Agent interface for Unix clients.</p>
-
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SSH2_AGENTC_REQUEST_IDENTITIES"></a><span class="summary-name">SSH2_AGENTC_REQUEST_IDENTITIES</span> = <code title="11">11</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SSH2_AGENTC_SIGN_REQUEST"></a><span class="summary-name">SSH2_AGENTC_SIGN_REQUEST</span> = <code title="13">13</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SSH2_AGENT_IDENTITIES_ANSWER"></a><span class="summary-name">SSH2_AGENT_IDENTITIES_ANSWER</span> = <code title="12">12</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SSH2_AGENT_SIGN_RESPONSE"></a><span class="summary-name">SSH2_AGENT_SIGN_RESPONSE</span> = <code title="14">14</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'paramiko'"><code class="variable-quote">'</code><code class="variable-string">paramiko</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:02 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.agent-pysrc.html b/docs/paramiko.agent-pysrc.html
deleted file mode 100644
index c83bde8..0000000
--- a/docs/paramiko.agent-pysrc.html
+++ /dev/null
@@ -1,279 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.agent</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;agent
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.agent-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.agent-module.html" onclick="show_private();">Module paramiko.agent</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2003-2007 John Rochester &lt;john@jrochester.org&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring">SSH Agent interface for Unix clients.</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">socket</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">struct</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package paramiko=paramiko-module.html"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-0', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Module paramiko.ssh_exception=paramiko.ssh_exception-module.html"><a title="paramiko.ssh_exception" class="py-name" href="#" onclick="return doclink('link-1', 'ssh_exception', 'link-1');">ssh_exception</a></tt> <tt class="py-keyword">import</tt> <tt id="link-2" class="py-name" targets="Class paramiko.SSHException=paramiko.SSHException-class.html"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-2', 'SSHException', 'link-2');">SSHException</a></tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-3" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-3', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-4" class="py-name" targets="Module paramiko.message=paramiko.message-module.html"><a title="paramiko.message" class="py-name" href="#" onclick="return doclink('link-4', 'message', 'link-4');">message</a></tt> <tt class="py-keyword">import</tt> <tt id="link-5" class="py-name" targets="Class paramiko.Message=paramiko.Message-class.html"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-5', 'Message', 'link-5');">Message</a></tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-6" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-6', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Module paramiko.pkey=paramiko.pkey-module.html"><a title="paramiko.pkey" class="py-name" href="#" onclick="return doclink('link-7', 'pkey', 'link-7');">pkey</a></tt> <tt class="py-keyword">import</tt> <tt id="link-8" class="py-name" targets="Class paramiko.PKey=paramiko.PKey-class.html"><a title="paramiko.PKey" class="py-name" href="#" onclick="return doclink('link-8', 'PKey', 'link-8');">PKey</a></tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"><tt id="link-9" class="py-name" targets="Variable paramiko.agent.SSH2_AGENTC_REQUEST_IDENTITIES=paramiko.agent-module.html#SSH2_AGENTC_REQUEST_IDENTITIES"><a title="paramiko.agent.SSH2_AGENTC_REQUEST_IDENTITIES" class="py-name" href="#" onclick="return doclink('link-9', 'SSH2_AGENTC_REQUEST_IDENTITIES', 'link-9');">SSH2_AGENTC_REQUEST_IDENTITIES</a></tt><tt class="py-op">,</tt> <tt id="link-10" class="py-name" targets="Variable paramiko.agent.SSH2_AGENT_IDENTITIES_ANSWER=paramiko.agent-module.html#SSH2_AGENT_IDENTITIES_ANSWER"><a title="paramiko.agent.SSH2_AGENT_IDENTITIES_ANSWER" class="py-name" href="#" onclick="return doclink('link-10', 'SSH2_AGENT_IDENTITIES_ANSWER', 'link-10');">SSH2_AGENT_IDENTITIES_ANSWER</a></tt><tt class="py-op">,</tt> \ </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> <tt id="link-11" class="py-name" targets="Variable paramiko.agent.SSH2_AGENTC_SIGN_REQUEST=paramiko.agent-module.html#SSH2_AGENTC_SIGN_REQUEST"><a title="paramiko.agent.SSH2_AGENTC_SIGN_REQUEST" class="py-name" href="#" onclick="return doclink('link-11', 'SSH2_AGENTC_SIGN_REQUEST', 'link-11');">SSH2_AGENTC_SIGN_REQUEST</a></tt><tt class="py-op">,</tt> <tt id="link-12" class="py-name" targets="Variable paramiko.agent.SSH2_AGENT_SIGN_RESPONSE=paramiko.agent-module.html#SSH2_AGENT_SIGN_RESPONSE"><a title="paramiko.agent.SSH2_AGENT_SIGN_RESPONSE" class="py-name" href="#" onclick="return doclink('link-12', 'SSH2_AGENT_SIGN_RESPONSE', 'link-12');">SSH2_AGENT_SIGN_RESPONSE</a></tt> <tt class="py-op">=</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">11</tt><tt class="py-op">,</tt> <tt class="py-number">15</tt><tt class="py-op">)</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> </tt>
-<a name="Agent"></a><div id="Agent-def"><a name="L37"></a><tt class="py-lineno"> 37</tt> <a class="py-toggle" href="#" id="Agent-toggle" onclick="return toggle('Agent');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.agent.Agent-class.html">Agent</a><tt class="py-op">:</tt> </tt>
-</div><div id="Agent-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="Agent-expanded"><a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"><tt class="py-docstring"> Client interface for using private keys from an SSH agent running on the</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"><tt class="py-docstring"> local machine. If an SSH agent is running, this class can be used to</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"><tt class="py-docstring"> connect to it and retreive L{PKey} objects which can be used when</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"><tt class="py-docstring"> attempting to authenticate to remote SSH servers.</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"><tt class="py-docstring"> Because the SSH agent protocol uses environment variables and unix-domain</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"><tt class="py-docstring"> sockets, this probably doesn't work on Windows. It does work on most</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"><tt class="py-docstring"> posix platforms though (Linux and MacOS X, for example).</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> </tt>
-<a name="Agent.__init__"></a><div id="Agent.__init__-def"><a name="L49"></a><tt class="py-lineno"> 49</tt> <a class="py-toggle" href="#" id="Agent.__init__-toggle" onclick="return toggle('Agent.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.agent.Agent-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Agent.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Agent.__init__-expanded"><a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"><tt class="py-docstring"> Open a session with the local machine's SSH agent, if one is running.</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"><tt class="py-docstring"> If no agent is running, initialization will succeed, but L{get_keys}</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"><tt class="py-docstring"> will return an empty tuple.</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"><tt class="py-docstring"> @raise SSHException: if an SSH agent is found, but speaks an</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"><tt class="py-docstring"> incompatible protocol</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">conn</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name" targets="Method paramiko.HostKeys.keys()=paramiko.HostKeys-class.html#keys"><a title="paramiko.HostKeys.keys" class="py-name" href="#" onclick="return doclink('link-13', 'keys', 'link-13');">keys</a></tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-string">'SSH_AUTH_SOCK'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">environ</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">sys</tt><tt class="py-op">.</tt><tt class="py-name">platform</tt> <tt class="py-op">!=</tt> <tt class="py-string">'win32'</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-name">conn</tt> <tt class="py-op">=</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">socket</tt><tt class="py-op">(</tt><tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">AF_UNIX</tt><tt class="py-op">,</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">SOCK_STREAM</tt><tt class="py-op">)</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-name">conn</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name" targets="Method paramiko.SSHClient.connect()=paramiko.SSHClient-class.html#connect,Method paramiko.Transport.connect()=paramiko.Transport-class.html#connect"><a title="paramiko.SSHClient.connect
-paramiko.Transport.connect" class="py-name" href="#" onclick="return doclink('link-14', 'connect', 'link-14');">connect</a></tt><tt class="py-op">(</tt><tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">environ</tt><tt class="py-op">[</tt><tt class="py-string">'SSH_AUTH_SOCK'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-keyword">except</tt><tt class="py-op">:</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-comment"># probably a dangling env var: the ssh agent is gone</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">conn</tt> <tt class="py-op">=</tt> <tt class="py-name">conn</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">sys</tt><tt class="py-op">.</tt><tt class="py-name">platform</tt> <tt class="py-op">==</tt> <tt class="py-string">'win32'</tt><tt class="py-op">:</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt id="link-15" class="py-name" targets="Module paramiko.win_pageant=paramiko.win_pageant-module.html"><a title="paramiko.win_pageant" class="py-name" href="#" onclick="return doclink('link-15', 'win_pageant', 'link-15');">win_pageant</a></tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-16" class="py-name"><a title="paramiko.win_pageant" class="py-name" href="#" onclick="return doclink('link-16', 'win_pageant', 'link-15');">win_pageant</a></tt><tt class="py-op">.</tt><tt id="link-17" class="py-name" targets="Function paramiko.win_pageant.can_talk_to_agent()=paramiko.win_pageant-module.html#can_talk_to_agent"><a title="paramiko.win_pageant.can_talk_to_agent" class="py-name" href="#" onclick="return doclink('link-17', 'can_talk_to_agent', 'link-17');">can_talk_to_agent</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">conn</tt> <tt class="py-op">=</tt> <tt id="link-18" class="py-name"><a title="paramiko.win_pageant" class="py-name" href="#" onclick="return doclink('link-18', 'win_pageant', 'link-15');">win_pageant</a></tt><tt class="py-op">.</tt><tt id="link-19" class="py-name" targets="Class paramiko.win_pageant.PageantConnection=paramiko.win_pageant.PageantConnection-class.html"><a title="paramiko.win_pageant.PageantConnection" class="py-name" href="#" onclick="return doclink('link-19', 'PageantConnection', 'link-19');">PageantConnection</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-comment"># no agent support</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-name">ptype</tt><tt class="py-op">,</tt> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_message</tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-20" class="py-name"><a title="paramiko.agent.SSH2_AGENTC_REQUEST_IDENTITIES" class="py-name" href="#" onclick="return doclink('link-20', 'SSH2_AGENTC_REQUEST_IDENTITIES', 'link-9');">SSH2_AGENTC_REQUEST_IDENTITIES</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ptype</tt> <tt class="py-op">!=</tt> <tt id="link-21" class="py-name"><a title="paramiko.agent.SSH2_AGENT_IDENTITIES_ANSWER" class="py-name" href="#" onclick="return doclink('link-21', 'SSH2_AGENT_IDENTITIES_ANSWER', 'link-10');">SSH2_AGENT_IDENTITIES_ANSWER</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-22" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-22', 'SSHException', 'link-2');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'could not get keys from ssh-agent'</tt><tt class="py-op">)</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt id="link-23" class="py-name"><a title="paramiko.HostKeys.keys" class="py-name" href="#" onclick="return doclink('link-23', 'keys', 'link-13');">keys</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-name">result</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name" targets="Method paramiko.Message.get_int()=paramiko.Message-class.html#get_int"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-24', 'get_int', 'link-24');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt id="link-25" class="py-name"><a title="paramiko.HostKeys.keys" class="py-name" href="#" onclick="return doclink('link-25', 'keys', 'link-13');">keys</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt id="link-26" class="py-name" targets="Class paramiko.AgentKey=paramiko.AgentKey-class.html"><a title="paramiko.AgentKey" class="py-name" href="#" onclick="return doclink('link-26', 'AgentKey', 'link-26');">AgentKey</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-name">result</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name" targets="Method paramiko.Message.get_string()=paramiko.Message-class.html#get_string"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-27', 'get_string', 'link-27');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-name">result</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-28', 'get_string', 'link-27');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name"><a title="paramiko.HostKeys.keys" class="py-name" href="#" onclick="return doclink('link-29', 'keys', 'link-13');">keys</a></tt> <tt class="py-op">=</tt> <tt class="py-name">tuple</tt><tt class="py-op">(</tt><tt id="link-30" class="py-name"><a title="paramiko.HostKeys.keys" class="py-name" href="#" onclick="return doclink('link-30', 'keys', 'link-13');">keys</a></tt><tt class="py-op">)</tt> </tt>
-</div><a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> </tt>
-<a name="Agent.close"></a><div id="Agent.close-def"><a name="L87"></a><tt class="py-lineno"> 87</tt> <a class="py-toggle" href="#" id="Agent.close-toggle" onclick="return toggle('Agent.close');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.agent.Agent-class.html#close">close</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Agent.close-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Agent.close-expanded"><a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"><tt class="py-docstring"> Close the SSH agent connection.</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">conn</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">conn</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name" targets="Method paramiko.Agent.close()=paramiko.Agent-class.html#close,Method paramiko.BufferedFile.close()=paramiko.BufferedFile-class.html#close,Method paramiko.Channel.close()=paramiko.Channel-class.html#close,Method paramiko.SFTPClient.close()=paramiko.SFTPClient-class.html#close,Method paramiko.SFTPFile.close()=paramiko.SFTPFile-class.html#close,Method paramiko.SFTPHandle.close()=paramiko.SFTPHandle-class.html#close,Method paramiko.SSHClient.close()=paramiko.SSHClient-class.html#close,Method paramiko.Transport.close()=paramiko.Transport-class.html#close,Method paramiko.buffered_pipe.BufferedPipe.close()=paramiko.buffered_pipe.BufferedPipe-class.html#close,Method paramiko.pipe.PosixPipe.close()=paramiko.pipe.PosixPipe-class.html#close,Method paramiko.pipe.WindowsPipe.close()=paramiko.pipe.WindowsPipe-class.html#close,Method paramiko.win_pageant.PageantConnection.close()=paramiko.win_pageant.PageantConnection-class.html#close"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-31', 'close', 'link-31');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">conn</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name"><a title="paramiko.HostKeys.keys" class="py-name" href="#" onclick="return doclink('link-32', 'keys', 'link-13');">keys</a></tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> </tt>
-<a name="Agent.get_keys"></a><div id="Agent.get_keys-def"><a name="L96"></a><tt class="py-lineno"> 96</tt> <a class="py-toggle" href="#" id="Agent.get_keys-toggle" onclick="return toggle('Agent.get_keys');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.agent.Agent-class.html#get_keys">get_keys</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Agent.get_keys-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Agent.get_keys-expanded"><a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"><tt class="py-docstring"> Return the list of keys available through the SSH agent, if any. If</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"><tt class="py-docstring"> no SSH agent was running (or it couldn't be contacted), an empty list</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"><tt class="py-docstring"> will be returned.</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"><tt class="py-docstring"> @return: a list of keys available on the SSH agent</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: tuple of L{AgentKey}</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name"><a title="paramiko.HostKeys.keys" class="py-name" href="#" onclick="return doclink('link-33', 'keys', 'link-13');">keys</a></tt> </tt>
-</div><a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> </tt>
-<a name="Agent._send_message"></a><div id="Agent._send_message-def"><a name="L107"></a><tt class="py-lineno">107</tt> <a class="py-toggle" href="#" id="Agent._send_message-toggle" onclick="return toggle('Agent._send_message');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.agent.Agent-class.html#_send_message">_send_message</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">msg</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Agent._send_message-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Agent._send_message-expanded"><a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt class="py-name">msg</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">)</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">conn</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name" targets="Method paramiko.Channel.send()=paramiko.Channel-class.html#send,Method paramiko.win_pageant.PageantConnection.send()=paramiko.win_pageant.PageantConnection-class.html#send"><a title="paramiko.Channel.send
-paramiko.win_pageant.PageantConnection.send" class="py-name" href="#" onclick="return doclink('link-34', 'send', 'link-34');">send</a></tt><tt class="py-op">(</tt><tt class="py-name">struct</tt><tt class="py-op">.</tt><tt class="py-name">pack</tt><tt class="py-op">(</tt><tt class="py-string">'&gt;I'</tt><tt class="py-op">,</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-name">msg</tt><tt class="py-op">)</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-name">l</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_read_all</tt><tt class="py-op">(</tt><tt class="py-number">4</tt><tt class="py-op">)</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt class="py-name">msg</tt> <tt class="py-op">=</tt> <tt id="link-35" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-35', 'Message', 'link-5');">Message</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_read_all</tt><tt class="py-op">(</tt><tt class="py-name">struct</tt><tt class="py-op">.</tt><tt class="py-name">unpack</tt><tt class="py-op">(</tt><tt class="py-string">'&gt;I'</tt><tt class="py-op">,</tt> <tt class="py-name">l</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">ord</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name" targets="Method paramiko.Message.get_byte()=paramiko.Message-class.html#get_byte"><a title="paramiko.Message.get_byte" class="py-name" href="#" onclick="return doclink('link-36', 'get_byte', 'link-36');">get_byte</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">msg</tt> </tt>
-</div><a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> </tt>
-<a name="Agent._read_all"></a><div id="Agent._read_all-def"><a name="L114"></a><tt class="py-lineno">114</tt> <a class="py-toggle" href="#" id="Agent._read_all-toggle" onclick="return toggle('Agent._read_all');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.agent.Agent-class.html#_read_all">_read_all</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">wanted</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Agent._read_all-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Agent._read_all-expanded"><a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">conn</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name" targets="Method paramiko.Channel.recv()=paramiko.Channel-class.html#recv,Method paramiko.win_pageant.PageantConnection.recv()=paramiko.win_pageant.PageantConnection-class.html#recv"><a title="paramiko.Channel.recv
-paramiko.win_pageant.PageantConnection.recv" class="py-name" href="#" onclick="return doclink('link-37', 'recv', 'link-37');">recv</a></tt><tt class="py-op">(</tt><tt class="py-name">wanted</tt><tt class="py-op">)</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">result</tt><tt class="py-op">)</tt> <tt class="py-op">&lt;</tt> <tt class="py-name">wanted</tt><tt class="py-op">:</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">result</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-38" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-38', 'SSHException', 'link-2');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'lost ssh-agent'</tt><tt class="py-op">)</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-name">extra</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">conn</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="paramiko.Channel.recv
-paramiko.win_pageant.PageantConnection.recv" class="py-name" href="#" onclick="return doclink('link-39', 'recv', 'link-37');">recv</a></tt><tt class="py-op">(</tt><tt class="py-name">wanted</tt> <tt class="py-op">-</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">result</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">extra</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-40" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-40', 'SSHException', 'link-2');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'lost ssh-agent'</tt><tt class="py-op">)</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">+=</tt> <tt class="py-name">extra</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">result</tt> </tt>
-</div></div><a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> </tt>
-<a name="AgentKey"></a><div id="AgentKey-def"><a name="L126"></a><tt class="py-lineno">126</tt> <a class="py-toggle" href="#" id="AgentKey-toggle" onclick="return toggle('AgentKey');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.agent.AgentKey-class.html">AgentKey</a><tt class="py-op">(</tt><tt class="py-base-class">PKey</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="AgentKey-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="AgentKey-expanded"><a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"><tt class="py-docstring"> Private key held in a local SSH agent. This type of key can be used for</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"><tt class="py-docstring"> authenticating to a remote server (signing). Most other key operations</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"><tt class="py-docstring"> work as expected.</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> </tt>
-<a name="AgentKey.__init__"></a><div id="AgentKey.__init__-def"><a name="L133"></a><tt class="py-lineno">133</tt> <a class="py-toggle" href="#" id="AgentKey.__init__-toggle" onclick="return toggle('AgentKey.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.agent.AgentKey-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">agent</tt><tt class="py-op">,</tt> <tt class="py-param">blob</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="AgentKey.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="AgentKey.__init__-expanded"><a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name" targets="Module paramiko.agent=paramiko.agent-module.html"><a title="paramiko.agent" class="py-name" href="#" onclick="return doclink('link-41', 'agent', 'link-41');">agent</a></tt> <tt class="py-op">=</tt> <tt id="link-42" class="py-name"><a title="paramiko.agent" class="py-name" href="#" onclick="return doclink('link-42', 'agent', 'link-41');">agent</a></tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">blob</tt> <tt class="py-op">=</tt> <tt class="py-name">blob</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-43" class="py-name" targets="Variable paramiko.kex_gex.KexGex.name=paramiko.kex_gex.KexGex-class.html#name,Variable paramiko.kex_group1.KexGroup1.name=paramiko.kex_group1.KexGroup1-class.html#name"><a title="paramiko.kex_gex.KexGex.name
-paramiko.kex_group1.KexGroup1.name" class="py-name" href="#" onclick="return doclink('link-43', 'name', 'link-43');">name</a></tt> <tt class="py-op">=</tt> <tt id="link-44" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-44', 'Message', 'link-5');">Message</a></tt><tt class="py-op">(</tt><tt class="py-name">blob</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-45" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-45', 'get_string', 'link-27');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> </tt>
-<a name="AgentKey.__str__"></a><div id="AgentKey.__str__-def"><a name="L138"></a><tt class="py-lineno">138</tt> <a class="py-toggle" href="#" id="AgentKey.__str__-toggle" onclick="return toggle('AgentKey.__str__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.agent.AgentKey-class.html#__str__">__str__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="AgentKey.__str__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="AgentKey.__str__-expanded"><a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">blob</tt> </tt>
-</div><a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> </tt>
-<a name="AgentKey.get_name"></a><div id="AgentKey.get_name-def"><a name="L141"></a><tt class="py-lineno">141</tt> <a class="py-toggle" href="#" id="AgentKey.get_name-toggle" onclick="return toggle('AgentKey.get_name');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.agent.AgentKey-class.html#get_name">get_name</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="AgentKey.get_name-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="AgentKey.get_name-expanded"><a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-46" class="py-name"><a title="paramiko.kex_gex.KexGex.name
-paramiko.kex_group1.KexGroup1.name" class="py-name" href="#" onclick="return doclink('link-46', 'name', 'link-43');">name</a></tt> </tt>
-</div><a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> </tt>
-<a name="AgentKey.sign_ssh_data"></a><div id="AgentKey.sign_ssh_data-def"><a name="L144"></a><tt class="py-lineno">144</tt> <a class="py-toggle" href="#" id="AgentKey.sign_ssh_data-toggle" onclick="return toggle('AgentKey.sign_ssh_data');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.agent.AgentKey-class.html#sign_ssh_data">sign_ssh_data</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">rng</tt><tt class="py-op">,</tt> <tt class="py-param">data</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="AgentKey.sign_ssh_data-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="AgentKey.sign_ssh_data-expanded"><a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-name">msg</tt> <tt class="py-op">=</tt> <tt id="link-47" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-47', 'Message', 'link-5');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-48" class="py-name" targets="Method paramiko.Message.add_byte()=paramiko.Message-class.html#add_byte"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-48', 'add_byte', 'link-48');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-49" class="py-name"><a title="paramiko.agent.SSH2_AGENTC_SIGN_REQUEST" class="py-name" href="#" onclick="return doclink('link-49', 'SSH2_AGENTC_SIGN_REQUEST', 'link-11');">SSH2_AGENTC_SIGN_REQUEST</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-50" class="py-name" targets="Method paramiko.Message.add_string()=paramiko.Message-class.html#add_string"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-50', 'add_string', 'link-50');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">blob</tt><tt class="py-op">)</tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-51" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-51', 'add_string', 'link-50');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-52" class="py-name" targets="Method paramiko.Message.add_int()=paramiko.Message-class.html#add_int"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-52', 'add_int', 'link-52');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt class="py-name">ptype</tt><tt class="py-op">,</tt> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-53" class="py-name"><a title="paramiko.agent" class="py-name" href="#" onclick="return doclink('link-53', 'agent', 'link-41');">agent</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_message</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">)</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ptype</tt> <tt class="py-op">!=</tt> <tt id="link-54" class="py-name"><a title="paramiko.agent.SSH2_AGENT_SIGN_RESPONSE" class="py-name" href="#" onclick="return doclink('link-54', 'SSH2_AGENT_SIGN_RESPONSE', 'link-12');">SSH2_AGENT_SIGN_RESPONSE</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-55" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-55', 'SSHException', 'link-2');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'key cannot be used for signing'</tt><tt class="py-op">)</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">result</tt><tt class="py-op">.</tt><tt id="link-56" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-56', 'get_string', 'link-27');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:08 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.auth_handler-module.html b/docs/paramiko.auth_handler-module.html
deleted file mode 100644
index fb61b0d..0000000
--- a/docs/paramiko.auth_handler-module.html
+++ /dev/null
@@ -1,531 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.auth_handler</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;auth_handler
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.auth_handler-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module auth_handler</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.auth_handler-pysrc.html">source&nbsp;code</a></span></p>
-<p>AuthHandler</p>
-
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_FAILED"></a><span class="summary-name">AUTH_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_PARTIALLY_SUCCESSFUL"></a><span class="summary-name">AUTH_PARTIALLY_SUCCESSFUL</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_SUCCESSFUL"></a><span class="summary-name">AUTH_SUCCESSFUL</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.auth_handler-module.html#CONNECTION_FAILED_CODE" class="summary-name">CONNECTION_FAILED_CODE</a> = <code title="{1: 'Administratively prohibited',
- 2: 'Connect failed',
- 3: 'Unknown channel type',
- 4: 'Resource shortage'}"><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">:</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CRITICAL"></a><span class="summary-name">CRITICAL</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DEBUG"></a><span class="summary-name">DEBUG</span> = <code title="10">10</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_AUTH_CANCELLED_BY_USER"></a><span class="summary-name">DISCONNECT_AUTH_CANCELLED_BY_USER</span> = <code title="13">13</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE"></a><span class="summary-name">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</span> = <code title="14">14</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_SERVICE_NOT_AVAILABLE"></a><span class="summary-name">DISCONNECT_SERVICE_NOT_AVAILABLE</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="ERROR"></a><span class="summary-name">ERROR</span> = <code title="40">40</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="INFO"></a><span class="summary-name">INFO</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_CLOSE"></a><span class="summary-name">MSG_CHANNEL_CLOSE</span> = <code title="97">97</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_DATA"></a><span class="summary-name">MSG_CHANNEL_DATA</span> = <code title="94">94</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EOF"></a><span class="summary-name">MSG_CHANNEL_EOF</span> = <code title="96">96</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EXTENDED_DATA"></a><span class="summary-name">MSG_CHANNEL_EXTENDED_DATA</span> = <code title="95">95</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_FAILURE"></a><span class="summary-name">MSG_CHANNEL_FAILURE</span> = <code title="100">100</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN"></a><span class="summary-name">MSG_CHANNEL_OPEN</span> = <code title="90">90</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_FAILURE"></a><span class="summary-name">MSG_CHANNEL_OPEN_FAILURE</span> = <code title="92">92</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_OPEN_SUCCESS</span> = <code title="91">91</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_REQUEST"></a><span class="summary-name">MSG_CHANNEL_REQUEST</span> = <code title="98">98</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_SUCCESS</span> = <code title="99">99</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_WINDOW_ADJUST"></a><span class="summary-name">MSG_CHANNEL_WINDOW_ADJUST</span> = <code title="93">93</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DEBUG"></a><span class="summary-name">MSG_DEBUG</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DISCONNECT"></a><span class="summary-name">MSG_DISCONNECT</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_GLOBAL_REQUEST"></a><span class="summary-name">MSG_GLOBAL_REQUEST</span> = <code title="80">80</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_IGNORE"></a><span class="summary-name">MSG_IGNORE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_KEXINIT"></a><span class="summary-name">MSG_KEXINIT</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.auth_handler-module.html#MSG_NAMES" class="summary-name">MSG_NAMES</a> = <code title="{1: 'disconnect',
- 2: 'ignore',
- 3: 'unimplemented',
- 4: 'debug',
- 5: 'service-request',
- 6: 'service-accept',
- 20: 'kexinit',
- 21: 'newkeys',
-..."><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">, </code>3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_NEWKEYS"></a><span class="summary-name">MSG_NEWKEYS</span> = <code title="21">21</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_FAILURE"></a><span class="summary-name">MSG_REQUEST_FAILURE</span> = <code title="82">82</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_SUCCESS"></a><span class="summary-name">MSG_REQUEST_SUCCESS</span> = <code title="81">81</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_ACCEPT"></a><span class="summary-name">MSG_SERVICE_ACCEPT</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_REQUEST"></a><span class="summary-name">MSG_SERVICE_REQUEST</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_UNIMPLEMENTED"></a><span class="summary-name">MSG_UNIMPLEMENTED</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_BANNER"></a><span class="summary-name">MSG_USERAUTH_BANNER</span> = <code title="53">53</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_FAILURE"></a><span class="summary-name">MSG_USERAUTH_FAILURE</span> = <code title="51">51</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_REQUEST"></a><span class="summary-name">MSG_USERAUTH_INFO_REQUEST</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_RESPONSE"></a><span class="summary-name">MSG_USERAUTH_INFO_RESPONSE</span> = <code title="61">61</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_PK_OK"></a><span class="summary-name">MSG_USERAUTH_PK_OK</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_REQUEST"></a><span class="summary-name">MSG_USERAUTH_REQUEST</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_SUCCESS"></a><span class="summary-name">MSG_USERAUTH_SUCCESS</span> = <code title="52">52</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED"></a><span class="summary-name">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_CONNECT_FAILED"></a><span class="summary-name">OPEN_FAILED_CONNECT_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_RESOURCE_SHORTAGE"></a><span class="summary-name">OPEN_FAILED_RESOURCE_SHORTAGE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_UNKNOWN_CHANNEL_TYPE"></a><span class="summary-name">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_SUCCEEDED"></a><span class="summary-name">OPEN_SUCCEEDED</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="PY22"></a><span class="summary-name">PY22</span> = <code title="False">False</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="WARNING"></a><span class="summary-name">WARNING</span> = <code title="30">30</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'paramiko'"><code class="variable-quote">'</code><code class="variable-string">paramiko</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="rng"></a><span class="summary-name">rng</span> = <code title="Random.new()">Random.new()</code>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES DETAILS ==================== -->
-<a name="section-VariablesDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables Details</span></td>
-</tr>
-</table>
-<a name="CONNECTION_FAILED_CODE"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">CONNECTION_FAILED_CODE</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Connect failed</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Unknown channel type</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Resource shortage</code><code class="variable-quote">'</code><code class="variable-group">}</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="MSG_NAMES"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">MSG_NAMES</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">debug</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 5<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-request</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 6<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-accept</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 20<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">kexinit</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 21<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">newkeys</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:02 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.auth_handler-pysrc.html b/docs/paramiko.auth_handler-pysrc.html
deleted file mode 100644
index 5015ec8..0000000
--- a/docs/paramiko.auth_handler-pysrc.html
+++ /dev/null
@@ -1,1514 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.auth_handler</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;auth_handler
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.auth_handler-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.auth_handler-module.html" onclick="show_private();">Module paramiko.auth_handler</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2003-2007 Robey Pointer &lt;robeypointer@gmail.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring">L{AuthHandler}</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">threading</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">weakref</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-comment"># this helps freezing utils</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">encodings</tt><tt class="py-op">.</tt><tt class="py-name">utf_8</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package paramiko=paramiko-module.html"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-0', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Module paramiko.common=paramiko.common-module.html"><a title="paramiko.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt> <tt class="py-keyword">import</tt> <tt class="py-op">*</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-2" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-2', 'paramiko', 'link-0');">paramiko</a></tt> <tt class="py-keyword">import</tt> <tt id="link-3" class="py-name" targets="Module paramiko.util=paramiko.util-module.html"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-3', 'util', 'link-3');">util</a></tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-4" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-4', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Module paramiko.message=paramiko.message-module.html"><a title="paramiko.message" class="py-name" href="#" onclick="return doclink('link-5', 'message', 'link-5');">message</a></tt> <tt class="py-keyword">import</tt> <tt id="link-6" class="py-name" targets="Class paramiko.Message=paramiko.Message-class.html"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-6', 'Message', 'link-6');">Message</a></tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-7" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-7', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Module paramiko.ssh_exception=paramiko.ssh_exception-module.html"><a title="paramiko.ssh_exception" class="py-name" href="#" onclick="return doclink('link-8', 'ssh_exception', 'link-8');">ssh_exception</a></tt> <tt class="py-keyword">import</tt> <tt id="link-9" class="py-name" targets="Class paramiko.SSHException=paramiko.SSHException-class.html"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-9', 'SSHException', 'link-9');">SSHException</a></tt><tt class="py-op">,</tt> <tt id="link-10" class="py-name" targets="Class paramiko.AuthenticationException=paramiko.AuthenticationException-class.html"><a title="paramiko.AuthenticationException" class="py-name" href="#" onclick="return doclink('link-10', 'AuthenticationException', 'link-10');">AuthenticationException</a></tt><tt class="py-op">,</tt> \ </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> <tt id="link-11" class="py-name" targets="Class paramiko.BadAuthenticationType=paramiko.BadAuthenticationType-class.html"><a title="paramiko.BadAuthenticationType" class="py-name" href="#" onclick="return doclink('link-11', 'BadAuthenticationType', 'link-11');">BadAuthenticationType</a></tt><tt class="py-op">,</tt> <tt id="link-12" class="py-name" targets="Class paramiko.ssh_exception.PartialAuthentication=paramiko.ssh_exception.PartialAuthentication-class.html"><a title="paramiko.ssh_exception.PartialAuthentication" class="py-name" href="#" onclick="return doclink('link-12', 'PartialAuthentication', 'link-12');">PartialAuthentication</a></tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-13" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-13', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-14" class="py-name" targets="Module paramiko.server=paramiko.server-module.html"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-14', 'server', 'link-14');">server</a></tt> <tt class="py-keyword">import</tt> <tt class="py-name">InteractiveQuery</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> </tt>
-<a name="AuthHandler"></a><div id="AuthHandler-def"><a name="L37"></a><tt class="py-lineno"> 37</tt> <a class="py-toggle" href="#" id="AuthHandler-toggle" onclick="return toggle('AuthHandler');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.auth_handler.AuthHandler-class.html">AuthHandler</a> <tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="AuthHandler-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="AuthHandler-expanded"><a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"><tt class="py-docstring"> Internal class to handle the mechanics of authentication.</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> </tt>
-<a name="AuthHandler.__init__"></a><div id="AuthHandler.__init__-def"><a name="L42"></a><tt class="py-lineno"> 42</tt> <a class="py-toggle" href="#" id="AuthHandler.__init__-toggle" onclick="return toggle('AuthHandler.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.auth_handler.AuthHandler-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">transport</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="AuthHandler.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="AuthHandler.__init__-expanded"><a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name" targets="Module paramiko.transport=paramiko.transport-module.html"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-15', 'transport', 'link-15');">transport</a></tt> <tt class="py-op">=</tt> <tt class="py-name">weakref</tt><tt class="py-op">.</tt><tt class="py-name">proxy</tt><tt class="py-op">(</tt><tt id="link-16" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-16', 'transport', 'link-15');">transport</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">username</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">authenticated</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_event</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_method</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">password</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">private_key</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">interactive_handler</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">submethods</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-comment"># for server mode:</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_username</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_fail_count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-</div><a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> </tt>
-<a name="AuthHandler.is_authenticated"></a><div id="AuthHandler.is_authenticated-def"><a name="L56"></a><tt class="py-lineno"> 56</tt> <a class="py-toggle" href="#" id="AuthHandler.is_authenticated-toggle" onclick="return toggle('AuthHandler.is_authenticated');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.auth_handler.AuthHandler-class.html#is_authenticated">is_authenticated</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="AuthHandler.is_authenticated-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="AuthHandler.is_authenticated-expanded"><a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">authenticated</tt> </tt>
-</div><a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> </tt>
-<a name="AuthHandler.get_username"></a><div id="AuthHandler.get_username-def"><a name="L59"></a><tt class="py-lineno"> 59</tt> <a class="py-toggle" href="#" id="AuthHandler.get_username-toggle" onclick="return toggle('AuthHandler.get_username');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.auth_handler.AuthHandler-class.html#get_username">get_username</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="AuthHandler.get_username-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="AuthHandler.get_username-expanded"><a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-17', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">server_mode</tt><tt class="py-op">:</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_username</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">username</tt> </tt>
-</div><a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> </tt>
-<a name="AuthHandler.auth_none"></a><div id="AuthHandler.auth_none-def"><a name="L65"></a><tt class="py-lineno"> 65</tt> <a class="py-toggle" href="#" id="AuthHandler.auth_none-toggle" onclick="return toggle('AuthHandler.auth_none');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.auth_handler.AuthHandler-class.html#auth_none">auth_none</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">username</tt><tt class="py-op">,</tt> <tt class="py-param">event</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="AuthHandler.auth_none-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="AuthHandler.auth_none-expanded"><a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-18', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_event</tt> <tt class="py-op">=</tt> <tt class="py-name">event</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_method</tt> <tt class="py-op">=</tt> <tt class="py-string">'none'</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">username</tt> <tt class="py-op">=</tt> <tt class="py-name">username</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_request_auth</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-19', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> </tt>
-<a name="AuthHandler.auth_publickey"></a><div id="AuthHandler.auth_publickey-def"><a name="L75"></a><tt class="py-lineno"> 75</tt> <a class="py-toggle" href="#" id="AuthHandler.auth_publickey-toggle" onclick="return toggle('AuthHandler.auth_publickey');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.auth_handler.AuthHandler-class.html#auth_publickey">auth_publickey</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">username</tt><tt class="py-op">,</tt> <tt class="py-param">key</tt><tt class="py-op">,</tt> <tt class="py-param">event</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="AuthHandler.auth_publickey-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="AuthHandler.auth_publickey-expanded"><a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-20', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_event</tt> <tt class="py-op">=</tt> <tt class="py-name">event</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_method</tt> <tt class="py-op">=</tt> <tt class="py-string">'publickey'</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">username</tt> <tt class="py-op">=</tt> <tt class="py-name">username</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">private_key</tt> <tt class="py-op">=</tt> <tt class="py-name">key</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_request_auth</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-21', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> </tt>
-<a name="AuthHandler.auth_password"></a><div id="AuthHandler.auth_password-def"><a name="L86"></a><tt class="py-lineno"> 86</tt> <a class="py-toggle" href="#" id="AuthHandler.auth_password-toggle" onclick="return toggle('AuthHandler.auth_password');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.auth_handler.AuthHandler-class.html#auth_password">auth_password</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">username</tt><tt class="py-op">,</tt> <tt class="py-param">password</tt><tt class="py-op">,</tt> <tt class="py-param">event</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="AuthHandler.auth_password-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="AuthHandler.auth_password-expanded"><a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-22', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_event</tt> <tt class="py-op">=</tt> <tt class="py-name">event</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_method</tt> <tt class="py-op">=</tt> <tt class="py-string">'password'</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">username</tt> <tt class="py-op">=</tt> <tt class="py-name">username</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">password</tt> <tt class="py-op">=</tt> <tt class="py-name">password</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_request_auth</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-23', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> </tt>
-<a name="AuthHandler.auth_interactive"></a><div id="AuthHandler.auth_interactive-def"><a name="L97"></a><tt class="py-lineno"> 97</tt> <a class="py-toggle" href="#" id="AuthHandler.auth_interactive-toggle" onclick="return toggle('AuthHandler.auth_interactive');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.auth_handler.AuthHandler-class.html#auth_interactive">auth_interactive</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">username</tt><tt class="py-op">,</tt> <tt class="py-param">handler</tt><tt class="py-op">,</tt> <tt class="py-param">event</tt><tt class="py-op">,</tt> <tt class="py-param">submethods</tt><tt class="py-op">=</tt><tt class="py-string">''</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="AuthHandler.auth_interactive-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="AuthHandler.auth_interactive-expanded"><a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"><tt class="py-docstring"> response_list = handler(title, instructions, prompt_list)</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-24', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_event</tt> <tt class="py-op">=</tt> <tt class="py-name">event</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_method</tt> <tt class="py-op">=</tt> <tt class="py-string">'keyboard-interactive'</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">username</tt> <tt class="py-op">=</tt> <tt class="py-name">username</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">interactive_handler</tt> <tt class="py-op">=</tt> <tt class="py-name">handler</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">submethods</tt> <tt class="py-op">=</tt> <tt class="py-name">submethods</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_request_auth</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-25', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> </tt>
-<a name="AuthHandler.abort"></a><div id="AuthHandler.abort-def"><a name="L112"></a><tt class="py-lineno">112</tt> <a class="py-toggle" href="#" id="AuthHandler.abort-toggle" onclick="return toggle('AuthHandler.abort');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.auth_handler.AuthHandler-class.html#abort">abort</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="AuthHandler.abort-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="AuthHandler.abort-expanded"><a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_event</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_event</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name" targets="Method paramiko.pipe.OrPipe.set()=paramiko.pipe.OrPipe-class.html#set,Method paramiko.pipe.PosixPipe.set()=paramiko.pipe.PosixPipe-class.html#set,Method paramiko.pipe.WindowsPipe.set()=paramiko.pipe.WindowsPipe-class.html#set"><a title="paramiko.pipe.OrPipe.set
-paramiko.pipe.PosixPipe.set
-paramiko.pipe.WindowsPipe.set" class="py-name" href="#" onclick="return doclink('link-26', 'set', 'link-26');">set</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-comment">### internals...</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> </tt>
-<a name="AuthHandler._request_auth"></a><div id="AuthHandler._request_auth-def"><a name="L120"></a><tt class="py-lineno">120</tt> <a class="py-toggle" href="#" id="AuthHandler._request_auth-toggle" onclick="return toggle('AuthHandler._request_auth');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.auth_handler.AuthHandler-class.html#_request_auth">_request_auth</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="AuthHandler._request_auth-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="AuthHandler._request_auth-expanded"><a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-27" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-27', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name" targets="Method paramiko.Message.add_byte()=paramiko.Message-class.html#add_byte"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-28', 'add_byte', 'link-28');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-29" class="py-name" targets="Variable paramiko.auth_handler.MSG_SERVICE_REQUEST=paramiko.auth_handler-module.html#MSG_SERVICE_REQUEST,Variable paramiko.channel.MSG_SERVICE_REQUEST=paramiko.channel-module.html#MSG_SERVICE_REQUEST,Variable paramiko.client.MSG_SERVICE_REQUEST=paramiko.client-module.html#MSG_SERVICE_REQUEST,Variable paramiko.common.MSG_SERVICE_REQUEST=paramiko.common-module.html#MSG_SERVICE_REQUEST,Variable paramiko.dsskey.MSG_SERVICE_REQUEST=paramiko.dsskey-module.html#MSG_SERVICE_REQUEST,Variable paramiko.hostkeys.MSG_SERVICE_REQUEST=paramiko.hostkeys-module.html#MSG_SERVICE_REQUEST,Variable paramiko.kex_gex.MSG_SERVICE_REQUEST=paramiko.kex_gex-module.html#MSG_SERVICE_REQUEST,Variable paramiko.kex_group1.MSG_SERVICE_REQUEST=paramiko.kex_group1-module.html#MSG_SERVICE_REQUEST,Variable paramiko.packet.MSG_SERVICE_REQUEST=paramiko.packet-module.html#MSG_SERVICE_REQUEST,Variable paramiko.pkey.MSG_SERVICE_REQUEST=paramiko.pkey-module.html#MSG_SERVICE_REQUEST,Variable paramiko.rsakey.MSG_SERVICE_REQUEST=paramiko.rsakey-module.html#MSG_SERVICE_REQUEST,Variable paramiko.server.MSG_SERVICE_REQUEST=paramiko.server-module.html#MSG_SERVICE_REQUEST,Variable paramiko.sftp.MSG_SERVICE_REQUEST=paramiko.sftp-module.html#MSG_SERVICE_REQUEST,Variable paramiko.sftp_attr.MSG_SERVICE_REQUEST=paramiko.sftp_attr-module.html#MSG_SERVICE_REQUEST,Variable paramiko.sftp_client.MSG_SERVICE_REQUEST=paramiko.sftp_client-module.html#MSG_SERVICE_REQUEST,Variable paramiko.sftp_file.MSG_SERVICE_REQUEST=paramiko.sftp_file-module.html#MSG_SERVICE_REQUEST,Variable paramiko.sftp_handle.MSG_SERVICE_REQUEST=paramiko.sftp_handle-module.html#MSG_SERVICE_REQUEST,Variable paramiko.sftp_server.MSG_SERVICE_REQUEST=paramiko.sftp_server-module.html#MSG_SERVICE_REQUEST,Variable paramiko.sftp_si.MSG_SERVICE_REQUEST=paramiko.sftp_si-module.html#MSG_SERVICE_REQUEST,Variable paramiko.transport.MSG_SERVICE_REQUEST=paramiko.transport-module.html#MSG_SERVICE_REQUEST,Variable paramiko.util.MSG_SERVICE_REQUEST=paramiko.util-module.html#MSG_SERVICE_REQUEST"><a title="paramiko.auth_handler.MSG_SERVICE_REQUEST
-paramiko.channel.MSG_SERVICE_REQUEST
-paramiko.client.MSG_SERVICE_REQUEST
-paramiko.common.MSG_SERVICE_REQUEST
-paramiko.dsskey.MSG_SERVICE_REQUEST
-paramiko.hostkeys.MSG_SERVICE_REQUEST
-paramiko.kex_gex.MSG_SERVICE_REQUEST
-paramiko.kex_group1.MSG_SERVICE_REQUEST
-paramiko.packet.MSG_SERVICE_REQUEST
-paramiko.pkey.MSG_SERVICE_REQUEST
-paramiko.rsakey.MSG_SERVICE_REQUEST
-paramiko.server.MSG_SERVICE_REQUEST
-paramiko.sftp.MSG_SERVICE_REQUEST
-paramiko.sftp_attr.MSG_SERVICE_REQUEST
-paramiko.sftp_client.MSG_SERVICE_REQUEST
-paramiko.sftp_file.MSG_SERVICE_REQUEST
-paramiko.sftp_handle.MSG_SERVICE_REQUEST
-paramiko.sftp_server.MSG_SERVICE_REQUEST
-paramiko.sftp_si.MSG_SERVICE_REQUEST
-paramiko.transport.MSG_SERVICE_REQUEST
-paramiko.util.MSG_SERVICE_REQUEST" class="py-name" href="#" onclick="return doclink('link-29', 'MSG_SERVICE_REQUEST', 'link-29');">MSG_SERVICE_REQUEST</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name" targets="Method paramiko.Message.add_string()=paramiko.Message-class.html#add_string"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-30', 'add_string', 'link-30');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-string">'ssh-userauth'</tt><tt class="py-op">)</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-31', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> </tt>
-<a name="AuthHandler._disconnect_service_not_available"></a><div id="AuthHandler._disconnect_service_not_available-def"><a name="L126"></a><tt class="py-lineno">126</tt> <a class="py-toggle" href="#" id="AuthHandler._disconnect_service_not_available-toggle" onclick="return toggle('AuthHandler._disconnect_service_not_available');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.auth_handler.AuthHandler-class.html#_disconnect_service_not_available">_disconnect_service_not_available</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="AuthHandler._disconnect_service_not_available-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="AuthHandler._disconnect_service_not_available-expanded"><a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-32" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-32', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-33', 'add_byte', 'link-28');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-34" class="py-name" targets="Variable paramiko.auth_handler.MSG_DISCONNECT=paramiko.auth_handler-module.html#MSG_DISCONNECT,Variable paramiko.channel.MSG_DISCONNECT=paramiko.channel-module.html#MSG_DISCONNECT,Variable paramiko.client.MSG_DISCONNECT=paramiko.client-module.html#MSG_DISCONNECT,Variable paramiko.common.MSG_DISCONNECT=paramiko.common-module.html#MSG_DISCONNECT,Variable paramiko.dsskey.MSG_DISCONNECT=paramiko.dsskey-module.html#MSG_DISCONNECT,Variable paramiko.hostkeys.MSG_DISCONNECT=paramiko.hostkeys-module.html#MSG_DISCONNECT,Variable paramiko.kex_gex.MSG_DISCONNECT=paramiko.kex_gex-module.html#MSG_DISCONNECT,Variable paramiko.kex_group1.MSG_DISCONNECT=paramiko.kex_group1-module.html#MSG_DISCONNECT,Variable paramiko.packet.MSG_DISCONNECT=paramiko.packet-module.html#MSG_DISCONNECT,Variable paramiko.pkey.MSG_DISCONNECT=paramiko.pkey-module.html#MSG_DISCONNECT,Variable paramiko.rsakey.MSG_DISCONNECT=paramiko.rsakey-module.html#MSG_DISCONNECT,Variable paramiko.server.MSG_DISCONNECT=paramiko.server-module.html#MSG_DISCONNECT,Variable paramiko.sftp.MSG_DISCONNECT=paramiko.sftp-module.html#MSG_DISCONNECT,Variable paramiko.sftp_attr.MSG_DISCONNECT=paramiko.sftp_attr-module.html#MSG_DISCONNECT,Variable paramiko.sftp_client.MSG_DISCONNECT=paramiko.sftp_client-module.html#MSG_DISCONNECT,Variable paramiko.sftp_file.MSG_DISCONNECT=paramiko.sftp_file-module.html#MSG_DISCONNECT,Variable paramiko.sftp_handle.MSG_DISCONNECT=paramiko.sftp_handle-module.html#MSG_DISCONNECT,Variable paramiko.sftp_server.MSG_DISCONNECT=paramiko.sftp_server-module.html#MSG_DISCONNECT,Variable paramiko.sftp_si.MSG_DISCONNECT=paramiko.sftp_si-module.html#MSG_DISCONNECT,Variable paramiko.transport.MSG_DISCONNECT=paramiko.transport-module.html#MSG_DISCONNECT,Variable paramiko.util.MSG_DISCONNECT=paramiko.util-module.html#MSG_DISCONNECT"><a title="paramiko.auth_handler.MSG_DISCONNECT
-paramiko.channel.MSG_DISCONNECT
-paramiko.client.MSG_DISCONNECT
-paramiko.common.MSG_DISCONNECT
-paramiko.dsskey.MSG_DISCONNECT
-paramiko.hostkeys.MSG_DISCONNECT
-paramiko.kex_gex.MSG_DISCONNECT
-paramiko.kex_group1.MSG_DISCONNECT
-paramiko.packet.MSG_DISCONNECT
-paramiko.pkey.MSG_DISCONNECT
-paramiko.rsakey.MSG_DISCONNECT
-paramiko.server.MSG_DISCONNECT
-paramiko.sftp.MSG_DISCONNECT
-paramiko.sftp_attr.MSG_DISCONNECT
-paramiko.sftp_client.MSG_DISCONNECT
-paramiko.sftp_file.MSG_DISCONNECT
-paramiko.sftp_handle.MSG_DISCONNECT
-paramiko.sftp_server.MSG_DISCONNECT
-paramiko.sftp_si.MSG_DISCONNECT
-paramiko.transport.MSG_DISCONNECT
-paramiko.util.MSG_DISCONNECT" class="py-name" href="#" onclick="return doclink('link-34', 'MSG_DISCONNECT', 'link-34');">MSG_DISCONNECT</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name" targets="Method paramiko.Message.add_int()=paramiko.Message-class.html#add_int"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-35', 'add_int', 'link-35');">add_int</a></tt><tt class="py-op">(</tt><tt id="link-36" class="py-name" targets="Variable paramiko.auth_handler.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.auth_handler-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.channel.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.channel-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.client.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.client-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.common.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.common-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.dsskey.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.dsskey-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.hostkeys.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.hostkeys-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.kex_gex.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.kex_gex-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.kex_group1.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.kex_group1-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.packet.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.packet-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.pkey.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.pkey-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.rsakey.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.rsakey-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.server.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.server-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.sftp.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.sftp-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.sftp_attr.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.sftp_attr-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.sftp_client.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.sftp_client-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.sftp_file.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.sftp_file-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.sftp_handle.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.sftp_handle-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.sftp_server.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.sftp_server-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.sftp_si.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.sftp_si-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.transport.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.transport-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.util.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.util-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE"><a title="paramiko.auth_handler.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.channel.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.client.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.common.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.dsskey.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.hostkeys.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.kex_gex.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.kex_group1.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.packet.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.pkey.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.rsakey.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.server.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.sftp.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.sftp_attr.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.sftp_client.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.sftp_file.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.sftp_handle.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.sftp_server.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.sftp_si.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.transport.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.util.DISCONNECT_SERVICE_NOT_AVAILABLE" class="py-name" href="#" onclick="return doclink('link-36', 'DISCONNECT_SERVICE_NOT_AVAILABLE', 'link-36');">DISCONNECT_SERVICE_NOT_AVAILABLE</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-37', 'add_string', 'link-30');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-string">'Service not available'</tt><tt class="py-op">)</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-38', 'add_string', 'link-30');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-string">'en'</tt><tt class="py-op">)</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-39', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-40', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt id="link-41" class="py-name" targets="Method paramiko.Agent.close()=paramiko.Agent-class.html#close,Method paramiko.BufferedFile.close()=paramiko.BufferedFile-class.html#close,Method paramiko.Channel.close()=paramiko.Channel-class.html#close,Method paramiko.SFTPClient.close()=paramiko.SFTPClient-class.html#close,Method paramiko.SFTPFile.close()=paramiko.SFTPFile-class.html#close,Method paramiko.SFTPHandle.close()=paramiko.SFTPHandle-class.html#close,Method paramiko.SSHClient.close()=paramiko.SSHClient-class.html#close,Method paramiko.Transport.close()=paramiko.Transport-class.html#close,Method paramiko.buffered_pipe.BufferedPipe.close()=paramiko.buffered_pipe.BufferedPipe-class.html#close,Method paramiko.pipe.PosixPipe.close()=paramiko.pipe.PosixPipe-class.html#close,Method paramiko.pipe.WindowsPipe.close()=paramiko.pipe.WindowsPipe-class.html#close,Method paramiko.win_pageant.PageantConnection.close()=paramiko.win_pageant.PageantConnection-class.html#close"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-41', 'close', 'link-41');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> </tt>
-<a name="AuthHandler._disconnect_no_more_auth"></a><div id="AuthHandler._disconnect_no_more_auth-def"><a name="L135"></a><tt class="py-lineno">135</tt> <a class="py-toggle" href="#" id="AuthHandler._disconnect_no_more_auth-toggle" onclick="return toggle('AuthHandler._disconnect_no_more_auth');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.auth_handler.AuthHandler-class.html#_disconnect_no_more_auth">_disconnect_no_more_auth</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="AuthHandler._disconnect_no_more_auth-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="AuthHandler._disconnect_no_more_auth-expanded"><a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-42" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-42', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-43" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-43', 'add_byte', 'link-28');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-44" class="py-name"><a title="paramiko.auth_handler.MSG_DISCONNECT
-paramiko.channel.MSG_DISCONNECT
-paramiko.client.MSG_DISCONNECT
-paramiko.common.MSG_DISCONNECT
-paramiko.dsskey.MSG_DISCONNECT
-paramiko.hostkeys.MSG_DISCONNECT
-paramiko.kex_gex.MSG_DISCONNECT
-paramiko.kex_group1.MSG_DISCONNECT
-paramiko.packet.MSG_DISCONNECT
-paramiko.pkey.MSG_DISCONNECT
-paramiko.rsakey.MSG_DISCONNECT
-paramiko.server.MSG_DISCONNECT
-paramiko.sftp.MSG_DISCONNECT
-paramiko.sftp_attr.MSG_DISCONNECT
-paramiko.sftp_client.MSG_DISCONNECT
-paramiko.sftp_file.MSG_DISCONNECT
-paramiko.sftp_handle.MSG_DISCONNECT
-paramiko.sftp_server.MSG_DISCONNECT
-paramiko.sftp_si.MSG_DISCONNECT
-paramiko.transport.MSG_DISCONNECT
-paramiko.util.MSG_DISCONNECT" class="py-name" href="#" onclick="return doclink('link-44', 'MSG_DISCONNECT', 'link-34');">MSG_DISCONNECT</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-45" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-45', 'add_int', 'link-35');">add_int</a></tt><tt class="py-op">(</tt><tt id="link-46" class="py-name" targets="Variable paramiko.auth_handler.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.auth_handler-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.channel.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.channel-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.client.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.client-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.common.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.common-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.dsskey.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.dsskey-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.hostkeys.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.hostkeys-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.kex_gex.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.kex_gex-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.kex_group1.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.kex_group1-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.packet.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.packet-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.pkey.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.pkey-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.rsakey.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.rsakey-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.server.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.server-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.sftp.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.sftp-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.sftp_attr.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.sftp_attr-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.sftp_client.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.sftp_client-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.sftp_file.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.sftp_file-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.sftp_handle.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.sftp_handle-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.sftp_server.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.sftp_server-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.sftp_si.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.sftp_si-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.transport.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.transport-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.util.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.util-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE"><a title="paramiko.auth_handler.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.channel.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.client.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.common.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.dsskey.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.hostkeys.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.kex_gex.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.kex_group1.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.packet.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.pkey.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.rsakey.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.server.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.sftp.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.sftp_attr.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.sftp_client.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.sftp_file.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.sftp_handle.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.sftp_server.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.sftp_si.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.transport.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.util.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE" class="py-name" href="#" onclick="return doclink('link-46', 'DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE', 'link-46');">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-47" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-47', 'add_string', 'link-30');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-string">'No more auth methods available'</tt><tt class="py-op">)</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-48" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-48', 'add_string', 'link-30');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-string">'en'</tt><tt class="py-op">)</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-49" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-49', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-50" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-50', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt id="link-51" class="py-name"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-51', 'close', 'link-41');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> </tt>
-<a name="AuthHandler._get_session_blob"></a><div id="AuthHandler._get_session_blob-def"><a name="L144"></a><tt class="py-lineno">144</tt> <a class="py-toggle" href="#" id="AuthHandler._get_session_blob-toggle" onclick="return toggle('AuthHandler._get_session_blob');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.auth_handler.AuthHandler-class.html#_get_session_blob">_get_session_blob</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">key</tt><tt class="py-op">,</tt> <tt class="py-param">service</tt><tt class="py-op">,</tt> <tt class="py-param">username</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="AuthHandler._get_session_blob-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="AuthHandler._get_session_blob-expanded"><a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-52" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-52', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-53" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-53', 'add_string', 'link-30');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-54" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-54', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">session_id</tt><tt class="py-op">)</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-55" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-55', 'add_byte', 'link-28');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-56" class="py-name" targets="Variable paramiko.auth_handler.MSG_USERAUTH_REQUEST=paramiko.auth_handler-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.channel.MSG_USERAUTH_REQUEST=paramiko.channel-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.client.MSG_USERAUTH_REQUEST=paramiko.client-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.common.MSG_USERAUTH_REQUEST=paramiko.common-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.dsskey.MSG_USERAUTH_REQUEST=paramiko.dsskey-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.hostkeys.MSG_USERAUTH_REQUEST=paramiko.hostkeys-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.kex_gex.MSG_USERAUTH_REQUEST=paramiko.kex_gex-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.kex_group1.MSG_USERAUTH_REQUEST=paramiko.kex_group1-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.packet.MSG_USERAUTH_REQUEST=paramiko.packet-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.pkey.MSG_USERAUTH_REQUEST=paramiko.pkey-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.rsakey.MSG_USERAUTH_REQUEST=paramiko.rsakey-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.server.MSG_USERAUTH_REQUEST=paramiko.server-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.sftp.MSG_USERAUTH_REQUEST=paramiko.sftp-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.sftp_attr.MSG_USERAUTH_REQUEST=paramiko.sftp_attr-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.sftp_client.MSG_USERAUTH_REQUEST=paramiko.sftp_client-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.sftp_file.MSG_USERAUTH_REQUEST=paramiko.sftp_file-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.sftp_handle.MSG_USERAUTH_REQUEST=paramiko.sftp_handle-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.sftp_server.MSG_USERAUTH_REQUEST=paramiko.sftp_server-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.sftp_si.MSG_USERAUTH_REQUEST=paramiko.sftp_si-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.transport.MSG_USERAUTH_REQUEST=paramiko.transport-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.util.MSG_USERAUTH_REQUEST=paramiko.util-module.html#MSG_USERAUTH_REQUEST"><a title="paramiko.auth_handler.MSG_USERAUTH_REQUEST
-paramiko.channel.MSG_USERAUTH_REQUEST
-paramiko.client.MSG_USERAUTH_REQUEST
-paramiko.common.MSG_USERAUTH_REQUEST
-paramiko.dsskey.MSG_USERAUTH_REQUEST
-paramiko.hostkeys.MSG_USERAUTH_REQUEST
-paramiko.kex_gex.MSG_USERAUTH_REQUEST
-paramiko.kex_group1.MSG_USERAUTH_REQUEST
-paramiko.packet.MSG_USERAUTH_REQUEST
-paramiko.pkey.MSG_USERAUTH_REQUEST
-paramiko.rsakey.MSG_USERAUTH_REQUEST
-paramiko.server.MSG_USERAUTH_REQUEST
-paramiko.sftp.MSG_USERAUTH_REQUEST
-paramiko.sftp_attr.MSG_USERAUTH_REQUEST
-paramiko.sftp_client.MSG_USERAUTH_REQUEST
-paramiko.sftp_file.MSG_USERAUTH_REQUEST
-paramiko.sftp_handle.MSG_USERAUTH_REQUEST
-paramiko.sftp_server.MSG_USERAUTH_REQUEST
-paramiko.sftp_si.MSG_USERAUTH_REQUEST
-paramiko.transport.MSG_USERAUTH_REQUEST
-paramiko.util.MSG_USERAUTH_REQUEST" class="py-name" href="#" onclick="return doclink('link-56', 'MSG_USERAUTH_REQUEST', 'link-56');">MSG_USERAUTH_REQUEST</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-57" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-57', 'add_string', 'link-30');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">username</tt><tt class="py-op">)</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-58" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-58', 'add_string', 'link-30');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">service</tt><tt class="py-op">)</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-59" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-59', 'add_string', 'link-30');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-string">'publickey'</tt><tt class="py-op">)</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-60" class="py-name" targets="Method paramiko.Message.add_boolean()=paramiko.Message-class.html#add_boolean"><a title="paramiko.Message.add_boolean" class="py-name" href="#" onclick="return doclink('link-60', 'add_boolean', 'link-60');">add_boolean</a></tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-61" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-61', 'add_string', 'link-30');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">.</tt><tt id="link-62" class="py-name" targets="Method paramiko.AgentKey.get_name()=paramiko.AgentKey-class.html#get_name,Method paramiko.Channel.get_name()=paramiko.Channel-class.html#get_name,Method paramiko.DSSKey.get_name()=paramiko.DSSKey-class.html#get_name,Method paramiko.PKey.get_name()=paramiko.PKey-class.html#get_name,Method paramiko.RSAKey.get_name()=paramiko.RSAKey-class.html#get_name"><a title="paramiko.AgentKey.get_name
-paramiko.Channel.get_name
-paramiko.DSSKey.get_name
-paramiko.PKey.get_name
-paramiko.RSAKey.get_name" class="py-name" href="#" onclick="return doclink('link-62', 'get_name', 'link-62');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-63" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-63', 'add_string', 'link-30');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> </tt>
-<a name="AuthHandler.wait_for_response"></a><div id="AuthHandler.wait_for_response-def"><a name="L156"></a><tt class="py-lineno">156</tt> <a class="py-toggle" href="#" id="AuthHandler.wait_for_response-toggle" onclick="return toggle('AuthHandler.wait_for_response');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.auth_handler.AuthHandler-class.html#wait_for_response">wait_for_response</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">event</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="AuthHandler.wait_for_response-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="AuthHandler.wait_for_response-expanded"><a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> <tt class="py-name">event</tt><tt class="py-op">.</tt><tt class="py-name">wait</tt><tt class="py-op">(</tt><tt class="py-number">0.1</tt><tt class="py-op">)</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-64" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-64', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt id="link-65" class="py-name" targets="Method paramiko.Transport.is_active()=paramiko.Transport-class.html#is_active"><a title="paramiko.Transport.is_active" class="py-name" href="#" onclick="return doclink('link-65', 'is_active', 'link-65');">is_active</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> <tt class="py-name">e</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-66" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-66', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt id="link-67" class="py-name" targets="Method paramiko.Transport.get_exception()=paramiko.Transport-class.html#get_exception"><a title="paramiko.Transport.get_exception" class="py-name" href="#" onclick="return doclink('link-67', 'get_exception', 'link-67');">get_exception</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">e</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-name">issubclass</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">__class__</tt><tt class="py-op">,</tt> <tt class="py-name">EOFError</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> <tt class="py-name">e</tt> <tt class="py-op">=</tt> <tt id="link-68" class="py-name"><a title="paramiko.AuthenticationException" class="py-name" href="#" onclick="return doclink('link-68', 'AuthenticationException', 'link-10');">AuthenticationException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Authentication failed.'</tt><tt class="py-op">)</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">e</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">event</tt><tt class="py-op">.</tt><tt class="py-name">isSet</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-69" class="py-name" targets="Method paramiko.Transport.is_authenticated()=paramiko.Transport-class.html#is_authenticated"><a title="paramiko.Transport.is_authenticated" class="py-name" href="#" onclick="return doclink('link-69', 'is_authenticated', 'link-69');">is_authenticated</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> <tt class="py-name">e</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-70" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-70', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt id="link-71" class="py-name"><a title="paramiko.Transport.get_exception" class="py-name" href="#" onclick="return doclink('link-71', 'get_exception', 'link-67');">get_exception</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">e</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> <tt class="py-name">e</tt> <tt class="py-op">=</tt> <tt id="link-72" class="py-name"><a title="paramiko.AuthenticationException" class="py-name" href="#" onclick="return doclink('link-72', 'AuthenticationException', 'link-10');">AuthenticationException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Authentication failed.'</tt><tt class="py-op">)</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"> <tt class="py-comment"># this is horrible. python Exception isn't yet descended from</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> <tt class="py-comment"># object, so type(e) won't work. :(</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">issubclass</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">__class__</tt><tt class="py-op">,</tt> <tt id="link-73" class="py-name"><a title="paramiko.ssh_exception.PartialAuthentication" class="py-name" href="#" onclick="return doclink('link-73', 'PartialAuthentication', 'link-12');">PartialAuthentication</a></tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">e</tt><tt class="py-op">.</tt><tt id="link-74" class="py-name" targets="Variable paramiko.BadAuthenticationType.allowed_types=paramiko.BadAuthenticationType-class.html#allowed_types,Variable paramiko.ssh_exception.PartialAuthentication.allowed_types=paramiko.ssh_exception.PartialAuthentication-class.html#allowed_types"><a title="paramiko.BadAuthenticationType.allowed_types
-paramiko.ssh_exception.PartialAuthentication.allowed_types" class="py-name" href="#" onclick="return doclink('link-74', 'allowed_types', 'link-74');">allowed_types</a></tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">e</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-</div><a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> </tt>
-<a name="AuthHandler._parse_service_request"></a><div id="AuthHandler._parse_service_request-def"><a name="L177"></a><tt class="py-lineno">177</tt> <a class="py-toggle" href="#" id="AuthHandler._parse_service_request-toggle" onclick="return toggle('AuthHandler._parse_service_request');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.auth_handler.AuthHandler-class.html#_parse_service_request">_parse_service_request</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="AuthHandler._parse_service_request-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="AuthHandler._parse_service_request-expanded"><a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt class="py-name">service</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-75" class="py-name" targets="Method paramiko.Message.get_string()=paramiko.Message-class.html#get_string"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-75', 'get_string', 'link-75');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-76" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-76', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">server_mode</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">service</tt> <tt class="py-op">==</tt> <tt class="py-string">'ssh-userauth'</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-comment"># accepted</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-77" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-77', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-78" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-78', 'add_byte', 'link-28');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-79" class="py-name" targets="Variable paramiko.auth_handler.MSG_SERVICE_ACCEPT=paramiko.auth_handler-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.channel.MSG_SERVICE_ACCEPT=paramiko.channel-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.client.MSG_SERVICE_ACCEPT=paramiko.client-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.common.MSG_SERVICE_ACCEPT=paramiko.common-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.dsskey.MSG_SERVICE_ACCEPT=paramiko.dsskey-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.hostkeys.MSG_SERVICE_ACCEPT=paramiko.hostkeys-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.kex_gex.MSG_SERVICE_ACCEPT=paramiko.kex_gex-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.kex_group1.MSG_SERVICE_ACCEPT=paramiko.kex_group1-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.packet.MSG_SERVICE_ACCEPT=paramiko.packet-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.pkey.MSG_SERVICE_ACCEPT=paramiko.pkey-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.rsakey.MSG_SERVICE_ACCEPT=paramiko.rsakey-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.server.MSG_SERVICE_ACCEPT=paramiko.server-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.sftp.MSG_SERVICE_ACCEPT=paramiko.sftp-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.sftp_attr.MSG_SERVICE_ACCEPT=paramiko.sftp_attr-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.sftp_client.MSG_SERVICE_ACCEPT=paramiko.sftp_client-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.sftp_file.MSG_SERVICE_ACCEPT=paramiko.sftp_file-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.sftp_handle.MSG_SERVICE_ACCEPT=paramiko.sftp_handle-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.sftp_server.MSG_SERVICE_ACCEPT=paramiko.sftp_server-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.sftp_si.MSG_SERVICE_ACCEPT=paramiko.sftp_si-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.transport.MSG_SERVICE_ACCEPT=paramiko.transport-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.util.MSG_SERVICE_ACCEPT=paramiko.util-module.html#MSG_SERVICE_ACCEPT"><a title="paramiko.auth_handler.MSG_SERVICE_ACCEPT
-paramiko.channel.MSG_SERVICE_ACCEPT
-paramiko.client.MSG_SERVICE_ACCEPT
-paramiko.common.MSG_SERVICE_ACCEPT
-paramiko.dsskey.MSG_SERVICE_ACCEPT
-paramiko.hostkeys.MSG_SERVICE_ACCEPT
-paramiko.kex_gex.MSG_SERVICE_ACCEPT
-paramiko.kex_group1.MSG_SERVICE_ACCEPT
-paramiko.packet.MSG_SERVICE_ACCEPT
-paramiko.pkey.MSG_SERVICE_ACCEPT
-paramiko.rsakey.MSG_SERVICE_ACCEPT
-paramiko.server.MSG_SERVICE_ACCEPT
-paramiko.sftp.MSG_SERVICE_ACCEPT
-paramiko.sftp_attr.MSG_SERVICE_ACCEPT
-paramiko.sftp_client.MSG_SERVICE_ACCEPT
-paramiko.sftp_file.MSG_SERVICE_ACCEPT
-paramiko.sftp_handle.MSG_SERVICE_ACCEPT
-paramiko.sftp_server.MSG_SERVICE_ACCEPT
-paramiko.sftp_si.MSG_SERVICE_ACCEPT
-paramiko.transport.MSG_SERVICE_ACCEPT
-paramiko.util.MSG_SERVICE_ACCEPT" class="py-name" href="#" onclick="return doclink('link-79', 'MSG_SERVICE_ACCEPT', 'link-79');">MSG_SERVICE_ACCEPT</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-80" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-80', 'add_string', 'link-30');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">service</tt><tt class="py-op">)</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-81" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-81', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> <tt class="py-comment"># dunno this one</tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_disconnect_service_not_available</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"> </tt>
-<a name="AuthHandler._parse_service_accept"></a><div id="AuthHandler._parse_service_accept-def"><a name="L189"></a><tt class="py-lineno">189</tt> <a class="py-toggle" href="#" id="AuthHandler._parse_service_accept-toggle" onclick="return toggle('AuthHandler._parse_service_accept');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.auth_handler.AuthHandler-class.html#_parse_service_accept">_parse_service_accept</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="AuthHandler._parse_service_accept-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="AuthHandler._parse_service_accept-expanded"><a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"> <tt class="py-name">service</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-82" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-82', 'get_string', 'link-75');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">service</tt> <tt class="py-op">==</tt> <tt class="py-string">'ssh-userauth'</tt><tt class="py-op">:</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-83" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-83', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-84" class="py-name" targets="Variable paramiko.auth_handler.DEBUG=paramiko.auth_handler-module.html#DEBUG,Variable paramiko.channel.DEBUG=paramiko.channel-module.html#DEBUG,Variable paramiko.client.DEBUG=paramiko.client-module.html#DEBUG,Variable paramiko.common.DEBUG=paramiko.common-module.html#DEBUG,Variable paramiko.dsskey.DEBUG=paramiko.dsskey-module.html#DEBUG,Variable paramiko.hostkeys.DEBUG=paramiko.hostkeys-module.html#DEBUG,Variable paramiko.kex_gex.DEBUG=paramiko.kex_gex-module.html#DEBUG,Variable paramiko.kex_group1.DEBUG=paramiko.kex_group1-module.html#DEBUG,Variable paramiko.logging22.DEBUG=paramiko.logging22-module.html#DEBUG,Variable paramiko.packet.DEBUG=paramiko.packet-module.html#DEBUG,Variable paramiko.pkey.DEBUG=paramiko.pkey-module.html#DEBUG,Variable paramiko.rsakey.DEBUG=paramiko.rsakey-module.html#DEBUG,Variable paramiko.server.DEBUG=paramiko.server-module.html#DEBUG,Variable paramiko.sftp.DEBUG=paramiko.sftp-module.html#DEBUG,Variable paramiko.sftp_attr.DEBUG=paramiko.sftp_attr-module.html#DEBUG,Variable paramiko.sftp_client.DEBUG=paramiko.sftp_client-module.html#DEBUG,Variable paramiko.sftp_file.DEBUG=paramiko.sftp_file-module.html#DEBUG,Variable paramiko.sftp_handle.DEBUG=paramiko.sftp_handle-module.html#DEBUG,Variable paramiko.sftp_server.DEBUG=paramiko.sftp_server-module.html#DEBUG,Variable paramiko.sftp_si.DEBUG=paramiko.sftp_si-module.html#DEBUG,Variable paramiko.transport.DEBUG=paramiko.transport-module.html#DEBUG,Variable paramiko.util.DEBUG=paramiko.util-module.html#DEBUG"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-84', 'DEBUG', 'link-84');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'userauth is OK'</tt><tt class="py-op">)</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-85" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-85', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-86" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-86', 'add_byte', 'link-28');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-87" class="py-name"><a title="paramiko.auth_handler.MSG_USERAUTH_REQUEST
-paramiko.channel.MSG_USERAUTH_REQUEST
-paramiko.client.MSG_USERAUTH_REQUEST
-paramiko.common.MSG_USERAUTH_REQUEST
-paramiko.dsskey.MSG_USERAUTH_REQUEST
-paramiko.hostkeys.MSG_USERAUTH_REQUEST
-paramiko.kex_gex.MSG_USERAUTH_REQUEST
-paramiko.kex_group1.MSG_USERAUTH_REQUEST
-paramiko.packet.MSG_USERAUTH_REQUEST
-paramiko.pkey.MSG_USERAUTH_REQUEST
-paramiko.rsakey.MSG_USERAUTH_REQUEST
-paramiko.server.MSG_USERAUTH_REQUEST
-paramiko.sftp.MSG_USERAUTH_REQUEST
-paramiko.sftp_attr.MSG_USERAUTH_REQUEST
-paramiko.sftp_client.MSG_USERAUTH_REQUEST
-paramiko.sftp_file.MSG_USERAUTH_REQUEST
-paramiko.sftp_handle.MSG_USERAUTH_REQUEST
-paramiko.sftp_server.MSG_USERAUTH_REQUEST
-paramiko.sftp_si.MSG_USERAUTH_REQUEST
-paramiko.transport.MSG_USERAUTH_REQUEST
-paramiko.util.MSG_USERAUTH_REQUEST" class="py-name" href="#" onclick="return doclink('link-87', 'MSG_USERAUTH_REQUEST', 'link-56');">MSG_USERAUTH_REQUEST</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-88" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-88', 'add_string', 'link-30');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">username</tt><tt class="py-op">)</tt> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-89" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-89', 'add_string', 'link-30');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-string">'ssh-connection'</tt><tt class="py-op">)</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-90" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-90', 'add_string', 'link-30');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_method</tt><tt class="py-op">)</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_method</tt> <tt class="py-op">==</tt> <tt class="py-string">'password'</tt><tt class="py-op">:</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-91" class="py-name"><a title="paramiko.Message.add_boolean" class="py-name" href="#" onclick="return doclink('link-91', 'add_boolean', 'link-60');">add_boolean</a></tt><tt class="py-op">(</tt><tt class="py-name">False</tt><tt class="py-op">)</tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> <tt class="py-name">password</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">password</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">password</tt><tt class="py-op">,</tt> <tt class="py-name">unicode</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"> <tt class="py-name">password</tt> <tt class="py-op">=</tt> <tt class="py-name">password</tt><tt class="py-op">.</tt><tt id="link-92" class="py-name" targets="Method paramiko.ber.BER.encode()=paramiko.ber.BER-class.html#encode"><a title="paramiko.ber.BER.encode" class="py-name" href="#" onclick="return doclink('link-92', 'encode', 'link-92');">encode</a></tt><tt class="py-op">(</tt><tt class="py-string">'UTF-8'</tt><tt class="py-op">)</tt> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-93" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-93', 'add_string', 'link-30');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">password</tt><tt class="py-op">)</tt> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_method</tt> <tt class="py-op">==</tt> <tt class="py-string">'publickey'</tt><tt class="py-op">:</tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-94" class="py-name"><a title="paramiko.Message.add_boolean" class="py-name" href="#" onclick="return doclink('link-94', 'add_boolean', 'link-60');">add_boolean</a></tt><tt class="py-op">(</tt><tt class="py-name">True</tt><tt class="py-op">)</tt> </tt>
-<a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-95" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-95', 'add_string', 'link-30');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">private_key</tt><tt class="py-op">.</tt><tt id="link-96" class="py-name"><a title="paramiko.AgentKey.get_name
-paramiko.Channel.get_name
-paramiko.DSSKey.get_name
-paramiko.PKey.get_name
-paramiko.RSAKey.get_name" class="py-name" href="#" onclick="return doclink('link-96', 'get_name', 'link-62');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-97" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-97', 'add_string', 'link-30');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">private_key</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"> <tt class="py-name">blob</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_get_session_blob</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">private_key</tt><tt class="py-op">,</tt> <tt class="py-string">'ssh-connection'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">username</tt><tt class="py-op">)</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"> <tt class="py-name">sig</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">private_key</tt><tt class="py-op">.</tt><tt id="link-98" class="py-name" targets="Method paramiko.AgentKey.sign_ssh_data()=paramiko.AgentKey-class.html#sign_ssh_data,Method paramiko.DSSKey.sign_ssh_data()=paramiko.DSSKey-class.html#sign_ssh_data,Method paramiko.PKey.sign_ssh_data()=paramiko.PKey-class.html#sign_ssh_data,Method paramiko.RSAKey.sign_ssh_data()=paramiko.RSAKey-class.html#sign_ssh_data"><a title="paramiko.AgentKey.sign_ssh_data
-paramiko.DSSKey.sign_ssh_data
-paramiko.PKey.sign_ssh_data
-paramiko.RSAKey.sign_ssh_data" class="py-name" href="#" onclick="return doclink('link-98', 'sign_ssh_data', 'link-98');">sign_ssh_data</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-99" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-99', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt id="link-100" class="py-name" targets="Variable paramiko.auth_handler.rng=paramiko.auth_handler-module.html#rng,Variable paramiko.channel.rng=paramiko.channel-module.html#rng,Variable paramiko.client.rng=paramiko.client-module.html#rng,Variable paramiko.common.rng=paramiko.common-module.html#rng,Variable paramiko.dsskey.rng=paramiko.dsskey-module.html#rng,Variable paramiko.hostkeys.rng=paramiko.hostkeys-module.html#rng,Variable paramiko.kex_gex.rng=paramiko.kex_gex-module.html#rng,Variable paramiko.kex_group1.rng=paramiko.kex_group1-module.html#rng,Variable paramiko.packet.rng=paramiko.packet-module.html#rng,Variable paramiko.pkey.rng=paramiko.pkey-module.html#rng,Variable paramiko.rsakey.rng=paramiko.rsakey-module.html#rng,Variable paramiko.server.rng=paramiko.server-module.html#rng,Variable paramiko.sftp.rng=paramiko.sftp-module.html#rng,Variable paramiko.sftp_attr.rng=paramiko.sftp_attr-module.html#rng,Variable paramiko.sftp_client.rng=paramiko.sftp_client-module.html#rng,Variable paramiko.sftp_file.rng=paramiko.sftp_file-module.html#rng,Variable paramiko.sftp_handle.rng=paramiko.sftp_handle-module.html#rng,Variable paramiko.sftp_server.rng=paramiko.sftp_server-module.html#rng,Variable paramiko.sftp_si.rng=paramiko.sftp_si-module.html#rng,Variable paramiko.transport.rng=paramiko.transport-module.html#rng,Variable paramiko.util.rng=paramiko.util-module.html#rng"><a title="paramiko.auth_handler.rng
-paramiko.channel.rng
-paramiko.client.rng
-paramiko.common.rng
-paramiko.dsskey.rng
-paramiko.hostkeys.rng
-paramiko.kex_gex.rng
-paramiko.kex_group1.rng
-paramiko.packet.rng
-paramiko.pkey.rng
-paramiko.rsakey.rng
-paramiko.server.rng
-paramiko.sftp.rng
-paramiko.sftp_attr.rng
-paramiko.sftp_client.rng
-paramiko.sftp_file.rng
-paramiko.sftp_handle.rng
-paramiko.sftp_server.rng
-paramiko.sftp_si.rng
-paramiko.transport.rng
-paramiko.util.rng" class="py-name" href="#" onclick="return doclink('link-100', 'rng', 'link-100');">rng</a></tt><tt class="py-op">,</tt> <tt class="py-name">blob</tt><tt class="py-op">)</tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-101" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-101', 'add_string', 'link-30');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">sig</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_method</tt> <tt class="py-op">==</tt> <tt class="py-string">'keyboard-interactive'</tt><tt class="py-op">:</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-102" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-102', 'add_string', 'link-30');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-string">''</tt><tt class="py-op">)</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-103" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-103', 'add_string', 'link-30');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">submethods</tt><tt class="py-op">)</tt> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_method</tt> <tt class="py-op">==</tt> <tt class="py-string">'none'</tt><tt class="py-op">:</tt> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-104" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-104', 'SSHException', 'link-9');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Unknown auth method "%s"'</tt> <tt class="py-op">%</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_method</tt><tt class="py-op">)</tt> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-105" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-105', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-106" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-106', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-107" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-107', 'DEBUG', 'link-84');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Service request "%s" accepted (?)'</tt> <tt class="py-op">%</tt> <tt class="py-name">service</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"> </tt>
-<a name="AuthHandler._send_auth_result"></a><div id="AuthHandler._send_auth_result-def"><a name="L222"></a><tt class="py-lineno">222</tt> <a class="py-toggle" href="#" id="AuthHandler._send_auth_result-toggle" onclick="return toggle('AuthHandler._send_auth_result');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.auth_handler.AuthHandler-class.html#_send_auth_result">_send_auth_result</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">username</tt><tt class="py-op">,</tt> <tt class="py-param">method</tt><tt class="py-op">,</tt> <tt class="py-param">result</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="AuthHandler._send_auth_result-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="AuthHandler._send_auth_result-expanded"><a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"> <tt class="py-comment"># okay, send result</tt> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-108" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-108', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">result</tt> <tt class="py-op">==</tt> <tt id="link-109" class="py-name" targets="Variable paramiko.auth_handler.AUTH_SUCCESSFUL=paramiko.auth_handler-module.html#AUTH_SUCCESSFUL,Variable paramiko.channel.AUTH_SUCCESSFUL=paramiko.channel-module.html#AUTH_SUCCESSFUL,Variable paramiko.client.AUTH_SUCCESSFUL=paramiko.client-module.html#AUTH_SUCCESSFUL,Variable paramiko.common.AUTH_SUCCESSFUL=paramiko.common-module.html#AUTH_SUCCESSFUL,Variable paramiko.dsskey.AUTH_SUCCESSFUL=paramiko.dsskey-module.html#AUTH_SUCCESSFUL,Variable paramiko.hostkeys.AUTH_SUCCESSFUL=paramiko.hostkeys-module.html#AUTH_SUCCESSFUL,Variable paramiko.kex_gex.AUTH_SUCCESSFUL=paramiko.kex_gex-module.html#AUTH_SUCCESSFUL,Variable paramiko.kex_group1.AUTH_SUCCESSFUL=paramiko.kex_group1-module.html#AUTH_SUCCESSFUL,Variable paramiko.packet.AUTH_SUCCESSFUL=paramiko.packet-module.html#AUTH_SUCCESSFUL,Variable paramiko.pkey.AUTH_SUCCESSFUL=paramiko.pkey-module.html#AUTH_SUCCESSFUL,Variable paramiko.rsakey.AUTH_SUCCESSFUL=paramiko.rsakey-module.html#AUTH_SUCCESSFUL,Variable paramiko.server.AUTH_SUCCESSFUL=paramiko.server-module.html#AUTH_SUCCESSFUL,Variable paramiko.sftp.AUTH_SUCCESSFUL=paramiko.sftp-module.html#AUTH_SUCCESSFUL,Variable paramiko.sftp_attr.AUTH_SUCCESSFUL=paramiko.sftp_attr-module.html#AUTH_SUCCESSFUL,Variable paramiko.sftp_client.AUTH_SUCCESSFUL=paramiko.sftp_client-module.html#AUTH_SUCCESSFUL,Variable paramiko.sftp_file.AUTH_SUCCESSFUL=paramiko.sftp_file-module.html#AUTH_SUCCESSFUL,Variable paramiko.sftp_handle.AUTH_SUCCESSFUL=paramiko.sftp_handle-module.html#AUTH_SUCCESSFUL,Variable paramiko.sftp_server.AUTH_SUCCESSFUL=paramiko.sftp_server-module.html#AUTH_SUCCESSFUL,Variable paramiko.sftp_si.AUTH_SUCCESSFUL=paramiko.sftp_si-module.html#AUTH_SUCCESSFUL,Variable paramiko.transport.AUTH_SUCCESSFUL=paramiko.transport-module.html#AUTH_SUCCESSFUL,Variable paramiko.util.AUTH_SUCCESSFUL=paramiko.util-module.html#AUTH_SUCCESSFUL"><a title="paramiko.auth_handler.AUTH_SUCCESSFUL
-paramiko.channel.AUTH_SUCCESSFUL
-paramiko.client.AUTH_SUCCESSFUL
-paramiko.common.AUTH_SUCCESSFUL
-paramiko.dsskey.AUTH_SUCCESSFUL
-paramiko.hostkeys.AUTH_SUCCESSFUL
-paramiko.kex_gex.AUTH_SUCCESSFUL
-paramiko.kex_group1.AUTH_SUCCESSFUL
-paramiko.packet.AUTH_SUCCESSFUL
-paramiko.pkey.AUTH_SUCCESSFUL
-paramiko.rsakey.AUTH_SUCCESSFUL
-paramiko.server.AUTH_SUCCESSFUL
-paramiko.sftp.AUTH_SUCCESSFUL
-paramiko.sftp_attr.AUTH_SUCCESSFUL
-paramiko.sftp_client.AUTH_SUCCESSFUL
-paramiko.sftp_file.AUTH_SUCCESSFUL
-paramiko.sftp_handle.AUTH_SUCCESSFUL
-paramiko.sftp_server.AUTH_SUCCESSFUL
-paramiko.sftp_si.AUTH_SUCCESSFUL
-paramiko.transport.AUTH_SUCCESSFUL
-paramiko.util.AUTH_SUCCESSFUL" class="py-name" href="#" onclick="return doclink('link-109', 'AUTH_SUCCESSFUL', 'link-109');">AUTH_SUCCESSFUL</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-110" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-110', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-111" class="py-name" targets="Variable paramiko.auth_handler.INFO=paramiko.auth_handler-module.html#INFO,Variable paramiko.channel.INFO=paramiko.channel-module.html#INFO,Variable paramiko.client.INFO=paramiko.client-module.html#INFO,Variable paramiko.common.INFO=paramiko.common-module.html#INFO,Variable paramiko.dsskey.INFO=paramiko.dsskey-module.html#INFO,Variable paramiko.hostkeys.INFO=paramiko.hostkeys-module.html#INFO,Variable paramiko.kex_gex.INFO=paramiko.kex_gex-module.html#INFO,Variable paramiko.kex_group1.INFO=paramiko.kex_group1-module.html#INFO,Variable paramiko.logging22.INFO=paramiko.logging22-module.html#INFO,Variable paramiko.packet.INFO=paramiko.packet-module.html#INFO,Variable paramiko.pkey.INFO=paramiko.pkey-module.html#INFO,Variable paramiko.rsakey.INFO=paramiko.rsakey-module.html#INFO,Variable paramiko.server.INFO=paramiko.server-module.html#INFO,Variable paramiko.sftp.INFO=paramiko.sftp-module.html#INFO,Variable paramiko.sftp_attr.INFO=paramiko.sftp_attr-module.html#INFO,Variable paramiko.sftp_client.INFO=paramiko.sftp_client-module.html#INFO,Variable paramiko.sftp_file.INFO=paramiko.sftp_file-module.html#INFO,Variable paramiko.sftp_handle.INFO=paramiko.sftp_handle-module.html#INFO,Variable paramiko.sftp_server.INFO=paramiko.sftp_server-module.html#INFO,Variable paramiko.sftp_si.INFO=paramiko.sftp_si-module.html#INFO,Variable paramiko.transport.INFO=paramiko.transport-module.html#INFO,Variable paramiko.util.INFO=paramiko.util-module.html#INFO"><a title="paramiko.auth_handler.INFO
-paramiko.channel.INFO
-paramiko.client.INFO
-paramiko.common.INFO
-paramiko.dsskey.INFO
-paramiko.hostkeys.INFO
-paramiko.kex_gex.INFO
-paramiko.kex_group1.INFO
-paramiko.logging22.INFO
-paramiko.packet.INFO
-paramiko.pkey.INFO
-paramiko.rsakey.INFO
-paramiko.server.INFO
-paramiko.sftp.INFO
-paramiko.sftp_attr.INFO
-paramiko.sftp_client.INFO
-paramiko.sftp_file.INFO
-paramiko.sftp_handle.INFO
-paramiko.sftp_server.INFO
-paramiko.sftp_si.INFO
-paramiko.transport.INFO
-paramiko.util.INFO" class="py-name" href="#" onclick="return doclink('link-111', 'INFO', 'link-111');">INFO</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Auth granted (%s).'</tt> <tt class="py-op">%</tt> <tt class="py-name">method</tt><tt class="py-op">)</tt> </tt>
-<a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-112" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-112', 'add_byte', 'link-28');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-113" class="py-name" targets="Variable paramiko.auth_handler.MSG_USERAUTH_SUCCESS=paramiko.auth_handler-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.channel.MSG_USERAUTH_SUCCESS=paramiko.channel-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.client.MSG_USERAUTH_SUCCESS=paramiko.client-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.common.MSG_USERAUTH_SUCCESS=paramiko.common-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.dsskey.MSG_USERAUTH_SUCCESS=paramiko.dsskey-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.hostkeys.MSG_USERAUTH_SUCCESS=paramiko.hostkeys-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.kex_gex.MSG_USERAUTH_SUCCESS=paramiko.kex_gex-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.kex_group1.MSG_USERAUTH_SUCCESS=paramiko.kex_group1-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.packet.MSG_USERAUTH_SUCCESS=paramiko.packet-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.pkey.MSG_USERAUTH_SUCCESS=paramiko.pkey-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.rsakey.MSG_USERAUTH_SUCCESS=paramiko.rsakey-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.server.MSG_USERAUTH_SUCCESS=paramiko.server-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.sftp.MSG_USERAUTH_SUCCESS=paramiko.sftp-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.sftp_attr.MSG_USERAUTH_SUCCESS=paramiko.sftp_attr-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.sftp_client.MSG_USERAUTH_SUCCESS=paramiko.sftp_client-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.sftp_file.MSG_USERAUTH_SUCCESS=paramiko.sftp_file-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.sftp_handle.MSG_USERAUTH_SUCCESS=paramiko.sftp_handle-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.sftp_server.MSG_USERAUTH_SUCCESS=paramiko.sftp_server-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.sftp_si.MSG_USERAUTH_SUCCESS=paramiko.sftp_si-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.transport.MSG_USERAUTH_SUCCESS=paramiko.transport-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.util.MSG_USERAUTH_SUCCESS=paramiko.util-module.html#MSG_USERAUTH_SUCCESS"><a title="paramiko.auth_handler.MSG_USERAUTH_SUCCESS
-paramiko.channel.MSG_USERAUTH_SUCCESS
-paramiko.client.MSG_USERAUTH_SUCCESS
-paramiko.common.MSG_USERAUTH_SUCCESS
-paramiko.dsskey.MSG_USERAUTH_SUCCESS
-paramiko.hostkeys.MSG_USERAUTH_SUCCESS
-paramiko.kex_gex.MSG_USERAUTH_SUCCESS
-paramiko.kex_group1.MSG_USERAUTH_SUCCESS
-paramiko.packet.MSG_USERAUTH_SUCCESS
-paramiko.pkey.MSG_USERAUTH_SUCCESS
-paramiko.rsakey.MSG_USERAUTH_SUCCESS
-paramiko.server.MSG_USERAUTH_SUCCESS
-paramiko.sftp.MSG_USERAUTH_SUCCESS
-paramiko.sftp_attr.MSG_USERAUTH_SUCCESS
-paramiko.sftp_client.MSG_USERAUTH_SUCCESS
-paramiko.sftp_file.MSG_USERAUTH_SUCCESS
-paramiko.sftp_handle.MSG_USERAUTH_SUCCESS
-paramiko.sftp_server.MSG_USERAUTH_SUCCESS
-paramiko.sftp_si.MSG_USERAUTH_SUCCESS
-paramiko.transport.MSG_USERAUTH_SUCCESS
-paramiko.util.MSG_USERAUTH_SUCCESS" class="py-name" href="#" onclick="return doclink('link-113', 'MSG_USERAUTH_SUCCESS', 'link-113');">MSG_USERAUTH_SUCCESS</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">authenticated</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L229"></a><tt class="py-lineno">229</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L230"></a><tt class="py-lineno">230</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-114" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-114', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-115" class="py-name"><a title="paramiko.auth_handler.INFO
-paramiko.channel.INFO
-paramiko.client.INFO
-paramiko.common.INFO
-paramiko.dsskey.INFO
-paramiko.hostkeys.INFO
-paramiko.kex_gex.INFO
-paramiko.kex_group1.INFO
-paramiko.logging22.INFO
-paramiko.packet.INFO
-paramiko.pkey.INFO
-paramiko.rsakey.INFO
-paramiko.server.INFO
-paramiko.sftp.INFO
-paramiko.sftp_attr.INFO
-paramiko.sftp_client.INFO
-paramiko.sftp_file.INFO
-paramiko.sftp_handle.INFO
-paramiko.sftp_server.INFO
-paramiko.sftp_si.INFO
-paramiko.transport.INFO
-paramiko.util.INFO" class="py-name" href="#" onclick="return doclink('link-115', 'INFO', 'link-111');">INFO</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Auth rejected (%s).'</tt> <tt class="py-op">%</tt> <tt class="py-name">method</tt><tt class="py-op">)</tt> </tt>
-<a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-116" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-116', 'add_byte', 'link-28');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-117" class="py-name" targets="Variable paramiko.auth_handler.MSG_USERAUTH_FAILURE=paramiko.auth_handler-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.channel.MSG_USERAUTH_FAILURE=paramiko.channel-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.client.MSG_USERAUTH_FAILURE=paramiko.client-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.common.MSG_USERAUTH_FAILURE=paramiko.common-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.dsskey.MSG_USERAUTH_FAILURE=paramiko.dsskey-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.hostkeys.MSG_USERAUTH_FAILURE=paramiko.hostkeys-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.kex_gex.MSG_USERAUTH_FAILURE=paramiko.kex_gex-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.kex_group1.MSG_USERAUTH_FAILURE=paramiko.kex_group1-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.packet.MSG_USERAUTH_FAILURE=paramiko.packet-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.pkey.MSG_USERAUTH_FAILURE=paramiko.pkey-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.rsakey.MSG_USERAUTH_FAILURE=paramiko.rsakey-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.server.MSG_USERAUTH_FAILURE=paramiko.server-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.sftp.MSG_USERAUTH_FAILURE=paramiko.sftp-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.sftp_attr.MSG_USERAUTH_FAILURE=paramiko.sftp_attr-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.sftp_client.MSG_USERAUTH_FAILURE=paramiko.sftp_client-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.sftp_file.MSG_USERAUTH_FAILURE=paramiko.sftp_file-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.sftp_handle.MSG_USERAUTH_FAILURE=paramiko.sftp_handle-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.sftp_server.MSG_USERAUTH_FAILURE=paramiko.sftp_server-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.sftp_si.MSG_USERAUTH_FAILURE=paramiko.sftp_si-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.transport.MSG_USERAUTH_FAILURE=paramiko.transport-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.util.MSG_USERAUTH_FAILURE=paramiko.util-module.html#MSG_USERAUTH_FAILURE"><a title="paramiko.auth_handler.MSG_USERAUTH_FAILURE
-paramiko.channel.MSG_USERAUTH_FAILURE
-paramiko.client.MSG_USERAUTH_FAILURE
-paramiko.common.MSG_USERAUTH_FAILURE
-paramiko.dsskey.MSG_USERAUTH_FAILURE
-paramiko.hostkeys.MSG_USERAUTH_FAILURE
-paramiko.kex_gex.MSG_USERAUTH_FAILURE
-paramiko.kex_group1.MSG_USERAUTH_FAILURE
-paramiko.packet.MSG_USERAUTH_FAILURE
-paramiko.pkey.MSG_USERAUTH_FAILURE
-paramiko.rsakey.MSG_USERAUTH_FAILURE
-paramiko.server.MSG_USERAUTH_FAILURE
-paramiko.sftp.MSG_USERAUTH_FAILURE
-paramiko.sftp_attr.MSG_USERAUTH_FAILURE
-paramiko.sftp_client.MSG_USERAUTH_FAILURE
-paramiko.sftp_file.MSG_USERAUTH_FAILURE
-paramiko.sftp_handle.MSG_USERAUTH_FAILURE
-paramiko.sftp_server.MSG_USERAUTH_FAILURE
-paramiko.sftp_si.MSG_USERAUTH_FAILURE
-paramiko.transport.MSG_USERAUTH_FAILURE
-paramiko.util.MSG_USERAUTH_FAILURE" class="py-name" href="#" onclick="return doclink('link-117', 'MSG_USERAUTH_FAILURE', 'link-117');">MSG_USERAUTH_FAILURE</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-118" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-118', 'add_string', 'link-30');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-119" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-119', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">server_object</tt><tt class="py-op">.</tt><tt id="link-120" class="py-name" targets="Method paramiko.ServerInterface.get_allowed_auths()=paramiko.ServerInterface-class.html#get_allowed_auths"><a title="paramiko.ServerInterface.get_allowed_auths" class="py-name" href="#" onclick="return doclink('link-120', 'get_allowed_auths', 'link-120');">get_allowed_auths</a></tt><tt class="py-op">(</tt><tt class="py-name">username</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">result</tt> <tt class="py-op">==</tt> <tt id="link-121" class="py-name" targets="Variable paramiko.auth_handler.AUTH_PARTIALLY_SUCCESSFUL=paramiko.auth_handler-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.channel.AUTH_PARTIALLY_SUCCESSFUL=paramiko.channel-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.client.AUTH_PARTIALLY_SUCCESSFUL=paramiko.client-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.common.AUTH_PARTIALLY_SUCCESSFUL=paramiko.common-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.dsskey.AUTH_PARTIALLY_SUCCESSFUL=paramiko.dsskey-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.hostkeys.AUTH_PARTIALLY_SUCCESSFUL=paramiko.hostkeys-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.kex_gex.AUTH_PARTIALLY_SUCCESSFUL=paramiko.kex_gex-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.kex_group1.AUTH_PARTIALLY_SUCCESSFUL=paramiko.kex_group1-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.packet.AUTH_PARTIALLY_SUCCESSFUL=paramiko.packet-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.pkey.AUTH_PARTIALLY_SUCCESSFUL=paramiko.pkey-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.rsakey.AUTH_PARTIALLY_SUCCESSFUL=paramiko.rsakey-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.server.AUTH_PARTIALLY_SUCCESSFUL=paramiko.server-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.sftp.AUTH_PARTIALLY_SUCCESSFUL=paramiko.sftp-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.sftp_attr.AUTH_PARTIALLY_SUCCESSFUL=paramiko.sftp_attr-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.sftp_client.AUTH_PARTIALLY_SUCCESSFUL=paramiko.sftp_client-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.sftp_file.AUTH_PARTIALLY_SUCCESSFUL=paramiko.sftp_file-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.sftp_handle.AUTH_PARTIALLY_SUCCESSFUL=paramiko.sftp_handle-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.sftp_server.AUTH_PARTIALLY_SUCCESSFUL=paramiko.sftp_server-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.sftp_si.AUTH_PARTIALLY_SUCCESSFUL=paramiko.sftp_si-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.transport.AUTH_PARTIALLY_SUCCESSFUL=paramiko.transport-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.util.AUTH_PARTIALLY_SUCCESSFUL=paramiko.util-module.html#AUTH_PARTIALLY_SUCCESSFUL"><a title="paramiko.auth_handler.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.channel.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.client.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.common.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.dsskey.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.hostkeys.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.kex_gex.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.kex_group1.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.packet.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.pkey.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.rsakey.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.server.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.sftp.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.sftp_attr.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.sftp_client.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.sftp_file.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.sftp_handle.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.sftp_server.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.sftp_si.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.transport.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.util.AUTH_PARTIALLY_SUCCESSFUL" class="py-name" href="#" onclick="return doclink('link-121', 'AUTH_PARTIALLY_SUCCESSFUL', 'link-121');">AUTH_PARTIALLY_SUCCESSFUL</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-122" class="py-name"><a title="paramiko.Message.add_boolean" class="py-name" href="#" onclick="return doclink('link-122', 'add_boolean', 'link-60');">add_boolean</a></tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-123" class="py-name"><a title="paramiko.Message.add_boolean" class="py-name" href="#" onclick="return doclink('link-123', 'add_boolean', 'link-60');">add_boolean</a></tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_fail_count</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-124" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-124', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L239"></a><tt class="py-lineno">239</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_fail_count</tt> <tt class="py-op">&gt;=</tt> <tt class="py-number">10</tt><tt class="py-op">:</tt> </tt>
-<a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_disconnect_no_more_auth</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">result</tt> <tt class="py-op">==</tt> <tt id="link-125" class="py-name"><a title="paramiko.auth_handler.AUTH_SUCCESSFUL
-paramiko.channel.AUTH_SUCCESSFUL
-paramiko.client.AUTH_SUCCESSFUL
-paramiko.common.AUTH_SUCCESSFUL
-paramiko.dsskey.AUTH_SUCCESSFUL
-paramiko.hostkeys.AUTH_SUCCESSFUL
-paramiko.kex_gex.AUTH_SUCCESSFUL
-paramiko.kex_group1.AUTH_SUCCESSFUL
-paramiko.packet.AUTH_SUCCESSFUL
-paramiko.pkey.AUTH_SUCCESSFUL
-paramiko.rsakey.AUTH_SUCCESSFUL
-paramiko.server.AUTH_SUCCESSFUL
-paramiko.sftp.AUTH_SUCCESSFUL
-paramiko.sftp_attr.AUTH_SUCCESSFUL
-paramiko.sftp_client.AUTH_SUCCESSFUL
-paramiko.sftp_file.AUTH_SUCCESSFUL
-paramiko.sftp_handle.AUTH_SUCCESSFUL
-paramiko.sftp_server.AUTH_SUCCESSFUL
-paramiko.sftp_si.AUTH_SUCCESSFUL
-paramiko.transport.AUTH_SUCCESSFUL
-paramiko.util.AUTH_SUCCESSFUL" class="py-name" href="#" onclick="return doclink('link-125', 'AUTH_SUCCESSFUL', 'link-109');">AUTH_SUCCESSFUL</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-126" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-126', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_auth_trigger</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L243"></a><tt class="py-lineno">243</tt> <tt class="py-line"> </tt>
-<a name="AuthHandler._interactive_query"></a><div id="AuthHandler._interactive_query-def"><a name="L244"></a><tt class="py-lineno">244</tt> <a class="py-toggle" href="#" id="AuthHandler._interactive_query-toggle" onclick="return toggle('AuthHandler._interactive_query');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.auth_handler.AuthHandler-class.html#_interactive_query">_interactive_query</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">q</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="AuthHandler._interactive_query-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="AuthHandler._interactive_query-expanded"><a name="L245"></a><tt class="py-lineno">245</tt> <tt class="py-line"> <tt class="py-comment"># make interactive query instead of response</tt> </tt>
-<a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-127" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-127', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L247"></a><tt class="py-lineno">247</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-128" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-128', 'add_byte', 'link-28');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-129" class="py-name" targets="Variable paramiko.auth_handler.MSG_USERAUTH_INFO_REQUEST=paramiko.auth_handler-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.channel.MSG_USERAUTH_INFO_REQUEST=paramiko.channel-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.client.MSG_USERAUTH_INFO_REQUEST=paramiko.client-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.common.MSG_USERAUTH_INFO_REQUEST=paramiko.common-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.dsskey.MSG_USERAUTH_INFO_REQUEST=paramiko.dsskey-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.hostkeys.MSG_USERAUTH_INFO_REQUEST=paramiko.hostkeys-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.kex_gex.MSG_USERAUTH_INFO_REQUEST=paramiko.kex_gex-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.kex_group1.MSG_USERAUTH_INFO_REQUEST=paramiko.kex_group1-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.packet.MSG_USERAUTH_INFO_REQUEST=paramiko.packet-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.pkey.MSG_USERAUTH_INFO_REQUEST=paramiko.pkey-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.rsakey.MSG_USERAUTH_INFO_REQUEST=paramiko.rsakey-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.server.MSG_USERAUTH_INFO_REQUEST=paramiko.server-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.sftp.MSG_USERAUTH_INFO_REQUEST=paramiko.sftp-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.sftp_attr.MSG_USERAUTH_INFO_REQUEST=paramiko.sftp_attr-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.sftp_client.MSG_USERAUTH_INFO_REQUEST=paramiko.sftp_client-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.sftp_file.MSG_USERAUTH_INFO_REQUEST=paramiko.sftp_file-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.sftp_handle.MSG_USERAUTH_INFO_REQUEST=paramiko.sftp_handle-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.sftp_server.MSG_USERAUTH_INFO_REQUEST=paramiko.sftp_server-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.sftp_si.MSG_USERAUTH_INFO_REQUEST=paramiko.sftp_si-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.transport.MSG_USERAUTH_INFO_REQUEST=paramiko.transport-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.util.MSG_USERAUTH_INFO_REQUEST=paramiko.util-module.html#MSG_USERAUTH_INFO_REQUEST"><a title="paramiko.auth_handler.MSG_USERAUTH_INFO_REQUEST
-paramiko.channel.MSG_USERAUTH_INFO_REQUEST
-paramiko.client.MSG_USERAUTH_INFO_REQUEST
-paramiko.common.MSG_USERAUTH_INFO_REQUEST
-paramiko.dsskey.MSG_USERAUTH_INFO_REQUEST
-paramiko.hostkeys.MSG_USERAUTH_INFO_REQUEST
-paramiko.kex_gex.MSG_USERAUTH_INFO_REQUEST
-paramiko.kex_group1.MSG_USERAUTH_INFO_REQUEST
-paramiko.packet.MSG_USERAUTH_INFO_REQUEST
-paramiko.pkey.MSG_USERAUTH_INFO_REQUEST
-paramiko.rsakey.MSG_USERAUTH_INFO_REQUEST
-paramiko.server.MSG_USERAUTH_INFO_REQUEST
-paramiko.sftp.MSG_USERAUTH_INFO_REQUEST
-paramiko.sftp_attr.MSG_USERAUTH_INFO_REQUEST
-paramiko.sftp_client.MSG_USERAUTH_INFO_REQUEST
-paramiko.sftp_file.MSG_USERAUTH_INFO_REQUEST
-paramiko.sftp_handle.MSG_USERAUTH_INFO_REQUEST
-paramiko.sftp_server.MSG_USERAUTH_INFO_REQUEST
-paramiko.sftp_si.MSG_USERAUTH_INFO_REQUEST
-paramiko.transport.MSG_USERAUTH_INFO_REQUEST
-paramiko.util.MSG_USERAUTH_INFO_REQUEST" class="py-name" href="#" onclick="return doclink('link-129', 'MSG_USERAUTH_INFO_REQUEST', 'link-129');">MSG_USERAUTH_INFO_REQUEST</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L248"></a><tt class="py-lineno">248</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-130" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-130', 'add_string', 'link-30');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">q</tt><tt class="py-op">.</tt><tt id="link-131" class="py-name" targets="Variable paramiko.kex_gex.KexGex.name=paramiko.kex_gex.KexGex-class.html#name,Variable paramiko.kex_group1.KexGroup1.name=paramiko.kex_group1.KexGroup1-class.html#name"><a title="paramiko.kex_gex.KexGex.name
-paramiko.kex_group1.KexGroup1.name" class="py-name" href="#" onclick="return doclink('link-131', 'name', 'link-131');">name</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L249"></a><tt class="py-lineno">249</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-132" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-132', 'add_string', 'link-30');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">q</tt><tt class="py-op">.</tt><tt class="py-name">instructions</tt><tt class="py-op">)</tt> </tt>
-<a name="L250"></a><tt class="py-lineno">250</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-133" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-133', 'add_string', 'link-30');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-string">''</tt><tt class="py-op">)</tt> </tt>
-<a name="L251"></a><tt class="py-lineno">251</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-134" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-134', 'add_int', 'link-35');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">q</tt><tt class="py-op">.</tt><tt class="py-name">prompts</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">p</tt> <tt class="py-keyword">in</tt> <tt class="py-name">q</tt><tt class="py-op">.</tt><tt class="py-name">prompts</tt><tt class="py-op">:</tt> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-135" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-135', 'add_string', 'link-30');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">p</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L254"></a><tt class="py-lineno">254</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-136" class="py-name"><a title="paramiko.Message.add_boolean" class="py-name" href="#" onclick="return doclink('link-136', 'add_boolean', 'link-60');">add_boolean</a></tt><tt class="py-op">(</tt><tt class="py-name">p</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L255"></a><tt class="py-lineno">255</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-137" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-137', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L256"></a><tt class="py-lineno">256</tt> <tt class="py-line"> </tt>
-<a name="AuthHandler._parse_userauth_request"></a><div id="AuthHandler._parse_userauth_request-def"><a name="L257"></a><tt class="py-lineno">257</tt> <a class="py-toggle" href="#" id="AuthHandler._parse_userauth_request-toggle" onclick="return toggle('AuthHandler._parse_userauth_request');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.auth_handler.AuthHandler-class.html#_parse_userauth_request">_parse_userauth_request</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="AuthHandler._parse_userauth_request-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="AuthHandler._parse_userauth_request-expanded"><a name="L258"></a><tt class="py-lineno">258</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-138" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-138', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">server_mode</tt><tt class="py-op">:</tt> </tt>
-<a name="L259"></a><tt class="py-lineno">259</tt> <tt class="py-line"> <tt class="py-comment"># er, uh... what?</tt> </tt>
-<a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-139" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-139', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-140" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-140', 'add_byte', 'link-28');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-141" class="py-name"><a title="paramiko.auth_handler.MSG_USERAUTH_FAILURE
-paramiko.channel.MSG_USERAUTH_FAILURE
-paramiko.client.MSG_USERAUTH_FAILURE
-paramiko.common.MSG_USERAUTH_FAILURE
-paramiko.dsskey.MSG_USERAUTH_FAILURE
-paramiko.hostkeys.MSG_USERAUTH_FAILURE
-paramiko.kex_gex.MSG_USERAUTH_FAILURE
-paramiko.kex_group1.MSG_USERAUTH_FAILURE
-paramiko.packet.MSG_USERAUTH_FAILURE
-paramiko.pkey.MSG_USERAUTH_FAILURE
-paramiko.rsakey.MSG_USERAUTH_FAILURE
-paramiko.server.MSG_USERAUTH_FAILURE
-paramiko.sftp.MSG_USERAUTH_FAILURE
-paramiko.sftp_attr.MSG_USERAUTH_FAILURE
-paramiko.sftp_client.MSG_USERAUTH_FAILURE
-paramiko.sftp_file.MSG_USERAUTH_FAILURE
-paramiko.sftp_handle.MSG_USERAUTH_FAILURE
-paramiko.sftp_server.MSG_USERAUTH_FAILURE
-paramiko.sftp_si.MSG_USERAUTH_FAILURE
-paramiko.transport.MSG_USERAUTH_FAILURE
-paramiko.util.MSG_USERAUTH_FAILURE" class="py-name" href="#" onclick="return doclink('link-141', 'MSG_USERAUTH_FAILURE', 'link-117');">MSG_USERAUTH_FAILURE</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L262"></a><tt class="py-lineno">262</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-142" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-142', 'add_string', 'link-30');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-string">'none'</tt><tt class="py-op">)</tt> </tt>
-<a name="L263"></a><tt class="py-lineno">263</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-143" class="py-name"><a title="paramiko.Message.add_boolean" class="py-name" href="#" onclick="return doclink('link-143', 'add_boolean', 'link-60');">add_boolean</a></tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L264"></a><tt class="py-lineno">264</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-144" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-144', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L266"></a><tt class="py-lineno">266</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">authenticated</tt><tt class="py-op">:</tt> </tt>
-<a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"> <tt class="py-comment"># ignore</tt> </tt>
-<a name="L268"></a><tt class="py-lineno">268</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L269"></a><tt class="py-lineno">269</tt> <tt class="py-line"> <tt class="py-name">username</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-145" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-145', 'get_string', 'link-75');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L270"></a><tt class="py-lineno">270</tt> <tt class="py-line"> <tt class="py-name">service</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-146" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-146', 'get_string', 'link-75');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L271"></a><tt class="py-lineno">271</tt> <tt class="py-line"> <tt class="py-name">method</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-147" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-147', 'get_string', 'link-75');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-148" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-148', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-149" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-149', 'DEBUG', 'link-84');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Auth request (type=%s) service=%s, username=%s'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">method</tt><tt class="py-op">,</tt> <tt class="py-name">service</tt><tt class="py-op">,</tt> <tt class="py-name">username</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L273"></a><tt class="py-lineno">273</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">service</tt> <tt class="py-op">!=</tt> <tt class="py-string">'ssh-connection'</tt><tt class="py-op">:</tt> </tt>
-<a name="L274"></a><tt class="py-lineno">274</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_disconnect_service_not_available</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L276"></a><tt class="py-lineno">276</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_username</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_username</tt> <tt class="py-op">!=</tt> <tt class="py-name">username</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L277"></a><tt class="py-lineno">277</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-150" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-150', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-151" class="py-name" targets="Variable paramiko.auth_handler.WARNING=paramiko.auth_handler-module.html#WARNING,Variable paramiko.channel.WARNING=paramiko.channel-module.html#WARNING,Variable paramiko.client.WARNING=paramiko.client-module.html#WARNING,Variable paramiko.common.WARNING=paramiko.common-module.html#WARNING,Variable paramiko.dsskey.WARNING=paramiko.dsskey-module.html#WARNING,Variable paramiko.hostkeys.WARNING=paramiko.hostkeys-module.html#WARNING,Variable paramiko.kex_gex.WARNING=paramiko.kex_gex-module.html#WARNING,Variable paramiko.kex_group1.WARNING=paramiko.kex_group1-module.html#WARNING,Variable paramiko.logging22.WARNING=paramiko.logging22-module.html#WARNING,Variable paramiko.packet.WARNING=paramiko.packet-module.html#WARNING,Variable paramiko.pkey.WARNING=paramiko.pkey-module.html#WARNING,Variable paramiko.rsakey.WARNING=paramiko.rsakey-module.html#WARNING,Variable paramiko.server.WARNING=paramiko.server-module.html#WARNING,Variable paramiko.sftp.WARNING=paramiko.sftp-module.html#WARNING,Variable paramiko.sftp_attr.WARNING=paramiko.sftp_attr-module.html#WARNING,Variable paramiko.sftp_client.WARNING=paramiko.sftp_client-module.html#WARNING,Variable paramiko.sftp_file.WARNING=paramiko.sftp_file-module.html#WARNING,Variable paramiko.sftp_handle.WARNING=paramiko.sftp_handle-module.html#WARNING,Variable paramiko.sftp_server.WARNING=paramiko.sftp_server-module.html#WARNING,Variable paramiko.sftp_si.WARNING=paramiko.sftp_si-module.html#WARNING,Variable paramiko.transport.WARNING=paramiko.transport-module.html#WARNING,Variable paramiko.util.WARNING=paramiko.util-module.html#WARNING"><a title="paramiko.auth_handler.WARNING
-paramiko.channel.WARNING
-paramiko.client.WARNING
-paramiko.common.WARNING
-paramiko.dsskey.WARNING
-paramiko.hostkeys.WARNING
-paramiko.kex_gex.WARNING
-paramiko.kex_group1.WARNING
-paramiko.logging22.WARNING
-paramiko.packet.WARNING
-paramiko.pkey.WARNING
-paramiko.rsakey.WARNING
-paramiko.server.WARNING
-paramiko.sftp.WARNING
-paramiko.sftp_attr.WARNING
-paramiko.sftp_client.WARNING
-paramiko.sftp_file.WARNING
-paramiko.sftp_handle.WARNING
-paramiko.sftp_server.WARNING
-paramiko.sftp_si.WARNING
-paramiko.transport.WARNING
-paramiko.util.WARNING" class="py-name" href="#" onclick="return doclink('link-151', 'WARNING', 'link-151');">WARNING</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Auth rejected because the client attempted to change username in mid-flight'</tt><tt class="py-op">)</tt> </tt>
-<a name="L278"></a><tt class="py-lineno">278</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_disconnect_no_more_auth</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L279"></a><tt class="py-lineno">279</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L280"></a><tt class="py-lineno">280</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_username</tt> <tt class="py-op">=</tt> <tt class="py-name">username</tt> </tt>
-<a name="L281"></a><tt class="py-lineno">281</tt> <tt class="py-line"> </tt>
-<a name="L282"></a><tt class="py-lineno">282</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">method</tt> <tt class="py-op">==</tt> <tt class="py-string">'none'</tt><tt class="py-op">:</tt> </tt>
-<a name="L283"></a><tt class="py-lineno">283</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-152" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-152', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">server_object</tt><tt class="py-op">.</tt><tt id="link-153" class="py-name" targets="Method paramiko.ServerInterface.check_auth_none()=paramiko.ServerInterface-class.html#check_auth_none"><a title="paramiko.ServerInterface.check_auth_none" class="py-name" href="#" onclick="return doclink('link-153', 'check_auth_none', 'link-153');">check_auth_none</a></tt><tt class="py-op">(</tt><tt class="py-name">username</tt><tt class="py-op">)</tt> </tt>
-<a name="L284"></a><tt class="py-lineno">284</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">method</tt> <tt class="py-op">==</tt> <tt class="py-string">'password'</tt><tt class="py-op">:</tt> </tt>
-<a name="L285"></a><tt class="py-lineno">285</tt> <tt class="py-line"> <tt class="py-name">changereq</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-154" class="py-name" targets="Method paramiko.Message.get_boolean()=paramiko.Message-class.html#get_boolean"><a title="paramiko.Message.get_boolean" class="py-name" href="#" onclick="return doclink('link-154', 'get_boolean', 'link-154');">get_boolean</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L286"></a><tt class="py-lineno">286</tt> <tt class="py-line"> <tt class="py-name">password</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-155" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-155', 'get_string', 'link-75');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L287"></a><tt class="py-lineno">287</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L288"></a><tt class="py-lineno">288</tt> <tt class="py-line"> <tt class="py-name">password</tt> <tt class="py-op">=</tt> <tt class="py-name">password</tt><tt class="py-op">.</tt><tt id="link-156" class="py-name" targets="Method paramiko.ber.BER.decode()=paramiko.ber.BER-class.html#decode"><a title="paramiko.ber.BER.decode" class="py-name" href="#" onclick="return doclink('link-156', 'decode', 'link-156');">decode</a></tt><tt class="py-op">(</tt><tt class="py-string">'UTF-8'</tt><tt class="py-op">)</tt> </tt>
-<a name="L289"></a><tt class="py-lineno">289</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">UnicodeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L290"></a><tt class="py-lineno">290</tt> <tt class="py-line"> <tt class="py-comment"># some clients/servers expect non-utf-8 passwords!</tt> </tt>
-<a name="L291"></a><tt class="py-lineno">291</tt> <tt class="py-line"> <tt class="py-comment"># in this case, just return the raw byte string.</tt> </tt>
-<a name="L292"></a><tt class="py-lineno">292</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L293"></a><tt class="py-lineno">293</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">changereq</tt><tt class="py-op">:</tt> </tt>
-<a name="L294"></a><tt class="py-lineno">294</tt> <tt class="py-line"> <tt class="py-comment"># always treated as failure, since we don't support changing passwords, but collect</tt> </tt>
-<a name="L295"></a><tt class="py-lineno">295</tt> <tt class="py-line"> <tt class="py-comment"># the list of valid auth types from the callback anyway</tt> </tt>
-<a name="L296"></a><tt class="py-lineno">296</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-157" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-157', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-158" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-158', 'DEBUG', 'link-84');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Auth request to change passwords (rejected)'</tt><tt class="py-op">)</tt> </tt>
-<a name="L297"></a><tt class="py-lineno">297</tt> <tt class="py-line"> <tt class="py-name">newpassword</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-159" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-159', 'get_string', 'link-75');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L298"></a><tt class="py-lineno">298</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L299"></a><tt class="py-lineno">299</tt> <tt class="py-line"> <tt class="py-name">newpassword</tt> <tt class="py-op">=</tt> <tt class="py-name">newpassword</tt><tt class="py-op">.</tt><tt id="link-160" class="py-name"><a title="paramiko.ber.BER.decode" class="py-name" href="#" onclick="return doclink('link-160', 'decode', 'link-156');">decode</a></tt><tt class="py-op">(</tt><tt class="py-string">'UTF-8'</tt><tt class="py-op">,</tt> <tt class="py-string">'replace'</tt><tt class="py-op">)</tt> </tt>
-<a name="L300"></a><tt class="py-lineno">300</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">UnicodeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L301"></a><tt class="py-lineno">301</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L302"></a><tt class="py-lineno">302</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt id="link-161" class="py-name" targets="Variable paramiko.auth_handler.AUTH_FAILED=paramiko.auth_handler-module.html#AUTH_FAILED,Variable paramiko.channel.AUTH_FAILED=paramiko.channel-module.html#AUTH_FAILED,Variable paramiko.client.AUTH_FAILED=paramiko.client-module.html#AUTH_FAILED,Variable paramiko.common.AUTH_FAILED=paramiko.common-module.html#AUTH_FAILED,Variable paramiko.dsskey.AUTH_FAILED=paramiko.dsskey-module.html#AUTH_FAILED,Variable paramiko.hostkeys.AUTH_FAILED=paramiko.hostkeys-module.html#AUTH_FAILED,Variable paramiko.kex_gex.AUTH_FAILED=paramiko.kex_gex-module.html#AUTH_FAILED,Variable paramiko.kex_group1.AUTH_FAILED=paramiko.kex_group1-module.html#AUTH_FAILED,Variable paramiko.packet.AUTH_FAILED=paramiko.packet-module.html#AUTH_FAILED,Variable paramiko.pkey.AUTH_FAILED=paramiko.pkey-module.html#AUTH_FAILED,Variable paramiko.rsakey.AUTH_FAILED=paramiko.rsakey-module.html#AUTH_FAILED,Variable paramiko.server.AUTH_FAILED=paramiko.server-module.html#AUTH_FAILED,Variable paramiko.sftp.AUTH_FAILED=paramiko.sftp-module.html#AUTH_FAILED,Variable paramiko.sftp_attr.AUTH_FAILED=paramiko.sftp_attr-module.html#AUTH_FAILED,Variable paramiko.sftp_client.AUTH_FAILED=paramiko.sftp_client-module.html#AUTH_FAILED,Variable paramiko.sftp_file.AUTH_FAILED=paramiko.sftp_file-module.html#AUTH_FAILED,Variable paramiko.sftp_handle.AUTH_FAILED=paramiko.sftp_handle-module.html#AUTH_FAILED,Variable paramiko.sftp_server.AUTH_FAILED=paramiko.sftp_server-module.html#AUTH_FAILED,Variable paramiko.sftp_si.AUTH_FAILED=paramiko.sftp_si-module.html#AUTH_FAILED,Variable paramiko.transport.AUTH_FAILED=paramiko.transport-module.html#AUTH_FAILED,Variable paramiko.util.AUTH_FAILED=paramiko.util-module.html#AUTH_FAILED"><a title="paramiko.auth_handler.AUTH_FAILED
-paramiko.channel.AUTH_FAILED
-paramiko.client.AUTH_FAILED
-paramiko.common.AUTH_FAILED
-paramiko.dsskey.AUTH_FAILED
-paramiko.hostkeys.AUTH_FAILED
-paramiko.kex_gex.AUTH_FAILED
-paramiko.kex_group1.AUTH_FAILED
-paramiko.packet.AUTH_FAILED
-paramiko.pkey.AUTH_FAILED
-paramiko.rsakey.AUTH_FAILED
-paramiko.server.AUTH_FAILED
-paramiko.sftp.AUTH_FAILED
-paramiko.sftp_attr.AUTH_FAILED
-paramiko.sftp_client.AUTH_FAILED
-paramiko.sftp_file.AUTH_FAILED
-paramiko.sftp_handle.AUTH_FAILED
-paramiko.sftp_server.AUTH_FAILED
-paramiko.sftp_si.AUTH_FAILED
-paramiko.transport.AUTH_FAILED
-paramiko.util.AUTH_FAILED" class="py-name" href="#" onclick="return doclink('link-161', 'AUTH_FAILED', 'link-161');">AUTH_FAILED</a></tt> </tt>
-<a name="L303"></a><tt class="py-lineno">303</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L304"></a><tt class="py-lineno">304</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-162" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-162', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">server_object</tt><tt class="py-op">.</tt><tt id="link-163" class="py-name" targets="Method paramiko.ServerInterface.check_auth_password()=paramiko.ServerInterface-class.html#check_auth_password"><a title="paramiko.ServerInterface.check_auth_password" class="py-name" href="#" onclick="return doclink('link-163', 'check_auth_password', 'link-163');">check_auth_password</a></tt><tt class="py-op">(</tt><tt class="py-name">username</tt><tt class="py-op">,</tt> <tt class="py-name">password</tt><tt class="py-op">)</tt> </tt>
-<a name="L305"></a><tt class="py-lineno">305</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">method</tt> <tt class="py-op">==</tt> <tt class="py-string">'publickey'</tt><tt class="py-op">:</tt> </tt>
-<a name="L306"></a><tt class="py-lineno">306</tt> <tt class="py-line"> <tt class="py-name">sig_attached</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-164" class="py-name"><a title="paramiko.Message.get_boolean" class="py-name" href="#" onclick="return doclink('link-164', 'get_boolean', 'link-154');">get_boolean</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L307"></a><tt class="py-lineno">307</tt> <tt class="py-line"> <tt class="py-name">keytype</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-165" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-165', 'get_string', 'link-75');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L308"></a><tt class="py-lineno">308</tt> <tt class="py-line"> <tt class="py-name">keyblob</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-166" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-166', 'get_string', 'link-75');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L309"></a><tt class="py-lineno">309</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L310"></a><tt class="py-lineno">310</tt> <tt class="py-line"> <tt class="py-name">key</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-167" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-167', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt id="link-168" class="py-name" targets="Variable paramiko.Transport._key_info=paramiko.Transport-class.html#_key_info"><a title="paramiko.Transport._key_info" class="py-name" href="#" onclick="return doclink('link-168', '_key_info', 'link-168');">_key_info</a></tt><tt class="py-op">[</tt><tt class="py-name">keytype</tt><tt class="py-op">]</tt><tt class="py-op">(</tt><tt id="link-169" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-169', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-name">keyblob</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L311"></a><tt class="py-lineno">311</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt id="link-170" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-170', 'SSHException', 'link-9');">SSHException</a></tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L312"></a><tt class="py-lineno">312</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-171" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-171', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-172" class="py-name"><a title="paramiko.auth_handler.INFO
-paramiko.channel.INFO
-paramiko.client.INFO
-paramiko.common.INFO
-paramiko.dsskey.INFO
-paramiko.hostkeys.INFO
-paramiko.kex_gex.INFO
-paramiko.kex_group1.INFO
-paramiko.logging22.INFO
-paramiko.packet.INFO
-paramiko.pkey.INFO
-paramiko.rsakey.INFO
-paramiko.server.INFO
-paramiko.sftp.INFO
-paramiko.sftp_attr.INFO
-paramiko.sftp_client.INFO
-paramiko.sftp_file.INFO
-paramiko.sftp_handle.INFO
-paramiko.sftp_server.INFO
-paramiko.sftp_si.INFO
-paramiko.transport.INFO
-paramiko.util.INFO" class="py-name" href="#" onclick="return doclink('link-172', 'INFO', 'link-111');">INFO</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Auth rejected: public key: %s'</tt> <tt class="py-op">%</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L313"></a><tt class="py-lineno">313</tt> <tt class="py-line"> <tt class="py-name">key</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L314"></a><tt class="py-lineno">314</tt> <tt class="py-line"> <tt class="py-keyword">except</tt><tt class="py-op">:</tt> </tt>
-<a name="L315"></a><tt class="py-lineno">315</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-173" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-173', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-174" class="py-name"><a title="paramiko.auth_handler.INFO
-paramiko.channel.INFO
-paramiko.client.INFO
-paramiko.common.INFO
-paramiko.dsskey.INFO
-paramiko.hostkeys.INFO
-paramiko.kex_gex.INFO
-paramiko.kex_group1.INFO
-paramiko.logging22.INFO
-paramiko.packet.INFO
-paramiko.pkey.INFO
-paramiko.rsakey.INFO
-paramiko.server.INFO
-paramiko.sftp.INFO
-paramiko.sftp_attr.INFO
-paramiko.sftp_client.INFO
-paramiko.sftp_file.INFO
-paramiko.sftp_handle.INFO
-paramiko.sftp_server.INFO
-paramiko.sftp_si.INFO
-paramiko.transport.INFO
-paramiko.util.INFO" class="py-name" href="#" onclick="return doclink('link-174', 'INFO', 'link-111');">INFO</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Auth rejected: unsupported or mangled public key'</tt><tt class="py-op">)</tt> </tt>
-<a name="L316"></a><tt class="py-lineno">316</tt> <tt class="py-line"> <tt class="py-name">key</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L317"></a><tt class="py-lineno">317</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">key</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L318"></a><tt class="py-lineno">318</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_disconnect_no_more_auth</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L319"></a><tt class="py-lineno">319</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L320"></a><tt class="py-lineno">320</tt> <tt class="py-line"> <tt class="py-comment"># first check if this key is okay... if not, we can skip the verify</tt> </tt>
-<a name="L321"></a><tt class="py-lineno">321</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-175" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-175', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">server_object</tt><tt class="py-op">.</tt><tt id="link-176" class="py-name" targets="Method paramiko.ServerInterface.check_auth_publickey()=paramiko.ServerInterface-class.html#check_auth_publickey"><a title="paramiko.ServerInterface.check_auth_publickey" class="py-name" href="#" onclick="return doclink('link-176', 'check_auth_publickey', 'link-176');">check_auth_publickey</a></tt><tt class="py-op">(</tt><tt class="py-name">username</tt><tt class="py-op">,</tt> <tt class="py-name">key</tt><tt class="py-op">)</tt> </tt>
-<a name="L322"></a><tt class="py-lineno">322</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">result</tt> <tt class="py-op">!=</tt> <tt id="link-177" class="py-name"><a title="paramiko.auth_handler.AUTH_FAILED
-paramiko.channel.AUTH_FAILED
-paramiko.client.AUTH_FAILED
-paramiko.common.AUTH_FAILED
-paramiko.dsskey.AUTH_FAILED
-paramiko.hostkeys.AUTH_FAILED
-paramiko.kex_gex.AUTH_FAILED
-paramiko.kex_group1.AUTH_FAILED
-paramiko.packet.AUTH_FAILED
-paramiko.pkey.AUTH_FAILED
-paramiko.rsakey.AUTH_FAILED
-paramiko.server.AUTH_FAILED
-paramiko.sftp.AUTH_FAILED
-paramiko.sftp_attr.AUTH_FAILED
-paramiko.sftp_client.AUTH_FAILED
-paramiko.sftp_file.AUTH_FAILED
-paramiko.sftp_handle.AUTH_FAILED
-paramiko.sftp_server.AUTH_FAILED
-paramiko.sftp_si.AUTH_FAILED
-paramiko.transport.AUTH_FAILED
-paramiko.util.AUTH_FAILED" class="py-name" href="#" onclick="return doclink('link-177', 'AUTH_FAILED', 'link-161');">AUTH_FAILED</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L323"></a><tt class="py-lineno">323</tt> <tt class="py-line"> <tt class="py-comment"># key is okay, verify it</tt> </tt>
-<a name="L324"></a><tt class="py-lineno">324</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">sig_attached</tt><tt class="py-op">:</tt> </tt>
-<a name="L325"></a><tt class="py-lineno">325</tt> <tt class="py-line"> <tt class="py-comment"># client wants to know if this key is acceptable, before it</tt> </tt>
-<a name="L326"></a><tt class="py-lineno">326</tt> <tt class="py-line"> <tt class="py-comment"># signs anything... send special "ok" message</tt> </tt>
-<a name="L327"></a><tt class="py-lineno">327</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-178" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-178', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L328"></a><tt class="py-lineno">328</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-179" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-179', 'add_byte', 'link-28');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-180" class="py-name" targets="Variable paramiko.auth_handler.MSG_USERAUTH_PK_OK=paramiko.auth_handler-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.channel.MSG_USERAUTH_PK_OK=paramiko.channel-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.client.MSG_USERAUTH_PK_OK=paramiko.client-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.common.MSG_USERAUTH_PK_OK=paramiko.common-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.dsskey.MSG_USERAUTH_PK_OK=paramiko.dsskey-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.hostkeys.MSG_USERAUTH_PK_OK=paramiko.hostkeys-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.kex_gex.MSG_USERAUTH_PK_OK=paramiko.kex_gex-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.kex_group1.MSG_USERAUTH_PK_OK=paramiko.kex_group1-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.packet.MSG_USERAUTH_PK_OK=paramiko.packet-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.pkey.MSG_USERAUTH_PK_OK=paramiko.pkey-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.rsakey.MSG_USERAUTH_PK_OK=paramiko.rsakey-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.server.MSG_USERAUTH_PK_OK=paramiko.server-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.sftp.MSG_USERAUTH_PK_OK=paramiko.sftp-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.sftp_attr.MSG_USERAUTH_PK_OK=paramiko.sftp_attr-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.sftp_client.MSG_USERAUTH_PK_OK=paramiko.sftp_client-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.sftp_file.MSG_USERAUTH_PK_OK=paramiko.sftp_file-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.sftp_handle.MSG_USERAUTH_PK_OK=paramiko.sftp_handle-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.sftp_server.MSG_USERAUTH_PK_OK=paramiko.sftp_server-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.sftp_si.MSG_USERAUTH_PK_OK=paramiko.sftp_si-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.transport.MSG_USERAUTH_PK_OK=paramiko.transport-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.util.MSG_USERAUTH_PK_OK=paramiko.util-module.html#MSG_USERAUTH_PK_OK"><a title="paramiko.auth_handler.MSG_USERAUTH_PK_OK
-paramiko.channel.MSG_USERAUTH_PK_OK
-paramiko.client.MSG_USERAUTH_PK_OK
-paramiko.common.MSG_USERAUTH_PK_OK
-paramiko.dsskey.MSG_USERAUTH_PK_OK
-paramiko.hostkeys.MSG_USERAUTH_PK_OK
-paramiko.kex_gex.MSG_USERAUTH_PK_OK
-paramiko.kex_group1.MSG_USERAUTH_PK_OK
-paramiko.packet.MSG_USERAUTH_PK_OK
-paramiko.pkey.MSG_USERAUTH_PK_OK
-paramiko.rsakey.MSG_USERAUTH_PK_OK
-paramiko.server.MSG_USERAUTH_PK_OK
-paramiko.sftp.MSG_USERAUTH_PK_OK
-paramiko.sftp_attr.MSG_USERAUTH_PK_OK
-paramiko.sftp_client.MSG_USERAUTH_PK_OK
-paramiko.sftp_file.MSG_USERAUTH_PK_OK
-paramiko.sftp_handle.MSG_USERAUTH_PK_OK
-paramiko.sftp_server.MSG_USERAUTH_PK_OK
-paramiko.sftp_si.MSG_USERAUTH_PK_OK
-paramiko.transport.MSG_USERAUTH_PK_OK
-paramiko.util.MSG_USERAUTH_PK_OK" class="py-name" href="#" onclick="return doclink('link-180', 'MSG_USERAUTH_PK_OK', 'link-180');">MSG_USERAUTH_PK_OK</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L329"></a><tt class="py-lineno">329</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-181" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-181', 'add_string', 'link-30');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">keytype</tt><tt class="py-op">)</tt> </tt>
-<a name="L330"></a><tt class="py-lineno">330</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-182" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-182', 'add_string', 'link-30');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">keyblob</tt><tt class="py-op">)</tt> </tt>
-<a name="L331"></a><tt class="py-lineno">331</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-183" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-183', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L332"></a><tt class="py-lineno">332</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L333"></a><tt class="py-lineno">333</tt> <tt class="py-line"> <tt class="py-name">sig</tt> <tt class="py-op">=</tt> <tt id="link-184" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-184', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-185" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-185', 'get_string', 'link-75');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L334"></a><tt class="py-lineno">334</tt> <tt class="py-line"> <tt class="py-name">blob</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_get_session_blob</tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">,</tt> <tt class="py-name">service</tt><tt class="py-op">,</tt> <tt class="py-name">username</tt><tt class="py-op">)</tt> </tt>
-<a name="L335"></a><tt class="py-lineno">335</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">key</tt><tt class="py-op">.</tt><tt id="link-186" class="py-name" targets="Method paramiko.DSSKey.verify_ssh_sig()=paramiko.DSSKey-class.html#verify_ssh_sig,Method paramiko.PKey.verify_ssh_sig()=paramiko.PKey-class.html#verify_ssh_sig,Method paramiko.RSAKey.verify_ssh_sig()=paramiko.RSAKey-class.html#verify_ssh_sig"><a title="paramiko.DSSKey.verify_ssh_sig
-paramiko.PKey.verify_ssh_sig
-paramiko.RSAKey.verify_ssh_sig" class="py-name" href="#" onclick="return doclink('link-186', 'verify_ssh_sig', 'link-186');">verify_ssh_sig</a></tt><tt class="py-op">(</tt><tt class="py-name">blob</tt><tt class="py-op">,</tt> <tt class="py-name">sig</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L336"></a><tt class="py-lineno">336</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-187" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-187', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-188" class="py-name"><a title="paramiko.auth_handler.INFO
-paramiko.channel.INFO
-paramiko.client.INFO
-paramiko.common.INFO
-paramiko.dsskey.INFO
-paramiko.hostkeys.INFO
-paramiko.kex_gex.INFO
-paramiko.kex_group1.INFO
-paramiko.logging22.INFO
-paramiko.packet.INFO
-paramiko.pkey.INFO
-paramiko.rsakey.INFO
-paramiko.server.INFO
-paramiko.sftp.INFO
-paramiko.sftp_attr.INFO
-paramiko.sftp_client.INFO
-paramiko.sftp_file.INFO
-paramiko.sftp_handle.INFO
-paramiko.sftp_server.INFO
-paramiko.sftp_si.INFO
-paramiko.transport.INFO
-paramiko.util.INFO" class="py-name" href="#" onclick="return doclink('link-188', 'INFO', 'link-111');">INFO</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Auth rejected: invalid signature'</tt><tt class="py-op">)</tt> </tt>
-<a name="L337"></a><tt class="py-lineno">337</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt id="link-189" class="py-name"><a title="paramiko.auth_handler.AUTH_FAILED
-paramiko.channel.AUTH_FAILED
-paramiko.client.AUTH_FAILED
-paramiko.common.AUTH_FAILED
-paramiko.dsskey.AUTH_FAILED
-paramiko.hostkeys.AUTH_FAILED
-paramiko.kex_gex.AUTH_FAILED
-paramiko.kex_group1.AUTH_FAILED
-paramiko.packet.AUTH_FAILED
-paramiko.pkey.AUTH_FAILED
-paramiko.rsakey.AUTH_FAILED
-paramiko.server.AUTH_FAILED
-paramiko.sftp.AUTH_FAILED
-paramiko.sftp_attr.AUTH_FAILED
-paramiko.sftp_client.AUTH_FAILED
-paramiko.sftp_file.AUTH_FAILED
-paramiko.sftp_handle.AUTH_FAILED
-paramiko.sftp_server.AUTH_FAILED
-paramiko.sftp_si.AUTH_FAILED
-paramiko.transport.AUTH_FAILED
-paramiko.util.AUTH_FAILED" class="py-name" href="#" onclick="return doclink('link-189', 'AUTH_FAILED', 'link-161');">AUTH_FAILED</a></tt> </tt>
-<a name="L338"></a><tt class="py-lineno">338</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">method</tt> <tt class="py-op">==</tt> <tt class="py-string">'keyboard-interactive'</tt><tt class="py-op">:</tt> </tt>
-<a name="L339"></a><tt class="py-lineno">339</tt> <tt class="py-line"> <tt class="py-name">lang</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-190" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-190', 'get_string', 'link-75');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L340"></a><tt class="py-lineno">340</tt> <tt class="py-line"> <tt class="py-name">submethods</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-191" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-191', 'get_string', 'link-75');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L341"></a><tt class="py-lineno">341</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-192" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-192', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">server_object</tt><tt class="py-op">.</tt><tt id="link-193" class="py-name" targets="Method paramiko.ServerInterface.check_auth_interactive()=paramiko.ServerInterface-class.html#check_auth_interactive"><a title="paramiko.ServerInterface.check_auth_interactive" class="py-name" href="#" onclick="return doclink('link-193', 'check_auth_interactive', 'link-193');">check_auth_interactive</a></tt><tt class="py-op">(</tt><tt class="py-name">username</tt><tt class="py-op">,</tt> <tt class="py-name">submethods</tt><tt class="py-op">)</tt> </tt>
-<a name="L342"></a><tt class="py-lineno">342</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">result</tt><tt class="py-op">,</tt> <tt class="py-name">InteractiveQuery</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L343"></a><tt class="py-lineno">343</tt> <tt class="py-line"> <tt class="py-comment"># make interactive query instead of response</tt> </tt>
-<a name="L344"></a><tt class="py-lineno">344</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_interactive_query</tt><tt class="py-op">(</tt><tt class="py-name">result</tt><tt class="py-op">)</tt> </tt>
-<a name="L345"></a><tt class="py-lineno">345</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L346"></a><tt class="py-lineno">346</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L347"></a><tt class="py-lineno">347</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-194" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-194', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">server_object</tt><tt class="py-op">.</tt><tt id="link-195" class="py-name"><a title="paramiko.ServerInterface.check_auth_none" class="py-name" href="#" onclick="return doclink('link-195', 'check_auth_none', 'link-153');">check_auth_none</a></tt><tt class="py-op">(</tt><tt class="py-name">username</tt><tt class="py-op">)</tt> </tt>
-<a name="L348"></a><tt class="py-lineno">348</tt> <tt class="py-line"> <tt class="py-comment"># okay, send result</tt> </tt>
-<a name="L349"></a><tt class="py-lineno">349</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_auth_result</tt><tt class="py-op">(</tt><tt class="py-name">username</tt><tt class="py-op">,</tt> <tt class="py-name">method</tt><tt class="py-op">,</tt> <tt class="py-name">result</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L350"></a><tt class="py-lineno">350</tt> <tt class="py-line"> </tt>
-<a name="AuthHandler._parse_userauth_success"></a><div id="AuthHandler._parse_userauth_success-def"><a name="L351"></a><tt class="py-lineno">351</tt> <a class="py-toggle" href="#" id="AuthHandler._parse_userauth_success-toggle" onclick="return toggle('AuthHandler._parse_userauth_success');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.auth_handler.AuthHandler-class.html#_parse_userauth_success">_parse_userauth_success</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="AuthHandler._parse_userauth_success-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="AuthHandler._parse_userauth_success-expanded"><a name="L352"></a><tt class="py-lineno">352</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-196" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-196', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-197" class="py-name"><a title="paramiko.auth_handler.INFO
-paramiko.channel.INFO
-paramiko.client.INFO
-paramiko.common.INFO
-paramiko.dsskey.INFO
-paramiko.hostkeys.INFO
-paramiko.kex_gex.INFO
-paramiko.kex_group1.INFO
-paramiko.logging22.INFO
-paramiko.packet.INFO
-paramiko.pkey.INFO
-paramiko.rsakey.INFO
-paramiko.server.INFO
-paramiko.sftp.INFO
-paramiko.sftp_attr.INFO
-paramiko.sftp_client.INFO
-paramiko.sftp_file.INFO
-paramiko.sftp_handle.INFO
-paramiko.sftp_server.INFO
-paramiko.sftp_si.INFO
-paramiko.transport.INFO
-paramiko.util.INFO" class="py-name" href="#" onclick="return doclink('link-197', 'INFO', 'link-111');">INFO</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Authentication (%s) successful!'</tt> <tt class="py-op">%</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_method</tt><tt class="py-op">)</tt> </tt>
-<a name="L353"></a><tt class="py-lineno">353</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">authenticated</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L354"></a><tt class="py-lineno">354</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-198" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-198', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_auth_trigger</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L355"></a><tt class="py-lineno">355</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_event</tt> <tt class="py-op">!=</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L356"></a><tt class="py-lineno">356</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_event</tt><tt class="py-op">.</tt><tt id="link-199" class="py-name"><a title="paramiko.pipe.OrPipe.set
-paramiko.pipe.PosixPipe.set
-paramiko.pipe.WindowsPipe.set" class="py-name" href="#" onclick="return doclink('link-199', 'set', 'link-26');">set</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L357"></a><tt class="py-lineno">357</tt> <tt class="py-line"> </tt>
-<a name="AuthHandler._parse_userauth_failure"></a><div id="AuthHandler._parse_userauth_failure-def"><a name="L358"></a><tt class="py-lineno">358</tt> <a class="py-toggle" href="#" id="AuthHandler._parse_userauth_failure-toggle" onclick="return toggle('AuthHandler._parse_userauth_failure');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.auth_handler.AuthHandler-class.html#_parse_userauth_failure">_parse_userauth_failure</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="AuthHandler._parse_userauth_failure-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="AuthHandler._parse_userauth_failure-expanded"><a name="L359"></a><tt class="py-lineno">359</tt> <tt class="py-line"> <tt class="py-name">authlist</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-200" class="py-name" targets="Method paramiko.Message.get_list()=paramiko.Message-class.html#get_list"><a title="paramiko.Message.get_list" class="py-name" href="#" onclick="return doclink('link-200', 'get_list', 'link-200');">get_list</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L360"></a><tt class="py-lineno">360</tt> <tt class="py-line"> <tt class="py-name">partial</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-201" class="py-name"><a title="paramiko.Message.get_boolean" class="py-name" href="#" onclick="return doclink('link-201', 'get_boolean', 'link-154');">get_boolean</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L361"></a><tt class="py-lineno">361</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">partial</tt><tt class="py-op">:</tt> </tt>
-<a name="L362"></a><tt class="py-lineno">362</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-202" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-202', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-203" class="py-name"><a title="paramiko.auth_handler.INFO
-paramiko.channel.INFO
-paramiko.client.INFO
-paramiko.common.INFO
-paramiko.dsskey.INFO
-paramiko.hostkeys.INFO
-paramiko.kex_gex.INFO
-paramiko.kex_group1.INFO
-paramiko.logging22.INFO
-paramiko.packet.INFO
-paramiko.pkey.INFO
-paramiko.rsakey.INFO
-paramiko.server.INFO
-paramiko.sftp.INFO
-paramiko.sftp_attr.INFO
-paramiko.sftp_client.INFO
-paramiko.sftp_file.INFO
-paramiko.sftp_handle.INFO
-paramiko.sftp_server.INFO
-paramiko.sftp_si.INFO
-paramiko.transport.INFO
-paramiko.util.INFO" class="py-name" href="#" onclick="return doclink('link-203', 'INFO', 'link-111');">INFO</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Authentication continues...'</tt><tt class="py-op">)</tt> </tt>
-<a name="L363"></a><tt class="py-lineno">363</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-204" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-204', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-205" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-205', 'DEBUG', 'link-84');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Methods: '</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">authlist</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L364"></a><tt class="py-lineno">364</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-206" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-206', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">saved_exception</tt> <tt class="py-op">=</tt> <tt id="link-207" class="py-name"><a title="paramiko.ssh_exception.PartialAuthentication" class="py-name" href="#" onclick="return doclink('link-207', 'PartialAuthentication', 'link-12');">PartialAuthentication</a></tt><tt class="py-op">(</tt><tt class="py-name">authlist</tt><tt class="py-op">)</tt> </tt>
-<a name="L365"></a><tt class="py-lineno">365</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_method</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">authlist</tt><tt class="py-op">:</tt> </tt>
-<a name="L366"></a><tt class="py-lineno">366</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-208" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-208', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-209" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-209', 'DEBUG', 'link-84');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Authentication type (%s) not permitted.'</tt> <tt class="py-op">%</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_method</tt><tt class="py-op">)</tt> </tt>
-<a name="L367"></a><tt class="py-lineno">367</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-210" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-210', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-211" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-211', 'DEBUG', 'link-84');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Allowed methods: '</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">authlist</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L368"></a><tt class="py-lineno">368</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-212" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-212', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">saved_exception</tt> <tt class="py-op">=</tt> <tt id="link-213" class="py-name"><a title="paramiko.BadAuthenticationType" class="py-name" href="#" onclick="return doclink('link-213', 'BadAuthenticationType', 'link-11');">BadAuthenticationType</a></tt><tt class="py-op">(</tt><tt class="py-string">'Bad authentication type'</tt><tt class="py-op">,</tt> <tt class="py-name">authlist</tt><tt class="py-op">)</tt> </tt>
-<a name="L369"></a><tt class="py-lineno">369</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L370"></a><tt class="py-lineno">370</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-214" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-214', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-215" class="py-name"><a title="paramiko.auth_handler.INFO
-paramiko.channel.INFO
-paramiko.client.INFO
-paramiko.common.INFO
-paramiko.dsskey.INFO
-paramiko.hostkeys.INFO
-paramiko.kex_gex.INFO
-paramiko.kex_group1.INFO
-paramiko.logging22.INFO
-paramiko.packet.INFO
-paramiko.pkey.INFO
-paramiko.rsakey.INFO
-paramiko.server.INFO
-paramiko.sftp.INFO
-paramiko.sftp_attr.INFO
-paramiko.sftp_client.INFO
-paramiko.sftp_file.INFO
-paramiko.sftp_handle.INFO
-paramiko.sftp_server.INFO
-paramiko.sftp_si.INFO
-paramiko.transport.INFO
-paramiko.util.INFO" class="py-name" href="#" onclick="return doclink('link-215', 'INFO', 'link-111');">INFO</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Authentication (%s) failed.'</tt> <tt class="py-op">%</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_method</tt><tt class="py-op">)</tt> </tt>
-<a name="L371"></a><tt class="py-lineno">371</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">authenticated</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L372"></a><tt class="py-lineno">372</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">username</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L373"></a><tt class="py-lineno">373</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_event</tt> <tt class="py-op">!=</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L374"></a><tt class="py-lineno">374</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_event</tt><tt class="py-op">.</tt><tt id="link-216" class="py-name"><a title="paramiko.pipe.OrPipe.set
-paramiko.pipe.PosixPipe.set
-paramiko.pipe.WindowsPipe.set" class="py-name" href="#" onclick="return doclink('link-216', 'set', 'link-26');">set</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L375"></a><tt class="py-lineno">375</tt> <tt class="py-line"> </tt>
-<a name="AuthHandler._parse_userauth_banner"></a><div id="AuthHandler._parse_userauth_banner-def"><a name="L376"></a><tt class="py-lineno">376</tt> <a class="py-toggle" href="#" id="AuthHandler._parse_userauth_banner-toggle" onclick="return toggle('AuthHandler._parse_userauth_banner');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.auth_handler.AuthHandler-class.html#_parse_userauth_banner">_parse_userauth_banner</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="AuthHandler._parse_userauth_banner-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="AuthHandler._parse_userauth_banner-expanded"><a name="L377"></a><tt class="py-lineno">377</tt> <tt class="py-line"> <tt class="py-name">banner</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-217" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-217', 'get_string', 'link-75');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L378"></a><tt class="py-lineno">378</tt> <tt class="py-line"> <tt class="py-name">lang</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-218" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-218', 'get_string', 'link-75');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L379"></a><tt class="py-lineno">379</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-219" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-219', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-220" class="py-name"><a title="paramiko.auth_handler.INFO
-paramiko.channel.INFO
-paramiko.client.INFO
-paramiko.common.INFO
-paramiko.dsskey.INFO
-paramiko.hostkeys.INFO
-paramiko.kex_gex.INFO
-paramiko.kex_group1.INFO
-paramiko.logging22.INFO
-paramiko.packet.INFO
-paramiko.pkey.INFO
-paramiko.rsakey.INFO
-paramiko.server.INFO
-paramiko.sftp.INFO
-paramiko.sftp_attr.INFO
-paramiko.sftp_client.INFO
-paramiko.sftp_file.INFO
-paramiko.sftp_handle.INFO
-paramiko.sftp_server.INFO
-paramiko.sftp_si.INFO
-paramiko.transport.INFO
-paramiko.util.INFO" class="py-name" href="#" onclick="return doclink('link-220', 'INFO', 'link-111');">INFO</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Auth banner: '</tt> <tt class="py-op">+</tt> <tt class="py-name">banner</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L380"></a><tt class="py-lineno">380</tt> <tt class="py-line"> <tt class="py-comment"># who cares.</tt> </tt>
-<a name="L381"></a><tt class="py-lineno">381</tt> <tt class="py-line"> </tt>
-<a name="AuthHandler._parse_userauth_info_request"></a><div id="AuthHandler._parse_userauth_info_request-def"><a name="L382"></a><tt class="py-lineno">382</tt> <a class="py-toggle" href="#" id="AuthHandler._parse_userauth_info_request-toggle" onclick="return toggle('AuthHandler._parse_userauth_info_request');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.auth_handler.AuthHandler-class.html#_parse_userauth_info_request">_parse_userauth_info_request</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="AuthHandler._parse_userauth_info_request-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="AuthHandler._parse_userauth_info_request-expanded"><a name="L383"></a><tt class="py-lineno">383</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_method</tt> <tt class="py-op">!=</tt> <tt class="py-string">'keyboard-interactive'</tt><tt class="py-op">:</tt> </tt>
-<a name="L384"></a><tt class="py-lineno">384</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-221" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-221', 'SSHException', 'link-9');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Illegal info request from server'</tt><tt class="py-op">)</tt> </tt>
-<a name="L385"></a><tt class="py-lineno">385</tt> <tt class="py-line"> <tt class="py-name">title</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-222" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-222', 'get_string', 'link-75');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L386"></a><tt class="py-lineno">386</tt> <tt class="py-line"> <tt class="py-name">instructions</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-223" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-223', 'get_string', 'link-75');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L387"></a><tt class="py-lineno">387</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-224" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-224', 'get_string', 'link-75');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-comment"># lang</tt> </tt>
-<a name="L388"></a><tt class="py-lineno">388</tt> <tt class="py-line"> <tt class="py-name">prompts</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-225" class="py-name" targets="Method paramiko.Message.get_int()=paramiko.Message-class.html#get_int"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-225', 'get_int', 'link-225');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L389"></a><tt class="py-lineno">389</tt> <tt class="py-line"> <tt class="py-name">prompt_list</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L390"></a><tt class="py-lineno">390</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-name">prompts</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L391"></a><tt class="py-lineno">391</tt> <tt class="py-line"> <tt class="py-name">prompt_list</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-226" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-226', 'get_string', 'link-75');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-227" class="py-name"><a title="paramiko.Message.get_boolean" class="py-name" href="#" onclick="return doclink('link-227', 'get_boolean', 'link-154');">get_boolean</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L392"></a><tt class="py-lineno">392</tt> <tt class="py-line"> <tt class="py-name">response_list</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">interactive_handler</tt><tt class="py-op">(</tt><tt class="py-name">title</tt><tt class="py-op">,</tt> <tt class="py-name">instructions</tt><tt class="py-op">,</tt> <tt class="py-name">prompt_list</tt><tt class="py-op">)</tt> </tt>
-<a name="L393"></a><tt class="py-lineno">393</tt> <tt class="py-line"> </tt>
-<a name="L394"></a><tt class="py-lineno">394</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-228" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-228', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L395"></a><tt class="py-lineno">395</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-229" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-229', 'add_byte', 'link-28');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-230" class="py-name" targets="Variable paramiko.auth_handler.MSG_USERAUTH_INFO_RESPONSE=paramiko.auth_handler-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.channel.MSG_USERAUTH_INFO_RESPONSE=paramiko.channel-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.client.MSG_USERAUTH_INFO_RESPONSE=paramiko.client-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.common.MSG_USERAUTH_INFO_RESPONSE=paramiko.common-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.dsskey.MSG_USERAUTH_INFO_RESPONSE=paramiko.dsskey-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.hostkeys.MSG_USERAUTH_INFO_RESPONSE=paramiko.hostkeys-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.kex_gex.MSG_USERAUTH_INFO_RESPONSE=paramiko.kex_gex-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.kex_group1.MSG_USERAUTH_INFO_RESPONSE=paramiko.kex_group1-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.packet.MSG_USERAUTH_INFO_RESPONSE=paramiko.packet-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.pkey.MSG_USERAUTH_INFO_RESPONSE=paramiko.pkey-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.rsakey.MSG_USERAUTH_INFO_RESPONSE=paramiko.rsakey-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.server.MSG_USERAUTH_INFO_RESPONSE=paramiko.server-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.sftp.MSG_USERAUTH_INFO_RESPONSE=paramiko.sftp-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.sftp_attr.MSG_USERAUTH_INFO_RESPONSE=paramiko.sftp_attr-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.sftp_client.MSG_USERAUTH_INFO_RESPONSE=paramiko.sftp_client-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.sftp_file.MSG_USERAUTH_INFO_RESPONSE=paramiko.sftp_file-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.sftp_handle.MSG_USERAUTH_INFO_RESPONSE=paramiko.sftp_handle-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.sftp_server.MSG_USERAUTH_INFO_RESPONSE=paramiko.sftp_server-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.sftp_si.MSG_USERAUTH_INFO_RESPONSE=paramiko.sftp_si-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.transport.MSG_USERAUTH_INFO_RESPONSE=paramiko.transport-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.util.MSG_USERAUTH_INFO_RESPONSE=paramiko.util-module.html#MSG_USERAUTH_INFO_RESPONSE"><a title="paramiko.auth_handler.MSG_USERAUTH_INFO_RESPONSE
-paramiko.channel.MSG_USERAUTH_INFO_RESPONSE
-paramiko.client.MSG_USERAUTH_INFO_RESPONSE
-paramiko.common.MSG_USERAUTH_INFO_RESPONSE
-paramiko.dsskey.MSG_USERAUTH_INFO_RESPONSE
-paramiko.hostkeys.MSG_USERAUTH_INFO_RESPONSE
-paramiko.kex_gex.MSG_USERAUTH_INFO_RESPONSE
-paramiko.kex_group1.MSG_USERAUTH_INFO_RESPONSE
-paramiko.packet.MSG_USERAUTH_INFO_RESPONSE
-paramiko.pkey.MSG_USERAUTH_INFO_RESPONSE
-paramiko.rsakey.MSG_USERAUTH_INFO_RESPONSE
-paramiko.server.MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp.MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp_attr.MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp_client.MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp_file.MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp_handle.MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp_server.MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp_si.MSG_USERAUTH_INFO_RESPONSE
-paramiko.transport.MSG_USERAUTH_INFO_RESPONSE
-paramiko.util.MSG_USERAUTH_INFO_RESPONSE" class="py-name" href="#" onclick="return doclink('link-230', 'MSG_USERAUTH_INFO_RESPONSE', 'link-230');">MSG_USERAUTH_INFO_RESPONSE</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L396"></a><tt class="py-lineno">396</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-231" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-231', 'add_int', 'link-35');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">response_list</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L397"></a><tt class="py-lineno">397</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">r</tt> <tt class="py-keyword">in</tt> <tt class="py-name">response_list</tt><tt class="py-op">:</tt> </tt>
-<a name="L398"></a><tt class="py-lineno">398</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-232" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-232', 'add_string', 'link-30');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">r</tt><tt class="py-op">)</tt> </tt>
-<a name="L399"></a><tt class="py-lineno">399</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-233" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-233', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L400"></a><tt class="py-lineno">400</tt> <tt class="py-line"> </tt>
-<a name="AuthHandler._parse_userauth_info_response"></a><div id="AuthHandler._parse_userauth_info_response-def"><a name="L401"></a><tt class="py-lineno">401</tt> <a class="py-toggle" href="#" id="AuthHandler._parse_userauth_info_response-toggle" onclick="return toggle('AuthHandler._parse_userauth_info_response');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.auth_handler.AuthHandler-class.html#_parse_userauth_info_response">_parse_userauth_info_response</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="AuthHandler._parse_userauth_info_response-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="AuthHandler._parse_userauth_info_response-expanded"><a name="L402"></a><tt class="py-lineno">402</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-234" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-234', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">server_mode</tt><tt class="py-op">:</tt> </tt>
-<a name="L403"></a><tt class="py-lineno">403</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-235" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-235', 'SSHException', 'link-9');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Illegal info response from server'</tt><tt class="py-op">)</tt> </tt>
-<a name="L404"></a><tt class="py-lineno">404</tt> <tt class="py-line"> <tt class="py-name">n</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-236" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-236', 'get_int', 'link-225');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L405"></a><tt class="py-lineno">405</tt> <tt class="py-line"> <tt class="py-name">responses</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L406"></a><tt class="py-lineno">406</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-name">n</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L407"></a><tt class="py-lineno">407</tt> <tt class="py-line"> <tt class="py-name">responses</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-237" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-237', 'get_string', 'link-75');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L408"></a><tt class="py-lineno">408</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-238" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-238', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">server_object</tt><tt class="py-op">.</tt><tt id="link-239" class="py-name" targets="Method paramiko.ServerInterface.check_auth_interactive_response()=paramiko.ServerInterface-class.html#check_auth_interactive_response"><a title="paramiko.ServerInterface.check_auth_interactive_response" class="py-name" href="#" onclick="return doclink('link-239', 'check_auth_interactive_response', 'link-239');">check_auth_interactive_response</a></tt><tt class="py-op">(</tt><tt class="py-name">responses</tt><tt class="py-op">)</tt> </tt>
-<a name="L409"></a><tt class="py-lineno">409</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">result</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">InteractiveQuery</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L410"></a><tt class="py-lineno">410</tt> <tt class="py-line"> <tt class="py-comment"># make interactive query instead of response</tt> </tt>
-<a name="L411"></a><tt class="py-lineno">411</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_interactive_query</tt><tt class="py-op">(</tt><tt class="py-name">result</tt><tt class="py-op">)</tt> </tt>
-<a name="L412"></a><tt class="py-lineno">412</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L413"></a><tt class="py-lineno">413</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_auth_result</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">auth_username</tt><tt class="py-op">,</tt> <tt class="py-string">'keyboard-interactive'</tt><tt class="py-op">,</tt> <tt class="py-name">result</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L414"></a><tt class="py-lineno">414</tt> <tt class="py-line"> </tt>
-<a name="L415"></a><tt class="py-lineno">415</tt> <tt class="py-line"> </tt>
-<a name="L416"></a><tt class="py-lineno">416</tt> <tt class="py-line"> <tt id="link-240" class="py-name" targets="Variable paramiko.Transport._handler_table=paramiko.Transport-class.html#_handler_table"><a title="paramiko.Transport._handler_table" class="py-name" href="#" onclick="return doclink('link-240', '_handler_table', 'link-240');">_handler_table</a></tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> </tt>
-<a name="L417"></a><tt class="py-lineno">417</tt> <tt class="py-line"> <tt id="link-241" class="py-name"><a title="paramiko.auth_handler.MSG_SERVICE_REQUEST
-paramiko.channel.MSG_SERVICE_REQUEST
-paramiko.client.MSG_SERVICE_REQUEST
-paramiko.common.MSG_SERVICE_REQUEST
-paramiko.dsskey.MSG_SERVICE_REQUEST
-paramiko.hostkeys.MSG_SERVICE_REQUEST
-paramiko.kex_gex.MSG_SERVICE_REQUEST
-paramiko.kex_group1.MSG_SERVICE_REQUEST
-paramiko.packet.MSG_SERVICE_REQUEST
-paramiko.pkey.MSG_SERVICE_REQUEST
-paramiko.rsakey.MSG_SERVICE_REQUEST
-paramiko.server.MSG_SERVICE_REQUEST
-paramiko.sftp.MSG_SERVICE_REQUEST
-paramiko.sftp_attr.MSG_SERVICE_REQUEST
-paramiko.sftp_client.MSG_SERVICE_REQUEST
-paramiko.sftp_file.MSG_SERVICE_REQUEST
-paramiko.sftp_handle.MSG_SERVICE_REQUEST
-paramiko.sftp_server.MSG_SERVICE_REQUEST
-paramiko.sftp_si.MSG_SERVICE_REQUEST
-paramiko.transport.MSG_SERVICE_REQUEST
-paramiko.util.MSG_SERVICE_REQUEST" class="py-name" href="#" onclick="return doclink('link-241', 'MSG_SERVICE_REQUEST', 'link-29');">MSG_SERVICE_REQUEST</a></tt><tt class="py-op">:</tt> <tt class="py-name">_parse_service_request</tt><tt class="py-op">,</tt> </tt>
-<a name="L418"></a><tt class="py-lineno">418</tt> <tt class="py-line"> <tt id="link-242" class="py-name"><a title="paramiko.auth_handler.MSG_SERVICE_ACCEPT
-paramiko.channel.MSG_SERVICE_ACCEPT
-paramiko.client.MSG_SERVICE_ACCEPT
-paramiko.common.MSG_SERVICE_ACCEPT
-paramiko.dsskey.MSG_SERVICE_ACCEPT
-paramiko.hostkeys.MSG_SERVICE_ACCEPT
-paramiko.kex_gex.MSG_SERVICE_ACCEPT
-paramiko.kex_group1.MSG_SERVICE_ACCEPT
-paramiko.packet.MSG_SERVICE_ACCEPT
-paramiko.pkey.MSG_SERVICE_ACCEPT
-paramiko.rsakey.MSG_SERVICE_ACCEPT
-paramiko.server.MSG_SERVICE_ACCEPT
-paramiko.sftp.MSG_SERVICE_ACCEPT
-paramiko.sftp_attr.MSG_SERVICE_ACCEPT
-paramiko.sftp_client.MSG_SERVICE_ACCEPT
-paramiko.sftp_file.MSG_SERVICE_ACCEPT
-paramiko.sftp_handle.MSG_SERVICE_ACCEPT
-paramiko.sftp_server.MSG_SERVICE_ACCEPT
-paramiko.sftp_si.MSG_SERVICE_ACCEPT
-paramiko.transport.MSG_SERVICE_ACCEPT
-paramiko.util.MSG_SERVICE_ACCEPT" class="py-name" href="#" onclick="return doclink('link-242', 'MSG_SERVICE_ACCEPT', 'link-79');">MSG_SERVICE_ACCEPT</a></tt><tt class="py-op">:</tt> <tt class="py-name">_parse_service_accept</tt><tt class="py-op">,</tt> </tt>
-<a name="L419"></a><tt class="py-lineno">419</tt> <tt class="py-line"> <tt id="link-243" class="py-name"><a title="paramiko.auth_handler.MSG_USERAUTH_REQUEST
-paramiko.channel.MSG_USERAUTH_REQUEST
-paramiko.client.MSG_USERAUTH_REQUEST
-paramiko.common.MSG_USERAUTH_REQUEST
-paramiko.dsskey.MSG_USERAUTH_REQUEST
-paramiko.hostkeys.MSG_USERAUTH_REQUEST
-paramiko.kex_gex.MSG_USERAUTH_REQUEST
-paramiko.kex_group1.MSG_USERAUTH_REQUEST
-paramiko.packet.MSG_USERAUTH_REQUEST
-paramiko.pkey.MSG_USERAUTH_REQUEST
-paramiko.rsakey.MSG_USERAUTH_REQUEST
-paramiko.server.MSG_USERAUTH_REQUEST
-paramiko.sftp.MSG_USERAUTH_REQUEST
-paramiko.sftp_attr.MSG_USERAUTH_REQUEST
-paramiko.sftp_client.MSG_USERAUTH_REQUEST
-paramiko.sftp_file.MSG_USERAUTH_REQUEST
-paramiko.sftp_handle.MSG_USERAUTH_REQUEST
-paramiko.sftp_server.MSG_USERAUTH_REQUEST
-paramiko.sftp_si.MSG_USERAUTH_REQUEST
-paramiko.transport.MSG_USERAUTH_REQUEST
-paramiko.util.MSG_USERAUTH_REQUEST" class="py-name" href="#" onclick="return doclink('link-243', 'MSG_USERAUTH_REQUEST', 'link-56');">MSG_USERAUTH_REQUEST</a></tt><tt class="py-op">:</tt> <tt class="py-name">_parse_userauth_request</tt><tt class="py-op">,</tt> </tt>
-<a name="L420"></a><tt class="py-lineno">420</tt> <tt class="py-line"> <tt id="link-244" class="py-name"><a title="paramiko.auth_handler.MSG_USERAUTH_SUCCESS
-paramiko.channel.MSG_USERAUTH_SUCCESS
-paramiko.client.MSG_USERAUTH_SUCCESS
-paramiko.common.MSG_USERAUTH_SUCCESS
-paramiko.dsskey.MSG_USERAUTH_SUCCESS
-paramiko.hostkeys.MSG_USERAUTH_SUCCESS
-paramiko.kex_gex.MSG_USERAUTH_SUCCESS
-paramiko.kex_group1.MSG_USERAUTH_SUCCESS
-paramiko.packet.MSG_USERAUTH_SUCCESS
-paramiko.pkey.MSG_USERAUTH_SUCCESS
-paramiko.rsakey.MSG_USERAUTH_SUCCESS
-paramiko.server.MSG_USERAUTH_SUCCESS
-paramiko.sftp.MSG_USERAUTH_SUCCESS
-paramiko.sftp_attr.MSG_USERAUTH_SUCCESS
-paramiko.sftp_client.MSG_USERAUTH_SUCCESS
-paramiko.sftp_file.MSG_USERAUTH_SUCCESS
-paramiko.sftp_handle.MSG_USERAUTH_SUCCESS
-paramiko.sftp_server.MSG_USERAUTH_SUCCESS
-paramiko.sftp_si.MSG_USERAUTH_SUCCESS
-paramiko.transport.MSG_USERAUTH_SUCCESS
-paramiko.util.MSG_USERAUTH_SUCCESS" class="py-name" href="#" onclick="return doclink('link-244', 'MSG_USERAUTH_SUCCESS', 'link-113');">MSG_USERAUTH_SUCCESS</a></tt><tt class="py-op">:</tt> <tt class="py-name">_parse_userauth_success</tt><tt class="py-op">,</tt> </tt>
-<a name="L421"></a><tt class="py-lineno">421</tt> <tt class="py-line"> <tt id="link-245" class="py-name"><a title="paramiko.auth_handler.MSG_USERAUTH_FAILURE
-paramiko.channel.MSG_USERAUTH_FAILURE
-paramiko.client.MSG_USERAUTH_FAILURE
-paramiko.common.MSG_USERAUTH_FAILURE
-paramiko.dsskey.MSG_USERAUTH_FAILURE
-paramiko.hostkeys.MSG_USERAUTH_FAILURE
-paramiko.kex_gex.MSG_USERAUTH_FAILURE
-paramiko.kex_group1.MSG_USERAUTH_FAILURE
-paramiko.packet.MSG_USERAUTH_FAILURE
-paramiko.pkey.MSG_USERAUTH_FAILURE
-paramiko.rsakey.MSG_USERAUTH_FAILURE
-paramiko.server.MSG_USERAUTH_FAILURE
-paramiko.sftp.MSG_USERAUTH_FAILURE
-paramiko.sftp_attr.MSG_USERAUTH_FAILURE
-paramiko.sftp_client.MSG_USERAUTH_FAILURE
-paramiko.sftp_file.MSG_USERAUTH_FAILURE
-paramiko.sftp_handle.MSG_USERAUTH_FAILURE
-paramiko.sftp_server.MSG_USERAUTH_FAILURE
-paramiko.sftp_si.MSG_USERAUTH_FAILURE
-paramiko.transport.MSG_USERAUTH_FAILURE
-paramiko.util.MSG_USERAUTH_FAILURE" class="py-name" href="#" onclick="return doclink('link-245', 'MSG_USERAUTH_FAILURE', 'link-117');">MSG_USERAUTH_FAILURE</a></tt><tt class="py-op">:</tt> <tt class="py-name">_parse_userauth_failure</tt><tt class="py-op">,</tt> </tt>
-<a name="L422"></a><tt class="py-lineno">422</tt> <tt class="py-line"> <tt id="link-246" class="py-name" targets="Variable paramiko.auth_handler.MSG_USERAUTH_BANNER=paramiko.auth_handler-module.html#MSG_USERAUTH_BANNER,Variable paramiko.channel.MSG_USERAUTH_BANNER=paramiko.channel-module.html#MSG_USERAUTH_BANNER,Variable paramiko.client.MSG_USERAUTH_BANNER=paramiko.client-module.html#MSG_USERAUTH_BANNER,Variable paramiko.common.MSG_USERAUTH_BANNER=paramiko.common-module.html#MSG_USERAUTH_BANNER,Variable paramiko.dsskey.MSG_USERAUTH_BANNER=paramiko.dsskey-module.html#MSG_USERAUTH_BANNER,Variable paramiko.hostkeys.MSG_USERAUTH_BANNER=paramiko.hostkeys-module.html#MSG_USERAUTH_BANNER,Variable paramiko.kex_gex.MSG_USERAUTH_BANNER=paramiko.kex_gex-module.html#MSG_USERAUTH_BANNER,Variable paramiko.kex_group1.MSG_USERAUTH_BANNER=paramiko.kex_group1-module.html#MSG_USERAUTH_BANNER,Variable paramiko.packet.MSG_USERAUTH_BANNER=paramiko.packet-module.html#MSG_USERAUTH_BANNER,Variable paramiko.pkey.MSG_USERAUTH_BANNER=paramiko.pkey-module.html#MSG_USERAUTH_BANNER,Variable paramiko.rsakey.MSG_USERAUTH_BANNER=paramiko.rsakey-module.html#MSG_USERAUTH_BANNER,Variable paramiko.server.MSG_USERAUTH_BANNER=paramiko.server-module.html#MSG_USERAUTH_BANNER,Variable paramiko.sftp.MSG_USERAUTH_BANNER=paramiko.sftp-module.html#MSG_USERAUTH_BANNER,Variable paramiko.sftp_attr.MSG_USERAUTH_BANNER=paramiko.sftp_attr-module.html#MSG_USERAUTH_BANNER,Variable paramiko.sftp_client.MSG_USERAUTH_BANNER=paramiko.sftp_client-module.html#MSG_USERAUTH_BANNER,Variable paramiko.sftp_file.MSG_USERAUTH_BANNER=paramiko.sftp_file-module.html#MSG_USERAUTH_BANNER,Variable paramiko.sftp_handle.MSG_USERAUTH_BANNER=paramiko.sftp_handle-module.html#MSG_USERAUTH_BANNER,Variable paramiko.sftp_server.MSG_USERAUTH_BANNER=paramiko.sftp_server-module.html#MSG_USERAUTH_BANNER,Variable paramiko.sftp_si.MSG_USERAUTH_BANNER=paramiko.sftp_si-module.html#MSG_USERAUTH_BANNER,Variable paramiko.transport.MSG_USERAUTH_BANNER=paramiko.transport-module.html#MSG_USERAUTH_BANNER,Variable paramiko.util.MSG_USERAUTH_BANNER=paramiko.util-module.html#MSG_USERAUTH_BANNER"><a title="paramiko.auth_handler.MSG_USERAUTH_BANNER
-paramiko.channel.MSG_USERAUTH_BANNER
-paramiko.client.MSG_USERAUTH_BANNER
-paramiko.common.MSG_USERAUTH_BANNER
-paramiko.dsskey.MSG_USERAUTH_BANNER
-paramiko.hostkeys.MSG_USERAUTH_BANNER
-paramiko.kex_gex.MSG_USERAUTH_BANNER
-paramiko.kex_group1.MSG_USERAUTH_BANNER
-paramiko.packet.MSG_USERAUTH_BANNER
-paramiko.pkey.MSG_USERAUTH_BANNER
-paramiko.rsakey.MSG_USERAUTH_BANNER
-paramiko.server.MSG_USERAUTH_BANNER
-paramiko.sftp.MSG_USERAUTH_BANNER
-paramiko.sftp_attr.MSG_USERAUTH_BANNER
-paramiko.sftp_client.MSG_USERAUTH_BANNER
-paramiko.sftp_file.MSG_USERAUTH_BANNER
-paramiko.sftp_handle.MSG_USERAUTH_BANNER
-paramiko.sftp_server.MSG_USERAUTH_BANNER
-paramiko.sftp_si.MSG_USERAUTH_BANNER
-paramiko.transport.MSG_USERAUTH_BANNER
-paramiko.util.MSG_USERAUTH_BANNER" class="py-name" href="#" onclick="return doclink('link-246', 'MSG_USERAUTH_BANNER', 'link-246');">MSG_USERAUTH_BANNER</a></tt><tt class="py-op">:</tt> <tt class="py-name">_parse_userauth_banner</tt><tt class="py-op">,</tt> </tt>
-<a name="L423"></a><tt class="py-lineno">423</tt> <tt class="py-line"> <tt id="link-247" class="py-name"><a title="paramiko.auth_handler.MSG_USERAUTH_INFO_REQUEST
-paramiko.channel.MSG_USERAUTH_INFO_REQUEST
-paramiko.client.MSG_USERAUTH_INFO_REQUEST
-paramiko.common.MSG_USERAUTH_INFO_REQUEST
-paramiko.dsskey.MSG_USERAUTH_INFO_REQUEST
-paramiko.hostkeys.MSG_USERAUTH_INFO_REQUEST
-paramiko.kex_gex.MSG_USERAUTH_INFO_REQUEST
-paramiko.kex_group1.MSG_USERAUTH_INFO_REQUEST
-paramiko.packet.MSG_USERAUTH_INFO_REQUEST
-paramiko.pkey.MSG_USERAUTH_INFO_REQUEST
-paramiko.rsakey.MSG_USERAUTH_INFO_REQUEST
-paramiko.server.MSG_USERAUTH_INFO_REQUEST
-paramiko.sftp.MSG_USERAUTH_INFO_REQUEST
-paramiko.sftp_attr.MSG_USERAUTH_INFO_REQUEST
-paramiko.sftp_client.MSG_USERAUTH_INFO_REQUEST
-paramiko.sftp_file.MSG_USERAUTH_INFO_REQUEST
-paramiko.sftp_handle.MSG_USERAUTH_INFO_REQUEST
-paramiko.sftp_server.MSG_USERAUTH_INFO_REQUEST
-paramiko.sftp_si.MSG_USERAUTH_INFO_REQUEST
-paramiko.transport.MSG_USERAUTH_INFO_REQUEST
-paramiko.util.MSG_USERAUTH_INFO_REQUEST" class="py-name" href="#" onclick="return doclink('link-247', 'MSG_USERAUTH_INFO_REQUEST', 'link-129');">MSG_USERAUTH_INFO_REQUEST</a></tt><tt class="py-op">:</tt> <tt class="py-name">_parse_userauth_info_request</tt><tt class="py-op">,</tt> </tt>
-<a name="L424"></a><tt class="py-lineno">424</tt> <tt class="py-line"> <tt id="link-248" class="py-name"><a title="paramiko.auth_handler.MSG_USERAUTH_INFO_RESPONSE
-paramiko.channel.MSG_USERAUTH_INFO_RESPONSE
-paramiko.client.MSG_USERAUTH_INFO_RESPONSE
-paramiko.common.MSG_USERAUTH_INFO_RESPONSE
-paramiko.dsskey.MSG_USERAUTH_INFO_RESPONSE
-paramiko.hostkeys.MSG_USERAUTH_INFO_RESPONSE
-paramiko.kex_gex.MSG_USERAUTH_INFO_RESPONSE
-paramiko.kex_group1.MSG_USERAUTH_INFO_RESPONSE
-paramiko.packet.MSG_USERAUTH_INFO_RESPONSE
-paramiko.pkey.MSG_USERAUTH_INFO_RESPONSE
-paramiko.rsakey.MSG_USERAUTH_INFO_RESPONSE
-paramiko.server.MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp.MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp_attr.MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp_client.MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp_file.MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp_handle.MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp_server.MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp_si.MSG_USERAUTH_INFO_RESPONSE
-paramiko.transport.MSG_USERAUTH_INFO_RESPONSE
-paramiko.util.MSG_USERAUTH_INFO_RESPONSE" class="py-name" href="#" onclick="return doclink('link-248', 'MSG_USERAUTH_INFO_RESPONSE', 'link-230');">MSG_USERAUTH_INFO_RESPONSE</a></tt><tt class="py-op">:</tt> <tt class="py-name">_parse_userauth_info_response</tt><tt class="py-op">,</tt> </tt>
-<a name="L425"></a><tt class="py-lineno">425</tt> <tt class="py-line"> <tt class="py-op">}</tt> </tt>
-</div><a name="L426"></a><tt class="py-lineno">426</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:08 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.ber-module.html b/docs/paramiko.ber-module.html
deleted file mode 100644
index 6012a41..0000000
--- a/docs/paramiko.ber-module.html
+++ /dev/null
@@ -1,142 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.ber</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;ber
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.ber-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module ber</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.ber-pysrc.html">source&nbsp;code</a></span></p>
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Classes</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.ber.BERException-class.html" class="summary-name">BERException</a>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.ber.BER-class.html" class="summary-name">BER</a><br />
- Robey's tiny little attempt at a BER decoder.
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'paramiko'"><code class="variable-quote">'</code><code class="variable-string">paramiko</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:02 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.ber-pysrc.html b/docs/paramiko.ber-pysrc.html
deleted file mode 100644
index d58e1fc..0000000
--- a/docs/paramiko.ber-pysrc.html
+++ /dev/null
@@ -1,238 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.ber</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;ber
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.ber-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.ber-module.html" onclick="show_private();">Module paramiko.ber</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2003-2007 Robey Pointer &lt;robeypointer@gmail.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt id="link-0" class="py-name" targets="Module paramiko.util=paramiko.util-module.html"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-0', 'util', 'link-0');">util</a></tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> </tt>
-<a name="BERException"></a><div id="BERException-def"><a name="L23"></a><tt class="py-lineno"> 23</tt> <a class="py-toggle" href="#" id="BERException-toggle" onclick="return toggle('BERException');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.ber.BERException-class.html">BERException</a> <tt class="py-op">(</tt><tt class="py-base-class">Exception</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BERException-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="BERException-expanded"><a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-</div><a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"> </tt>
-<a name="BER"></a><div id="BER-def"><a name="L27"></a><tt class="py-lineno"> 27</tt> <a class="py-toggle" href="#" id="BER-toggle" onclick="return toggle('BER');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.ber.BER-class.html">BER</a><tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BER-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="BER-expanded"><a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"><tt class="py-docstring"> Robey's tiny little attempt at a BER decoder.</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> </tt>
-<a name="BER.__init__"></a><div id="BER.__init__-def"><a name="L32"></a><tt class="py-lineno"> 32</tt> <a class="py-toggle" href="#" id="BER.__init__-toggle" onclick="return toggle('BER.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.ber.BER-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">content</tt><tt class="py-op">=</tt><tt class="py-string">''</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BER.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BER.__init__-expanded"><a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">content</tt> <tt class="py-op">=</tt> <tt class="py-name">content</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">idx</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-</div><a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> </tt>
-<a name="BER.__str__"></a><div id="BER.__str__-def"><a name="L36"></a><tt class="py-lineno"> 36</tt> <a class="py-toggle" href="#" id="BER.__str__-toggle" onclick="return toggle('BER.__str__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.ber.BER-class.html#__str__">__str__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BER.__str__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BER.__str__-expanded"><a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">content</tt> </tt>
-</div><a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> </tt>
-<a name="BER.__repr__"></a><div id="BER.__repr__-def"><a name="L39"></a><tt class="py-lineno"> 39</tt> <a class="py-toggle" href="#" id="BER.__repr__-toggle" onclick="return toggle('BER.__repr__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.ber.BER-class.html#__repr__">__repr__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BER.__repr__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BER.__repr__-expanded"><a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">'BER(\''</tt> <tt class="py-op">+</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">content</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">'\')'</tt> </tt>
-</div><a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> </tt>
-<a name="BER.decode"></a><div id="BER.decode-def"><a name="L42"></a><tt class="py-lineno"> 42</tt> <a class="py-toggle" href="#" id="BER.decode-toggle" onclick="return toggle('BER.decode');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.ber.BER-class.html#decode">decode</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BER.decode-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BER.decode-expanded"><a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method paramiko.ber.BER.decode_next()=paramiko.ber.BER-class.html#decode_next"><a title="paramiko.ber.BER.decode_next" class="py-name" href="#" onclick="return doclink('link-1', 'decode_next', 'link-1');">decode_next</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> </tt>
-<a name="BER.decode_next"></a><div id="BER.decode_next-def"><a name="L45"></a><tt class="py-lineno"> 45</tt> <a class="py-toggle" href="#" id="BER.decode_next-toggle" onclick="return toggle('BER.decode_next');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.ber.BER-class.html#decode_next">decode_next</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BER.decode_next-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BER.decode_next-expanded"><a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">idx</tt> <tt class="py-op">&gt;=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">content</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-name">ident</tt> <tt class="py-op">=</tt> <tt class="py-name">ord</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">content</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">idx</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">idx</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">ident</tt> <tt class="py-op">&amp;</tt> <tt class="py-number">31</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">31</tt><tt class="py-op">:</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-comment"># identifier &gt; 30</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-name">ident</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">idx</tt> <tt class="py-op">&lt;</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">content</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">ord</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">content</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">idx</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">idx</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-name">ident</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">ident</tt> <tt class="py-op">&lt;&lt;</tt> <tt class="py-number">7</tt><tt class="py-op">)</tt> <tt class="py-op">|</tt> <tt class="py-op">(</tt><tt class="py-name">t</tt> <tt class="py-op">&amp;</tt> <tt class="py-number">0x7f</tt><tt class="py-op">)</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-op">(</tt><tt class="py-name">t</tt> <tt class="py-op">&amp;</tt> <tt class="py-number">0x80</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">idx</tt> <tt class="py-op">&gt;=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">content</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-comment"># now fetch length</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">ord</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">content</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">idx</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">idx</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">&amp;</tt> <tt class="py-number">0x80</tt><tt class="py-op">:</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-comment"># more complimicated...</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-comment"># FIXME: theoretically should handle indefinite-length (0x80)</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">size</tt> <tt class="py-op">&amp;</tt> <tt class="py-number">0x7f</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">idx</tt> <tt class="py-op">+</tt> <tt class="py-name">t</tt> <tt class="py-op">&gt;</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">content</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt id="link-2" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-2', 'util', 'link-0');">util</a></tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Function paramiko.util.inflate_long()=paramiko.util-module.html#inflate_long"><a title="paramiko.util.inflate_long" class="py-name" href="#" onclick="return doclink('link-3', 'inflate_long', 'link-3');">inflate_long</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">content</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">idx</tt> <tt class="py-op">:</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">idx</tt> <tt class="py-op">+</tt> <tt class="py-name">t</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">True</tt><tt class="py-op">)</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">idx</tt> <tt class="py-op">+=</tt> <tt class="py-name">t</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">idx</tt> <tt class="py-op">+</tt> <tt class="py-name">size</tt> <tt class="py-op">&gt;</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">content</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-comment"># can't fit</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">content</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">idx</tt> <tt class="py-op">:</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">idx</tt> <tt class="py-op">+</tt> <tt class="py-name">size</tt><tt class="py-op">]</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">idx</tt> <tt class="py-op">+=</tt> <tt class="py-name">size</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-comment"># now switch on id</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ident</tt> <tt class="py-op">==</tt> <tt class="py-number">0x30</tt><tt class="py-op">:</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-comment"># sequence</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name" targets="Static Method paramiko.ber.BER.decode_sequence()=paramiko.ber.BER-class.html#decode_sequence"><a title="paramiko.ber.BER.decode_sequence" class="py-name" href="#" onclick="return doclink('link-4', 'decode_sequence', 'link-4');">decode_sequence</a></tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">ident</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-comment"># int</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-5" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-5', 'util', 'link-0');">util</a></tt><tt class="py-op">.</tt><tt id="link-6" class="py-name"><a title="paramiko.util.inflate_long" class="py-name" href="#" onclick="return doclink('link-6', 'inflate_long', 'link-3');">inflate_long</a></tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-comment"># 1: boolean (00 false, otherwise true)</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-7" class="py-name" targets="Class paramiko.ber.BERException=paramiko.ber.BERException-class.html"><a title="paramiko.ber.BERException" class="py-name" href="#" onclick="return doclink('link-7', 'BERException', 'link-7');">BERException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Unknown ber encoding type %d (robey is lazy)'</tt> <tt class="py-op">%</tt> <tt class="py-name">ident</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> </tt>
-<a name="BER.decode_sequence"></a><div id="BER.decode_sequence-def"><a name="L88"></a><tt class="py-lineno"> 88</tt> <a class="py-toggle" href="#" id="BER.decode_sequence-toggle" onclick="return toggle('BER.decode_sequence');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.ber.BER-class.html#decode_sequence">decode_sequence</a><tt class="py-op">(</tt><tt class="py-param">data</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BER.decode_sequence-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BER.decode_sequence-expanded"><a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-name">b</tt> <tt class="py-op">=</tt> <tt id="link-8" class="py-name" targets="Class paramiko.ber.BER=paramiko.ber.BER-class.html"><a title="paramiko.ber.BER" class="py-name" href="#" onclick="return doclink('link-8', 'BER', 'link-8');">BER</a></tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-name">x</tt> <tt class="py-op">=</tt> <tt class="py-name">b</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name"><a title="paramiko.ber.BER.decode_next" class="py-name" href="#" onclick="return doclink('link-9', 'decode_next', 'link-1');">decode_next</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">x</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-name">out</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">out</tt> </tt>
-</div><a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt id="link-10" class="py-name"><a title="paramiko.ber.BER.decode_sequence" class="py-name" href="#" onclick="return doclink('link-10', 'decode_sequence', 'link-4');">decode_sequence</a></tt> <tt class="py-op">=</tt> <tt class="py-name">staticmethod</tt><tt class="py-op">(</tt><tt id="link-11" class="py-name"><a title="paramiko.ber.BER.decode_sequence" class="py-name" href="#" onclick="return doclink('link-11', 'decode_sequence', 'link-4');">decode_sequence</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> </tt>
-<a name="BER.encode_tlv"></a><div id="BER.encode_tlv-def"><a name="L99"></a><tt class="py-lineno"> 99</tt> <a class="py-toggle" href="#" id="BER.encode_tlv-toggle" onclick="return toggle('BER.encode_tlv');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.ber.BER-class.html#encode_tlv">encode_tlv</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">ident</tt><tt class="py-op">,</tt> <tt class="py-param">val</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BER.encode_tlv-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BER.encode_tlv-expanded"><a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-comment"># no need to support ident &gt; 31 here</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">content</tt> <tt class="py-op">+=</tt> <tt class="py-name">chr</tt><tt class="py-op">(</tt><tt class="py-name">ident</tt><tt class="py-op">)</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">val</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0x7f</tt><tt class="py-op">:</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-name">lenstr</tt> <tt class="py-op">=</tt> <tt id="link-12" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-12', 'util', 'link-0');">util</a></tt><tt class="py-op">.</tt><tt id="link-13" class="py-name" targets="Function paramiko.util.deflate_long()=paramiko.util-module.html#deflate_long"><a title="paramiko.util.deflate_long" class="py-name" href="#" onclick="return doclink('link-13', 'deflate_long', 'link-13');">deflate_long</a></tt><tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">val</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">content</tt> <tt class="py-op">+=</tt> <tt class="py-name">chr</tt><tt class="py-op">(</tt><tt class="py-number">0x80</tt> <tt class="py-op">+</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">lenstr</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-name">lenstr</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">content</tt> <tt class="py-op">+=</tt> <tt class="py-name">chr</tt><tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">val</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">content</tt> <tt class="py-op">+=</tt> <tt class="py-name">val</tt> </tt>
-</div><a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> </tt>
-<a name="BER.encode"></a><div id="BER.encode-def"><a name="L109"></a><tt class="py-lineno">109</tt> <a class="py-toggle" href="#" id="BER.encode-toggle" onclick="return toggle('BER.encode');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.ber.BER-class.html#encode">encode</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">x</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BER.encode-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BER.encode-expanded"><a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">bool</tt><tt class="py-op">:</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">x</tt><tt class="py-op">:</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name" targets="Method paramiko.ber.BER.encode_tlv()=paramiko.ber.BER-class.html#encode_tlv"><a title="paramiko.ber.BER.encode_tlv" class="py-name" href="#" onclick="return doclink('link-14', 'encode_tlv', 'link-14');">encode_tlv</a></tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-string">'\xff'</tt><tt class="py-op">)</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name"><a title="paramiko.ber.BER.encode_tlv" class="py-name" href="#" onclick="return doclink('link-15', 'encode_tlv', 'link-14');">encode_tlv</a></tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-string">'\x00'</tt><tt class="py-op">)</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-op">(</tt><tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">int</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">long</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="paramiko.ber.BER.encode_tlv" class="py-name" href="#" onclick="return doclink('link-16', 'encode_tlv', 'link-14');">encode_tlv</a></tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">,</tt> <tt id="link-17" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-17', 'util', 'link-0');">util</a></tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="paramiko.util.deflate_long" class="py-name" href="#" onclick="return doclink('link-18', 'deflate_long', 'link-13');">deflate_long</a></tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">str</tt><tt class="py-op">:</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name"><a title="paramiko.ber.BER.encode_tlv" class="py-name" href="#" onclick="return doclink('link-19', 'encode_tlv', 'link-14');">encode_tlv</a></tt><tt class="py-op">(</tt><tt class="py-number">4</tt><tt class="py-op">,</tt> <tt class="py-name">x</tt><tt class="py-op">)</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-op">(</tt><tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">tuple</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name"><a title="paramiko.ber.BER.encode_tlv" class="py-name" href="#" onclick="return doclink('link-20', 'encode_tlv', 'link-14');">encode_tlv</a></tt><tt class="py-op">(</tt><tt class="py-number">0x30</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name" targets="Static Method paramiko.ber.BER.encode_sequence()=paramiko.ber.BER-class.html#encode_sequence"><a title="paramiko.ber.BER.encode_sequence" class="py-name" href="#" onclick="return doclink('link-21', 'encode_sequence', 'link-21');">encode_sequence</a></tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-22" class="py-name"><a title="paramiko.ber.BERException" class="py-name" href="#" onclick="return doclink('link-22', 'BERException', 'link-7');">BERException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Unknown type for encoding: %s'</tt> <tt class="py-op">%</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt><tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> </tt>
-<a name="BER.encode_sequence"></a><div id="BER.encode_sequence-def"><a name="L124"></a><tt class="py-lineno">124</tt> <a class="py-toggle" href="#" id="BER.encode_sequence-toggle" onclick="return toggle('BER.encode_sequence');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.ber.BER-class.html#encode_sequence">encode_sequence</a><tt class="py-op">(</tt><tt class="py-param">data</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BER.encode_sequence-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BER.encode_sequence-expanded"><a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt class="py-name">b</tt> <tt class="py-op">=</tt> <tt id="link-23" class="py-name"><a title="paramiko.ber.BER" class="py-name" href="#" onclick="return doclink('link-23', 'BER', 'link-8');">BER</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">item</tt> <tt class="py-keyword">in</tt> <tt class="py-name">data</tt><tt class="py-op">:</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-name">b</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name" targets="Method paramiko.ber.BER.encode()=paramiko.ber.BER-class.html#encode"><a title="paramiko.ber.BER.encode" class="py-name" href="#" onclick="return doclink('link-24', 'encode', 'link-24');">encode</a></tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">b</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt id="link-25" class="py-name"><a title="paramiko.ber.BER.encode_sequence" class="py-name" href="#" onclick="return doclink('link-25', 'encode_sequence', 'link-21');">encode_sequence</a></tt> <tt class="py-op">=</tt> <tt class="py-name">staticmethod</tt><tt class="py-op">(</tt><tt id="link-26" class="py-name"><a title="paramiko.ber.BER.encode_sequence" class="py-name" href="#" onclick="return doclink('link-26', 'encode_sequence', 'link-21');">encode_sequence</a></tt><tt class="py-op">)</tt> </tt>
-</div><a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:06 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.ber.BER-class.html b/docs/paramiko.ber.BER-class.html
deleted file mode 100644
index 1765e9a..0000000
--- a/docs/paramiko.ber.BER-class.html
+++ /dev/null
@@ -1,397 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.ber.BER</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- <a href="paramiko.ber-module.html" onclick="show_private();">Module&nbsp;ber</a> ::
- Class&nbsp;BER
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.ber.BER-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class BER</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.ber-pysrc.html#BER">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- <strong class="uidshort">BER</strong>
-</pre>
-
-<hr />
-<p>Robey's tiny little attempt at a BER decoder.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.ber.BER-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">content</span>=<span class="summary-sig-default"><code class="variable-quote">'</code><code class="variable-string"></code><code class="variable-quote">'</code></span>)</span><br />
- x.__init__(...) initializes x; see x.__class__.__doc__ for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.ber-pysrc.html#BER.__init__">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.ber.BER-class.html#__str__" class="summary-sig-name">__str__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- str(x)</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.ber-pysrc.html#BER.__str__">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.ber.BER-class.html#__repr__" class="summary-sig-name">__repr__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- repr(x)</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.ber-pysrc.html#BER.__repr__">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="decode"></a><span class="summary-sig-name">decode</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.ber-pysrc.html#BER.decode">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="decode_next"></a><span class="summary-sig-name">decode_next</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.ber-pysrc.html#BER.decode_next">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="encode_tlv"></a><span class="summary-sig-name">encode_tlv</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">ident</span>,
- <span class="summary-sig-arg">val</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.ber-pysrc.html#BER.encode_tlv">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="encode"></a><span class="summary-sig-name">encode</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">x</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.ber-pysrc.html#BER.encode">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== STATIC METHODS ==================== -->
-<a name="section-StaticMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Static Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="decode_sequence"></a><span class="summary-sig-name">decode_sequence</span>(<span class="summary-sig-arg">data</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.ber-pysrc.html#BER.decode_sequence">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="encode_sequence"></a><span class="summary-sig-name">encode_sequence</span>(<span class="summary-sig-arg">data</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.ber-pysrc.html#BER.encode_sequence">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">content</span>=<span class="sig-default"><code class="variable-quote">'</code><code class="variable-string"></code><code class="variable-quote">'</code></span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.ber-pysrc.html#BER.__init__">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see x.__class__.__doc__ for
- signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="__str__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__str__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Informal representation operator)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.ber-pysrc.html#BER.__str__">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>str(x)</p>
- <dl class="fields">
- <dt>Overrides:
- object.__str__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="__repr__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__repr__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Representation operator)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.ber-pysrc.html#BER.__repr__">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>repr(x)</p>
- <dl class="fields">
- <dt>Overrides:
- object.__repr__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:04 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.ber.BERException-class.html b/docs/paramiko.ber.BERException-class.html
deleted file mode 100644
index c49bebf..0000000
--- a/docs/paramiko.ber.BERException-class.html
+++ /dev/null
@@ -1,170 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.ber.BERException</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- <a href="paramiko.ber-module.html" onclick="show_private();">Module&nbsp;ber</a> ::
- Class&nbsp;BERException
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.ber.BERException-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class BERException</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.ber-pysrc.html#BERException">source&nbsp;code</a></span></p>
-<pre class="base-tree">
- object --+
- |
-exceptions.BaseException --+
- |
- exceptions.Exception --+
- |
- <strong class="uidshort">BERException</strong>
-</pre>
-
-<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.Exception</code></b>:
- <code>__init__</code>,
- <code>__new__</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.BaseException</code></b>:
- <code>__delattr__</code>,
- <code>__getattribute__</code>,
- <code>__getitem__</code>,
- <code>__getslice__</code>,
- <code>__reduce__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__setstate__</code>,
- <code>__str__</code>,
- <code>__unicode__</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__format__</code>,
- <code>__hash__</code>,
- <code>__reduce_ex__</code>,
- <code>__sizeof__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.BaseException</code></b>:
- <code>args</code>,
- <code>message</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:04 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.buffered_pipe-module.html b/docs/paramiko.buffered_pipe-module.html
deleted file mode 100644
index 1b88510..0000000
--- a/docs/paramiko.buffered_pipe-module.html
+++ /dev/null
@@ -1,152 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.buffered_pipe</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;buffered_pipe
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.buffered_pipe-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module buffered_pipe</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.buffered_pipe-pysrc.html">source&nbsp;code</a></span></p>
-<p>Attempt to generalize the &quot;feeder&quot; part of a Channel: an
- object which can be read from and closed, but is reading from a buffer
- fed by another thread. The read operations are blocking and can have a
- timeout set.</p>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Classes</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.buffered_pipe.PipeTimeout-class.html" class="summary-name">PipeTimeout</a><br />
- Indicates that a timeout was reached on a read from a <a
- href="paramiko.buffered_pipe.BufferedPipe-class.html"
- class="link">BufferedPipe</a>.
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.buffered_pipe.BufferedPipe-class.html" class="summary-name">BufferedPipe</a><br />
- A buffer that obeys normal read (with timeout) &amp; close
- semantics for a file or socket, but is fed data from another
- thread.
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'paramiko'"><code class="variable-quote">'</code><code class="variable-string">paramiko</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:02 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.buffered_pipe-pysrc.html b/docs/paramiko.buffered_pipe-pysrc.html
deleted file mode 100644
index 2ee00dd..0000000
--- a/docs/paramiko.buffered_pipe-pysrc.html
+++ /dev/null
@@ -1,323 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.buffered_pipe</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;buffered_pipe
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.buffered_pipe-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.buffered_pipe-module.html" onclick="show_private();">Module paramiko.buffered_pipe</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2006-2007 Robey Pointer &lt;robeypointer@gmail.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring">Attempt to generalize the "feeder" part of a Channel: an object which can be</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">read from and closed, but is reading from a buffer fed by another thread. The</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-docstring">read operations are blocking and can have a timeout set.</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">array</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">threading</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"> </tt>
-<a name="PipeTimeout"></a><div id="PipeTimeout-def"><a name="L30"></a><tt class="py-lineno"> 30</tt> <a class="py-toggle" href="#" id="PipeTimeout-toggle" onclick="return toggle('PipeTimeout');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.buffered_pipe.PipeTimeout-class.html">PipeTimeout</a> <tt class="py-op">(</tt><tt class="py-base-class">IOError</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PipeTimeout-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="PipeTimeout-expanded"><a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"><tt class="py-docstring"> Indicates that a timeout was reached on a read from a L{BufferedPipe}.</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-</div><a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> </tt>
-<a name="BufferedPipe"></a><div id="BufferedPipe-def"><a name="L37"></a><tt class="py-lineno"> 37</tt> <a class="py-toggle" href="#" id="BufferedPipe-toggle" onclick="return toggle('BufferedPipe');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.buffered_pipe.BufferedPipe-class.html">BufferedPipe</a> <tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BufferedPipe-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="BufferedPipe-expanded"><a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"><tt class="py-docstring"> A buffer that obeys normal read (with timeout) &amp; close semantics for a</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"><tt class="py-docstring"> file or socket, but is fed data from another thread. This is used by</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"><tt class="py-docstring"> L{Channel}.</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> </tt>
-<a name="BufferedPipe.__init__"></a><div id="BufferedPipe.__init__-def"><a name="L44"></a><tt class="py-lineno"> 44</tt> <a class="py-toggle" href="#" id="BufferedPipe.__init__-toggle" onclick="return toggle('BufferedPipe.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.buffered_pipe.BufferedPipe-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BufferedPipe.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BufferedPipe.__init__-expanded"><a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_lock</tt> <tt class="py-op">=</tt> <tt class="py-name">threading</tt><tt class="py-op">.</tt><tt class="py-name">Lock</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_cv</tt> <tt class="py-op">=</tt> <tt class="py-name">threading</tt><tt class="py-op">.</tt><tt class="py-name">Condition</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_lock</tt><tt class="py-op">)</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_event</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_buffer</tt> <tt class="py-op">=</tt> <tt class="py-name">array</tt><tt class="py-op">.</tt><tt class="py-name">array</tt><tt class="py-op">(</tt><tt class="py-string">'B'</tt><tt class="py-op">)</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_closed</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-</div><a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> </tt>
-<a name="BufferedPipe.set_event"></a><div id="BufferedPipe.set_event-def"><a name="L51"></a><tt class="py-lineno"> 51</tt> <a class="py-toggle" href="#" id="BufferedPipe.set_event-toggle" onclick="return toggle('BufferedPipe.set_event');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.buffered_pipe.BufferedPipe-class.html#set_event">set_event</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">event</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BufferedPipe.set_event-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BufferedPipe.set_event-expanded"><a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"><tt class="py-docstring"> Set an event on this buffer. When data is ready to be read (or the</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"><tt class="py-docstring"> buffer has been closed), the event will be set. When no data is</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"><tt class="py-docstring"> ready, the event will be cleared.</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"><tt class="py-docstring"> @param event: the event to set/clear</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"><tt class="py-docstring"> @type event: Event</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_event</tt> <tt class="py-op">=</tt> <tt class="py-name">event</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_buffer</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-name">event</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Method paramiko.pipe.OrPipe.set()=paramiko.pipe.OrPipe-class.html#set,Method paramiko.pipe.PosixPipe.set()=paramiko.pipe.PosixPipe-class.html#set,Method paramiko.pipe.WindowsPipe.set()=paramiko.pipe.WindowsPipe-class.html#set"><a title="paramiko.pipe.OrPipe.set
-paramiko.pipe.PosixPipe.set
-paramiko.pipe.WindowsPipe.set" class="py-name" href="#" onclick="return doclink('link-0', 'set', 'link-0');">set</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-name">event</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method paramiko.HostKeys.clear()=paramiko.HostKeys-class.html#clear,Method paramiko.pipe.OrPipe.clear()=paramiko.pipe.OrPipe-class.html#clear,Method paramiko.pipe.PosixPipe.clear()=paramiko.pipe.PosixPipe-class.html#clear,Method paramiko.pipe.WindowsPipe.clear()=paramiko.pipe.WindowsPipe-class.html#clear"><a title="paramiko.HostKeys.clear
-paramiko.pipe.OrPipe.clear
-paramiko.pipe.PosixPipe.clear
-paramiko.pipe.WindowsPipe.clear" class="py-name" href="#" onclick="return doclink('link-1', 'clear', 'link-1');">clear</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> </tt>
-<a name="BufferedPipe.feed"></a><div id="BufferedPipe.feed-def"><a name="L66"></a><tt class="py-lineno"> 66</tt> <a class="py-toggle" href="#" id="BufferedPipe.feed-toggle" onclick="return toggle('BufferedPipe.feed');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.buffered_pipe.BufferedPipe-class.html#feed">feed</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">data</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BufferedPipe.feed-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BufferedPipe.feed-expanded"><a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"><tt class="py-docstring"> Feed new data into this pipe. This method is assumed to be called</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"><tt class="py-docstring"> from a separate thread, so synchronization is done.</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"><tt class="py-docstring"> @param data: the data to add</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"><tt class="py-docstring"> @type data: str</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_event</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_event</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name"><a title="paramiko.pipe.OrPipe.set
-paramiko.pipe.PosixPipe.set
-paramiko.pipe.WindowsPipe.set" class="py-name" href="#" onclick="return doclink('link-2', 'set', 'link-0');">set</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_buffer</tt><tt class="py-op">.</tt><tt class="py-name">fromstring</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_cv</tt><tt class="py-op">.</tt><tt class="py-name">notifyAll</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> </tt>
-<a name="BufferedPipe.read_ready"></a><div id="BufferedPipe.read_ready-def"><a name="L83"></a><tt class="py-lineno"> 83</tt> <a class="py-toggle" href="#" id="BufferedPipe.read_ready-toggle" onclick="return toggle('BufferedPipe.read_ready');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.buffered_pipe.BufferedPipe-class.html#read_ready">read_ready</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BufferedPipe.read_ready-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BufferedPipe.read_ready-expanded"><a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"><tt class="py-docstring"> Returns true if data is buffered and ready to be read from this</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"><tt class="py-docstring"> feeder. A C{False} result does not mean that the feeder has closed;</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"><tt class="py-docstring"> it means you may need to wait before more data arrives.</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"><tt class="py-docstring"> @return: C{True} if a L{read} call would immediately return at least</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"><tt class="py-docstring"> one byte; C{False} otherwise.</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: bool</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_buffer</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">False</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">True</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> </tt>
-<a name="BufferedPipe.read"></a><div id="BufferedPipe.read-def"><a name="L101"></a><tt class="py-lineno">101</tt> <a class="py-toggle" href="#" id="BufferedPipe.read-toggle" onclick="return toggle('BufferedPipe.read');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.buffered_pipe.BufferedPipe-class.html#read">read</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">nbytes</tt><tt class="py-op">,</tt> <tt class="py-param">timeout</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BufferedPipe.read-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BufferedPipe.read-expanded"><a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"><tt class="py-docstring"> Read data from the pipe. The return value is a string representing</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"><tt class="py-docstring"> the data received. The maximum amount of data to be received at once</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"><tt class="py-docstring"> is specified by C{nbytes}. If a string of length zero is returned,</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"><tt class="py-docstring"> the pipe has been closed.</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"><tt class="py-docstring"> The optional C{timeout} argument can be a nonnegative float expressing</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"><tt class="py-docstring"> seconds, or C{None} for no timeout. If a float is given, a</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"><tt class="py-docstring"> C{PipeTimeout} will be raised if the timeout period value has</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"><tt class="py-docstring"> elapsed before any data arrives.</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"><tt class="py-docstring"> @param nbytes: maximum number of bytes to read</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"><tt class="py-docstring"> @type nbytes: int</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"><tt class="py-docstring"> @param timeout: maximum seconds to wait (or C{None}, the default, to</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"><tt class="py-docstring"> wait forever)</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"><tt class="py-docstring"> @type timeout: float</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"><tt class="py-docstring"> @return: data</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: str</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"><tt class="py-docstring"> @raise PipeTimeout: if a timeout was specified and no data was ready</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"><tt class="py-docstring"> before that timeout</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_buffer</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_closed</tt><tt class="py-op">:</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">out</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-comment"># should we block?</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">timeout</tt> <tt class="py-op">==</tt> <tt class="py-number">0.0</tt><tt class="py-op">:</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-3" class="py-name" targets="Class paramiko.buffered_pipe.PipeTimeout=paramiko.buffered_pipe.PipeTimeout-class.html"><a title="paramiko.buffered_pipe.PipeTimeout" class="py-name" href="#" onclick="return doclink('link-3', 'PipeTimeout', 'link-3');">PipeTimeout</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-comment"># loop here in case we get woken up but a different thread has</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-comment"># grabbed everything in the buffer.</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_buffer</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_closed</tt><tt class="py-op">:</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-name">then</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_cv</tt><tt class="py-op">.</tt><tt class="py-name">wait</tt><tt class="py-op">(</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">timeout</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">-=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">then</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">timeout</tt> <tt class="py-op">&lt;=</tt> <tt class="py-number">0.0</tt><tt class="py-op">:</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-4" class="py-name"><a title="paramiko.buffered_pipe.PipeTimeout" class="py-name" href="#" onclick="return doclink('link-4', 'PipeTimeout', 'link-3');">PipeTimeout</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> <tt class="py-comment"># something's in the buffer and we have the lock!</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_buffer</tt><tt class="py-op">)</tt> <tt class="py-op">&lt;=</tt> <tt class="py-name">nbytes</tt><tt class="py-op">:</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_buffer</tt><tt class="py-op">.</tt><tt class="py-name">tostring</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt class="py-keyword">del</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_buffer</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-op">]</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_event</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_closed</tt><tt class="py-op">:</tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_event</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name"><a title="paramiko.HostKeys.clear
-paramiko.pipe.OrPipe.clear
-paramiko.pipe.PosixPipe.clear
-paramiko.pipe.WindowsPipe.clear" class="py-name" href="#" onclick="return doclink('link-5', 'clear', 'link-1');">clear</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_buffer</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-name">nbytes</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">tostring</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> <tt class="py-keyword">del</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_buffer</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-name">nbytes</tt><tt class="py-op">]</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">out</tt> </tt>
-</div><a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> </tt>
-<a name="BufferedPipe.empty"></a><div id="BufferedPipe.empty-def"><a name="L157"></a><tt class="py-lineno">157</tt> <a class="py-toggle" href="#" id="BufferedPipe.empty-toggle" onclick="return toggle('BufferedPipe.empty');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.buffered_pipe.BufferedPipe-class.html#empty">empty</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BufferedPipe.empty-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BufferedPipe.empty-expanded"><a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"><tt class="py-docstring"> Clear out the buffer and return all data that was in it.</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"><tt class="py-docstring"> @return: any data that was in the buffer prior to clearing it out</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: str</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_buffer</tt><tt class="py-op">.</tt><tt class="py-name">tostring</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> <tt class="py-keyword">del</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_buffer</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-op">]</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_event</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_closed</tt><tt class="py-op">:</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_event</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name"><a title="paramiko.HostKeys.clear
-paramiko.pipe.OrPipe.clear
-paramiko.pipe.PosixPipe.clear
-paramiko.pipe.WindowsPipe.clear" class="py-name" href="#" onclick="return doclink('link-6', 'clear', 'link-1');">clear</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">out</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> </tt>
-<a name="BufferedPipe.close"></a><div id="BufferedPipe.close-def"><a name="L174"></a><tt class="py-lineno">174</tt> <a class="py-toggle" href="#" id="BufferedPipe.close-toggle" onclick="return toggle('BufferedPipe.close');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.buffered_pipe.BufferedPipe-class.html#close">close</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BufferedPipe.close-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BufferedPipe.close-expanded"><a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"><tt class="py-docstring"> Close this pipe object. Future calls to L{read} after the buffer</tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"><tt class="py-docstring"> has been emptied will return immediately with an empty string.</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_closed</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_cv</tt><tt class="py-op">.</tt><tt class="py-name">notifyAll</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_event</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_event</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name"><a title="paramiko.pipe.OrPipe.set
-paramiko.pipe.PosixPipe.set
-paramiko.pipe.WindowsPipe.set" class="py-name" href="#" onclick="return doclink('link-7', 'set', 'link-0');">set</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> </tt>
-<a name="BufferedPipe.__len__"></a><div id="BufferedPipe.__len__-def"><a name="L188"></a><tt class="py-lineno">188</tt> <a class="py-toggle" href="#" id="BufferedPipe.__len__-toggle" onclick="return toggle('BufferedPipe.__len__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.buffered_pipe.BufferedPipe-class.html#__len__">__len__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BufferedPipe.__len__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BufferedPipe.__len__-expanded"><a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"><tt class="py-docstring"> Return the number of bytes buffered.</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"><tt class="py-docstring"> @return: number of bytes bufferes</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: int</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_buffer</tt><tt class="py-op">)</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:04 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.buffered_pipe.BufferedPipe-class.html b/docs/paramiko.buffered_pipe.BufferedPipe-class.html
deleted file mode 100644
index 4a9d16d..0000000
--- a/docs/paramiko.buffered_pipe.BufferedPipe-class.html
+++ /dev/null
@@ -1,516 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.buffered_pipe.BufferedPipe</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- <a href="paramiko.buffered_pipe-module.html" onclick="show_private();">Module&nbsp;buffered_pipe</a> ::
- Class&nbsp;BufferedPipe
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.buffered_pipe.BufferedPipe-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class BufferedPipe</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.buffered_pipe-pysrc.html#BufferedPipe">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- <strong class="uidshort">BufferedPipe</strong>
-</pre>
-
-<hr />
-<p>A buffer that obeys normal read (with timeout) &amp; close semantics
- for a file or socket, but is fed data from another thread. This is used
- by <a href="paramiko.Channel-class.html" class="link">Channel</a>.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.buffered_pipe.BufferedPipe-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- x.__init__(...) initializes x; see x.__class__.__doc__ for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.buffered_pipe-pysrc.html#BufferedPipe.__init__">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.buffered_pipe.BufferedPipe-class.html#set_event" class="summary-sig-name">set_event</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">event</span>)</span><br />
- Set an event on this buffer.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.buffered_pipe-pysrc.html#BufferedPipe.set_event">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.buffered_pipe.BufferedPipe-class.html#feed" class="summary-sig-name">feed</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">data</span>)</span><br />
- Feed new data into this pipe.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.buffered_pipe-pysrc.html#BufferedPipe.feed">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">bool</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.buffered_pipe.BufferedPipe-class.html#read_ready" class="summary-sig-name">read_ready</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Returns true if data is buffered and ready to be read from this
- feeder.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.buffered_pipe-pysrc.html#BufferedPipe.read_ready">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">str</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.buffered_pipe.BufferedPipe-class.html#read" class="summary-sig-name">read</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">nbytes</span>,
- <span class="summary-sig-arg">timeout</span>=<span class="summary-sig-default">None</span>)</span><br />
- Read data from the pipe.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.buffered_pipe-pysrc.html#BufferedPipe.read">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">str</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.buffered_pipe.BufferedPipe-class.html#empty" class="summary-sig-name">empty</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Clear out the buffer and return all data that was in it.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.buffered_pipe-pysrc.html#BufferedPipe.empty">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.buffered_pipe.BufferedPipe-class.html#close" class="summary-sig-name">close</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Close this pipe object.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.buffered_pipe-pysrc.html#BufferedPipe.close">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">int</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.buffered_pipe.BufferedPipe-class.html#__len__" class="summary-sig-name">__len__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Return the number of bytes buffered.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.buffered_pipe-pysrc.html#BufferedPipe.__len__">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.buffered_pipe-pysrc.html#BufferedPipe.__init__">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see x.__class__.__doc__ for
- signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="set_event"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">set_event</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">event</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.buffered_pipe-pysrc.html#BufferedPipe.set_event">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Set an event on this buffer. When data is ready to be read (or the
- buffer has been closed), the event will be set. When no data is ready,
- the event will be cleared.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>event</code></strong> (Event) - the event to set/clear</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="feed"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">feed</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">data</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.buffered_pipe-pysrc.html#BufferedPipe.feed">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Feed new data into this pipe. This method is assumed to be called
- from a separate thread, so synchronization is done.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>data</code></strong> (str) - the data to add</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="read_ready"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">read_ready</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.buffered_pipe-pysrc.html#BufferedPipe.read_ready">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Returns true if data is buffered and ready to be read from this
- feeder. A <code>False</code> result does not mean that the feeder has
- closed; it means you may need to wait before more data arrives.</p>
- <dl class="fields">
- <dt>Returns: bool</dt>
- <dd><code>True</code> if a <a
- href="paramiko.buffered_pipe.BufferedPipe-class.html#read"
- class="link">read</a> call would immediately return at least one
- byte; <code>False</code> otherwise.</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="read"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">read</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">nbytes</span>,
- <span class="sig-arg">timeout</span>=<span class="sig-default">None</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.buffered_pipe-pysrc.html#BufferedPipe.read">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Read data from the pipe. The return value is a string representing
- the data received. The maximum amount of data to be received at once is
- specified by <code>nbytes</code>. If a string of length zero is
- returned, the pipe has been closed.</p>
- <p>The optional <code>timeout</code> argument can be a nonnegative float
- expressing seconds, or <code>None</code> for no timeout. If a float is
- given, a <code>PipeTimeout</code> will be raised if the timeout period
- value has elapsed before any data arrives.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>nbytes</code></strong> (int) - maximum number of bytes to read</li>
- <li><strong class="pname"><code>timeout</code></strong> (float) - maximum seconds to wait (or <code>None</code>, the default, to
- wait forever)</li>
- </ul></dd>
- <dt>Returns: str</dt>
- <dd>data</dd>
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'><a href="paramiko.buffered_pipe.PipeTimeout-class.html">PipeTimeout</a></strong></code> - if a timeout was specified and no data was ready before that
- timeout</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="empty"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">empty</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.buffered_pipe-pysrc.html#BufferedPipe.empty">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Clear out the buffer and return all data that was in it.</p>
- <dl class="fields">
- <dt>Returns: str</dt>
- <dd>any data that was in the buffer prior to clearing it out</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="close"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">close</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.buffered_pipe-pysrc.html#BufferedPipe.close">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Close this pipe object. Future calls to <a
- href="paramiko.buffered_pipe.BufferedPipe-class.html#read"
- class="link">read</a> after the buffer has been emptied will return
- immediately with an empty string.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<a name="__len__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__len__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Length operator)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.buffered_pipe-pysrc.html#BufferedPipe.__len__">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Return the number of bytes buffered.</p>
- <dl class="fields">
- <dt>Returns: int</dt>
- <dd>number of bytes bufferes</dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:04 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.buffered_pipe.PipeTimeout-class.html b/docs/paramiko.buffered_pipe.PipeTimeout-class.html
deleted file mode 100644
index 0de755a..0000000
--- a/docs/paramiko.buffered_pipe.PipeTimeout-class.html
+++ /dev/null
@@ -1,187 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.buffered_pipe.PipeTimeout</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- <a href="paramiko.buffered_pipe-module.html" onclick="show_private();">Module&nbsp;buffered_pipe</a> ::
- Class&nbsp;PipeTimeout
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.buffered_pipe.PipeTimeout-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class PipeTimeout</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.buffered_pipe-pysrc.html#PipeTimeout">source&nbsp;code</a></span></p>
-<pre class="base-tree">
- object --+
- |
-exceptions.BaseException --+
- |
- exceptions.Exception --+
- |
- exceptions.StandardError --+
- |
- exceptions.EnvironmentError --+
- |
- exceptions.IOError --+
- |
- <strong class="uidshort">PipeTimeout</strong>
-</pre>
-
-<hr />
-<p>Indicates that a timeout was reached on a read from a <a
- href="paramiko.buffered_pipe.BufferedPipe-class.html"
- class="link">BufferedPipe</a>.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.IOError</code></b>:
- <code>__init__</code>,
- <code>__new__</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.EnvironmentError</code></b>:
- <code>__reduce__</code>,
- <code>__str__</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.BaseException</code></b>:
- <code>__delattr__</code>,
- <code>__getattribute__</code>,
- <code>__getitem__</code>,
- <code>__getslice__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__setstate__</code>,
- <code>__unicode__</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__format__</code>,
- <code>__hash__</code>,
- <code>__reduce_ex__</code>,
- <code>__sizeof__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.EnvironmentError</code></b>:
- <code>errno</code>,
- <code>filename</code>,
- <code>strerror</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.BaseException</code></b>:
- <code>args</code>,
- <code>message</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:04 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.channel-module.html b/docs/paramiko.channel-module.html
deleted file mode 100644
index 7361776..0000000
--- a/docs/paramiko.channel-module.html
+++ /dev/null
@@ -1,554 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.channel</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;channel
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.channel-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module channel</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.channel-pysrc.html">source&nbsp;code</a></span></p>
-<p>Abstraction for an SSH2 channel.</p>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Classes</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.channel.ChannelStderrFile-class.html" class="summary-name">ChannelStderrFile</a>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MIN_PACKET_SIZE"></a><span class="summary-name">MIN_PACKET_SIZE</span> = <code title="1024">1024</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_FAILED"></a><span class="summary-name">AUTH_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_PARTIALLY_SUCCESSFUL"></a><span class="summary-name">AUTH_PARTIALLY_SUCCESSFUL</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_SUCCESSFUL"></a><span class="summary-name">AUTH_SUCCESSFUL</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.channel-module.html#CONNECTION_FAILED_CODE" class="summary-name">CONNECTION_FAILED_CODE</a> = <code title="{1: 'Administratively prohibited',
- 2: 'Connect failed',
- 3: 'Unknown channel type',
- 4: 'Resource shortage'}"><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">:</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CRITICAL"></a><span class="summary-name">CRITICAL</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DEBUG"></a><span class="summary-name">DEBUG</span> = <code title="10">10</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_AUTH_CANCELLED_BY_USER"></a><span class="summary-name">DISCONNECT_AUTH_CANCELLED_BY_USER</span> = <code title="13">13</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE"></a><span class="summary-name">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</span> = <code title="14">14</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_SERVICE_NOT_AVAILABLE"></a><span class="summary-name">DISCONNECT_SERVICE_NOT_AVAILABLE</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="ERROR"></a><span class="summary-name">ERROR</span> = <code title="40">40</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="INFO"></a><span class="summary-name">INFO</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_CLOSE"></a><span class="summary-name">MSG_CHANNEL_CLOSE</span> = <code title="97">97</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_DATA"></a><span class="summary-name">MSG_CHANNEL_DATA</span> = <code title="94">94</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EOF"></a><span class="summary-name">MSG_CHANNEL_EOF</span> = <code title="96">96</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EXTENDED_DATA"></a><span class="summary-name">MSG_CHANNEL_EXTENDED_DATA</span> = <code title="95">95</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_FAILURE"></a><span class="summary-name">MSG_CHANNEL_FAILURE</span> = <code title="100">100</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN"></a><span class="summary-name">MSG_CHANNEL_OPEN</span> = <code title="90">90</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_FAILURE"></a><span class="summary-name">MSG_CHANNEL_OPEN_FAILURE</span> = <code title="92">92</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_OPEN_SUCCESS</span> = <code title="91">91</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_REQUEST"></a><span class="summary-name">MSG_CHANNEL_REQUEST</span> = <code title="98">98</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_SUCCESS</span> = <code title="99">99</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_WINDOW_ADJUST"></a><span class="summary-name">MSG_CHANNEL_WINDOW_ADJUST</span> = <code title="93">93</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DEBUG"></a><span class="summary-name">MSG_DEBUG</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DISCONNECT"></a><span class="summary-name">MSG_DISCONNECT</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_GLOBAL_REQUEST"></a><span class="summary-name">MSG_GLOBAL_REQUEST</span> = <code title="80">80</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_IGNORE"></a><span class="summary-name">MSG_IGNORE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_KEXINIT"></a><span class="summary-name">MSG_KEXINIT</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.channel-module.html#MSG_NAMES" class="summary-name">MSG_NAMES</a> = <code title="{1: 'disconnect',
- 2: 'ignore',
- 3: 'unimplemented',
- 4: 'debug',
- 5: 'service-request',
- 6: 'service-accept',
- 20: 'kexinit',
- 21: 'newkeys',
-..."><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">, </code>3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_NEWKEYS"></a><span class="summary-name">MSG_NEWKEYS</span> = <code title="21">21</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_FAILURE"></a><span class="summary-name">MSG_REQUEST_FAILURE</span> = <code title="82">82</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_SUCCESS"></a><span class="summary-name">MSG_REQUEST_SUCCESS</span> = <code title="81">81</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_ACCEPT"></a><span class="summary-name">MSG_SERVICE_ACCEPT</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_REQUEST"></a><span class="summary-name">MSG_SERVICE_REQUEST</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_UNIMPLEMENTED"></a><span class="summary-name">MSG_UNIMPLEMENTED</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_BANNER"></a><span class="summary-name">MSG_USERAUTH_BANNER</span> = <code title="53">53</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_FAILURE"></a><span class="summary-name">MSG_USERAUTH_FAILURE</span> = <code title="51">51</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_REQUEST"></a><span class="summary-name">MSG_USERAUTH_INFO_REQUEST</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_RESPONSE"></a><span class="summary-name">MSG_USERAUTH_INFO_RESPONSE</span> = <code title="61">61</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_PK_OK"></a><span class="summary-name">MSG_USERAUTH_PK_OK</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_REQUEST"></a><span class="summary-name">MSG_USERAUTH_REQUEST</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_SUCCESS"></a><span class="summary-name">MSG_USERAUTH_SUCCESS</span> = <code title="52">52</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED"></a><span class="summary-name">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_CONNECT_FAILED"></a><span class="summary-name">OPEN_FAILED_CONNECT_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_RESOURCE_SHORTAGE"></a><span class="summary-name">OPEN_FAILED_RESOURCE_SHORTAGE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_UNKNOWN_CHANNEL_TYPE"></a><span class="summary-name">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_SUCCEEDED"></a><span class="summary-name">OPEN_SUCCEEDED</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="PY22"></a><span class="summary-name">PY22</span> = <code title="False">False</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="WARNING"></a><span class="summary-name">WARNING</span> = <code title="30">30</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'paramiko'"><code class="variable-quote">'</code><code class="variable-string">paramiko</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="rng"></a><span class="summary-name">rng</span> = <code title="Random.new()">Random.new()</code>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES DETAILS ==================== -->
-<a name="section-VariablesDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables Details</span></td>
-</tr>
-</table>
-<a name="CONNECTION_FAILED_CODE"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">CONNECTION_FAILED_CODE</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Connect failed</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Unknown channel type</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Resource shortage</code><code class="variable-quote">'</code><code class="variable-group">}</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="MSG_NAMES"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">MSG_NAMES</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">debug</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 5<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-request</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 6<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-accept</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 20<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">kexinit</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 21<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">newkeys</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:02 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.channel-pysrc.html b/docs/paramiko.channel-pysrc.html
deleted file mode 100644
index 09e9132..0000000
--- a/docs/paramiko.channel-pysrc.html
+++ /dev/null
@@ -1,2076 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.channel</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;channel
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.channel-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.channel-module.html" onclick="show_private();">Module paramiko.channel</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2003-2007 Robey Pointer &lt;robeypointer@gmail.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring">Abstraction for an SSH2 channel.</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">binascii</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">threading</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">socket</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package paramiko=paramiko-module.html"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-0', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Module paramiko.common=paramiko.common-module.html"><a title="paramiko.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt> <tt class="py-keyword">import</tt> <tt class="py-op">*</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-2" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-2', 'paramiko', 'link-0');">paramiko</a></tt> <tt class="py-keyword">import</tt> <tt id="link-3" class="py-name" targets="Module paramiko.util=paramiko.util-module.html"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-3', 'util', 'link-3');">util</a></tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-4" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-4', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Module paramiko.message=paramiko.message-module.html"><a title="paramiko.message" class="py-name" href="#" onclick="return doclink('link-5', 'message', 'link-5');">message</a></tt> <tt class="py-keyword">import</tt> <tt id="link-6" class="py-name" targets="Class paramiko.Message=paramiko.Message-class.html"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-6', 'Message', 'link-6');">Message</a></tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-7" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-7', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Module paramiko.ssh_exception=paramiko.ssh_exception-module.html"><a title="paramiko.ssh_exception" class="py-name" href="#" onclick="return doclink('link-8', 'ssh_exception', 'link-8');">ssh_exception</a></tt> <tt class="py-keyword">import</tt> <tt id="link-9" class="py-name" targets="Class paramiko.SSHException=paramiko.SSHException-class.html"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-9', 'SSHException', 'link-9');">SSHException</a></tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-10" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-10', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-11" class="py-name" targets="Method paramiko.SFTPClient.file()=paramiko.SFTPClient-class.html#file,Module paramiko.file=paramiko.file-module.html"><a title="paramiko.SFTPClient.file
-paramiko.file" class="py-name" href="#" onclick="return doclink('link-11', 'file', 'link-11');">file</a></tt> <tt class="py-keyword">import</tt> <tt id="link-12" class="py-name" targets="Class paramiko.BufferedFile=paramiko.BufferedFile-class.html"><a title="paramiko.BufferedFile" class="py-name" href="#" onclick="return doclink('link-12', 'BufferedFile', 'link-12');">BufferedFile</a></tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-13" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-13', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-14" class="py-name" targets="Module paramiko.buffered_pipe=paramiko.buffered_pipe-module.html"><a title="paramiko.buffered_pipe" class="py-name" href="#" onclick="return doclink('link-14', 'buffered_pipe', 'link-14');">buffered_pipe</a></tt> <tt class="py-keyword">import</tt> <tt id="link-15" class="py-name" targets="Class paramiko.buffered_pipe.BufferedPipe=paramiko.buffered_pipe.BufferedPipe-class.html"><a title="paramiko.buffered_pipe.BufferedPipe" class="py-name" href="#" onclick="return doclink('link-15', 'BufferedPipe', 'link-15');">BufferedPipe</a></tt><tt class="py-op">,</tt> <tt id="link-16" class="py-name" targets="Class paramiko.buffered_pipe.PipeTimeout=paramiko.buffered_pipe.PipeTimeout-class.html"><a title="paramiko.buffered_pipe.PipeTimeout" class="py-name" href="#" onclick="return doclink('link-16', 'PipeTimeout', 'link-16');">PipeTimeout</a></tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-17" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-17', 'paramiko', 'link-0');">paramiko</a></tt> <tt class="py-keyword">import</tt> <tt id="link-18" class="py-name" targets="Module paramiko.pipe=paramiko.pipe-module.html"><a title="paramiko.pipe" class="py-name" href="#" onclick="return doclink('link-18', 'pipe', 'link-18');">pipe</a></tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"><tt class="py-comment"># lower bound on the max packet size we'll accept from the remote host</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"><tt id="link-19" class="py-name" targets="Variable paramiko.channel.MIN_PACKET_SIZE=paramiko.channel-module.html#MIN_PACKET_SIZE"><a title="paramiko.channel.MIN_PACKET_SIZE" class="py-name" href="#" onclick="return doclink('link-19', 'MIN_PACKET_SIZE', 'link-19');">MIN_PACKET_SIZE</a></tt> <tt class="py-op">=</tt> <tt class="py-number">1024</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> </tt>
-<a name="Channel"></a><div id="Channel-def"><a name="L43"></a><tt class="py-lineno"> 43</tt> <a class="py-toggle" href="#" id="Channel-toggle" onclick="return toggle('Channel');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html">Channel</a> <tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel-collapsed" style="display:none;" pad="++++" indent="++++"></div><div id="Channel-expanded"><a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"><tt class="py-docstring"> A secure tunnel across an SSH L{Transport}. A Channel is meant to behave</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"><tt class="py-docstring"> like a socket, and has an API that should be indistinguishable from the</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"><tt class="py-docstring"> python socket API.</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"><tt class="py-docstring"> Because SSH2 has a windowing kind of flow control, if you stop reading data</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"><tt class="py-docstring"> from a Channel and its buffer fills up, the server will be unable to send</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"><tt class="py-docstring"> you any more data until you read some of it. (This won't affect other</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"><tt class="py-docstring"> channels on the same transport -- all channels on a single transport are</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"><tt class="py-docstring"> flow-controlled independently.) Similarly, if the server isn't reading</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"><tt class="py-docstring"> data you send, calls to L{send} may block, unless you set a timeout. This</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"><tt class="py-docstring"> is exactly like a normal network socket, so it shouldn't be too surprising.</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> </tt>
-<a name="Channel.__init__"></a><div id="Channel.__init__-def"><a name="L58"></a><tt class="py-lineno"> 58</tt> <a class="py-toggle" href="#" id="Channel.__init__-toggle" onclick="return toggle('Channel.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">chanid</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.__init__-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.__init__-expanded"><a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"><tt class="py-docstring"> Create a new channel. The channel is not associated with any</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"><tt class="py-docstring"> particular session or L{Transport} until the Transport attaches it.</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"><tt class="py-docstring"> Normally you would only call this method from the constructor of a</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"><tt class="py-docstring"> subclass of L{Channel}.</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"><tt class="py-docstring"> @param chanid: the ID of this channel, as passed by an existing</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"><tt class="py-docstring"> L{Transport}.</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"><tt class="py-docstring"> @type chanid: int</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">chanid</tt> <tt class="py-op">=</tt> <tt class="py-name">chanid</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_chanid</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name" targets="Module paramiko.transport=paramiko.transport-module.html"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-20', 'transport', 'link-20');">transport</a></tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">eof_received</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">eof_sent</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_buffer</tt> <tt class="py-op">=</tt> <tt id="link-21" class="py-name"><a title="paramiko.buffered_pipe.BufferedPipe" class="py-name" href="#" onclick="return doclink('link-21', 'BufferedPipe', 'link-15');">BufferedPipe</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_stderr_buffer</tt> <tt class="py-op">=</tt> <tt id="link-22" class="py-name"><a title="paramiko.buffered_pipe.BufferedPipe" class="py-name" href="#" onclick="return doclink('link-22', 'BufferedPipe', 'link-15');">BufferedPipe</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">closed</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ultra_debug</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt> <tt class="py-op">=</tt> <tt class="py-name">threading</tt><tt class="py-op">.</tt><tt class="py-name">Lock</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">out_buffer_cv</tt> <tt class="py-op">=</tt> <tt class="py-name">threading</tt><tt class="py-op">.</tt><tt class="py-name">Condition</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">)</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_window_size</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">out_window_size</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_max_packet_size</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">out_max_packet_size</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_window_threshold</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_window_sofar</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">status_event</tt> <tt class="py-op">=</tt> <tt class="py-name">threading</tt><tt class="py-op">.</tt><tt class="py-name">Event</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_name</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">chanid</tt><tt class="py-op">)</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name" targets="Class paramiko.logging22.logger=paramiko.logging22.logger-class.html"><a title="paramiko.logging22.logger" class="py-name" href="#" onclick="return doclink('link-23', 'logger', 'link-23');">logger</a></tt> <tt class="py-op">=</tt> <tt id="link-24" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-24', 'util', 'link-3');">util</a></tt><tt class="py-op">.</tt><tt id="link-25" class="py-name" targets="Function paramiko.util.get_logger()=paramiko.util-module.html#get_logger"><a title="paramiko.util.get_logger" class="py-name" href="#" onclick="return doclink('link-25', 'get_logger', 'link-25');">get_logger</a></tt><tt class="py-op">(</tt><tt class="py-string">'paramiko.transport'</tt><tt class="py-op">)</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pipe</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">event</tt> <tt class="py-op">=</tt> <tt class="py-name">threading</tt><tt class="py-op">.</tt><tt class="py-name">Event</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">event_ready</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">combine_stderr</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">exit_status</tt> <tt class="py-op">=</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">origin_addr</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> </tt>
-<a name="Channel.__del__"></a><div id="Channel.__del__-def"><a name="L98"></a><tt class="py-lineno"> 98</tt> <a class="py-toggle" href="#" id="Channel.__del__-toggle" onclick="return toggle('Channel.__del__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#__del__">__del__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.__del__-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.__del__-expanded"><a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L100"></a><tt class="py-lineno"> 100</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name" targets="Method paramiko.Agent.close()=paramiko.Agent-class.html#close,Method paramiko.BufferedFile.close()=paramiko.BufferedFile-class.html#close,Method paramiko.Channel.close()=paramiko.Channel-class.html#close,Method paramiko.SFTPClient.close()=paramiko.SFTPClient-class.html#close,Method paramiko.SFTPFile.close()=paramiko.SFTPFile-class.html#close,Method paramiko.SFTPHandle.close()=paramiko.SFTPHandle-class.html#close,Method paramiko.SSHClient.close()=paramiko.SSHClient-class.html#close,Method paramiko.Transport.close()=paramiko.Transport-class.html#close,Method paramiko.buffered_pipe.BufferedPipe.close()=paramiko.buffered_pipe.BufferedPipe-class.html#close,Method paramiko.pipe.PosixPipe.close()=paramiko.pipe.PosixPipe-class.html#close,Method paramiko.pipe.WindowsPipe.close()=paramiko.pipe.WindowsPipe-class.html#close,Method paramiko.win_pageant.PageantConnection.close()=paramiko.win_pageant.PageantConnection-class.html#close"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-26', 'close', 'link-26');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L101"></a><tt class="py-lineno"> 101</tt> <tt class="py-line"> <tt class="py-keyword">except</tt><tt class="py-op">:</tt> </tt>
-<a name="L102"></a><tt class="py-lineno"> 102</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-</div><a name="L103"></a><tt class="py-lineno"> 103</tt> <tt class="py-line"> </tt>
-<a name="Channel.__repr__"></a><div id="Channel.__repr__-def"><a name="L104"></a><tt class="py-lineno"> 104</tt> <a class="py-toggle" href="#" id="Channel.__repr__-toggle" onclick="return toggle('Channel.__repr__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#__repr__">__repr__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.__repr__-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.__repr__-expanded"><a name="L105"></a><tt class="py-lineno"> 105</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L106"></a><tt class="py-lineno"> 106</tt> <tt class="py-line"><tt class="py-docstring"> Return a string representation of this object, for debugging.</tt> </tt>
-<a name="L107"></a><tt class="py-lineno"> 107</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L108"></a><tt class="py-lineno"> 108</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: str</tt> </tt>
-<a name="L109"></a><tt class="py-lineno"> 109</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L110"></a><tt class="py-lineno"> 110</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt class="py-string">'&lt;paramiko.Channel %d'</tt> <tt class="py-op">%</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">chanid</tt> </tt>
-<a name="L111"></a><tt class="py-lineno"> 111</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">closed</tt><tt class="py-op">:</tt> </tt>
-<a name="L112"></a><tt class="py-lineno"> 112</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">+=</tt> <tt class="py-string">' (closed)'</tt> </tt>
-<a name="L113"></a><tt class="py-lineno"> 113</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt><tt class="py-op">:</tt> </tt>
-<a name="L114"></a><tt class="py-lineno"> 114</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">eof_received</tt><tt class="py-op">:</tt> </tt>
-<a name="L115"></a><tt class="py-lineno"> 115</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">+=</tt> <tt class="py-string">' (EOF received)'</tt> </tt>
-<a name="L116"></a><tt class="py-lineno"> 116</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">eof_sent</tt><tt class="py-op">:</tt> </tt>
-<a name="L117"></a><tt class="py-lineno"> 117</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">+=</tt> <tt class="py-string">' (EOF sent)'</tt> </tt>
-<a name="L118"></a><tt class="py-lineno"> 118</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">+=</tt> <tt class="py-string">' (open) window=%d'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">out_window_size</tt><tt class="py-op">)</tt> </tt>
-<a name="L119"></a><tt class="py-lineno"> 119</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_buffer</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L120"></a><tt class="py-lineno"> 120</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">+=</tt> <tt class="py-string">' in-buffer=%d'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_buffer</tt><tt class="py-op">)</tt><tt class="py-op">,</tt><tt class="py-op">)</tt> </tt>
-<a name="L121"></a><tt class="py-lineno"> 121</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">+=</tt> <tt class="py-string">' -&gt; '</tt> <tt class="py-op">+</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-27', 'transport', 'link-20');">transport</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L122"></a><tt class="py-lineno"> 122</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">+=</tt> <tt class="py-string">'&gt;'</tt> </tt>
-<a name="L123"></a><tt class="py-lineno"> 123</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">out</tt> </tt>
-</div><a name="L124"></a><tt class="py-lineno"> 124</tt> <tt class="py-line"> </tt>
-<a name="Channel.get_pty"></a><div id="Channel.get_pty-def"><a name="L125"></a><tt class="py-lineno"> 125</tt> <a class="py-toggle" href="#" id="Channel.get_pty-toggle" onclick="return toggle('Channel.get_pty');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#get_pty">get_pty</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">term</tt><tt class="py-op">=</tt><tt class="py-string">'vt100'</tt><tt class="py-op">,</tt> <tt class="py-param">width</tt><tt class="py-op">=</tt><tt class="py-number">80</tt><tt class="py-op">,</tt> <tt class="py-param">height</tt><tt class="py-op">=</tt><tt class="py-number">24</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.get_pty-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.get_pty-expanded"><a name="L126"></a><tt class="py-lineno"> 126</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L127"></a><tt class="py-lineno"> 127</tt> <tt class="py-line"><tt class="py-docstring"> Request a pseudo-terminal from the server. This is usually used right</tt> </tt>
-<a name="L128"></a><tt class="py-lineno"> 128</tt> <tt class="py-line"><tt class="py-docstring"> after creating a client channel, to ask the server to provide some</tt> </tt>
-<a name="L129"></a><tt class="py-lineno"> 129</tt> <tt class="py-line"><tt class="py-docstring"> basic terminal semantics for a shell invoked with L{invoke_shell}.</tt> </tt>
-<a name="L130"></a><tt class="py-lineno"> 130</tt> <tt class="py-line"><tt class="py-docstring"> It isn't necessary (or desirable) to call this method if you're going</tt> </tt>
-<a name="L131"></a><tt class="py-lineno"> 131</tt> <tt class="py-line"><tt class="py-docstring"> to exectue a single command with L{exec_command}.</tt> </tt>
-<a name="L132"></a><tt class="py-lineno"> 132</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L133"></a><tt class="py-lineno"> 133</tt> <tt class="py-line"><tt class="py-docstring"> @param term: the terminal type to emulate (for example, C{'vt100'})</tt> </tt>
-<a name="L134"></a><tt class="py-lineno"> 134</tt> <tt class="py-line"><tt class="py-docstring"> @type term: str</tt> </tt>
-<a name="L135"></a><tt class="py-lineno"> 135</tt> <tt class="py-line"><tt class="py-docstring"> @param width: width (in characters) of the terminal screen</tt> </tt>
-<a name="L136"></a><tt class="py-lineno"> 136</tt> <tt class="py-line"><tt class="py-docstring"> @type width: int</tt> </tt>
-<a name="L137"></a><tt class="py-lineno"> 137</tt> <tt class="py-line"><tt class="py-docstring"> @param height: height (in characters) of the terminal screen</tt> </tt>
-<a name="L138"></a><tt class="py-lineno"> 138</tt> <tt class="py-line"><tt class="py-docstring"> @type height: int</tt> </tt>
-<a name="L139"></a><tt class="py-lineno"> 139</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L140"></a><tt class="py-lineno"> 140</tt> <tt class="py-line"><tt class="py-docstring"> @raise SSHException: if the request was rejected or the channel was</tt> </tt>
-<a name="L141"></a><tt class="py-lineno"> 141</tt> <tt class="py-line"><tt class="py-docstring"> closed</tt> </tt>
-<a name="L142"></a><tt class="py-lineno"> 142</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L143"></a><tt class="py-lineno"> 143</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">closed</tt> <tt class="py-keyword">or</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">eof_received</tt> <tt class="py-keyword">or</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">eof_sent</tt> <tt class="py-keyword">or</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt><tt class="py-op">:</tt> </tt>
-<a name="L144"></a><tt class="py-lineno"> 144</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-28" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-28', 'SSHException', 'link-9');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Channel is not open'</tt><tt class="py-op">)</tt> </tt>
-<a name="L145"></a><tt class="py-lineno"> 145</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-29" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-29', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L146"></a><tt class="py-lineno"> 146</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name" targets="Method paramiko.Message.add_byte()=paramiko.Message-class.html#add_byte"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-30', 'add_byte', 'link-30');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-31" class="py-name" targets="Variable paramiko.auth_handler.MSG_CHANNEL_REQUEST=paramiko.auth_handler-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.channel.MSG_CHANNEL_REQUEST=paramiko.channel-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.client.MSG_CHANNEL_REQUEST=paramiko.client-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.common.MSG_CHANNEL_REQUEST=paramiko.common-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.dsskey.MSG_CHANNEL_REQUEST=paramiko.dsskey-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.hostkeys.MSG_CHANNEL_REQUEST=paramiko.hostkeys-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.kex_gex.MSG_CHANNEL_REQUEST=paramiko.kex_gex-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.kex_group1.MSG_CHANNEL_REQUEST=paramiko.kex_group1-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.packet.MSG_CHANNEL_REQUEST=paramiko.packet-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.pkey.MSG_CHANNEL_REQUEST=paramiko.pkey-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.rsakey.MSG_CHANNEL_REQUEST=paramiko.rsakey-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.server.MSG_CHANNEL_REQUEST=paramiko.server-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.sftp.MSG_CHANNEL_REQUEST=paramiko.sftp-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.sftp_attr.MSG_CHANNEL_REQUEST=paramiko.sftp_attr-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.sftp_client.MSG_CHANNEL_REQUEST=paramiko.sftp_client-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.sftp_file.MSG_CHANNEL_REQUEST=paramiko.sftp_file-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.sftp_handle.MSG_CHANNEL_REQUEST=paramiko.sftp_handle-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.sftp_server.MSG_CHANNEL_REQUEST=paramiko.sftp_server-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.sftp_si.MSG_CHANNEL_REQUEST=paramiko.sftp_si-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.transport.MSG_CHANNEL_REQUEST=paramiko.transport-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.util.MSG_CHANNEL_REQUEST=paramiko.util-module.html#MSG_CHANNEL_REQUEST"><a title="paramiko.auth_handler.MSG_CHANNEL_REQUEST
-paramiko.channel.MSG_CHANNEL_REQUEST
-paramiko.client.MSG_CHANNEL_REQUEST
-paramiko.common.MSG_CHANNEL_REQUEST
-paramiko.dsskey.MSG_CHANNEL_REQUEST
-paramiko.hostkeys.MSG_CHANNEL_REQUEST
-paramiko.kex_gex.MSG_CHANNEL_REQUEST
-paramiko.kex_group1.MSG_CHANNEL_REQUEST
-paramiko.packet.MSG_CHANNEL_REQUEST
-paramiko.pkey.MSG_CHANNEL_REQUEST
-paramiko.rsakey.MSG_CHANNEL_REQUEST
-paramiko.server.MSG_CHANNEL_REQUEST
-paramiko.sftp.MSG_CHANNEL_REQUEST
-paramiko.sftp_attr.MSG_CHANNEL_REQUEST
-paramiko.sftp_client.MSG_CHANNEL_REQUEST
-paramiko.sftp_file.MSG_CHANNEL_REQUEST
-paramiko.sftp_handle.MSG_CHANNEL_REQUEST
-paramiko.sftp_server.MSG_CHANNEL_REQUEST
-paramiko.sftp_si.MSG_CHANNEL_REQUEST
-paramiko.transport.MSG_CHANNEL_REQUEST
-paramiko.util.MSG_CHANNEL_REQUEST" class="py-name" href="#" onclick="return doclink('link-31', 'MSG_CHANNEL_REQUEST', 'link-31');">MSG_CHANNEL_REQUEST</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L147"></a><tt class="py-lineno"> 147</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name" targets="Method paramiko.Message.add_int()=paramiko.Message-class.html#add_int"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-32', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_chanid</tt><tt class="py-op">)</tt> </tt>
-<a name="L148"></a><tt class="py-lineno"> 148</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name" targets="Method paramiko.Message.add_string()=paramiko.Message-class.html#add_string"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-33', 'add_string', 'link-33');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-string">'pty-req'</tt><tt class="py-op">)</tt> </tt>
-<a name="L149"></a><tt class="py-lineno"> 149</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name" targets="Method paramiko.Message.add_boolean()=paramiko.Message-class.html#add_boolean"><a title="paramiko.Message.add_boolean" class="py-name" href="#" onclick="return doclink('link-34', 'add_boolean', 'link-34');">add_boolean</a></tt><tt class="py-op">(</tt><tt class="py-name">True</tt><tt class="py-op">)</tt> </tt>
-<a name="L150"></a><tt class="py-lineno"> 150</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-35', 'add_string', 'link-33');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">term</tt><tt class="py-op">)</tt> </tt>
-<a name="L151"></a><tt class="py-lineno"> 151</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-36', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">width</tt><tt class="py-op">)</tt> </tt>
-<a name="L152"></a><tt class="py-lineno"> 152</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-37', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">height</tt><tt class="py-op">)</tt> </tt>
-<a name="L153"></a><tt class="py-lineno"> 153</tt> <tt class="py-line"> <tt class="py-comment"># pixel height, width (usually useless)</tt> </tt>
-<a name="L154"></a><tt class="py-lineno"> 154</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-38', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-39', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L155"></a><tt class="py-lineno"> 155</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-40', 'add_string', 'link-33');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-string">''</tt><tt class="py-op">)</tt> </tt>
-<a name="L156"></a><tt class="py-lineno"> 156</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_event_pending</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L157"></a><tt class="py-lineno"> 157</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-41', 'transport', 'link-20');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_user_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L158"></a><tt class="py-lineno"> 158</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_wait_for_event</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L159"></a><tt class="py-lineno"> 159</tt> <tt class="py-line"> </tt>
-<a name="Channel.invoke_shell"></a><div id="Channel.invoke_shell-def"><a name="L160"></a><tt class="py-lineno"> 160</tt> <a class="py-toggle" href="#" id="Channel.invoke_shell-toggle" onclick="return toggle('Channel.invoke_shell');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#invoke_shell">invoke_shell</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.invoke_shell-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.invoke_shell-expanded"><a name="L161"></a><tt class="py-lineno"> 161</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L162"></a><tt class="py-lineno"> 162</tt> <tt class="py-line"><tt class="py-docstring"> Request an interactive shell session on this channel. If the server</tt> </tt>
-<a name="L163"></a><tt class="py-lineno"> 163</tt> <tt class="py-line"><tt class="py-docstring"> allows it, the channel will then be directly connected to the stdin,</tt> </tt>
-<a name="L164"></a><tt class="py-lineno"> 164</tt> <tt class="py-line"><tt class="py-docstring"> stdout, and stderr of the shell.</tt> </tt>
-<a name="L165"></a><tt class="py-lineno"> 165</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L166"></a><tt class="py-lineno"> 166</tt> <tt class="py-line"><tt class="py-docstring"> Normally you would call L{get_pty} before this, in which case the</tt> </tt>
-<a name="L167"></a><tt class="py-lineno"> 167</tt> <tt class="py-line"><tt class="py-docstring"> shell will operate through the pty, and the channel will be connected</tt> </tt>
-<a name="L168"></a><tt class="py-lineno"> 168</tt> <tt class="py-line"><tt class="py-docstring"> to the stdin and stdout of the pty.</tt> </tt>
-<a name="L169"></a><tt class="py-lineno"> 169</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L170"></a><tt class="py-lineno"> 170</tt> <tt class="py-line"><tt class="py-docstring"> When the shell exits, the channel will be closed and can't be reused.</tt> </tt>
-<a name="L171"></a><tt class="py-lineno"> 171</tt> <tt class="py-line"><tt class="py-docstring"> You must open a new channel if you wish to open another shell.</tt> </tt>
-<a name="L172"></a><tt class="py-lineno"> 172</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L173"></a><tt class="py-lineno"> 173</tt> <tt class="py-line"><tt class="py-docstring"> @raise SSHException: if the request was rejected or the channel was</tt> </tt>
-<a name="L174"></a><tt class="py-lineno"> 174</tt> <tt class="py-line"><tt class="py-docstring"> closed</tt> </tt>
-<a name="L175"></a><tt class="py-lineno"> 175</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L176"></a><tt class="py-lineno"> 176</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">closed</tt> <tt class="py-keyword">or</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">eof_received</tt> <tt class="py-keyword">or</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">eof_sent</tt> <tt class="py-keyword">or</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt><tt class="py-op">:</tt> </tt>
-<a name="L177"></a><tt class="py-lineno"> 177</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-42" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-42', 'SSHException', 'link-9');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Channel is not open'</tt><tt class="py-op">)</tt> </tt>
-<a name="L178"></a><tt class="py-lineno"> 178</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-43" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-43', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L179"></a><tt class="py-lineno"> 179</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-44" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-44', 'add_byte', 'link-30');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-45" class="py-name"><a title="paramiko.auth_handler.MSG_CHANNEL_REQUEST
-paramiko.channel.MSG_CHANNEL_REQUEST
-paramiko.client.MSG_CHANNEL_REQUEST
-paramiko.common.MSG_CHANNEL_REQUEST
-paramiko.dsskey.MSG_CHANNEL_REQUEST
-paramiko.hostkeys.MSG_CHANNEL_REQUEST
-paramiko.kex_gex.MSG_CHANNEL_REQUEST
-paramiko.kex_group1.MSG_CHANNEL_REQUEST
-paramiko.packet.MSG_CHANNEL_REQUEST
-paramiko.pkey.MSG_CHANNEL_REQUEST
-paramiko.rsakey.MSG_CHANNEL_REQUEST
-paramiko.server.MSG_CHANNEL_REQUEST
-paramiko.sftp.MSG_CHANNEL_REQUEST
-paramiko.sftp_attr.MSG_CHANNEL_REQUEST
-paramiko.sftp_client.MSG_CHANNEL_REQUEST
-paramiko.sftp_file.MSG_CHANNEL_REQUEST
-paramiko.sftp_handle.MSG_CHANNEL_REQUEST
-paramiko.sftp_server.MSG_CHANNEL_REQUEST
-paramiko.sftp_si.MSG_CHANNEL_REQUEST
-paramiko.transport.MSG_CHANNEL_REQUEST
-paramiko.util.MSG_CHANNEL_REQUEST" class="py-name" href="#" onclick="return doclink('link-45', 'MSG_CHANNEL_REQUEST', 'link-31');">MSG_CHANNEL_REQUEST</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L180"></a><tt class="py-lineno"> 180</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-46" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-46', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_chanid</tt><tt class="py-op">)</tt> </tt>
-<a name="L181"></a><tt class="py-lineno"> 181</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-47" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-47', 'add_string', 'link-33');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-string">'shell'</tt><tt class="py-op">)</tt> </tt>
-<a name="L182"></a><tt class="py-lineno"> 182</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-48" class="py-name"><a title="paramiko.Message.add_boolean" class="py-name" href="#" onclick="return doclink('link-48', 'add_boolean', 'link-34');">add_boolean</a></tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L183"></a><tt class="py-lineno"> 183</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_event_pending</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L184"></a><tt class="py-lineno"> 184</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-49" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-49', 'transport', 'link-20');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_user_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L185"></a><tt class="py-lineno"> 185</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_wait_for_event</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L186"></a><tt class="py-lineno"> 186</tt> <tt class="py-line"> </tt>
-<a name="Channel.exec_command"></a><div id="Channel.exec_command-def"><a name="L187"></a><tt class="py-lineno"> 187</tt> <a class="py-toggle" href="#" id="Channel.exec_command-toggle" onclick="return toggle('Channel.exec_command');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#exec_command">exec_command</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">command</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.exec_command-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.exec_command-expanded"><a name="L188"></a><tt class="py-lineno"> 188</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L189"></a><tt class="py-lineno"> 189</tt> <tt class="py-line"><tt class="py-docstring"> Execute a command on the server. If the server allows it, the channel</tt> </tt>
-<a name="L190"></a><tt class="py-lineno"> 190</tt> <tt class="py-line"><tt class="py-docstring"> will then be directly connected to the stdin, stdout, and stderr of</tt> </tt>
-<a name="L191"></a><tt class="py-lineno"> 191</tt> <tt class="py-line"><tt class="py-docstring"> the command being executed.</tt> </tt>
-<a name="L192"></a><tt class="py-lineno"> 192</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L193"></a><tt class="py-lineno"> 193</tt> <tt class="py-line"><tt class="py-docstring"> When the command finishes executing, the channel will be closed and</tt> </tt>
-<a name="L194"></a><tt class="py-lineno"> 194</tt> <tt class="py-line"><tt class="py-docstring"> can't be reused. You must open a new channel if you wish to execute</tt> </tt>
-<a name="L195"></a><tt class="py-lineno"> 195</tt> <tt class="py-line"><tt class="py-docstring"> another command.</tt> </tt>
-<a name="L196"></a><tt class="py-lineno"> 196</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L197"></a><tt class="py-lineno"> 197</tt> <tt class="py-line"><tt class="py-docstring"> @param command: a shell command to execute.</tt> </tt>
-<a name="L198"></a><tt class="py-lineno"> 198</tt> <tt class="py-line"><tt class="py-docstring"> @type command: str</tt> </tt>
-<a name="L199"></a><tt class="py-lineno"> 199</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L200"></a><tt class="py-lineno"> 200</tt> <tt class="py-line"><tt class="py-docstring"> @raise SSHException: if the request was rejected or the channel was</tt> </tt>
-<a name="L201"></a><tt class="py-lineno"> 201</tt> <tt class="py-line"><tt class="py-docstring"> closed</tt> </tt>
-<a name="L202"></a><tt class="py-lineno"> 202</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L203"></a><tt class="py-lineno"> 203</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">closed</tt> <tt class="py-keyword">or</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">eof_received</tt> <tt class="py-keyword">or</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">eof_sent</tt> <tt class="py-keyword">or</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt><tt class="py-op">:</tt> </tt>
-<a name="L204"></a><tt class="py-lineno"> 204</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-50" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-50', 'SSHException', 'link-9');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Channel is not open'</tt><tt class="py-op">)</tt> </tt>
-<a name="L205"></a><tt class="py-lineno"> 205</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-51" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-51', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L206"></a><tt class="py-lineno"> 206</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-52" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-52', 'add_byte', 'link-30');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-53" class="py-name"><a title="paramiko.auth_handler.MSG_CHANNEL_REQUEST
-paramiko.channel.MSG_CHANNEL_REQUEST
-paramiko.client.MSG_CHANNEL_REQUEST
-paramiko.common.MSG_CHANNEL_REQUEST
-paramiko.dsskey.MSG_CHANNEL_REQUEST
-paramiko.hostkeys.MSG_CHANNEL_REQUEST
-paramiko.kex_gex.MSG_CHANNEL_REQUEST
-paramiko.kex_group1.MSG_CHANNEL_REQUEST
-paramiko.packet.MSG_CHANNEL_REQUEST
-paramiko.pkey.MSG_CHANNEL_REQUEST
-paramiko.rsakey.MSG_CHANNEL_REQUEST
-paramiko.server.MSG_CHANNEL_REQUEST
-paramiko.sftp.MSG_CHANNEL_REQUEST
-paramiko.sftp_attr.MSG_CHANNEL_REQUEST
-paramiko.sftp_client.MSG_CHANNEL_REQUEST
-paramiko.sftp_file.MSG_CHANNEL_REQUEST
-paramiko.sftp_handle.MSG_CHANNEL_REQUEST
-paramiko.sftp_server.MSG_CHANNEL_REQUEST
-paramiko.sftp_si.MSG_CHANNEL_REQUEST
-paramiko.transport.MSG_CHANNEL_REQUEST
-paramiko.util.MSG_CHANNEL_REQUEST" class="py-name" href="#" onclick="return doclink('link-53', 'MSG_CHANNEL_REQUEST', 'link-31');">MSG_CHANNEL_REQUEST</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L207"></a><tt class="py-lineno"> 207</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-54" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-54', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_chanid</tt><tt class="py-op">)</tt> </tt>
-<a name="L208"></a><tt class="py-lineno"> 208</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-55" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-55', 'add_string', 'link-33');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-string">'exec'</tt><tt class="py-op">)</tt> </tt>
-<a name="L209"></a><tt class="py-lineno"> 209</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-56" class="py-name"><a title="paramiko.Message.add_boolean" class="py-name" href="#" onclick="return doclink('link-56', 'add_boolean', 'link-34');">add_boolean</a></tt><tt class="py-op">(</tt><tt class="py-name">True</tt><tt class="py-op">)</tt> </tt>
-<a name="L210"></a><tt class="py-lineno"> 210</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-57" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-57', 'add_string', 'link-33');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">command</tt><tt class="py-op">)</tt> </tt>
-<a name="L211"></a><tt class="py-lineno"> 211</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_event_pending</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L212"></a><tt class="py-lineno"> 212</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-58" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-58', 'transport', 'link-20');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_user_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L213"></a><tt class="py-lineno"> 213</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_wait_for_event</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L214"></a><tt class="py-lineno"> 214</tt> <tt class="py-line"> </tt>
-<a name="Channel.invoke_subsystem"></a><div id="Channel.invoke_subsystem-def"><a name="L215"></a><tt class="py-lineno"> 215</tt> <a class="py-toggle" href="#" id="Channel.invoke_subsystem-toggle" onclick="return toggle('Channel.invoke_subsystem');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#invoke_subsystem">invoke_subsystem</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">subsystem</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.invoke_subsystem-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.invoke_subsystem-expanded"><a name="L216"></a><tt class="py-lineno"> 216</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L217"></a><tt class="py-lineno"> 217</tt> <tt class="py-line"><tt class="py-docstring"> Request a subsystem on the server (for example, C{sftp}). If the</tt> </tt>
-<a name="L218"></a><tt class="py-lineno"> 218</tt> <tt class="py-line"><tt class="py-docstring"> server allows it, the channel will then be directly connected to the</tt> </tt>
-<a name="L219"></a><tt class="py-lineno"> 219</tt> <tt class="py-line"><tt class="py-docstring"> requested subsystem.</tt> </tt>
-<a name="L220"></a><tt class="py-lineno"> 220</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L221"></a><tt class="py-lineno"> 221</tt> <tt class="py-line"><tt class="py-docstring"> When the subsystem finishes, the channel will be closed and can't be</tt> </tt>
-<a name="L222"></a><tt class="py-lineno"> 222</tt> <tt class="py-line"><tt class="py-docstring"> reused.</tt> </tt>
-<a name="L223"></a><tt class="py-lineno"> 223</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L224"></a><tt class="py-lineno"> 224</tt> <tt class="py-line"><tt class="py-docstring"> @param subsystem: name of the subsystem being requested.</tt> </tt>
-<a name="L225"></a><tt class="py-lineno"> 225</tt> <tt class="py-line"><tt class="py-docstring"> @type subsystem: str</tt> </tt>
-<a name="L226"></a><tt class="py-lineno"> 226</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L227"></a><tt class="py-lineno"> 227</tt> <tt class="py-line"><tt class="py-docstring"> @raise SSHException: if the request was rejected or the channel was</tt> </tt>
-<a name="L228"></a><tt class="py-lineno"> 228</tt> <tt class="py-line"><tt class="py-docstring"> closed</tt> </tt>
-<a name="L229"></a><tt class="py-lineno"> 229</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L230"></a><tt class="py-lineno"> 230</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">closed</tt> <tt class="py-keyword">or</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">eof_received</tt> <tt class="py-keyword">or</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">eof_sent</tt> <tt class="py-keyword">or</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt><tt class="py-op">:</tt> </tt>
-<a name="L231"></a><tt class="py-lineno"> 231</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-59" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-59', 'SSHException', 'link-9');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Channel is not open'</tt><tt class="py-op">)</tt> </tt>
-<a name="L232"></a><tt class="py-lineno"> 232</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-60" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-60', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L233"></a><tt class="py-lineno"> 233</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-61" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-61', 'add_byte', 'link-30');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-62" class="py-name"><a title="paramiko.auth_handler.MSG_CHANNEL_REQUEST
-paramiko.channel.MSG_CHANNEL_REQUEST
-paramiko.client.MSG_CHANNEL_REQUEST
-paramiko.common.MSG_CHANNEL_REQUEST
-paramiko.dsskey.MSG_CHANNEL_REQUEST
-paramiko.hostkeys.MSG_CHANNEL_REQUEST
-paramiko.kex_gex.MSG_CHANNEL_REQUEST
-paramiko.kex_group1.MSG_CHANNEL_REQUEST
-paramiko.packet.MSG_CHANNEL_REQUEST
-paramiko.pkey.MSG_CHANNEL_REQUEST
-paramiko.rsakey.MSG_CHANNEL_REQUEST
-paramiko.server.MSG_CHANNEL_REQUEST
-paramiko.sftp.MSG_CHANNEL_REQUEST
-paramiko.sftp_attr.MSG_CHANNEL_REQUEST
-paramiko.sftp_client.MSG_CHANNEL_REQUEST
-paramiko.sftp_file.MSG_CHANNEL_REQUEST
-paramiko.sftp_handle.MSG_CHANNEL_REQUEST
-paramiko.sftp_server.MSG_CHANNEL_REQUEST
-paramiko.sftp_si.MSG_CHANNEL_REQUEST
-paramiko.transport.MSG_CHANNEL_REQUEST
-paramiko.util.MSG_CHANNEL_REQUEST" class="py-name" href="#" onclick="return doclink('link-62', 'MSG_CHANNEL_REQUEST', 'link-31');">MSG_CHANNEL_REQUEST</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L234"></a><tt class="py-lineno"> 234</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-63" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-63', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_chanid</tt><tt class="py-op">)</tt> </tt>
-<a name="L235"></a><tt class="py-lineno"> 235</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-64" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-64', 'add_string', 'link-33');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-string">'subsystem'</tt><tt class="py-op">)</tt> </tt>
-<a name="L236"></a><tt class="py-lineno"> 236</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-65" class="py-name"><a title="paramiko.Message.add_boolean" class="py-name" href="#" onclick="return doclink('link-65', 'add_boolean', 'link-34');">add_boolean</a></tt><tt class="py-op">(</tt><tt class="py-name">True</tt><tt class="py-op">)</tt> </tt>
-<a name="L237"></a><tt class="py-lineno"> 237</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-66" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-66', 'add_string', 'link-33');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">subsystem</tt><tt class="py-op">)</tt> </tt>
-<a name="L238"></a><tt class="py-lineno"> 238</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_event_pending</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L239"></a><tt class="py-lineno"> 239</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-67" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-67', 'transport', 'link-20');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_user_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L240"></a><tt class="py-lineno"> 240</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_wait_for_event</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L241"></a><tt class="py-lineno"> 241</tt> <tt class="py-line"> </tt>
-<a name="Channel.resize_pty"></a><div id="Channel.resize_pty-def"><a name="L242"></a><tt class="py-lineno"> 242</tt> <a class="py-toggle" href="#" id="Channel.resize_pty-toggle" onclick="return toggle('Channel.resize_pty');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#resize_pty">resize_pty</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">width</tt><tt class="py-op">=</tt><tt class="py-number">80</tt><tt class="py-op">,</tt> <tt class="py-param">height</tt><tt class="py-op">=</tt><tt class="py-number">24</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.resize_pty-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.resize_pty-expanded"><a name="L243"></a><tt class="py-lineno"> 243</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L244"></a><tt class="py-lineno"> 244</tt> <tt class="py-line"><tt class="py-docstring"> Resize the pseudo-terminal. This can be used to change the width and</tt> </tt>
-<a name="L245"></a><tt class="py-lineno"> 245</tt> <tt class="py-line"><tt class="py-docstring"> height of the terminal emulation created in a previous L{get_pty} call.</tt> </tt>
-<a name="L246"></a><tt class="py-lineno"> 246</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L247"></a><tt class="py-lineno"> 247</tt> <tt class="py-line"><tt class="py-docstring"> @param width: new width (in characters) of the terminal screen</tt> </tt>
-<a name="L248"></a><tt class="py-lineno"> 248</tt> <tt class="py-line"><tt class="py-docstring"> @type width: int</tt> </tt>
-<a name="L249"></a><tt class="py-lineno"> 249</tt> <tt class="py-line"><tt class="py-docstring"> @param height: new height (in characters) of the terminal screen</tt> </tt>
-<a name="L250"></a><tt class="py-lineno"> 250</tt> <tt class="py-line"><tt class="py-docstring"> @type height: int</tt> </tt>
-<a name="L251"></a><tt class="py-lineno"> 251</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L252"></a><tt class="py-lineno"> 252</tt> <tt class="py-line"><tt class="py-docstring"> @raise SSHException: if the request was rejected or the channel was</tt> </tt>
-<a name="L253"></a><tt class="py-lineno"> 253</tt> <tt class="py-line"><tt class="py-docstring"> closed</tt> </tt>
-<a name="L254"></a><tt class="py-lineno"> 254</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L255"></a><tt class="py-lineno"> 255</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">closed</tt> <tt class="py-keyword">or</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">eof_received</tt> <tt class="py-keyword">or</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">eof_sent</tt> <tt class="py-keyword">or</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt><tt class="py-op">:</tt> </tt>
-<a name="L256"></a><tt class="py-lineno"> 256</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-68" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-68', 'SSHException', 'link-9');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Channel is not open'</tt><tt class="py-op">)</tt> </tt>
-<a name="L257"></a><tt class="py-lineno"> 257</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-69" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-69', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L258"></a><tt class="py-lineno"> 258</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-70" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-70', 'add_byte', 'link-30');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-71" class="py-name"><a title="paramiko.auth_handler.MSG_CHANNEL_REQUEST
-paramiko.channel.MSG_CHANNEL_REQUEST
-paramiko.client.MSG_CHANNEL_REQUEST
-paramiko.common.MSG_CHANNEL_REQUEST
-paramiko.dsskey.MSG_CHANNEL_REQUEST
-paramiko.hostkeys.MSG_CHANNEL_REQUEST
-paramiko.kex_gex.MSG_CHANNEL_REQUEST
-paramiko.kex_group1.MSG_CHANNEL_REQUEST
-paramiko.packet.MSG_CHANNEL_REQUEST
-paramiko.pkey.MSG_CHANNEL_REQUEST
-paramiko.rsakey.MSG_CHANNEL_REQUEST
-paramiko.server.MSG_CHANNEL_REQUEST
-paramiko.sftp.MSG_CHANNEL_REQUEST
-paramiko.sftp_attr.MSG_CHANNEL_REQUEST
-paramiko.sftp_client.MSG_CHANNEL_REQUEST
-paramiko.sftp_file.MSG_CHANNEL_REQUEST
-paramiko.sftp_handle.MSG_CHANNEL_REQUEST
-paramiko.sftp_server.MSG_CHANNEL_REQUEST
-paramiko.sftp_si.MSG_CHANNEL_REQUEST
-paramiko.transport.MSG_CHANNEL_REQUEST
-paramiko.util.MSG_CHANNEL_REQUEST" class="py-name" href="#" onclick="return doclink('link-71', 'MSG_CHANNEL_REQUEST', 'link-31');">MSG_CHANNEL_REQUEST</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L259"></a><tt class="py-lineno"> 259</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-72" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-72', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_chanid</tt><tt class="py-op">)</tt> </tt>
-<a name="L260"></a><tt class="py-lineno"> 260</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-73" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-73', 'add_string', 'link-33');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-string">'window-change'</tt><tt class="py-op">)</tt> </tt>
-<a name="L261"></a><tt class="py-lineno"> 261</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-74" class="py-name"><a title="paramiko.Message.add_boolean" class="py-name" href="#" onclick="return doclink('link-74', 'add_boolean', 'link-34');">add_boolean</a></tt><tt class="py-op">(</tt><tt class="py-name">True</tt><tt class="py-op">)</tt> </tt>
-<a name="L262"></a><tt class="py-lineno"> 262</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-75" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-75', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">width</tt><tt class="py-op">)</tt> </tt>
-<a name="L263"></a><tt class="py-lineno"> 263</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-76" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-76', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">height</tt><tt class="py-op">)</tt> </tt>
-<a name="L264"></a><tt class="py-lineno"> 264</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-77" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-77', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-78" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-78', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L265"></a><tt class="py-lineno"> 265</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_event_pending</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L266"></a><tt class="py-lineno"> 266</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-79" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-79', 'transport', 'link-20');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_user_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L267"></a><tt class="py-lineno"> 267</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_wait_for_event</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L268"></a><tt class="py-lineno"> 268</tt> <tt class="py-line"> </tt>
-<a name="Channel.exit_status_ready"></a><div id="Channel.exit_status_ready-def"><a name="L269"></a><tt class="py-lineno"> 269</tt> <a class="py-toggle" href="#" id="Channel.exit_status_ready-toggle" onclick="return toggle('Channel.exit_status_ready');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#exit_status_ready">exit_status_ready</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.exit_status_ready-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.exit_status_ready-expanded"><a name="L270"></a><tt class="py-lineno"> 270</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L271"></a><tt class="py-lineno"> 271</tt> <tt class="py-line"><tt class="py-docstring"> Return true if the remote process has exited and returned an exit</tt> </tt>
-<a name="L272"></a><tt class="py-lineno"> 272</tt> <tt class="py-line"><tt class="py-docstring"> status. You may use this to poll the process status if you don't</tt> </tt>
-<a name="L273"></a><tt class="py-lineno"> 273</tt> <tt class="py-line"><tt class="py-docstring"> want to block in L{recv_exit_status}. Note that the server may not</tt> </tt>
-<a name="L274"></a><tt class="py-lineno"> 274</tt> <tt class="py-line"><tt class="py-docstring"> return an exit status in some cases (like bad servers).</tt> </tt>
-<a name="L275"></a><tt class="py-lineno"> 275</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L276"></a><tt class="py-lineno"> 276</tt> <tt class="py-line"><tt class="py-docstring"> @return: True if L{recv_exit_status} will return immediately</tt> </tt>
-<a name="L277"></a><tt class="py-lineno"> 277</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: bool</tt> </tt>
-<a name="L278"></a><tt class="py-lineno"> 278</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.7.3</tt> </tt>
-<a name="L279"></a><tt class="py-lineno"> 279</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L280"></a><tt class="py-lineno"> 280</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">closed</tt> <tt class="py-keyword">or</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">status_event</tt><tt class="py-op">.</tt><tt class="py-name">isSet</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L281"></a><tt class="py-lineno"> 281</tt> <tt class="py-line"> </tt>
-<a name="Channel.recv_exit_status"></a><div id="Channel.recv_exit_status-def"><a name="L282"></a><tt class="py-lineno"> 282</tt> <a class="py-toggle" href="#" id="Channel.recv_exit_status-toggle" onclick="return toggle('Channel.recv_exit_status');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#recv_exit_status">recv_exit_status</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.recv_exit_status-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.recv_exit_status-expanded"><a name="L283"></a><tt class="py-lineno"> 283</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L284"></a><tt class="py-lineno"> 284</tt> <tt class="py-line"><tt class="py-docstring"> Return the exit status from the process on the server. This is</tt> </tt>
-<a name="L285"></a><tt class="py-lineno"> 285</tt> <tt class="py-line"><tt class="py-docstring"> mostly useful for retrieving the reults of an L{exec_command}.</tt> </tt>
-<a name="L286"></a><tt class="py-lineno"> 286</tt> <tt class="py-line"><tt class="py-docstring"> If the command hasn't finished yet, this method will wait until</tt> </tt>
-<a name="L287"></a><tt class="py-lineno"> 287</tt> <tt class="py-line"><tt class="py-docstring"> it does, or until the channel is closed. If no exit status is</tt> </tt>
-<a name="L288"></a><tt class="py-lineno"> 288</tt> <tt class="py-line"><tt class="py-docstring"> provided by the server, -1 is returned.</tt> </tt>
-<a name="L289"></a><tt class="py-lineno"> 289</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L290"></a><tt class="py-lineno"> 290</tt> <tt class="py-line"><tt class="py-docstring"> @return: the exit code of the process on the server.</tt> </tt>
-<a name="L291"></a><tt class="py-lineno"> 291</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: int</tt> </tt>
-<a name="L292"></a><tt class="py-lineno"> 292</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L293"></a><tt class="py-lineno"> 293</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.2</tt> </tt>
-<a name="L294"></a><tt class="py-lineno"> 294</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L295"></a><tt class="py-lineno"> 295</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">status_event</tt><tt class="py-op">.</tt><tt class="py-name">wait</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L296"></a><tt class="py-lineno"> 296</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">status_event</tt><tt class="py-op">.</tt><tt class="py-name">isSet</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L297"></a><tt class="py-lineno"> 297</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">exit_status</tt> </tt>
-</div><a name="L298"></a><tt class="py-lineno"> 298</tt> <tt class="py-line"> </tt>
-<a name="Channel.send_exit_status"></a><div id="Channel.send_exit_status-def"><a name="L299"></a><tt class="py-lineno"> 299</tt> <a class="py-toggle" href="#" id="Channel.send_exit_status-toggle" onclick="return toggle('Channel.send_exit_status');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#send_exit_status">send_exit_status</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">status</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.send_exit_status-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.send_exit_status-expanded"><a name="L300"></a><tt class="py-lineno"> 300</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L301"></a><tt class="py-lineno"> 301</tt> <tt class="py-line"><tt class="py-docstring"> Send the exit status of an executed command to the client. (This</tt> </tt>
-<a name="L302"></a><tt class="py-lineno"> 302</tt> <tt class="py-line"><tt class="py-docstring"> really only makes sense in server mode.) Many clients expect to</tt> </tt>
-<a name="L303"></a><tt class="py-lineno"> 303</tt> <tt class="py-line"><tt class="py-docstring"> get some sort of status code back from an executed command after</tt> </tt>
-<a name="L304"></a><tt class="py-lineno"> 304</tt> <tt class="py-line"><tt class="py-docstring"> it completes.</tt> </tt>
-<a name="L305"></a><tt class="py-lineno"> 305</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L306"></a><tt class="py-lineno"> 306</tt> <tt class="py-line"><tt class="py-docstring"> @param status: the exit code of the process</tt> </tt>
-<a name="L307"></a><tt class="py-lineno"> 307</tt> <tt class="py-line"><tt class="py-docstring"> @type status: int</tt> </tt>
-<a name="L308"></a><tt class="py-lineno"> 308</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L309"></a><tt class="py-lineno"> 309</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.2</tt> </tt>
-<a name="L310"></a><tt class="py-lineno"> 310</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L311"></a><tt class="py-lineno"> 311</tt> <tt class="py-line"> <tt class="py-comment"># in many cases, the channel will not still be open here.</tt> </tt>
-<a name="L312"></a><tt class="py-lineno"> 312</tt> <tt class="py-line"> <tt class="py-comment"># that's fine.</tt> </tt>
-<a name="L313"></a><tt class="py-lineno"> 313</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-80" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-80', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L314"></a><tt class="py-lineno"> 314</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-81" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-81', 'add_byte', 'link-30');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-82" class="py-name"><a title="paramiko.auth_handler.MSG_CHANNEL_REQUEST
-paramiko.channel.MSG_CHANNEL_REQUEST
-paramiko.client.MSG_CHANNEL_REQUEST
-paramiko.common.MSG_CHANNEL_REQUEST
-paramiko.dsskey.MSG_CHANNEL_REQUEST
-paramiko.hostkeys.MSG_CHANNEL_REQUEST
-paramiko.kex_gex.MSG_CHANNEL_REQUEST
-paramiko.kex_group1.MSG_CHANNEL_REQUEST
-paramiko.packet.MSG_CHANNEL_REQUEST
-paramiko.pkey.MSG_CHANNEL_REQUEST
-paramiko.rsakey.MSG_CHANNEL_REQUEST
-paramiko.server.MSG_CHANNEL_REQUEST
-paramiko.sftp.MSG_CHANNEL_REQUEST
-paramiko.sftp_attr.MSG_CHANNEL_REQUEST
-paramiko.sftp_client.MSG_CHANNEL_REQUEST
-paramiko.sftp_file.MSG_CHANNEL_REQUEST
-paramiko.sftp_handle.MSG_CHANNEL_REQUEST
-paramiko.sftp_server.MSG_CHANNEL_REQUEST
-paramiko.sftp_si.MSG_CHANNEL_REQUEST
-paramiko.transport.MSG_CHANNEL_REQUEST
-paramiko.util.MSG_CHANNEL_REQUEST" class="py-name" href="#" onclick="return doclink('link-82', 'MSG_CHANNEL_REQUEST', 'link-31');">MSG_CHANNEL_REQUEST</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L315"></a><tt class="py-lineno"> 315</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-83" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-83', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_chanid</tt><tt class="py-op">)</tt> </tt>
-<a name="L316"></a><tt class="py-lineno"> 316</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-84" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-84', 'add_string', 'link-33');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-string">'exit-status'</tt><tt class="py-op">)</tt> </tt>
-<a name="L317"></a><tt class="py-lineno"> 317</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-85" class="py-name"><a title="paramiko.Message.add_boolean" class="py-name" href="#" onclick="return doclink('link-85', 'add_boolean', 'link-34');">add_boolean</a></tt><tt class="py-op">(</tt><tt class="py-name">False</tt><tt class="py-op">)</tt> </tt>
-<a name="L318"></a><tt class="py-lineno"> 318</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-86" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-86', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">status</tt><tt class="py-op">)</tt> </tt>
-<a name="L319"></a><tt class="py-lineno"> 319</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-87" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-87', 'transport', 'link-20');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_user_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L320"></a><tt class="py-lineno"> 320</tt> <tt class="py-line"> </tt>
-<a name="Channel.request_x11"></a><div id="Channel.request_x11-def"><a name="L321"></a><tt class="py-lineno"> 321</tt> <a class="py-toggle" href="#" id="Channel.request_x11-toggle" onclick="return toggle('Channel.request_x11');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#request_x11">request_x11</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">screen_number</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-param">auth_protocol</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">auth_cookie</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> </tt>
-<a name="L322"></a><tt class="py-lineno"> 322</tt> <tt class="py-line"> <tt class="py-param">single_connection</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">,</tt> <tt class="py-param">handler</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.request_x11-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.request_x11-expanded"><a name="L323"></a><tt class="py-lineno"> 323</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L324"></a><tt class="py-lineno"> 324</tt> <tt class="py-line"><tt class="py-docstring"> Request an x11 session on this channel. If the server allows it,</tt> </tt>
-<a name="L325"></a><tt class="py-lineno"> 325</tt> <tt class="py-line"><tt class="py-docstring"> further x11 requests can be made from the server to the client,</tt> </tt>
-<a name="L326"></a><tt class="py-lineno"> 326</tt> <tt class="py-line"><tt class="py-docstring"> when an x11 application is run in a shell session.</tt> </tt>
-<a name="L327"></a><tt class="py-lineno"> 327</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L328"></a><tt class="py-lineno"> 328</tt> <tt class="py-line"><tt class="py-docstring"> From RFC4254::</tt> </tt>
-<a name="L329"></a><tt class="py-lineno"> 329</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L330"></a><tt class="py-lineno"> 330</tt> <tt class="py-line"><tt class="py-docstring"> It is RECOMMENDED that the 'x11 authentication cookie' that is</tt> </tt>
-<a name="L331"></a><tt class="py-lineno"> 331</tt> <tt class="py-line"><tt class="py-docstring"> sent be a fake, random cookie, and that the cookie be checked and</tt> </tt>
-<a name="L332"></a><tt class="py-lineno"> 332</tt> <tt class="py-line"><tt class="py-docstring"> replaced by the real cookie when a connection request is received.</tt> </tt>
-<a name="L333"></a><tt class="py-lineno"> 333</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L334"></a><tt class="py-lineno"> 334</tt> <tt class="py-line"><tt class="py-docstring"> If you omit the auth_cookie, a new secure random 128-bit value will be</tt> </tt>
-<a name="L335"></a><tt class="py-lineno"> 335</tt> <tt class="py-line"><tt class="py-docstring"> generated, used, and returned. You will need to use this value to</tt> </tt>
-<a name="L336"></a><tt class="py-lineno"> 336</tt> <tt class="py-line"><tt class="py-docstring"> verify incoming x11 requests and replace them with the actual local</tt> </tt>
-<a name="L337"></a><tt class="py-lineno"> 337</tt> <tt class="py-line"><tt class="py-docstring"> x11 cookie (which requires some knoweldge of the x11 protocol).</tt> </tt>
-<a name="L338"></a><tt class="py-lineno"> 338</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L339"></a><tt class="py-lineno"> 339</tt> <tt class="py-line"><tt class="py-docstring"> If a handler is passed in, the handler is called from another thread</tt> </tt>
-<a name="L340"></a><tt class="py-lineno"> 340</tt> <tt class="py-line"><tt class="py-docstring"> whenever a new x11 connection arrives. The default handler queues up</tt> </tt>
-<a name="L341"></a><tt class="py-lineno"> 341</tt> <tt class="py-line"><tt class="py-docstring"> incoming x11 connections, which may be retrieved using</tt> </tt>
-<a name="L342"></a><tt class="py-lineno"> 342</tt> <tt class="py-line"><tt class="py-docstring"> L{Transport.accept}. The handler's calling signature is::</tt> </tt>
-<a name="L343"></a><tt class="py-lineno"> 343</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L344"></a><tt class="py-lineno"> 344</tt> <tt class="py-line"><tt class="py-docstring"> handler(channel: Channel, (address: str, port: int))</tt> </tt>
-<a name="L345"></a><tt class="py-lineno"> 345</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L346"></a><tt class="py-lineno"> 346</tt> <tt class="py-line"><tt class="py-docstring"> @param screen_number: the x11 screen number (0, 10, etc)</tt> </tt>
-<a name="L347"></a><tt class="py-lineno"> 347</tt> <tt class="py-line"><tt class="py-docstring"> @type screen_number: int</tt> </tt>
-<a name="L348"></a><tt class="py-lineno"> 348</tt> <tt class="py-line"><tt class="py-docstring"> @param auth_protocol: the name of the X11 authentication method used;</tt> </tt>
-<a name="L349"></a><tt class="py-lineno"> 349</tt> <tt class="py-line"><tt class="py-docstring"> if none is given, C{"MIT-MAGIC-COOKIE-1"} is used</tt> </tt>
-<a name="L350"></a><tt class="py-lineno"> 350</tt> <tt class="py-line"><tt class="py-docstring"> @type auth_protocol: str</tt> </tt>
-<a name="L351"></a><tt class="py-lineno"> 351</tt> <tt class="py-line"><tt class="py-docstring"> @param auth_cookie: hexadecimal string containing the x11 auth cookie;</tt> </tt>
-<a name="L352"></a><tt class="py-lineno"> 352</tt> <tt class="py-line"><tt class="py-docstring"> if none is given, a secure random 128-bit value is generated</tt> </tt>
-<a name="L353"></a><tt class="py-lineno"> 353</tt> <tt class="py-line"><tt class="py-docstring"> @type auth_cookie: str</tt> </tt>
-<a name="L354"></a><tt class="py-lineno"> 354</tt> <tt class="py-line"><tt class="py-docstring"> @param single_connection: if True, only a single x11 connection will be</tt> </tt>
-<a name="L355"></a><tt class="py-lineno"> 355</tt> <tt class="py-line"><tt class="py-docstring"> forwarded (by default, any number of x11 connections can arrive</tt> </tt>
-<a name="L356"></a><tt class="py-lineno"> 356</tt> <tt class="py-line"><tt class="py-docstring"> over this session)</tt> </tt>
-<a name="L357"></a><tt class="py-lineno"> 357</tt> <tt class="py-line"><tt class="py-docstring"> @type single_connection: bool</tt> </tt>
-<a name="L358"></a><tt class="py-lineno"> 358</tt> <tt class="py-line"><tt class="py-docstring"> @param handler: an optional handler to use for incoming X11 connections</tt> </tt>
-<a name="L359"></a><tt class="py-lineno"> 359</tt> <tt class="py-line"><tt class="py-docstring"> @type handler: function</tt> </tt>
-<a name="L360"></a><tt class="py-lineno"> 360</tt> <tt class="py-line"><tt class="py-docstring"> @return: the auth_cookie used</tt> </tt>
-<a name="L361"></a><tt class="py-lineno"> 361</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L362"></a><tt class="py-lineno"> 362</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">closed</tt> <tt class="py-keyword">or</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">eof_received</tt> <tt class="py-keyword">or</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">eof_sent</tt> <tt class="py-keyword">or</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt><tt class="py-op">:</tt> </tt>
-<a name="L363"></a><tt class="py-lineno"> 363</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-88" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-88', 'SSHException', 'link-9');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Channel is not open'</tt><tt class="py-op">)</tt> </tt>
-<a name="L364"></a><tt class="py-lineno"> 364</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">auth_protocol</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L365"></a><tt class="py-lineno"> 365</tt> <tt class="py-line"> <tt class="py-name">auth_protocol</tt> <tt class="py-op">=</tt> <tt class="py-string">'MIT-MAGIC-COOKIE-1'</tt> </tt>
-<a name="L366"></a><tt class="py-lineno"> 366</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">auth_cookie</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L367"></a><tt class="py-lineno"> 367</tt> <tt class="py-line"> <tt class="py-name">auth_cookie</tt> <tt class="py-op">=</tt> <tt class="py-name">binascii</tt><tt class="py-op">.</tt><tt class="py-name">hexlify</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-89" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-89', 'transport', 'link-20');">transport</a></tt><tt class="py-op">.</tt><tt id="link-90" class="py-name" targets="Variable paramiko.auth_handler.rng=paramiko.auth_handler-module.html#rng,Variable paramiko.channel.rng=paramiko.channel-module.html#rng,Variable paramiko.client.rng=paramiko.client-module.html#rng,Variable paramiko.common.rng=paramiko.common-module.html#rng,Variable paramiko.dsskey.rng=paramiko.dsskey-module.html#rng,Variable paramiko.hostkeys.rng=paramiko.hostkeys-module.html#rng,Variable paramiko.kex_gex.rng=paramiko.kex_gex-module.html#rng,Variable paramiko.kex_group1.rng=paramiko.kex_group1-module.html#rng,Variable paramiko.packet.rng=paramiko.packet-module.html#rng,Variable paramiko.pkey.rng=paramiko.pkey-module.html#rng,Variable paramiko.rsakey.rng=paramiko.rsakey-module.html#rng,Variable paramiko.server.rng=paramiko.server-module.html#rng,Variable paramiko.sftp.rng=paramiko.sftp-module.html#rng,Variable paramiko.sftp_attr.rng=paramiko.sftp_attr-module.html#rng,Variable paramiko.sftp_client.rng=paramiko.sftp_client-module.html#rng,Variable paramiko.sftp_file.rng=paramiko.sftp_file-module.html#rng,Variable paramiko.sftp_handle.rng=paramiko.sftp_handle-module.html#rng,Variable paramiko.sftp_server.rng=paramiko.sftp_server-module.html#rng,Variable paramiko.sftp_si.rng=paramiko.sftp_si-module.html#rng,Variable paramiko.transport.rng=paramiko.transport-module.html#rng,Variable paramiko.util.rng=paramiko.util-module.html#rng"><a title="paramiko.auth_handler.rng
-paramiko.channel.rng
-paramiko.client.rng
-paramiko.common.rng
-paramiko.dsskey.rng
-paramiko.hostkeys.rng
-paramiko.kex_gex.rng
-paramiko.kex_group1.rng
-paramiko.packet.rng
-paramiko.pkey.rng
-paramiko.rsakey.rng
-paramiko.server.rng
-paramiko.sftp.rng
-paramiko.sftp_attr.rng
-paramiko.sftp_client.rng
-paramiko.sftp_file.rng
-paramiko.sftp_handle.rng
-paramiko.sftp_server.rng
-paramiko.sftp_si.rng
-paramiko.transport.rng
-paramiko.util.rng" class="py-name" href="#" onclick="return doclink('link-90', 'rng', 'link-90');">rng</a></tt><tt class="py-op">.</tt><tt id="link-91" class="py-name" targets="Method paramiko.BufferedFile.read()=paramiko.BufferedFile-class.html#read,Method paramiko.SFTPHandle.read()=paramiko.SFTPHandle-class.html#read,Method paramiko.buffered_pipe.BufferedPipe.read()=paramiko.buffered_pipe.BufferedPipe-class.html#read"><a title="paramiko.BufferedFile.read
-paramiko.SFTPHandle.read
-paramiko.buffered_pipe.BufferedPipe.read" class="py-name" href="#" onclick="return doclink('link-91', 'read', 'link-91');">read</a></tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L368"></a><tt class="py-lineno"> 368</tt> <tt class="py-line"> </tt>
-<a name="L369"></a><tt class="py-lineno"> 369</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-92" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-92', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L370"></a><tt class="py-lineno"> 370</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-93" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-93', 'add_byte', 'link-30');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-94" class="py-name"><a title="paramiko.auth_handler.MSG_CHANNEL_REQUEST
-paramiko.channel.MSG_CHANNEL_REQUEST
-paramiko.client.MSG_CHANNEL_REQUEST
-paramiko.common.MSG_CHANNEL_REQUEST
-paramiko.dsskey.MSG_CHANNEL_REQUEST
-paramiko.hostkeys.MSG_CHANNEL_REQUEST
-paramiko.kex_gex.MSG_CHANNEL_REQUEST
-paramiko.kex_group1.MSG_CHANNEL_REQUEST
-paramiko.packet.MSG_CHANNEL_REQUEST
-paramiko.pkey.MSG_CHANNEL_REQUEST
-paramiko.rsakey.MSG_CHANNEL_REQUEST
-paramiko.server.MSG_CHANNEL_REQUEST
-paramiko.sftp.MSG_CHANNEL_REQUEST
-paramiko.sftp_attr.MSG_CHANNEL_REQUEST
-paramiko.sftp_client.MSG_CHANNEL_REQUEST
-paramiko.sftp_file.MSG_CHANNEL_REQUEST
-paramiko.sftp_handle.MSG_CHANNEL_REQUEST
-paramiko.sftp_server.MSG_CHANNEL_REQUEST
-paramiko.sftp_si.MSG_CHANNEL_REQUEST
-paramiko.transport.MSG_CHANNEL_REQUEST
-paramiko.util.MSG_CHANNEL_REQUEST" class="py-name" href="#" onclick="return doclink('link-94', 'MSG_CHANNEL_REQUEST', 'link-31');">MSG_CHANNEL_REQUEST</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L371"></a><tt class="py-lineno"> 371</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-95" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-95', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_chanid</tt><tt class="py-op">)</tt> </tt>
-<a name="L372"></a><tt class="py-lineno"> 372</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-96" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-96', 'add_string', 'link-33');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-string">'x11-req'</tt><tt class="py-op">)</tt> </tt>
-<a name="L373"></a><tt class="py-lineno"> 373</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-97" class="py-name"><a title="paramiko.Message.add_boolean" class="py-name" href="#" onclick="return doclink('link-97', 'add_boolean', 'link-34');">add_boolean</a></tt><tt class="py-op">(</tt><tt class="py-name">True</tt><tt class="py-op">)</tt> </tt>
-<a name="L374"></a><tt class="py-lineno"> 374</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-98" class="py-name"><a title="paramiko.Message.add_boolean" class="py-name" href="#" onclick="return doclink('link-98', 'add_boolean', 'link-34');">add_boolean</a></tt><tt class="py-op">(</tt><tt class="py-name">single_connection</tt><tt class="py-op">)</tt> </tt>
-<a name="L375"></a><tt class="py-lineno"> 375</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-99" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-99', 'add_string', 'link-33');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">auth_protocol</tt><tt class="py-op">)</tt> </tt>
-<a name="L376"></a><tt class="py-lineno"> 376</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-100" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-100', 'add_string', 'link-33');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">auth_cookie</tt><tt class="py-op">)</tt> </tt>
-<a name="L377"></a><tt class="py-lineno"> 377</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-101" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-101', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">screen_number</tt><tt class="py-op">)</tt> </tt>
-<a name="L378"></a><tt class="py-lineno"> 378</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_event_pending</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L379"></a><tt class="py-lineno"> 379</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-102" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-102', 'transport', 'link-20');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_user_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L380"></a><tt class="py-lineno"> 380</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_wait_for_event</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L381"></a><tt class="py-lineno"> 381</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-103" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-103', 'transport', 'link-20');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_set_x11_handler</tt><tt class="py-op">(</tt><tt class="py-name">handler</tt><tt class="py-op">)</tt> </tt>
-<a name="L382"></a><tt class="py-lineno"> 382</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">auth_cookie</tt> </tt>
-</div><a name="L383"></a><tt class="py-lineno"> 383</tt> <tt class="py-line"> </tt>
-<a name="Channel.get_transport"></a><div id="Channel.get_transport-def"><a name="L384"></a><tt class="py-lineno"> 384</tt> <a class="py-toggle" href="#" id="Channel.get_transport-toggle" onclick="return toggle('Channel.get_transport');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#get_transport">get_transport</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.get_transport-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.get_transport-expanded"><a name="L385"></a><tt class="py-lineno"> 385</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L386"></a><tt class="py-lineno"> 386</tt> <tt class="py-line"><tt class="py-docstring"> Return the L{Transport} associated with this channel.</tt> </tt>
-<a name="L387"></a><tt class="py-lineno"> 387</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L388"></a><tt class="py-lineno"> 388</tt> <tt class="py-line"><tt class="py-docstring"> @return: the L{Transport} that was used to create this channel.</tt> </tt>
-<a name="L389"></a><tt class="py-lineno"> 389</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: L{Transport}</tt> </tt>
-<a name="L390"></a><tt class="py-lineno"> 390</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L391"></a><tt class="py-lineno"> 391</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-104" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-104', 'transport', 'link-20');">transport</a></tt> </tt>
-</div><a name="L392"></a><tt class="py-lineno"> 392</tt> <tt class="py-line"> </tt>
-<a name="Channel.set_name"></a><div id="Channel.set_name-def"><a name="L393"></a><tt class="py-lineno"> 393</tt> <a class="py-toggle" href="#" id="Channel.set_name-toggle" onclick="return toggle('Channel.set_name');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#set_name">set_name</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">name</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.set_name-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.set_name-expanded"><a name="L394"></a><tt class="py-lineno"> 394</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L395"></a><tt class="py-lineno"> 395</tt> <tt class="py-line"><tt class="py-docstring"> Set a name for this channel. Currently it's only used to set the name</tt> </tt>
-<a name="L396"></a><tt class="py-lineno"> 396</tt> <tt class="py-line"><tt class="py-docstring"> of the channel in logfile entries. The name can be fetched with the</tt> </tt>
-<a name="L397"></a><tt class="py-lineno"> 397</tt> <tt class="py-line"><tt class="py-docstring"> L{get_name} method.</tt> </tt>
-<a name="L398"></a><tt class="py-lineno"> 398</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L399"></a><tt class="py-lineno"> 399</tt> <tt class="py-line"><tt class="py-docstring"> @param name: new channel name</tt> </tt>
-<a name="L400"></a><tt class="py-lineno"> 400</tt> <tt class="py-line"><tt class="py-docstring"> @type name: str</tt> </tt>
-<a name="L401"></a><tt class="py-lineno"> 401</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L402"></a><tt class="py-lineno"> 402</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_name</tt> <tt class="py-op">=</tt> <tt id="link-105" class="py-name" targets="Variable paramiko.kex_gex.KexGex.name=paramiko.kex_gex.KexGex-class.html#name,Variable paramiko.kex_group1.KexGroup1.name=paramiko.kex_group1.KexGroup1-class.html#name"><a title="paramiko.kex_gex.KexGex.name
-paramiko.kex_group1.KexGroup1.name" class="py-name" href="#" onclick="return doclink('link-105', 'name', 'link-105');">name</a></tt> </tt>
-</div><a name="L403"></a><tt class="py-lineno"> 403</tt> <tt class="py-line"> </tt>
-<a name="Channel.get_name"></a><div id="Channel.get_name-def"><a name="L404"></a><tt class="py-lineno"> 404</tt> <a class="py-toggle" href="#" id="Channel.get_name-toggle" onclick="return toggle('Channel.get_name');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#get_name">get_name</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.get_name-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.get_name-expanded"><a name="L405"></a><tt class="py-lineno"> 405</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L406"></a><tt class="py-lineno"> 406</tt> <tt class="py-line"><tt class="py-docstring"> Get the name of this channel that was previously set by L{set_name}.</tt> </tt>
-<a name="L407"></a><tt class="py-lineno"> 407</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L408"></a><tt class="py-lineno"> 408</tt> <tt class="py-line"><tt class="py-docstring"> @return: the name of this channel.</tt> </tt>
-<a name="L409"></a><tt class="py-lineno"> 409</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: str</tt> </tt>
-<a name="L410"></a><tt class="py-lineno"> 410</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L411"></a><tt class="py-lineno"> 411</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_name</tt> </tt>
-</div><a name="L412"></a><tt class="py-lineno"> 412</tt> <tt class="py-line"> </tt>
-<a name="Channel.get_id"></a><div id="Channel.get_id-def"><a name="L413"></a><tt class="py-lineno"> 413</tt> <a class="py-toggle" href="#" id="Channel.get_id-toggle" onclick="return toggle('Channel.get_id');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#get_id">get_id</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.get_id-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.get_id-expanded"><a name="L414"></a><tt class="py-lineno"> 414</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L415"></a><tt class="py-lineno"> 415</tt> <tt class="py-line"><tt class="py-docstring"> Return the ID # for this channel. The channel ID is unique across</tt> </tt>
-<a name="L416"></a><tt class="py-lineno"> 416</tt> <tt class="py-line"><tt class="py-docstring"> a L{Transport} and usually a small number. It's also the number</tt> </tt>
-<a name="L417"></a><tt class="py-lineno"> 417</tt> <tt class="py-line"><tt class="py-docstring"> passed to L{ServerInterface.check_channel_request} when determining</tt> </tt>
-<a name="L418"></a><tt class="py-lineno"> 418</tt> <tt class="py-line"><tt class="py-docstring"> whether to accept a channel request in server mode.</tt> </tt>
-<a name="L419"></a><tt class="py-lineno"> 419</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L420"></a><tt class="py-lineno"> 420</tt> <tt class="py-line"><tt class="py-docstring"> @return: the ID of this channel.</tt> </tt>
-<a name="L421"></a><tt class="py-lineno"> 421</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: int</tt> </tt>
-<a name="L422"></a><tt class="py-lineno"> 422</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L423"></a><tt class="py-lineno"> 423</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">chanid</tt> </tt>
-</div><a name="L424"></a><tt class="py-lineno"> 424</tt> <tt class="py-line"> </tt>
-<a name="Channel.set_combine_stderr"></a><div id="Channel.set_combine_stderr-def"><a name="L425"></a><tt class="py-lineno"> 425</tt> <a class="py-toggle" href="#" id="Channel.set_combine_stderr-toggle" onclick="return toggle('Channel.set_combine_stderr');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#set_combine_stderr">set_combine_stderr</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">combine</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.set_combine_stderr-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.set_combine_stderr-expanded"><a name="L426"></a><tt class="py-lineno"> 426</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L427"></a><tt class="py-lineno"> 427</tt> <tt class="py-line"><tt class="py-docstring"> Set whether stderr should be combined into stdout on this channel.</tt> </tt>
-<a name="L428"></a><tt class="py-lineno"> 428</tt> <tt class="py-line"><tt class="py-docstring"> The default is C{False}, but in some cases it may be convenient to</tt> </tt>
-<a name="L429"></a><tt class="py-lineno"> 429</tt> <tt class="py-line"><tt class="py-docstring"> have both streams combined.</tt> </tt>
-<a name="L430"></a><tt class="py-lineno"> 430</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L431"></a><tt class="py-lineno"> 431</tt> <tt class="py-line"><tt class="py-docstring"> If this is C{False}, and L{exec_command} is called (or C{invoke_shell}</tt> </tt>
-<a name="L432"></a><tt class="py-lineno"> 432</tt> <tt class="py-line"><tt class="py-docstring"> with no pty), output to stderr will not show up through the L{recv}</tt> </tt>
-<a name="L433"></a><tt class="py-lineno"> 433</tt> <tt class="py-line"><tt class="py-docstring"> and L{recv_ready} calls. You will have to use L{recv_stderr} and</tt> </tt>
-<a name="L434"></a><tt class="py-lineno"> 434</tt> <tt class="py-line"><tt class="py-docstring"> L{recv_stderr_ready} to get stderr output.</tt> </tt>
-<a name="L435"></a><tt class="py-lineno"> 435</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L436"></a><tt class="py-lineno"> 436</tt> <tt class="py-line"><tt class="py-docstring"> If this is C{True}, data will never show up via L{recv_stderr} or</tt> </tt>
-<a name="L437"></a><tt class="py-lineno"> 437</tt> <tt class="py-line"><tt class="py-docstring"> L{recv_stderr_ready}.</tt> </tt>
-<a name="L438"></a><tt class="py-lineno"> 438</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L439"></a><tt class="py-lineno"> 439</tt> <tt class="py-line"><tt class="py-docstring"> @param combine: C{True} if stderr output should be combined into</tt> </tt>
-<a name="L440"></a><tt class="py-lineno"> 440</tt> <tt class="py-line"><tt class="py-docstring"> stdout on this channel.</tt> </tt>
-<a name="L441"></a><tt class="py-lineno"> 441</tt> <tt class="py-line"><tt class="py-docstring"> @type combine: bool</tt> </tt>
-<a name="L442"></a><tt class="py-lineno"> 442</tt> <tt class="py-line"><tt class="py-docstring"> @return: previous setting.</tt> </tt>
-<a name="L443"></a><tt class="py-lineno"> 443</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: bool</tt> </tt>
-<a name="L444"></a><tt class="py-lineno"> 444</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L445"></a><tt class="py-lineno"> 445</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.1</tt> </tt>
-<a name="L446"></a><tt class="py-lineno"> 446</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L447"></a><tt class="py-lineno"> 447</tt> <tt class="py-line"> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L448"></a><tt class="py-lineno"> 448</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L449"></a><tt class="py-lineno"> 449</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L450"></a><tt class="py-lineno"> 450</tt> <tt class="py-line"> <tt class="py-name">old</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">combine_stderr</tt> </tt>
-<a name="L451"></a><tt class="py-lineno"> 451</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">combine_stderr</tt> <tt class="py-op">=</tt> <tt class="py-name">combine</tt> </tt>
-<a name="L452"></a><tt class="py-lineno"> 452</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">combine</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">old</tt><tt class="py-op">:</tt> </tt>
-<a name="L453"></a><tt class="py-lineno"> 453</tt> <tt class="py-line"> <tt class="py-comment"># copy old stderr buffer into primary buffer</tt> </tt>
-<a name="L454"></a><tt class="py-lineno"> 454</tt> <tt class="py-line"> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_stderr_buffer</tt><tt class="py-op">.</tt><tt id="link-106" class="py-name" targets="Method paramiko.buffered_pipe.BufferedPipe.empty()=paramiko.buffered_pipe.BufferedPipe-class.html#empty"><a title="paramiko.buffered_pipe.BufferedPipe.empty" class="py-name" href="#" onclick="return doclink('link-106', 'empty', 'link-106');">empty</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L455"></a><tt class="py-lineno"> 455</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L456"></a><tt class="py-lineno"> 456</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L457"></a><tt class="py-lineno"> 457</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L458"></a><tt class="py-lineno"> 458</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_feed</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L459"></a><tt class="py-lineno"> 459</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">old</tt> </tt>
-</div><a name="L460"></a><tt class="py-lineno"> 460</tt> <tt class="py-line"> </tt>
-<a name="L461"></a><tt class="py-lineno"> 461</tt> <tt class="py-line"> </tt>
-<a name="L462"></a><tt class="py-lineno"> 462</tt> <tt class="py-line"> <tt class="py-comment">### socket API</tt> </tt>
-<a name="L463"></a><tt class="py-lineno"> 463</tt> <tt class="py-line"> </tt>
-<a name="L464"></a><tt class="py-lineno"> 464</tt> <tt class="py-line"> </tt>
-<a name="Channel.settimeout"></a><div id="Channel.settimeout-def"><a name="L465"></a><tt class="py-lineno"> 465</tt> <a class="py-toggle" href="#" id="Channel.settimeout-toggle" onclick="return toggle('Channel.settimeout');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#settimeout">settimeout</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">timeout</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.settimeout-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.settimeout-expanded"><a name="L466"></a><tt class="py-lineno"> 466</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L467"></a><tt class="py-lineno"> 467</tt> <tt class="py-line"><tt class="py-docstring"> Set a timeout on blocking read/write operations. The C{timeout}</tt> </tt>
-<a name="L468"></a><tt class="py-lineno"> 468</tt> <tt class="py-line"><tt class="py-docstring"> argument can be a nonnegative float expressing seconds, or C{None}. If</tt> </tt>
-<a name="L469"></a><tt class="py-lineno"> 469</tt> <tt class="py-line"><tt class="py-docstring"> a float is given, subsequent channel read/write operations will raise</tt> </tt>
-<a name="L470"></a><tt class="py-lineno"> 470</tt> <tt class="py-line"><tt class="py-docstring"> a timeout exception if the timeout period value has elapsed before the</tt> </tt>
-<a name="L471"></a><tt class="py-lineno"> 471</tt> <tt class="py-line"><tt class="py-docstring"> operation has completed. Setting a timeout of C{None} disables</tt> </tt>
-<a name="L472"></a><tt class="py-lineno"> 472</tt> <tt class="py-line"><tt class="py-docstring"> timeouts on socket operations.</tt> </tt>
-<a name="L473"></a><tt class="py-lineno"> 473</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L474"></a><tt class="py-lineno"> 474</tt> <tt class="py-line"><tt class="py-docstring"> C{chan.settimeout(0.0)} is equivalent to C{chan.setblocking(0)};</tt> </tt>
-<a name="L475"></a><tt class="py-lineno"> 475</tt> <tt class="py-line"><tt class="py-docstring"> C{chan.settimeout(None)} is equivalent to C{chan.setblocking(1)}.</tt> </tt>
-<a name="L476"></a><tt class="py-lineno"> 476</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L477"></a><tt class="py-lineno"> 477</tt> <tt class="py-line"><tt class="py-docstring"> @param timeout: seconds to wait for a pending read/write operation</tt> </tt>
-<a name="L478"></a><tt class="py-lineno"> 478</tt> <tt class="py-line"><tt class="py-docstring"> before raising C{socket.timeout}, or C{None} for no timeout.</tt> </tt>
-<a name="L479"></a><tt class="py-lineno"> 479</tt> <tt class="py-line"><tt class="py-docstring"> @type timeout: float</tt> </tt>
-<a name="L480"></a><tt class="py-lineno"> 480</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L481"></a><tt class="py-lineno"> 481</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> </tt>
-</div><a name="L482"></a><tt class="py-lineno"> 482</tt> <tt class="py-line"> </tt>
-<a name="Channel.gettimeout"></a><div id="Channel.gettimeout-def"><a name="L483"></a><tt class="py-lineno"> 483</tt> <a class="py-toggle" href="#" id="Channel.gettimeout-toggle" onclick="return toggle('Channel.gettimeout');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#gettimeout">gettimeout</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.gettimeout-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.gettimeout-expanded"><a name="L484"></a><tt class="py-lineno"> 484</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L485"></a><tt class="py-lineno"> 485</tt> <tt class="py-line"><tt class="py-docstring"> Returns the timeout in seconds (as a float) associated with socket</tt> </tt>
-<a name="L486"></a><tt class="py-lineno"> 486</tt> <tt class="py-line"><tt class="py-docstring"> operations, or C{None} if no timeout is set. This reflects the last</tt> </tt>
-<a name="L487"></a><tt class="py-lineno"> 487</tt> <tt class="py-line"><tt class="py-docstring"> call to L{setblocking} or L{settimeout}.</tt> </tt>
-<a name="L488"></a><tt class="py-lineno"> 488</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L489"></a><tt class="py-lineno"> 489</tt> <tt class="py-line"><tt class="py-docstring"> @return: timeout in seconds, or C{None}.</tt> </tt>
-<a name="L490"></a><tt class="py-lineno"> 490</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: float</tt> </tt>
-<a name="L491"></a><tt class="py-lineno"> 491</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L492"></a><tt class="py-lineno"> 492</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> </tt>
-</div><a name="L493"></a><tt class="py-lineno"> 493</tt> <tt class="py-line"> </tt>
-<a name="Channel.setblocking"></a><div id="Channel.setblocking-def"><a name="L494"></a><tt class="py-lineno"> 494</tt> <a class="py-toggle" href="#" id="Channel.setblocking-toggle" onclick="return toggle('Channel.setblocking');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#setblocking">setblocking</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">blocking</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.setblocking-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.setblocking-expanded"><a name="L495"></a><tt class="py-lineno"> 495</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L496"></a><tt class="py-lineno"> 496</tt> <tt class="py-line"><tt class="py-docstring"> Set blocking or non-blocking mode of the channel: if C{blocking} is 0,</tt> </tt>
-<a name="L497"></a><tt class="py-lineno"> 497</tt> <tt class="py-line"><tt class="py-docstring"> the channel is set to non-blocking mode; otherwise it's set to blocking</tt> </tt>
-<a name="L498"></a><tt class="py-lineno"> 498</tt> <tt class="py-line"><tt class="py-docstring"> mode. Initially all channels are in blocking mode.</tt> </tt>
-<a name="L499"></a><tt class="py-lineno"> 499</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L500"></a><tt class="py-lineno"> 500</tt> <tt class="py-line"><tt class="py-docstring"> In non-blocking mode, if a L{recv} call doesn't find any data, or if a</tt> </tt>
-<a name="L501"></a><tt class="py-lineno"> 501</tt> <tt class="py-line"><tt class="py-docstring"> L{send} call can't immediately dispose of the data, an error exception</tt> </tt>
-<a name="L502"></a><tt class="py-lineno"> 502</tt> <tt class="py-line"><tt class="py-docstring"> is raised. In blocking mode, the calls block until they can proceed. An</tt> </tt>
-<a name="L503"></a><tt class="py-lineno"> 503</tt> <tt class="py-line"><tt class="py-docstring"> EOF condition is considered "immediate data" for L{recv}, so if the</tt> </tt>
-<a name="L504"></a><tt class="py-lineno"> 504</tt> <tt class="py-line"><tt class="py-docstring"> channel is closed in the read direction, it will never block.</tt> </tt>
-<a name="L505"></a><tt class="py-lineno"> 505</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L506"></a><tt class="py-lineno"> 506</tt> <tt class="py-line"><tt class="py-docstring"> C{chan.setblocking(0)} is equivalent to C{chan.settimeout(0)};</tt> </tt>
-<a name="L507"></a><tt class="py-lineno"> 507</tt> <tt class="py-line"><tt class="py-docstring"> C{chan.setblocking(1)} is equivalent to C{chan.settimeout(None)}.</tt> </tt>
-<a name="L508"></a><tt class="py-lineno"> 508</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L509"></a><tt class="py-lineno"> 509</tt> <tt class="py-line"><tt class="py-docstring"> @param blocking: 0 to set non-blocking mode; non-0 to set blocking</tt> </tt>
-<a name="L510"></a><tt class="py-lineno"> 510</tt> <tt class="py-line"><tt class="py-docstring"> mode.</tt> </tt>
-<a name="L511"></a><tt class="py-lineno"> 511</tt> <tt class="py-line"><tt class="py-docstring"> @type blocking: int</tt> </tt>
-<a name="L512"></a><tt class="py-lineno"> 512</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L513"></a><tt class="py-lineno"> 513</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">blocking</tt><tt class="py-op">:</tt> </tt>
-<a name="L514"></a><tt class="py-lineno"> 514</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-107" class="py-name" targets="Method paramiko.Channel.settimeout()=paramiko.Channel-class.html#settimeout,Method paramiko.SFTPFile.settimeout()=paramiko.SFTPFile-class.html#settimeout"><a title="paramiko.Channel.settimeout
-paramiko.SFTPFile.settimeout" class="py-name" href="#" onclick="return doclink('link-107', 'settimeout', 'link-107');">settimeout</a></tt><tt class="py-op">(</tt><tt class="py-name">None</tt><tt class="py-op">)</tt> </tt>
-<a name="L515"></a><tt class="py-lineno"> 515</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L516"></a><tt class="py-lineno"> 516</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-108" class="py-name"><a title="paramiko.Channel.settimeout
-paramiko.SFTPFile.settimeout" class="py-name" href="#" onclick="return doclink('link-108', 'settimeout', 'link-107');">settimeout</a></tt><tt class="py-op">(</tt><tt class="py-number">0.0</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L517"></a><tt class="py-lineno"> 517</tt> <tt class="py-line"> </tt>
-<a name="Channel.getpeername"></a><div id="Channel.getpeername-def"><a name="L518"></a><tt class="py-lineno"> 518</tt> <a class="py-toggle" href="#" id="Channel.getpeername-toggle" onclick="return toggle('Channel.getpeername');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#getpeername">getpeername</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.getpeername-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.getpeername-expanded"><a name="L519"></a><tt class="py-lineno"> 519</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L520"></a><tt class="py-lineno"> 520</tt> <tt class="py-line"><tt class="py-docstring"> Return the address of the remote side of this Channel, if possible.</tt> </tt>
-<a name="L521"></a><tt class="py-lineno"> 521</tt> <tt class="py-line"><tt class="py-docstring"> This is just a wrapper around C{'getpeername'} on the Transport, used</tt> </tt>
-<a name="L522"></a><tt class="py-lineno"> 522</tt> <tt class="py-line"><tt class="py-docstring"> to provide enough of a socket-like interface to allow asyncore to work.</tt> </tt>
-<a name="L523"></a><tt class="py-lineno"> 523</tt> <tt class="py-line"><tt class="py-docstring"> (asyncore likes to call C{'getpeername'}.)</tt> </tt>
-<a name="L524"></a><tt class="py-lineno"> 524</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L525"></a><tt class="py-lineno"> 525</tt> <tt class="py-line"><tt class="py-docstring"> @return: the address if the remote host, if known</tt> </tt>
-<a name="L526"></a><tt class="py-lineno"> 526</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: tuple(str, int)</tt> </tt>
-<a name="L527"></a><tt class="py-lineno"> 527</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L528"></a><tt class="py-lineno"> 528</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-109" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-109', 'transport', 'link-20');">transport</a></tt><tt class="py-op">.</tt><tt id="link-110" class="py-name" targets="Method paramiko.Channel.getpeername()=paramiko.Channel-class.html#getpeername,Method paramiko.Transport.getpeername()=paramiko.Transport-class.html#getpeername"><a title="paramiko.Channel.getpeername
-paramiko.Transport.getpeername" class="py-name" href="#" onclick="return doclink('link-110', 'getpeername', 'link-110');">getpeername</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L529"></a><tt class="py-lineno"> 529</tt> <tt class="py-line"> </tt>
-<a name="Channel.close"></a><div id="Channel.close-def"><a name="L530"></a><tt class="py-lineno"> 530</tt> <a class="py-toggle" href="#" id="Channel.close-toggle" onclick="return toggle('Channel.close');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#close">close</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.close-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.close-expanded"><a name="L531"></a><tt class="py-lineno"> 531</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L532"></a><tt class="py-lineno"> 532</tt> <tt class="py-line"><tt class="py-docstring"> Close the channel. All future read/write operations on the channel</tt> </tt>
-<a name="L533"></a><tt class="py-lineno"> 533</tt> <tt class="py-line"><tt class="py-docstring"> will fail. The remote end will receive no more data (after queued data</tt> </tt>
-<a name="L534"></a><tt class="py-lineno"> 534</tt> <tt class="py-line"><tt class="py-docstring"> is flushed). Channels are automatically closed when their L{Transport}</tt> </tt>
-<a name="L535"></a><tt class="py-lineno"> 535</tt> <tt class="py-line"><tt class="py-docstring"> is closed or when they are garbage collected.</tt> </tt>
-<a name="L536"></a><tt class="py-lineno"> 536</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L537"></a><tt class="py-lineno"> 537</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L538"></a><tt class="py-lineno"> 538</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L539"></a><tt class="py-lineno"> 539</tt> <tt class="py-line"> <tt class="py-comment"># only close the pipe when the user explicitly closes the channel.</tt> </tt>
-<a name="L540"></a><tt class="py-lineno"> 540</tt> <tt class="py-line"> <tt class="py-comment"># otherwise they will get unpleasant surprises. (and do it before</tt> </tt>
-<a name="L541"></a><tt class="py-lineno"> 541</tt> <tt class="py-line"> <tt class="py-comment"># checking self.closed, since the remote host may have already</tt> </tt>
-<a name="L542"></a><tt class="py-lineno"> 542</tt> <tt class="py-line"> <tt class="py-comment"># closed the connection.)</tt> </tt>
-<a name="L543"></a><tt class="py-lineno"> 543</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pipe</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L544"></a><tt class="py-lineno"> 544</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pipe</tt><tt class="py-op">.</tt><tt id="link-111" class="py-name"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-111', 'close', 'link-26');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L545"></a><tt class="py-lineno"> 545</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pipe</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L546"></a><tt class="py-lineno"> 546</tt> <tt class="py-line"> </tt>
-<a name="L547"></a><tt class="py-lineno"> 547</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt> <tt class="py-keyword">or</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">closed</tt><tt class="py-op">:</tt> </tt>
-<a name="L548"></a><tt class="py-lineno"> 548</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L549"></a><tt class="py-lineno"> 549</tt> <tt class="py-line"> <tt class="py-name">msgs</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_close_internal</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L550"></a><tt class="py-lineno"> 550</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L551"></a><tt class="py-lineno"> 551</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L552"></a><tt class="py-lineno"> 552</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">m</tt> <tt class="py-keyword">in</tt> <tt class="py-name">msgs</tt><tt class="py-op">:</tt> </tt>
-<a name="L553"></a><tt class="py-lineno"> 553</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">m</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L554"></a><tt class="py-lineno"> 554</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-112" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-112', 'transport', 'link-20');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_user_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L555"></a><tt class="py-lineno"> 555</tt> <tt class="py-line"> </tt>
-<a name="Channel.recv_ready"></a><div id="Channel.recv_ready-def"><a name="L556"></a><tt class="py-lineno"> 556</tt> <a class="py-toggle" href="#" id="Channel.recv_ready-toggle" onclick="return toggle('Channel.recv_ready');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#recv_ready">recv_ready</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.recv_ready-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.recv_ready-expanded"><a name="L557"></a><tt class="py-lineno"> 557</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L558"></a><tt class="py-lineno"> 558</tt> <tt class="py-line"><tt class="py-docstring"> Returns true if data is buffered and ready to be read from this</tt> </tt>
-<a name="L559"></a><tt class="py-lineno"> 559</tt> <tt class="py-line"><tt class="py-docstring"> channel. A C{False} result does not mean that the channel has closed;</tt> </tt>
-<a name="L560"></a><tt class="py-lineno"> 560</tt> <tt class="py-line"><tt class="py-docstring"> it means you may need to wait before more data arrives.</tt> </tt>
-<a name="L561"></a><tt class="py-lineno"> 561</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L562"></a><tt class="py-lineno"> 562</tt> <tt class="py-line"><tt class="py-docstring"> @return: C{True} if a L{recv} call on this channel would immediately</tt> </tt>
-<a name="L563"></a><tt class="py-lineno"> 563</tt> <tt class="py-line"><tt class="py-docstring"> return at least one byte; C{False} otherwise.</tt> </tt>
-<a name="L564"></a><tt class="py-lineno"> 564</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: boolean</tt> </tt>
-<a name="L565"></a><tt class="py-lineno"> 565</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L566"></a><tt class="py-lineno"> 566</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_buffer</tt><tt class="py-op">.</tt><tt id="link-113" class="py-name" targets="Method paramiko.buffered_pipe.BufferedPipe.read_ready()=paramiko.buffered_pipe.BufferedPipe-class.html#read_ready"><a title="paramiko.buffered_pipe.BufferedPipe.read_ready" class="py-name" href="#" onclick="return doclink('link-113', 'read_ready', 'link-113');">read_ready</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L567"></a><tt class="py-lineno"> 567</tt> <tt class="py-line"> </tt>
-<a name="Channel.recv"></a><div id="Channel.recv-def"><a name="L568"></a><tt class="py-lineno"> 568</tt> <a class="py-toggle" href="#" id="Channel.recv-toggle" onclick="return toggle('Channel.recv');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#recv">recv</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">nbytes</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.recv-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.recv-expanded"><a name="L569"></a><tt class="py-lineno"> 569</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L570"></a><tt class="py-lineno"> 570</tt> <tt class="py-line"><tt class="py-docstring"> Receive data from the channel. The return value is a string</tt> </tt>
-<a name="L571"></a><tt class="py-lineno"> 571</tt> <tt class="py-line"><tt class="py-docstring"> representing the data received. The maximum amount of data to be</tt> </tt>
-<a name="L572"></a><tt class="py-lineno"> 572</tt> <tt class="py-line"><tt class="py-docstring"> received at once is specified by C{nbytes}. If a string of length zero</tt> </tt>
-<a name="L573"></a><tt class="py-lineno"> 573</tt> <tt class="py-line"><tt class="py-docstring"> is returned, the channel stream has closed.</tt> </tt>
-<a name="L574"></a><tt class="py-lineno"> 574</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L575"></a><tt class="py-lineno"> 575</tt> <tt class="py-line"><tt class="py-docstring"> @param nbytes: maximum number of bytes to read.</tt> </tt>
-<a name="L576"></a><tt class="py-lineno"> 576</tt> <tt class="py-line"><tt class="py-docstring"> @type nbytes: int</tt> </tt>
-<a name="L577"></a><tt class="py-lineno"> 577</tt> <tt class="py-line"><tt class="py-docstring"> @return: data.</tt> </tt>
-<a name="L578"></a><tt class="py-lineno"> 578</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: str</tt> </tt>
-<a name="L579"></a><tt class="py-lineno"> 579</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L580"></a><tt class="py-lineno"> 580</tt> <tt class="py-line"><tt class="py-docstring"> @raise socket.timeout: if no data is ready before the timeout set by</tt> </tt>
-<a name="L581"></a><tt class="py-lineno"> 581</tt> <tt class="py-line"><tt class="py-docstring"> L{settimeout}.</tt> </tt>
-<a name="L582"></a><tt class="py-lineno"> 582</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L583"></a><tt class="py-lineno"> 583</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L584"></a><tt class="py-lineno"> 584</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_buffer</tt><tt class="py-op">.</tt><tt id="link-114" class="py-name"><a title="paramiko.BufferedFile.read
-paramiko.SFTPHandle.read
-paramiko.buffered_pipe.BufferedPipe.read" class="py-name" href="#" onclick="return doclink('link-114', 'read', 'link-91');">read</a></tt><tt class="py-op">(</tt><tt class="py-name">nbytes</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L585"></a><tt class="py-lineno"> 585</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt id="link-115" class="py-name"><a title="paramiko.buffered_pipe.PipeTimeout" class="py-name" href="#" onclick="return doclink('link-115', 'PipeTimeout', 'link-16');">PipeTimeout</a></tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L586"></a><tt class="py-lineno"> 586</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L587"></a><tt class="py-lineno"> 587</tt> <tt class="py-line"> </tt>
-<a name="L588"></a><tt class="py-lineno"> 588</tt> <tt class="py-line"> <tt class="py-name">ack</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_check_add_window</tt><tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">out</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L589"></a><tt class="py-lineno"> 589</tt> <tt class="py-line"> <tt class="py-comment"># no need to hold the channel lock when sending this</tt> </tt>
-<a name="L590"></a><tt class="py-lineno"> 590</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ack</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L591"></a><tt class="py-lineno"> 591</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-116" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-116', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L592"></a><tt class="py-lineno"> 592</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-117" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-117', 'add_byte', 'link-30');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-118" class="py-name" targets="Variable paramiko.auth_handler.MSG_CHANNEL_WINDOW_ADJUST=paramiko.auth_handler-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.channel.MSG_CHANNEL_WINDOW_ADJUST=paramiko.channel-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.client.MSG_CHANNEL_WINDOW_ADJUST=paramiko.client-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.common.MSG_CHANNEL_WINDOW_ADJUST=paramiko.common-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.dsskey.MSG_CHANNEL_WINDOW_ADJUST=paramiko.dsskey-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.hostkeys.MSG_CHANNEL_WINDOW_ADJUST=paramiko.hostkeys-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.kex_gex.MSG_CHANNEL_WINDOW_ADJUST=paramiko.kex_gex-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.kex_group1.MSG_CHANNEL_WINDOW_ADJUST=paramiko.kex_group1-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.packet.MSG_CHANNEL_WINDOW_ADJUST=paramiko.packet-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.pkey.MSG_CHANNEL_WINDOW_ADJUST=paramiko.pkey-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.rsakey.MSG_CHANNEL_WINDOW_ADJUST=paramiko.rsakey-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.server.MSG_CHANNEL_WINDOW_ADJUST=paramiko.server-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.sftp.MSG_CHANNEL_WINDOW_ADJUST=paramiko.sftp-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.sftp_attr.MSG_CHANNEL_WINDOW_ADJUST=paramiko.sftp_attr-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.sftp_client.MSG_CHANNEL_WINDOW_ADJUST=paramiko.sftp_client-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.sftp_file.MSG_CHANNEL_WINDOW_ADJUST=paramiko.sftp_file-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.sftp_handle.MSG_CHANNEL_WINDOW_ADJUST=paramiko.sftp_handle-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.sftp_server.MSG_CHANNEL_WINDOW_ADJUST=paramiko.sftp_server-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.sftp_si.MSG_CHANNEL_WINDOW_ADJUST=paramiko.sftp_si-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.transport.MSG_CHANNEL_WINDOW_ADJUST=paramiko.transport-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.util.MSG_CHANNEL_WINDOW_ADJUST=paramiko.util-module.html#MSG_CHANNEL_WINDOW_ADJUST"><a title="paramiko.auth_handler.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.channel.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.client.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.common.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.dsskey.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.hostkeys.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.kex_gex.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.kex_group1.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.packet.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.pkey.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.rsakey.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.server.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_attr.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_client.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_file.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_handle.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_server.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_si.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.transport.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.util.MSG_CHANNEL_WINDOW_ADJUST" class="py-name" href="#" onclick="return doclink('link-118', 'MSG_CHANNEL_WINDOW_ADJUST', 'link-118');">MSG_CHANNEL_WINDOW_ADJUST</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L593"></a><tt class="py-lineno"> 593</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-119" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-119', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_chanid</tt><tt class="py-op">)</tt> </tt>
-<a name="L594"></a><tt class="py-lineno"> 594</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-120" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-120', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">ack</tt><tt class="py-op">)</tt> </tt>
-<a name="L595"></a><tt class="py-lineno"> 595</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-121" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-121', 'transport', 'link-20');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_user_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L596"></a><tt class="py-lineno"> 596</tt> <tt class="py-line"> </tt>
-<a name="L597"></a><tt class="py-lineno"> 597</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">out</tt> </tt>
-</div><a name="L598"></a><tt class="py-lineno"> 598</tt> <tt class="py-line"> </tt>
-<a name="Channel.recv_stderr_ready"></a><div id="Channel.recv_stderr_ready-def"><a name="L599"></a><tt class="py-lineno"> 599</tt> <a class="py-toggle" href="#" id="Channel.recv_stderr_ready-toggle" onclick="return toggle('Channel.recv_stderr_ready');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#recv_stderr_ready">recv_stderr_ready</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.recv_stderr_ready-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.recv_stderr_ready-expanded"><a name="L600"></a><tt class="py-lineno"> 600</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L601"></a><tt class="py-lineno"> 601</tt> <tt class="py-line"><tt class="py-docstring"> Returns true if data is buffered and ready to be read from this</tt> </tt>
-<a name="L602"></a><tt class="py-lineno"> 602</tt> <tt class="py-line"><tt class="py-docstring"> channel's stderr stream. Only channels using L{exec_command} or</tt> </tt>
-<a name="L603"></a><tt class="py-lineno"> 603</tt> <tt class="py-line"><tt class="py-docstring"> L{invoke_shell} without a pty will ever have data on the stderr</tt> </tt>
-<a name="L604"></a><tt class="py-lineno"> 604</tt> <tt class="py-line"><tt class="py-docstring"> stream.</tt> </tt>
-<a name="L605"></a><tt class="py-lineno"> 605</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L606"></a><tt class="py-lineno"> 606</tt> <tt class="py-line"><tt class="py-docstring"> @return: C{True} if a L{recv_stderr} call on this channel would</tt> </tt>
-<a name="L607"></a><tt class="py-lineno"> 607</tt> <tt class="py-line"><tt class="py-docstring"> immediately return at least one byte; C{False} otherwise.</tt> </tt>
-<a name="L608"></a><tt class="py-lineno"> 608</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: boolean</tt> </tt>
-<a name="L609"></a><tt class="py-lineno"> 609</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L610"></a><tt class="py-lineno"> 610</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.1</tt> </tt>
-<a name="L611"></a><tt class="py-lineno"> 611</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L612"></a><tt class="py-lineno"> 612</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_stderr_buffer</tt><tt class="py-op">.</tt><tt id="link-122" class="py-name"><a title="paramiko.buffered_pipe.BufferedPipe.read_ready" class="py-name" href="#" onclick="return doclink('link-122', 'read_ready', 'link-113');">read_ready</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L613"></a><tt class="py-lineno"> 613</tt> <tt class="py-line"> </tt>
-<a name="Channel.recv_stderr"></a><div id="Channel.recv_stderr-def"><a name="L614"></a><tt class="py-lineno"> 614</tt> <a class="py-toggle" href="#" id="Channel.recv_stderr-toggle" onclick="return toggle('Channel.recv_stderr');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#recv_stderr">recv_stderr</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">nbytes</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.recv_stderr-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.recv_stderr-expanded"><a name="L615"></a><tt class="py-lineno"> 615</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L616"></a><tt class="py-lineno"> 616</tt> <tt class="py-line"><tt class="py-docstring"> Receive data from the channel's stderr stream. Only channels using</tt> </tt>
-<a name="L617"></a><tt class="py-lineno"> 617</tt> <tt class="py-line"><tt class="py-docstring"> L{exec_command} or L{invoke_shell} without a pty will ever have data</tt> </tt>
-<a name="L618"></a><tt class="py-lineno"> 618</tt> <tt class="py-line"><tt class="py-docstring"> on the stderr stream. The return value is a string representing the</tt> </tt>
-<a name="L619"></a><tt class="py-lineno"> 619</tt> <tt class="py-line"><tt class="py-docstring"> data received. The maximum amount of data to be received at once is</tt> </tt>
-<a name="L620"></a><tt class="py-lineno"> 620</tt> <tt class="py-line"><tt class="py-docstring"> specified by C{nbytes}. If a string of length zero is returned, the</tt> </tt>
-<a name="L621"></a><tt class="py-lineno"> 621</tt> <tt class="py-line"><tt class="py-docstring"> channel stream has closed.</tt> </tt>
-<a name="L622"></a><tt class="py-lineno"> 622</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L623"></a><tt class="py-lineno"> 623</tt> <tt class="py-line"><tt class="py-docstring"> @param nbytes: maximum number of bytes to read.</tt> </tt>
-<a name="L624"></a><tt class="py-lineno"> 624</tt> <tt class="py-line"><tt class="py-docstring"> @type nbytes: int</tt> </tt>
-<a name="L625"></a><tt class="py-lineno"> 625</tt> <tt class="py-line"><tt class="py-docstring"> @return: data.</tt> </tt>
-<a name="L626"></a><tt class="py-lineno"> 626</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: str</tt> </tt>
-<a name="L627"></a><tt class="py-lineno"> 627</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L628"></a><tt class="py-lineno"> 628</tt> <tt class="py-line"><tt class="py-docstring"> @raise socket.timeout: if no data is ready before the timeout set by</tt> </tt>
-<a name="L629"></a><tt class="py-lineno"> 629</tt> <tt class="py-line"><tt class="py-docstring"> L{settimeout}.</tt> </tt>
-<a name="L630"></a><tt class="py-lineno"> 630</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L631"></a><tt class="py-lineno"> 631</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.1</tt> </tt>
-<a name="L632"></a><tt class="py-lineno"> 632</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L633"></a><tt class="py-lineno"> 633</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L634"></a><tt class="py-lineno"> 634</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_stderr_buffer</tt><tt class="py-op">.</tt><tt id="link-123" class="py-name"><a title="paramiko.BufferedFile.read
-paramiko.SFTPHandle.read
-paramiko.buffered_pipe.BufferedPipe.read" class="py-name" href="#" onclick="return doclink('link-123', 'read', 'link-91');">read</a></tt><tt class="py-op">(</tt><tt class="py-name">nbytes</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L635"></a><tt class="py-lineno"> 635</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt id="link-124" class="py-name"><a title="paramiko.buffered_pipe.PipeTimeout" class="py-name" href="#" onclick="return doclink('link-124', 'PipeTimeout', 'link-16');">PipeTimeout</a></tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L636"></a><tt class="py-lineno"> 636</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L637"></a><tt class="py-lineno"> 637</tt> <tt class="py-line"> </tt>
-<a name="L638"></a><tt class="py-lineno"> 638</tt> <tt class="py-line"> <tt class="py-name">ack</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_check_add_window</tt><tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">out</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L639"></a><tt class="py-lineno"> 639</tt> <tt class="py-line"> <tt class="py-comment"># no need to hold the channel lock when sending this</tt> </tt>
-<a name="L640"></a><tt class="py-lineno"> 640</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ack</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L641"></a><tt class="py-lineno"> 641</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-125" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-125', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L642"></a><tt class="py-lineno"> 642</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-126" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-126', 'add_byte', 'link-30');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-127" class="py-name"><a title="paramiko.auth_handler.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.channel.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.client.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.common.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.dsskey.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.hostkeys.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.kex_gex.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.kex_group1.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.packet.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.pkey.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.rsakey.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.server.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_attr.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_client.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_file.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_handle.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_server.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_si.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.transport.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.util.MSG_CHANNEL_WINDOW_ADJUST" class="py-name" href="#" onclick="return doclink('link-127', 'MSG_CHANNEL_WINDOW_ADJUST', 'link-118');">MSG_CHANNEL_WINDOW_ADJUST</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L643"></a><tt class="py-lineno"> 643</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-128" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-128', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_chanid</tt><tt class="py-op">)</tt> </tt>
-<a name="L644"></a><tt class="py-lineno"> 644</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-129" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-129', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">ack</tt><tt class="py-op">)</tt> </tt>
-<a name="L645"></a><tt class="py-lineno"> 645</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-130" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-130', 'transport', 'link-20');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_user_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L646"></a><tt class="py-lineno"> 646</tt> <tt class="py-line"> </tt>
-<a name="L647"></a><tt class="py-lineno"> 647</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">out</tt> </tt>
-</div><a name="L648"></a><tt class="py-lineno"> 648</tt> <tt class="py-line"> </tt>
-<a name="Channel.send_ready"></a><div id="Channel.send_ready-def"><a name="L649"></a><tt class="py-lineno"> 649</tt> <a class="py-toggle" href="#" id="Channel.send_ready-toggle" onclick="return toggle('Channel.send_ready');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#send_ready">send_ready</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.send_ready-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.send_ready-expanded"><a name="L650"></a><tt class="py-lineno"> 650</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L651"></a><tt class="py-lineno"> 651</tt> <tt class="py-line"><tt class="py-docstring"> Returns true if data can be written to this channel without blocking.</tt> </tt>
-<a name="L652"></a><tt class="py-lineno"> 652</tt> <tt class="py-line"><tt class="py-docstring"> This means the channel is either closed (so any write attempt would</tt> </tt>
-<a name="L653"></a><tt class="py-lineno"> 653</tt> <tt class="py-line"><tt class="py-docstring"> return immediately) or there is at least one byte of space in the </tt> </tt>
-<a name="L654"></a><tt class="py-lineno"> 654</tt> <tt class="py-line"><tt class="py-docstring"> outbound buffer. If there is at least one byte of space in the</tt> </tt>
-<a name="L655"></a><tt class="py-lineno"> 655</tt> <tt class="py-line"><tt class="py-docstring"> outbound buffer, a L{send} call will succeed immediately and return</tt> </tt>
-<a name="L656"></a><tt class="py-lineno"> 656</tt> <tt class="py-line"><tt class="py-docstring"> the number of bytes actually written.</tt> </tt>
-<a name="L657"></a><tt class="py-lineno"> 657</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L658"></a><tt class="py-lineno"> 658</tt> <tt class="py-line"><tt class="py-docstring"> @return: C{True} if a L{send} call on this channel would immediately</tt> </tt>
-<a name="L659"></a><tt class="py-lineno"> 659</tt> <tt class="py-line"><tt class="py-docstring"> succeed or fail</tt> </tt>
-<a name="L660"></a><tt class="py-lineno"> 660</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: boolean</tt> </tt>
-<a name="L661"></a><tt class="py-lineno"> 661</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L662"></a><tt class="py-lineno"> 662</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L663"></a><tt class="py-lineno"> 663</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L664"></a><tt class="py-lineno"> 664</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">closed</tt> <tt class="py-keyword">or</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">eof_sent</tt><tt class="py-op">:</tt> </tt>
-<a name="L665"></a><tt class="py-lineno"> 665</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">True</tt> </tt>
-<a name="L666"></a><tt class="py-lineno"> 666</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">out_window_size</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt> </tt>
-<a name="L667"></a><tt class="py-lineno"> 667</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L668"></a><tt class="py-lineno"> 668</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L669"></a><tt class="py-lineno"> 669</tt> <tt class="py-line"> </tt>
-<a name="Channel.send"></a><div id="Channel.send-def"><a name="L670"></a><tt class="py-lineno"> 670</tt> <a class="py-toggle" href="#" id="Channel.send-toggle" onclick="return toggle('Channel.send');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#send">send</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">s</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.send-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.send-expanded"><a name="L671"></a><tt class="py-lineno"> 671</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L672"></a><tt class="py-lineno"> 672</tt> <tt class="py-line"><tt class="py-docstring"> Send data to the channel. Returns the number of bytes sent, or 0 if</tt> </tt>
-<a name="L673"></a><tt class="py-lineno"> 673</tt> <tt class="py-line"><tt class="py-docstring"> the channel stream is closed. Applications are responsible for</tt> </tt>
-<a name="L674"></a><tt class="py-lineno"> 674</tt> <tt class="py-line"><tt class="py-docstring"> checking that all data has been sent: if only some of the data was</tt> </tt>
-<a name="L675"></a><tt class="py-lineno"> 675</tt> <tt class="py-line"><tt class="py-docstring"> transmitted, the application needs to attempt delivery of the remaining</tt> </tt>
-<a name="L676"></a><tt class="py-lineno"> 676</tt> <tt class="py-line"><tt class="py-docstring"> data.</tt> </tt>
-<a name="L677"></a><tt class="py-lineno"> 677</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L678"></a><tt class="py-lineno"> 678</tt> <tt class="py-line"><tt class="py-docstring"> @param s: data to send</tt> </tt>
-<a name="L679"></a><tt class="py-lineno"> 679</tt> <tt class="py-line"><tt class="py-docstring"> @type s: str</tt> </tt>
-<a name="L680"></a><tt class="py-lineno"> 680</tt> <tt class="py-line"><tt class="py-docstring"> @return: number of bytes actually sent</tt> </tt>
-<a name="L681"></a><tt class="py-lineno"> 681</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: int</tt> </tt>
-<a name="L682"></a><tt class="py-lineno"> 682</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L683"></a><tt class="py-lineno"> 683</tt> <tt class="py-line"><tt class="py-docstring"> @raise socket.timeout: if no data could be sent before the timeout set</tt> </tt>
-<a name="L684"></a><tt class="py-lineno"> 684</tt> <tt class="py-line"><tt class="py-docstring"> by L{settimeout}.</tt> </tt>
-<a name="L685"></a><tt class="py-lineno"> 685</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L686"></a><tt class="py-lineno"> 686</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">)</tt> </tt>
-<a name="L687"></a><tt class="py-lineno"> 687</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L688"></a><tt class="py-lineno"> 688</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L689"></a><tt class="py-lineno"> 689</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_wait_for_send_window</tt><tt class="py-op">(</tt><tt class="py-name">size</tt><tt class="py-op">)</tt> </tt>
-<a name="L690"></a><tt class="py-lineno"> 690</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L691"></a><tt class="py-lineno"> 691</tt> <tt class="py-line"> <tt class="py-comment"># eof or similar</tt> </tt>
-<a name="L692"></a><tt class="py-lineno"> 692</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-number">0</tt> </tt>
-<a name="L693"></a><tt class="py-lineno"> 693</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-131" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-131', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L694"></a><tt class="py-lineno"> 694</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-132" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-132', 'add_byte', 'link-30');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-133" class="py-name" targets="Variable paramiko.auth_handler.MSG_CHANNEL_DATA=paramiko.auth_handler-module.html#MSG_CHANNEL_DATA,Variable paramiko.channel.MSG_CHANNEL_DATA=paramiko.channel-module.html#MSG_CHANNEL_DATA,Variable paramiko.client.MSG_CHANNEL_DATA=paramiko.client-module.html#MSG_CHANNEL_DATA,Variable paramiko.common.MSG_CHANNEL_DATA=paramiko.common-module.html#MSG_CHANNEL_DATA,Variable paramiko.dsskey.MSG_CHANNEL_DATA=paramiko.dsskey-module.html#MSG_CHANNEL_DATA,Variable paramiko.hostkeys.MSG_CHANNEL_DATA=paramiko.hostkeys-module.html#MSG_CHANNEL_DATA,Variable paramiko.kex_gex.MSG_CHANNEL_DATA=paramiko.kex_gex-module.html#MSG_CHANNEL_DATA,Variable paramiko.kex_group1.MSG_CHANNEL_DATA=paramiko.kex_group1-module.html#MSG_CHANNEL_DATA,Variable paramiko.packet.MSG_CHANNEL_DATA=paramiko.packet-module.html#MSG_CHANNEL_DATA,Variable paramiko.pkey.MSG_CHANNEL_DATA=paramiko.pkey-module.html#MSG_CHANNEL_DATA,Variable paramiko.rsakey.MSG_CHANNEL_DATA=paramiko.rsakey-module.html#MSG_CHANNEL_DATA,Variable paramiko.server.MSG_CHANNEL_DATA=paramiko.server-module.html#MSG_CHANNEL_DATA,Variable paramiko.sftp.MSG_CHANNEL_DATA=paramiko.sftp-module.html#MSG_CHANNEL_DATA,Variable paramiko.sftp_attr.MSG_CHANNEL_DATA=paramiko.sftp_attr-module.html#MSG_CHANNEL_DATA,Variable paramiko.sftp_client.MSG_CHANNEL_DATA=paramiko.sftp_client-module.html#MSG_CHANNEL_DATA,Variable paramiko.sftp_file.MSG_CHANNEL_DATA=paramiko.sftp_file-module.html#MSG_CHANNEL_DATA,Variable paramiko.sftp_handle.MSG_CHANNEL_DATA=paramiko.sftp_handle-module.html#MSG_CHANNEL_DATA,Variable paramiko.sftp_server.MSG_CHANNEL_DATA=paramiko.sftp_server-module.html#MSG_CHANNEL_DATA,Variable paramiko.sftp_si.MSG_CHANNEL_DATA=paramiko.sftp_si-module.html#MSG_CHANNEL_DATA,Variable paramiko.transport.MSG_CHANNEL_DATA=paramiko.transport-module.html#MSG_CHANNEL_DATA,Variable paramiko.util.MSG_CHANNEL_DATA=paramiko.util-module.html#MSG_CHANNEL_DATA"><a title="paramiko.auth_handler.MSG_CHANNEL_DATA
-paramiko.channel.MSG_CHANNEL_DATA
-paramiko.client.MSG_CHANNEL_DATA
-paramiko.common.MSG_CHANNEL_DATA
-paramiko.dsskey.MSG_CHANNEL_DATA
-paramiko.hostkeys.MSG_CHANNEL_DATA
-paramiko.kex_gex.MSG_CHANNEL_DATA
-paramiko.kex_group1.MSG_CHANNEL_DATA
-paramiko.packet.MSG_CHANNEL_DATA
-paramiko.pkey.MSG_CHANNEL_DATA
-paramiko.rsakey.MSG_CHANNEL_DATA
-paramiko.server.MSG_CHANNEL_DATA
-paramiko.sftp.MSG_CHANNEL_DATA
-paramiko.sftp_attr.MSG_CHANNEL_DATA
-paramiko.sftp_client.MSG_CHANNEL_DATA
-paramiko.sftp_file.MSG_CHANNEL_DATA
-paramiko.sftp_handle.MSG_CHANNEL_DATA
-paramiko.sftp_server.MSG_CHANNEL_DATA
-paramiko.sftp_si.MSG_CHANNEL_DATA
-paramiko.transport.MSG_CHANNEL_DATA
-paramiko.util.MSG_CHANNEL_DATA" class="py-name" href="#" onclick="return doclink('link-133', 'MSG_CHANNEL_DATA', 'link-133');">MSG_CHANNEL_DATA</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L695"></a><tt class="py-lineno"> 695</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-134" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-134', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_chanid</tt><tt class="py-op">)</tt> </tt>
-<a name="L696"></a><tt class="py-lineno"> 696</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-135" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-135', 'add_string', 'link-33');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-name">size</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L697"></a><tt class="py-lineno"> 697</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L698"></a><tt class="py-lineno"> 698</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L699"></a><tt class="py-lineno"> 699</tt> <tt class="py-line"> <tt class="py-comment"># Note: We release self.lock before calling _send_user_message.</tt> </tt>
-<a name="L700"></a><tt class="py-lineno"> 700</tt> <tt class="py-line"> <tt class="py-comment"># Otherwise, we can deadlock during re-keying.</tt> </tt>
-<a name="L701"></a><tt class="py-lineno"> 701</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-136" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-136', 'transport', 'link-20');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_user_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L702"></a><tt class="py-lineno"> 702</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">size</tt> </tt>
-</div><a name="L703"></a><tt class="py-lineno"> 703</tt> <tt class="py-line"> </tt>
-<a name="Channel.send_stderr"></a><div id="Channel.send_stderr-def"><a name="L704"></a><tt class="py-lineno"> 704</tt> <a class="py-toggle" href="#" id="Channel.send_stderr-toggle" onclick="return toggle('Channel.send_stderr');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#send_stderr">send_stderr</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">s</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.send_stderr-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.send_stderr-expanded"><a name="L705"></a><tt class="py-lineno"> 705</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L706"></a><tt class="py-lineno"> 706</tt> <tt class="py-line"><tt class="py-docstring"> Send data to the channel on the "stderr" stream. This is normally</tt> </tt>
-<a name="L707"></a><tt class="py-lineno"> 707</tt> <tt class="py-line"><tt class="py-docstring"> only used by servers to send output from shell commands -- clients</tt> </tt>
-<a name="L708"></a><tt class="py-lineno"> 708</tt> <tt class="py-line"><tt class="py-docstring"> won't use this. Returns the number of bytes sent, or 0 if the channel</tt> </tt>
-<a name="L709"></a><tt class="py-lineno"> 709</tt> <tt class="py-line"><tt class="py-docstring"> stream is closed. Applications are responsible for checking that all</tt> </tt>
-<a name="L710"></a><tt class="py-lineno"> 710</tt> <tt class="py-line"><tt class="py-docstring"> data has been sent: if only some of the data was transmitted, the</tt> </tt>
-<a name="L711"></a><tt class="py-lineno"> 711</tt> <tt class="py-line"><tt class="py-docstring"> application needs to attempt delivery of the remaining data.</tt> </tt>
-<a name="L712"></a><tt class="py-lineno"> 712</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L713"></a><tt class="py-lineno"> 713</tt> <tt class="py-line"><tt class="py-docstring"> @param s: data to send.</tt> </tt>
-<a name="L714"></a><tt class="py-lineno"> 714</tt> <tt class="py-line"><tt class="py-docstring"> @type s: str</tt> </tt>
-<a name="L715"></a><tt class="py-lineno"> 715</tt> <tt class="py-line"><tt class="py-docstring"> @return: number of bytes actually sent.</tt> </tt>
-<a name="L716"></a><tt class="py-lineno"> 716</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: int</tt> </tt>
-<a name="L717"></a><tt class="py-lineno"> 717</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L718"></a><tt class="py-lineno"> 718</tt> <tt class="py-line"><tt class="py-docstring"> @raise socket.timeout: if no data could be sent before the timeout set</tt> </tt>
-<a name="L719"></a><tt class="py-lineno"> 719</tt> <tt class="py-line"><tt class="py-docstring"> by L{settimeout}.</tt> </tt>
-<a name="L720"></a><tt class="py-lineno"> 720</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L721"></a><tt class="py-lineno"> 721</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.1</tt> </tt>
-<a name="L722"></a><tt class="py-lineno"> 722</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L723"></a><tt class="py-lineno"> 723</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">)</tt> </tt>
-<a name="L724"></a><tt class="py-lineno"> 724</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L725"></a><tt class="py-lineno"> 725</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L726"></a><tt class="py-lineno"> 726</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_wait_for_send_window</tt><tt class="py-op">(</tt><tt class="py-name">size</tt><tt class="py-op">)</tt> </tt>
-<a name="L727"></a><tt class="py-lineno"> 727</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L728"></a><tt class="py-lineno"> 728</tt> <tt class="py-line"> <tt class="py-comment"># eof or similar</tt> </tt>
-<a name="L729"></a><tt class="py-lineno"> 729</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-number">0</tt> </tt>
-<a name="L730"></a><tt class="py-lineno"> 730</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-137" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-137', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L731"></a><tt class="py-lineno"> 731</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-138" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-138', 'add_byte', 'link-30');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-139" class="py-name" targets="Variable paramiko.auth_handler.MSG_CHANNEL_EXTENDED_DATA=paramiko.auth_handler-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.channel.MSG_CHANNEL_EXTENDED_DATA=paramiko.channel-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.client.MSG_CHANNEL_EXTENDED_DATA=paramiko.client-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.common.MSG_CHANNEL_EXTENDED_DATA=paramiko.common-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.dsskey.MSG_CHANNEL_EXTENDED_DATA=paramiko.dsskey-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.hostkeys.MSG_CHANNEL_EXTENDED_DATA=paramiko.hostkeys-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.kex_gex.MSG_CHANNEL_EXTENDED_DATA=paramiko.kex_gex-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.kex_group1.MSG_CHANNEL_EXTENDED_DATA=paramiko.kex_group1-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.packet.MSG_CHANNEL_EXTENDED_DATA=paramiko.packet-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.pkey.MSG_CHANNEL_EXTENDED_DATA=paramiko.pkey-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.rsakey.MSG_CHANNEL_EXTENDED_DATA=paramiko.rsakey-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.server.MSG_CHANNEL_EXTENDED_DATA=paramiko.server-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.sftp.MSG_CHANNEL_EXTENDED_DATA=paramiko.sftp-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.sftp_attr.MSG_CHANNEL_EXTENDED_DATA=paramiko.sftp_attr-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.sftp_client.MSG_CHANNEL_EXTENDED_DATA=paramiko.sftp_client-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.sftp_file.MSG_CHANNEL_EXTENDED_DATA=paramiko.sftp_file-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.sftp_handle.MSG_CHANNEL_EXTENDED_DATA=paramiko.sftp_handle-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.sftp_server.MSG_CHANNEL_EXTENDED_DATA=paramiko.sftp_server-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.sftp_si.MSG_CHANNEL_EXTENDED_DATA=paramiko.sftp_si-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.transport.MSG_CHANNEL_EXTENDED_DATA=paramiko.transport-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.util.MSG_CHANNEL_EXTENDED_DATA=paramiko.util-module.html#MSG_CHANNEL_EXTENDED_DATA"><a title="paramiko.auth_handler.MSG_CHANNEL_EXTENDED_DATA
-paramiko.channel.MSG_CHANNEL_EXTENDED_DATA
-paramiko.client.MSG_CHANNEL_EXTENDED_DATA
-paramiko.common.MSG_CHANNEL_EXTENDED_DATA
-paramiko.dsskey.MSG_CHANNEL_EXTENDED_DATA
-paramiko.hostkeys.MSG_CHANNEL_EXTENDED_DATA
-paramiko.kex_gex.MSG_CHANNEL_EXTENDED_DATA
-paramiko.kex_group1.MSG_CHANNEL_EXTENDED_DATA
-paramiko.packet.MSG_CHANNEL_EXTENDED_DATA
-paramiko.pkey.MSG_CHANNEL_EXTENDED_DATA
-paramiko.rsakey.MSG_CHANNEL_EXTENDED_DATA
-paramiko.server.MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp.MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp_attr.MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp_client.MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp_file.MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp_handle.MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp_server.MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp_si.MSG_CHANNEL_EXTENDED_DATA
-paramiko.transport.MSG_CHANNEL_EXTENDED_DATA
-paramiko.util.MSG_CHANNEL_EXTENDED_DATA" class="py-name" href="#" onclick="return doclink('link-139', 'MSG_CHANNEL_EXTENDED_DATA', 'link-139');">MSG_CHANNEL_EXTENDED_DATA</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L732"></a><tt class="py-lineno"> 732</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-140" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-140', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_chanid</tt><tt class="py-op">)</tt> </tt>
-<a name="L733"></a><tt class="py-lineno"> 733</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-141" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-141', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L734"></a><tt class="py-lineno"> 734</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-142" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-142', 'add_string', 'link-33');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-name">size</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L735"></a><tt class="py-lineno"> 735</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L736"></a><tt class="py-lineno"> 736</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L737"></a><tt class="py-lineno"> 737</tt> <tt class="py-line"> <tt class="py-comment"># Note: We release self.lock before calling _send_user_message.</tt> </tt>
-<a name="L738"></a><tt class="py-lineno"> 738</tt> <tt class="py-line"> <tt class="py-comment"># Otherwise, we can deadlock during re-keying.</tt> </tt>
-<a name="L739"></a><tt class="py-lineno"> 739</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-143" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-143', 'transport', 'link-20');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_user_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L740"></a><tt class="py-lineno"> 740</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">size</tt> </tt>
-</div><a name="L741"></a><tt class="py-lineno"> 741</tt> <tt class="py-line"> </tt>
-<a name="Channel.sendall"></a><div id="Channel.sendall-def"><a name="L742"></a><tt class="py-lineno"> 742</tt> <a class="py-toggle" href="#" id="Channel.sendall-toggle" onclick="return toggle('Channel.sendall');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#sendall">sendall</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">s</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.sendall-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.sendall-expanded"><a name="L743"></a><tt class="py-lineno"> 743</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L744"></a><tt class="py-lineno"> 744</tt> <tt class="py-line"><tt class="py-docstring"> Send data to the channel, without allowing partial results. Unlike</tt> </tt>
-<a name="L745"></a><tt class="py-lineno"> 745</tt> <tt class="py-line"><tt class="py-docstring"> L{send}, this method continues to send data from the given string until</tt> </tt>
-<a name="L746"></a><tt class="py-lineno"> 746</tt> <tt class="py-line"><tt class="py-docstring"> either all data has been sent or an error occurs. Nothing is returned.</tt> </tt>
-<a name="L747"></a><tt class="py-lineno"> 747</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L748"></a><tt class="py-lineno"> 748</tt> <tt class="py-line"><tt class="py-docstring"> @param s: data to send.</tt> </tt>
-<a name="L749"></a><tt class="py-lineno"> 749</tt> <tt class="py-line"><tt class="py-docstring"> @type s: str</tt> </tt>
-<a name="L750"></a><tt class="py-lineno"> 750</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L751"></a><tt class="py-lineno"> 751</tt> <tt class="py-line"><tt class="py-docstring"> @raise socket.timeout: if sending stalled for longer than the timeout</tt> </tt>
-<a name="L752"></a><tt class="py-lineno"> 752</tt> <tt class="py-line"><tt class="py-docstring"> set by L{settimeout}.</tt> </tt>
-<a name="L753"></a><tt class="py-lineno"> 753</tt> <tt class="py-line"><tt class="py-docstring"> @raise socket.error: if an error occured before the entire string was</tt> </tt>
-<a name="L754"></a><tt class="py-lineno"> 754</tt> <tt class="py-line"><tt class="py-docstring"> sent.</tt> </tt>
-<a name="L755"></a><tt class="py-lineno"> 755</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L756"></a><tt class="py-lineno"> 756</tt> <tt class="py-line"><tt class="py-docstring"> @note: If the channel is closed while only part of the data hase been</tt> </tt>
-<a name="L757"></a><tt class="py-lineno"> 757</tt> <tt class="py-line"><tt class="py-docstring"> sent, there is no way to determine how much data (if any) was sent.</tt> </tt>
-<a name="L758"></a><tt class="py-lineno"> 758</tt> <tt class="py-line"><tt class="py-docstring"> This is irritating, but identically follows python's API.</tt> </tt>
-<a name="L759"></a><tt class="py-lineno"> 759</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L760"></a><tt class="py-lineno"> 760</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">s</tt><tt class="py-op">:</tt> </tt>
-<a name="L761"></a><tt class="py-lineno"> 761</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">closed</tt><tt class="py-op">:</tt> </tt>
-<a name="L762"></a><tt class="py-lineno"> 762</tt> <tt class="py-line"> <tt class="py-comment"># this doesn't seem useful, but it is the documented behavior of Socket</tt> </tt>
-<a name="L763"></a><tt class="py-lineno"> 763</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">error</tt><tt class="py-op">(</tt><tt class="py-string">'Socket is closed'</tt><tt class="py-op">)</tt> </tt>
-<a name="L764"></a><tt class="py-lineno"> 764</tt> <tt class="py-line"> <tt class="py-name">sent</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-144" class="py-name" targets="Method paramiko.Channel.send()=paramiko.Channel-class.html#send,Method paramiko.win_pageant.PageantConnection.send()=paramiko.win_pageant.PageantConnection-class.html#send"><a title="paramiko.Channel.send
-paramiko.win_pageant.PageantConnection.send" class="py-name" href="#" onclick="return doclink('link-144', 'send', 'link-144');">send</a></tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">)</tt> </tt>
-<a name="L765"></a><tt class="py-lineno"> 765</tt> <tt class="py-line"> <tt class="py-name">s</tt> <tt class="py-op">=</tt> <tt class="py-name">s</tt><tt class="py-op">[</tt><tt class="py-name">sent</tt><tt class="py-op">:</tt><tt class="py-op">]</tt> </tt>
-<a name="L766"></a><tt class="py-lineno"> 766</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L767"></a><tt class="py-lineno"> 767</tt> <tt class="py-line"> </tt>
-<a name="Channel.sendall_stderr"></a><div id="Channel.sendall_stderr-def"><a name="L768"></a><tt class="py-lineno"> 768</tt> <a class="py-toggle" href="#" id="Channel.sendall_stderr-toggle" onclick="return toggle('Channel.sendall_stderr');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#sendall_stderr">sendall_stderr</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">s</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.sendall_stderr-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.sendall_stderr-expanded"><a name="L769"></a><tt class="py-lineno"> 769</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L770"></a><tt class="py-lineno"> 770</tt> <tt class="py-line"><tt class="py-docstring"> Send data to the channel's "stderr" stream, without allowing partial</tt> </tt>
-<a name="L771"></a><tt class="py-lineno"> 771</tt> <tt class="py-line"><tt class="py-docstring"> results. Unlike L{send_stderr}, this method continues to send data</tt> </tt>
-<a name="L772"></a><tt class="py-lineno"> 772</tt> <tt class="py-line"><tt class="py-docstring"> from the given string until all data has been sent or an error occurs.</tt> </tt>
-<a name="L773"></a><tt class="py-lineno"> 773</tt> <tt class="py-line"><tt class="py-docstring"> Nothing is returned.</tt> </tt>
-<a name="L774"></a><tt class="py-lineno"> 774</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L775"></a><tt class="py-lineno"> 775</tt> <tt class="py-line"><tt class="py-docstring"> @param s: data to send to the client as "stderr" output.</tt> </tt>
-<a name="L776"></a><tt class="py-lineno"> 776</tt> <tt class="py-line"><tt class="py-docstring"> @type s: str</tt> </tt>
-<a name="L777"></a><tt class="py-lineno"> 777</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L778"></a><tt class="py-lineno"> 778</tt> <tt class="py-line"><tt class="py-docstring"> @raise socket.timeout: if sending stalled for longer than the timeout</tt> </tt>
-<a name="L779"></a><tt class="py-lineno"> 779</tt> <tt class="py-line"><tt class="py-docstring"> set by L{settimeout}.</tt> </tt>
-<a name="L780"></a><tt class="py-lineno"> 780</tt> <tt class="py-line"><tt class="py-docstring"> @raise socket.error: if an error occured before the entire string was</tt> </tt>
-<a name="L781"></a><tt class="py-lineno"> 781</tt> <tt class="py-line"><tt class="py-docstring"> sent.</tt> </tt>
-<a name="L782"></a><tt class="py-lineno"> 782</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L783"></a><tt class="py-lineno"> 783</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.1</tt> </tt>
-<a name="L784"></a><tt class="py-lineno"> 784</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L785"></a><tt class="py-lineno"> 785</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">s</tt><tt class="py-op">:</tt> </tt>
-<a name="L786"></a><tt class="py-lineno"> 786</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">closed</tt><tt class="py-op">:</tt> </tt>
-<a name="L787"></a><tt class="py-lineno"> 787</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">error</tt><tt class="py-op">(</tt><tt class="py-string">'Socket is closed'</tt><tt class="py-op">)</tt> </tt>
-<a name="L788"></a><tt class="py-lineno"> 788</tt> <tt class="py-line"> <tt class="py-name">sent</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-145" class="py-name" targets="Method paramiko.Channel.send_stderr()=paramiko.Channel-class.html#send_stderr"><a title="paramiko.Channel.send_stderr" class="py-name" href="#" onclick="return doclink('link-145', 'send_stderr', 'link-145');">send_stderr</a></tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">)</tt> </tt>
-<a name="L789"></a><tt class="py-lineno"> 789</tt> <tt class="py-line"> <tt class="py-name">s</tt> <tt class="py-op">=</tt> <tt class="py-name">s</tt><tt class="py-op">[</tt><tt class="py-name">sent</tt><tt class="py-op">:</tt><tt class="py-op">]</tt> </tt>
-<a name="L790"></a><tt class="py-lineno"> 790</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L791"></a><tt class="py-lineno"> 791</tt> <tt class="py-line"> </tt>
-<a name="Channel.makefile"></a><div id="Channel.makefile-def"><a name="L792"></a><tt class="py-lineno"> 792</tt> <a class="py-toggle" href="#" id="Channel.makefile-toggle" onclick="return toggle('Channel.makefile');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#makefile">makefile</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">params</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.makefile-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.makefile-expanded"><a name="L793"></a><tt class="py-lineno"> 793</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L794"></a><tt class="py-lineno"> 794</tt> <tt class="py-line"><tt class="py-docstring"> Return a file-like object associated with this channel. The optional</tt> </tt>
-<a name="L795"></a><tt class="py-lineno"> 795</tt> <tt class="py-line"><tt class="py-docstring"> C{mode} and C{bufsize} arguments are interpreted the same way as by</tt> </tt>
-<a name="L796"></a><tt class="py-lineno"> 796</tt> <tt class="py-line"><tt class="py-docstring"> the built-in C{file()} function in python.</tt> </tt>
-<a name="L797"></a><tt class="py-lineno"> 797</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L798"></a><tt class="py-lineno"> 798</tt> <tt class="py-line"><tt class="py-docstring"> @return: object which can be used for python file I/O.</tt> </tt>
-<a name="L799"></a><tt class="py-lineno"> 799</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: L{ChannelFile}</tt> </tt>
-<a name="L800"></a><tt class="py-lineno"> 800</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L801"></a><tt class="py-lineno"> 801</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">ChannelFile</tt><tt class="py-op">(</tt><tt class="py-op">*</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-name">list</tt><tt class="py-op">(</tt><tt class="py-name">params</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L802"></a><tt class="py-lineno"> 802</tt> <tt class="py-line"> </tt>
-<a name="Channel.makefile_stderr"></a><div id="Channel.makefile_stderr-def"><a name="L803"></a><tt class="py-lineno"> 803</tt> <a class="py-toggle" href="#" id="Channel.makefile_stderr-toggle" onclick="return toggle('Channel.makefile_stderr');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#makefile_stderr">makefile_stderr</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">params</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.makefile_stderr-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.makefile_stderr-expanded"><a name="L804"></a><tt class="py-lineno"> 804</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L805"></a><tt class="py-lineno"> 805</tt> <tt class="py-line"><tt class="py-docstring"> Return a file-like object associated with this channel's stderr</tt> </tt>
-<a name="L806"></a><tt class="py-lineno"> 806</tt> <tt class="py-line"><tt class="py-docstring"> stream. Only channels using L{exec_command} or L{invoke_shell}</tt> </tt>
-<a name="L807"></a><tt class="py-lineno"> 807</tt> <tt class="py-line"><tt class="py-docstring"> without a pty will ever have data on the stderr stream.</tt> </tt>
-<a name="L808"></a><tt class="py-lineno"> 808</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L809"></a><tt class="py-lineno"> 809</tt> <tt class="py-line"><tt class="py-docstring"> The optional C{mode} and C{bufsize} arguments are interpreted the</tt> </tt>
-<a name="L810"></a><tt class="py-lineno"> 810</tt> <tt class="py-line"><tt class="py-docstring"> same way as by the built-in C{file()} function in python. For a</tt> </tt>
-<a name="L811"></a><tt class="py-lineno"> 811</tt> <tt class="py-line"><tt class="py-docstring"> client, it only makes sense to open this file for reading. For a</tt> </tt>
-<a name="L812"></a><tt class="py-lineno"> 812</tt> <tt class="py-line"><tt class="py-docstring"> server, it only makes sense to open this file for writing.</tt> </tt>
-<a name="L813"></a><tt class="py-lineno"> 813</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L814"></a><tt class="py-lineno"> 814</tt> <tt class="py-line"><tt class="py-docstring"> @return: object which can be used for python file I/O.</tt> </tt>
-<a name="L815"></a><tt class="py-lineno"> 815</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: L{ChannelFile}</tt> </tt>
-<a name="L816"></a><tt class="py-lineno"> 816</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L817"></a><tt class="py-lineno"> 817</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.1</tt> </tt>
-<a name="L818"></a><tt class="py-lineno"> 818</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L819"></a><tt class="py-lineno"> 819</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-146" class="py-name" targets="Class paramiko.channel.ChannelStderrFile=paramiko.channel.ChannelStderrFile-class.html"><a title="paramiko.channel.ChannelStderrFile" class="py-name" href="#" onclick="return doclink('link-146', 'ChannelStderrFile', 'link-146');">ChannelStderrFile</a></tt><tt class="py-op">(</tt><tt class="py-op">*</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-name">list</tt><tt class="py-op">(</tt><tt class="py-name">params</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L820"></a><tt class="py-lineno"> 820</tt> <tt class="py-line"> </tt>
-<a name="Channel.fileno"></a><div id="Channel.fileno-def"><a name="L821"></a><tt class="py-lineno"> 821</tt> <a class="py-toggle" href="#" id="Channel.fileno-toggle" onclick="return toggle('Channel.fileno');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#fileno">fileno</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.fileno-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.fileno-expanded"><a name="L822"></a><tt class="py-lineno"> 822</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L823"></a><tt class="py-lineno"> 823</tt> <tt class="py-line"><tt class="py-docstring"> Returns an OS-level file descriptor which can be used for polling, but</tt> </tt>
-<a name="L824"></a><tt class="py-lineno"> 824</tt> <tt class="py-line"><tt class="py-docstring"> but I{not} for reading or writing. This is primaily to allow python's</tt> </tt>
-<a name="L825"></a><tt class="py-lineno"> 825</tt> <tt class="py-line"><tt class="py-docstring"> C{select} module to work.</tt> </tt>
-<a name="L826"></a><tt class="py-lineno"> 826</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L827"></a><tt class="py-lineno"> 827</tt> <tt class="py-line"><tt class="py-docstring"> The first time C{fileno} is called on a channel, a pipe is created to</tt> </tt>
-<a name="L828"></a><tt class="py-lineno"> 828</tt> <tt class="py-line"><tt class="py-docstring"> simulate real OS-level file descriptor (FD) behavior. Because of this,</tt> </tt>
-<a name="L829"></a><tt class="py-lineno"> 829</tt> <tt class="py-line"><tt class="py-docstring"> two OS-level FDs are created, which will use up FDs faster than normal.</tt> </tt>
-<a name="L830"></a><tt class="py-lineno"> 830</tt> <tt class="py-line"><tt class="py-docstring"> (You won't notice this effect unless you have hundreds of channels</tt> </tt>
-<a name="L831"></a><tt class="py-lineno"> 831</tt> <tt class="py-line"><tt class="py-docstring"> open at the same time.)</tt> </tt>
-<a name="L832"></a><tt class="py-lineno"> 832</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L833"></a><tt class="py-lineno"> 833</tt> <tt class="py-line"><tt class="py-docstring"> @return: an OS-level file descriptor</tt> </tt>
-<a name="L834"></a><tt class="py-lineno"> 834</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: int</tt> </tt>
-<a name="L835"></a><tt class="py-lineno"> 835</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L836"></a><tt class="py-lineno"> 836</tt> <tt class="py-line"><tt class="py-docstring"> @warning: This method causes channel reads to be slightly less</tt> </tt>
-<a name="L837"></a><tt class="py-lineno"> 837</tt> <tt class="py-line"><tt class="py-docstring"> efficient.</tt> </tt>
-<a name="L838"></a><tt class="py-lineno"> 838</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L839"></a><tt class="py-lineno"> 839</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L840"></a><tt class="py-lineno"> 840</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L841"></a><tt class="py-lineno"> 841</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pipe</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L842"></a><tt class="py-lineno"> 842</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pipe</tt><tt class="py-op">.</tt><tt id="link-147" class="py-name" targets="Method paramiko.Channel.fileno()=paramiko.Channel-class.html#fileno,Method paramiko.pipe.PosixPipe.fileno()=paramiko.pipe.PosixPipe-class.html#fileno,Method paramiko.pipe.WindowsPipe.fileno()=paramiko.pipe.WindowsPipe-class.html#fileno"><a title="paramiko.Channel.fileno
-paramiko.pipe.PosixPipe.fileno
-paramiko.pipe.WindowsPipe.fileno" class="py-name" href="#" onclick="return doclink('link-147', 'fileno', 'link-147');">fileno</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L843"></a><tt class="py-lineno"> 843</tt> <tt class="py-line"> <tt class="py-comment"># create the pipe and feed in any existing data</tt> </tt>
-<a name="L844"></a><tt class="py-lineno"> 844</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pipe</tt> <tt class="py-op">=</tt> <tt id="link-148" class="py-name"><a title="paramiko.pipe" class="py-name" href="#" onclick="return doclink('link-148', 'pipe', 'link-18');">pipe</a></tt><tt class="py-op">.</tt><tt id="link-149" class="py-name" targets="Function paramiko.pipe.make_pipe()=paramiko.pipe-module.html#make_pipe"><a title="paramiko.pipe.make_pipe" class="py-name" href="#" onclick="return doclink('link-149', 'make_pipe', 'link-149');">make_pipe</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L845"></a><tt class="py-lineno"> 845</tt> <tt class="py-line"> <tt class="py-name">p1</tt><tt class="py-op">,</tt> <tt class="py-name">p2</tt> <tt class="py-op">=</tt> <tt id="link-150" class="py-name"><a title="paramiko.pipe" class="py-name" href="#" onclick="return doclink('link-150', 'pipe', 'link-18');">pipe</a></tt><tt class="py-op">.</tt><tt id="link-151" class="py-name" targets="Function paramiko.pipe.make_or_pipe()=paramiko.pipe-module.html#make_or_pipe"><a title="paramiko.pipe.make_or_pipe" class="py-name" href="#" onclick="return doclink('link-151', 'make_or_pipe', 'link-151');">make_or_pipe</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pipe</tt><tt class="py-op">)</tt> </tt>
-<a name="L846"></a><tt class="py-lineno"> 846</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_buffer</tt><tt class="py-op">.</tt><tt id="link-152" class="py-name" targets="Method paramiko.buffered_pipe.BufferedPipe.set_event()=paramiko.buffered_pipe.BufferedPipe-class.html#set_event"><a title="paramiko.buffered_pipe.BufferedPipe.set_event" class="py-name" href="#" onclick="return doclink('link-152', 'set_event', 'link-152');">set_event</a></tt><tt class="py-op">(</tt><tt class="py-name">p1</tt><tt class="py-op">)</tt> </tt>
-<a name="L847"></a><tt class="py-lineno"> 847</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_stderr_buffer</tt><tt class="py-op">.</tt><tt id="link-153" class="py-name"><a title="paramiko.buffered_pipe.BufferedPipe.set_event" class="py-name" href="#" onclick="return doclink('link-153', 'set_event', 'link-152');">set_event</a></tt><tt class="py-op">(</tt><tt class="py-name">p2</tt><tt class="py-op">)</tt> </tt>
-<a name="L848"></a><tt class="py-lineno"> 848</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pipe</tt><tt class="py-op">.</tt><tt id="link-154" class="py-name"><a title="paramiko.Channel.fileno
-paramiko.pipe.PosixPipe.fileno
-paramiko.pipe.WindowsPipe.fileno" class="py-name" href="#" onclick="return doclink('link-154', 'fileno', 'link-147');">fileno</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L849"></a><tt class="py-lineno"> 849</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L850"></a><tt class="py-lineno"> 850</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L851"></a><tt class="py-lineno"> 851</tt> <tt class="py-line"> </tt>
-<a name="Channel.shutdown"></a><div id="Channel.shutdown-def"><a name="L852"></a><tt class="py-lineno"> 852</tt> <a class="py-toggle" href="#" id="Channel.shutdown-toggle" onclick="return toggle('Channel.shutdown');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#shutdown">shutdown</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">how</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.shutdown-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.shutdown-expanded"><a name="L853"></a><tt class="py-lineno"> 853</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L854"></a><tt class="py-lineno"> 854</tt> <tt class="py-line"><tt class="py-docstring"> Shut down one or both halves of the connection. If C{how} is 0,</tt> </tt>
-<a name="L855"></a><tt class="py-lineno"> 855</tt> <tt class="py-line"><tt class="py-docstring"> further receives are disallowed. If C{how} is 1, further sends</tt> </tt>
-<a name="L856"></a><tt class="py-lineno"> 856</tt> <tt class="py-line"><tt class="py-docstring"> are disallowed. If C{how} is 2, further sends and receives are</tt> </tt>
-<a name="L857"></a><tt class="py-lineno"> 857</tt> <tt class="py-line"><tt class="py-docstring"> disallowed. This closes the stream in one or both directions.</tt> </tt>
-<a name="L858"></a><tt class="py-lineno"> 858</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L859"></a><tt class="py-lineno"> 859</tt> <tt class="py-line"><tt class="py-docstring"> @param how: 0 (stop receiving), 1 (stop sending), or 2 (stop</tt> </tt>
-<a name="L860"></a><tt class="py-lineno"> 860</tt> <tt class="py-line"><tt class="py-docstring"> receiving and sending).</tt> </tt>
-<a name="L861"></a><tt class="py-lineno"> 861</tt> <tt class="py-line"><tt class="py-docstring"> @type how: int</tt> </tt>
-<a name="L862"></a><tt class="py-lineno"> 862</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L863"></a><tt class="py-lineno"> 863</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">how</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">how</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L864"></a><tt class="py-lineno"> 864</tt> <tt class="py-line"> <tt class="py-comment"># feign "read" shutdown</tt> </tt>
-<a name="L865"></a><tt class="py-lineno"> 865</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">eof_received</tt> <tt class="py-op">=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L866"></a><tt class="py-lineno"> 866</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">how</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">how</tt> <tt class="py-op">==</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L867"></a><tt class="py-lineno"> 867</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L868"></a><tt class="py-lineno"> 868</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L869"></a><tt class="py-lineno"> 869</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_eof</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L870"></a><tt class="py-lineno"> 870</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L871"></a><tt class="py-lineno"> 871</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L872"></a><tt class="py-lineno"> 872</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">m</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L873"></a><tt class="py-lineno"> 873</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-155" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-155', 'transport', 'link-20');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_user_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L874"></a><tt class="py-lineno"> 874</tt> <tt class="py-line"> </tt>
-<a name="Channel.shutdown_read"></a><div id="Channel.shutdown_read-def"><a name="L875"></a><tt class="py-lineno"> 875</tt> <a class="py-toggle" href="#" id="Channel.shutdown_read-toggle" onclick="return toggle('Channel.shutdown_read');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#shutdown_read">shutdown_read</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.shutdown_read-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.shutdown_read-expanded"><a name="L876"></a><tt class="py-lineno"> 876</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L877"></a><tt class="py-lineno"> 877</tt> <tt class="py-line"><tt class="py-docstring"> Shutdown the receiving side of this socket, closing the stream in</tt> </tt>
-<a name="L878"></a><tt class="py-lineno"> 878</tt> <tt class="py-line"><tt class="py-docstring"> the incoming direction. After this call, future reads on this</tt> </tt>
-<a name="L879"></a><tt class="py-lineno"> 879</tt> <tt class="py-line"><tt class="py-docstring"> channel will fail instantly. This is a convenience method, equivalent</tt> </tt>
-<a name="L880"></a><tt class="py-lineno"> 880</tt> <tt class="py-line"><tt class="py-docstring"> to C{shutdown(0)}, for people who don't make it a habit to</tt> </tt>
-<a name="L881"></a><tt class="py-lineno"> 881</tt> <tt class="py-line"><tt class="py-docstring"> memorize unix constants from the 1970s.</tt> </tt>
-<a name="L882"></a><tt class="py-lineno"> 882</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L883"></a><tt class="py-lineno"> 883</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.2</tt> </tt>
-<a name="L884"></a><tt class="py-lineno"> 884</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L885"></a><tt class="py-lineno"> 885</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-156" class="py-name" targets="Method paramiko.Channel.shutdown()=paramiko.Channel-class.html#shutdown"><a title="paramiko.Channel.shutdown" class="py-name" href="#" onclick="return doclink('link-156', 'shutdown', 'link-156');">shutdown</a></tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L886"></a><tt class="py-lineno"> 886</tt> <tt class="py-line"> </tt>
-<a name="Channel.shutdown_write"></a><div id="Channel.shutdown_write-def"><a name="L887"></a><tt class="py-lineno"> 887</tt> <a class="py-toggle" href="#" id="Channel.shutdown_write-toggle" onclick="return toggle('Channel.shutdown_write');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#shutdown_write">shutdown_write</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel.shutdown_write-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel.shutdown_write-expanded"><a name="L888"></a><tt class="py-lineno"> 888</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L889"></a><tt class="py-lineno"> 889</tt> <tt class="py-line"><tt class="py-docstring"> Shutdown the sending side of this socket, closing the stream in</tt> </tt>
-<a name="L890"></a><tt class="py-lineno"> 890</tt> <tt class="py-line"><tt class="py-docstring"> the outgoing direction. After this call, future writes on this</tt> </tt>
-<a name="L891"></a><tt class="py-lineno"> 891</tt> <tt class="py-line"><tt class="py-docstring"> channel will fail instantly. This is a convenience method, equivalent</tt> </tt>
-<a name="L892"></a><tt class="py-lineno"> 892</tt> <tt class="py-line"><tt class="py-docstring"> to C{shutdown(1)}, for people who don't make it a habit to</tt> </tt>
-<a name="L893"></a><tt class="py-lineno"> 893</tt> <tt class="py-line"><tt class="py-docstring"> memorize unix constants from the 1970s.</tt> </tt>
-<a name="L894"></a><tt class="py-lineno"> 894</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L895"></a><tt class="py-lineno"> 895</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.2</tt> </tt>
-<a name="L896"></a><tt class="py-lineno"> 896</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L897"></a><tt class="py-lineno"> 897</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-157" class="py-name"><a title="paramiko.Channel.shutdown" class="py-name" href="#" onclick="return doclink('link-157', 'shutdown', 'link-156');">shutdown</a></tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L898"></a><tt class="py-lineno"> 898</tt> <tt class="py-line"> </tt>
-<a name="L899"></a><tt class="py-lineno"> 899</tt> <tt class="py-line"> </tt>
-<a name="L900"></a><tt class="py-lineno"> 900</tt> <tt class="py-line"> <tt class="py-comment">### calls from Transport</tt> </tt>
-<a name="L901"></a><tt class="py-lineno"> 901</tt> <tt class="py-line"> </tt>
-<a name="L902"></a><tt class="py-lineno"> 902</tt> <tt class="py-line"> </tt>
-<a name="Channel._set_transport"></a><div id="Channel._set_transport-def"><a name="L903"></a><tt class="py-lineno"> 903</tt> <a class="py-toggle" href="#" id="Channel._set_transport-toggle" onclick="return toggle('Channel._set_transport');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#_set_transport">_set_transport</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">transport</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel._set_transport-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel._set_transport-expanded"><a name="L904"></a><tt class="py-lineno"> 904</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-158" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-158', 'transport', 'link-20');">transport</a></tt> <tt class="py-op">=</tt> <tt id="link-159" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-159', 'transport', 'link-20');">transport</a></tt> </tt>
-<a name="L905"></a><tt class="py-lineno"> 905</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-160" class="py-name"><a title="paramiko.logging22.logger" class="py-name" href="#" onclick="return doclink('link-160', 'logger', 'link-23');">logger</a></tt> <tt class="py-op">=</tt> <tt id="link-161" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-161', 'util', 'link-3');">util</a></tt><tt class="py-op">.</tt><tt id="link-162" class="py-name"><a title="paramiko.util.get_logger" class="py-name" href="#" onclick="return doclink('link-162', 'get_logger', 'link-25');">get_logger</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-163" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-163', 'transport', 'link-20');">transport</a></tt><tt class="py-op">.</tt><tt id="link-164" class="py-name" targets="Method paramiko.Transport.get_log_channel()=paramiko.Transport-class.html#get_log_channel"><a title="paramiko.Transport.get_log_channel" class="py-name" href="#" onclick="return doclink('link-164', 'get_log_channel', 'link-164');">get_log_channel</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L906"></a><tt class="py-lineno"> 906</tt> <tt class="py-line"> </tt>
-<a name="Channel._set_window"></a><div id="Channel._set_window-def"><a name="L907"></a><tt class="py-lineno"> 907</tt> <a class="py-toggle" href="#" id="Channel._set_window-toggle" onclick="return toggle('Channel._set_window');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#_set_window">_set_window</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">window_size</tt><tt class="py-op">,</tt> <tt class="py-param">max_packet_size</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel._set_window-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel._set_window-expanded"><a name="L908"></a><tt class="py-lineno"> 908</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_window_size</tt> <tt class="py-op">=</tt> <tt class="py-name">window_size</tt> </tt>
-<a name="L909"></a><tt class="py-lineno"> 909</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_max_packet_size</tt> <tt class="py-op">=</tt> <tt class="py-name">max_packet_size</tt> </tt>
-<a name="L910"></a><tt class="py-lineno"> 910</tt> <tt class="py-line"> <tt class="py-comment"># threshold of bytes we receive before we bother to send a window update</tt> </tt>
-<a name="L911"></a><tt class="py-lineno"> 911</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_window_threshold</tt> <tt class="py-op">=</tt> <tt class="py-name">window_size</tt> <tt class="py-op">//</tt> <tt class="py-number">10</tt> </tt>
-<a name="L912"></a><tt class="py-lineno"> 912</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_window_sofar</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L913"></a><tt class="py-lineno"> 913</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-165" class="py-name" targets="Variable paramiko.auth_handler.DEBUG=paramiko.auth_handler-module.html#DEBUG,Variable paramiko.channel.DEBUG=paramiko.channel-module.html#DEBUG,Variable paramiko.client.DEBUG=paramiko.client-module.html#DEBUG,Variable paramiko.common.DEBUG=paramiko.common-module.html#DEBUG,Variable paramiko.dsskey.DEBUG=paramiko.dsskey-module.html#DEBUG,Variable paramiko.hostkeys.DEBUG=paramiko.hostkeys-module.html#DEBUG,Variable paramiko.kex_gex.DEBUG=paramiko.kex_gex-module.html#DEBUG,Variable paramiko.kex_group1.DEBUG=paramiko.kex_group1-module.html#DEBUG,Variable paramiko.logging22.DEBUG=paramiko.logging22-module.html#DEBUG,Variable paramiko.packet.DEBUG=paramiko.packet-module.html#DEBUG,Variable paramiko.pkey.DEBUG=paramiko.pkey-module.html#DEBUG,Variable paramiko.rsakey.DEBUG=paramiko.rsakey-module.html#DEBUG,Variable paramiko.server.DEBUG=paramiko.server-module.html#DEBUG,Variable paramiko.sftp.DEBUG=paramiko.sftp-module.html#DEBUG,Variable paramiko.sftp_attr.DEBUG=paramiko.sftp_attr-module.html#DEBUG,Variable paramiko.sftp_client.DEBUG=paramiko.sftp_client-module.html#DEBUG,Variable paramiko.sftp_file.DEBUG=paramiko.sftp_file-module.html#DEBUG,Variable paramiko.sftp_handle.DEBUG=paramiko.sftp_handle-module.html#DEBUG,Variable paramiko.sftp_server.DEBUG=paramiko.sftp_server-module.html#DEBUG,Variable paramiko.sftp_si.DEBUG=paramiko.sftp_si-module.html#DEBUG,Variable paramiko.transport.DEBUG=paramiko.transport-module.html#DEBUG,Variable paramiko.util.DEBUG=paramiko.util-module.html#DEBUG"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-165', 'DEBUG', 'link-165');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Max packet in: %d bytes'</tt> <tt class="py-op">%</tt> <tt class="py-name">max_packet_size</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L914"></a><tt class="py-lineno"> 914</tt> <tt class="py-line"> </tt>
-<a name="Channel._set_remote_channel"></a><div id="Channel._set_remote_channel-def"><a name="L915"></a><tt class="py-lineno"> 915</tt> <a class="py-toggle" href="#" id="Channel._set_remote_channel-toggle" onclick="return toggle('Channel._set_remote_channel');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#_set_remote_channel">_set_remote_channel</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">chanid</tt><tt class="py-op">,</tt> <tt class="py-param">window_size</tt><tt class="py-op">,</tt> <tt class="py-param">max_packet_size</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel._set_remote_channel-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel._set_remote_channel-expanded"><a name="L916"></a><tt class="py-lineno"> 916</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_chanid</tt> <tt class="py-op">=</tt> <tt class="py-name">chanid</tt> </tt>
-<a name="L917"></a><tt class="py-lineno"> 917</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">out_window_size</tt> <tt class="py-op">=</tt> <tt class="py-name">window_size</tt> </tt>
-<a name="L918"></a><tt class="py-lineno"> 918</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">out_max_packet_size</tt> <tt class="py-op">=</tt> <tt class="py-name">max</tt><tt class="py-op">(</tt><tt class="py-name">max_packet_size</tt><tt class="py-op">,</tt> <tt id="link-166" class="py-name"><a title="paramiko.channel.MIN_PACKET_SIZE" class="py-name" href="#" onclick="return doclink('link-166', 'MIN_PACKET_SIZE', 'link-19');">MIN_PACKET_SIZE</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L919"></a><tt class="py-lineno"> 919</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt> <tt class="py-op">=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L920"></a><tt class="py-lineno"> 920</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-167" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-167', 'DEBUG', 'link-165');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Max packet out: %d bytes'</tt> <tt class="py-op">%</tt> <tt class="py-name">max_packet_size</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L921"></a><tt class="py-lineno"> 921</tt> <tt class="py-line"> </tt>
-<a name="Channel._request_success"></a><div id="Channel._request_success-def"><a name="L922"></a><tt class="py-lineno"> 922</tt> <a class="py-toggle" href="#" id="Channel._request_success-toggle" onclick="return toggle('Channel._request_success');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#_request_success">_request_success</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel._request_success-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel._request_success-expanded"><a name="L923"></a><tt class="py-lineno"> 923</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-168" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-168', 'DEBUG', 'link-165');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Sesch channel %d request ok'</tt> <tt class="py-op">%</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">chanid</tt><tt class="py-op">)</tt> </tt>
-<a name="L924"></a><tt class="py-lineno"> 924</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">event_ready</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L925"></a><tt class="py-lineno"> 925</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">event</tt><tt class="py-op">.</tt><tt id="link-169" class="py-name" targets="Method paramiko.pipe.OrPipe.set()=paramiko.pipe.OrPipe-class.html#set,Method paramiko.pipe.PosixPipe.set()=paramiko.pipe.PosixPipe-class.html#set,Method paramiko.pipe.WindowsPipe.set()=paramiko.pipe.WindowsPipe-class.html#set"><a title="paramiko.pipe.OrPipe.set
-paramiko.pipe.PosixPipe.set
-paramiko.pipe.WindowsPipe.set" class="py-name" href="#" onclick="return doclink('link-169', 'set', 'link-169');">set</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L926"></a><tt class="py-lineno"> 926</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-</div><a name="L927"></a><tt class="py-lineno"> 927</tt> <tt class="py-line"> </tt>
-<a name="Channel._request_failed"></a><div id="Channel._request_failed-def"><a name="L928"></a><tt class="py-lineno"> 928</tt> <a class="py-toggle" href="#" id="Channel._request_failed-toggle" onclick="return toggle('Channel._request_failed');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#_request_failed">_request_failed</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel._request_failed-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel._request_failed-expanded"><a name="L929"></a><tt class="py-lineno"> 929</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L930"></a><tt class="py-lineno"> 930</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L931"></a><tt class="py-lineno"> 931</tt> <tt class="py-line"> <tt class="py-name">msgs</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_close_internal</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L932"></a><tt class="py-lineno"> 932</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L933"></a><tt class="py-lineno"> 933</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L934"></a><tt class="py-lineno"> 934</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">m</tt> <tt class="py-keyword">in</tt> <tt class="py-name">msgs</tt><tt class="py-op">:</tt> </tt>
-<a name="L935"></a><tt class="py-lineno"> 935</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">m</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L936"></a><tt class="py-lineno"> 936</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-170" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-170', 'transport', 'link-20');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_user_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L937"></a><tt class="py-lineno"> 937</tt> <tt class="py-line"> </tt>
-<a name="Channel._feed"></a><div id="Channel._feed-def"><a name="L938"></a><tt class="py-lineno"> 938</tt> <a class="py-toggle" href="#" id="Channel._feed-toggle" onclick="return toggle('Channel._feed');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#_feed">_feed</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel._feed-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel._feed-expanded"><a name="L939"></a><tt class="py-lineno"> 939</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">str</tt><tt class="py-op">:</tt> </tt>
-<a name="L940"></a><tt class="py-lineno"> 940</tt> <tt class="py-line"> <tt class="py-comment"># passed from _feed_extended</tt> </tt>
-<a name="L941"></a><tt class="py-lineno"> 941</tt> <tt class="py-line"> <tt class="py-name">s</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt> </tt>
-<a name="L942"></a><tt class="py-lineno"> 942</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L943"></a><tt class="py-lineno"> 943</tt> <tt class="py-line"> <tt class="py-name">s</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-171" class="py-name" targets="Method paramiko.Message.get_string()=paramiko.Message-class.html#get_string"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-171', 'get_string', 'link-171');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L944"></a><tt class="py-lineno"> 944</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_buffer</tt><tt class="py-op">.</tt><tt id="link-172" class="py-name" targets="Method paramiko.buffered_pipe.BufferedPipe.feed()=paramiko.buffered_pipe.BufferedPipe-class.html#feed"><a title="paramiko.buffered_pipe.BufferedPipe.feed" class="py-name" href="#" onclick="return doclink('link-172', 'feed', 'link-172');">feed</a></tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L945"></a><tt class="py-lineno"> 945</tt> <tt class="py-line"> </tt>
-<a name="Channel._feed_extended"></a><div id="Channel._feed_extended-def"><a name="L946"></a><tt class="py-lineno"> 946</tt> <a class="py-toggle" href="#" id="Channel._feed_extended-toggle" onclick="return toggle('Channel._feed_extended');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#_feed_extended">_feed_extended</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel._feed_extended-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel._feed_extended-expanded"><a name="L947"></a><tt class="py-lineno"> 947</tt> <tt class="py-line"> <tt class="py-name">code</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-173" class="py-name" targets="Method paramiko.Message.get_int()=paramiko.Message-class.html#get_int"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-173', 'get_int', 'link-173');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L948"></a><tt class="py-lineno"> 948</tt> <tt class="py-line"> <tt class="py-name">s</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-174" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-174', 'get_string', 'link-171');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L949"></a><tt class="py-lineno"> 949</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">code</tt> <tt class="py-op">!=</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L950"></a><tt class="py-lineno"> 950</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-175" class="py-name" targets="Variable paramiko.auth_handler.ERROR=paramiko.auth_handler-module.html#ERROR,Variable paramiko.channel.ERROR=paramiko.channel-module.html#ERROR,Variable paramiko.client.ERROR=paramiko.client-module.html#ERROR,Variable paramiko.common.ERROR=paramiko.common-module.html#ERROR,Variable paramiko.dsskey.ERROR=paramiko.dsskey-module.html#ERROR,Variable paramiko.hostkeys.ERROR=paramiko.hostkeys-module.html#ERROR,Variable paramiko.kex_gex.ERROR=paramiko.kex_gex-module.html#ERROR,Variable paramiko.kex_group1.ERROR=paramiko.kex_group1-module.html#ERROR,Variable paramiko.logging22.ERROR=paramiko.logging22-module.html#ERROR,Variable paramiko.packet.ERROR=paramiko.packet-module.html#ERROR,Variable paramiko.pkey.ERROR=paramiko.pkey-module.html#ERROR,Variable paramiko.rsakey.ERROR=paramiko.rsakey-module.html#ERROR,Variable paramiko.server.ERROR=paramiko.server-module.html#ERROR,Variable paramiko.sftp.ERROR=paramiko.sftp-module.html#ERROR,Variable paramiko.sftp_attr.ERROR=paramiko.sftp_attr-module.html#ERROR,Variable paramiko.sftp_client.ERROR=paramiko.sftp_client-module.html#ERROR,Variable paramiko.sftp_file.ERROR=paramiko.sftp_file-module.html#ERROR,Variable paramiko.sftp_handle.ERROR=paramiko.sftp_handle-module.html#ERROR,Variable paramiko.sftp_server.ERROR=paramiko.sftp_server-module.html#ERROR,Variable paramiko.sftp_si.ERROR=paramiko.sftp_si-module.html#ERROR,Variable paramiko.transport.ERROR=paramiko.transport-module.html#ERROR,Variable paramiko.util.ERROR=paramiko.util-module.html#ERROR"><a title="paramiko.auth_handler.ERROR
-paramiko.channel.ERROR
-paramiko.client.ERROR
-paramiko.common.ERROR
-paramiko.dsskey.ERROR
-paramiko.hostkeys.ERROR
-paramiko.kex_gex.ERROR
-paramiko.kex_group1.ERROR
-paramiko.logging22.ERROR
-paramiko.packet.ERROR
-paramiko.pkey.ERROR
-paramiko.rsakey.ERROR
-paramiko.server.ERROR
-paramiko.sftp.ERROR
-paramiko.sftp_attr.ERROR
-paramiko.sftp_client.ERROR
-paramiko.sftp_file.ERROR
-paramiko.sftp_handle.ERROR
-paramiko.sftp_server.ERROR
-paramiko.sftp_si.ERROR
-paramiko.transport.ERROR
-paramiko.util.ERROR" class="py-name" href="#" onclick="return doclink('link-175', 'ERROR', 'link-175');">ERROR</a></tt><tt class="py-op">,</tt> <tt class="py-string">'unknown extended_data type %d; discarding'</tt> <tt class="py-op">%</tt> <tt class="py-name">code</tt><tt class="py-op">)</tt> </tt>
-<a name="L951"></a><tt class="py-lineno"> 951</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L952"></a><tt class="py-lineno"> 952</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">combine_stderr</tt><tt class="py-op">:</tt> </tt>
-<a name="L953"></a><tt class="py-lineno"> 953</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_feed</tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">)</tt> </tt>
-<a name="L954"></a><tt class="py-lineno"> 954</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L955"></a><tt class="py-lineno"> 955</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_stderr_buffer</tt><tt class="py-op">.</tt><tt id="link-176" class="py-name"><a title="paramiko.buffered_pipe.BufferedPipe.feed" class="py-name" href="#" onclick="return doclink('link-176', 'feed', 'link-172');">feed</a></tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L956"></a><tt class="py-lineno"> 956</tt> <tt class="py-line"> </tt>
-<a name="Channel._window_adjust"></a><div id="Channel._window_adjust-def"><a name="L957"></a><tt class="py-lineno"> 957</tt> <a class="py-toggle" href="#" id="Channel._window_adjust-toggle" onclick="return toggle('Channel._window_adjust');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#_window_adjust">_window_adjust</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel._window_adjust-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel._window_adjust-expanded"><a name="L958"></a><tt class="py-lineno"> 958</tt> <tt class="py-line"> <tt class="py-name">nbytes</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-177" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-177', 'get_int', 'link-173');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L959"></a><tt class="py-lineno"> 959</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L960"></a><tt class="py-lineno"> 960</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L961"></a><tt class="py-lineno"> 961</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ultra_debug</tt><tt class="py-op">:</tt> </tt>
-<a name="L962"></a><tt class="py-lineno"> 962</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-178" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-178', 'DEBUG', 'link-165');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'window up %d'</tt> <tt class="py-op">%</tt> <tt class="py-name">nbytes</tt><tt class="py-op">)</tt> </tt>
-<a name="L963"></a><tt class="py-lineno"> 963</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">out_window_size</tt> <tt class="py-op">+=</tt> <tt class="py-name">nbytes</tt> </tt>
-<a name="L964"></a><tt class="py-lineno"> 964</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">out_buffer_cv</tt><tt class="py-op">.</tt><tt class="py-name">notifyAll</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L965"></a><tt class="py-lineno"> 965</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L966"></a><tt class="py-lineno"> 966</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L967"></a><tt class="py-lineno"> 967</tt> <tt class="py-line"> </tt>
-<a name="Channel._handle_request"></a><div id="Channel._handle_request-def"><a name="L968"></a><tt class="py-lineno"> 968</tt> <a class="py-toggle" href="#" id="Channel._handle_request-toggle" onclick="return toggle('Channel._handle_request');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#_handle_request">_handle_request</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel._handle_request-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel._handle_request-expanded"><a name="L969"></a><tt class="py-lineno"> 969</tt> <tt class="py-line"> <tt class="py-name">key</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-179" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-179', 'get_string', 'link-171');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L970"></a><tt class="py-lineno"> 970</tt> <tt class="py-line"> <tt class="py-name">want_reply</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-180" class="py-name" targets="Method paramiko.Message.get_boolean()=paramiko.Message-class.html#get_boolean"><a title="paramiko.Message.get_boolean" class="py-name" href="#" onclick="return doclink('link-180', 'get_boolean', 'link-180');">get_boolean</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L971"></a><tt class="py-lineno"> 971</tt> <tt class="py-line"> <tt id="link-181" class="py-name" targets="Module paramiko.server=paramiko.server-module.html"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-181', 'server', 'link-181');">server</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-182" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-182', 'transport', 'link-20');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">server_object</tt> </tt>
-<a name="L972"></a><tt class="py-lineno"> 972</tt> <tt class="py-line"> <tt class="py-name">ok</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L973"></a><tt class="py-lineno"> 973</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">key</tt> <tt class="py-op">==</tt> <tt class="py-string">'exit-status'</tt><tt class="py-op">:</tt> </tt>
-<a name="L974"></a><tt class="py-lineno"> 974</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">exit_status</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-183" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-183', 'get_int', 'link-173');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L975"></a><tt class="py-lineno"> 975</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">status_event</tt><tt class="py-op">.</tt><tt id="link-184" class="py-name"><a title="paramiko.pipe.OrPipe.set
-paramiko.pipe.PosixPipe.set
-paramiko.pipe.WindowsPipe.set" class="py-name" href="#" onclick="return doclink('link-184', 'set', 'link-169');">set</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L976"></a><tt class="py-lineno"> 976</tt> <tt class="py-line"> <tt class="py-name">ok</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L977"></a><tt class="py-lineno"> 977</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">key</tt> <tt class="py-op">==</tt> <tt class="py-string">'xon-xoff'</tt><tt class="py-op">:</tt> </tt>
-<a name="L978"></a><tt class="py-lineno"> 978</tt> <tt class="py-line"> <tt class="py-comment"># ignore</tt> </tt>
-<a name="L979"></a><tt class="py-lineno"> 979</tt> <tt class="py-line"> <tt class="py-name">ok</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L980"></a><tt class="py-lineno"> 980</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">key</tt> <tt class="py-op">==</tt> <tt class="py-string">'pty-req'</tt><tt class="py-op">:</tt> </tt>
-<a name="L981"></a><tt class="py-lineno"> 981</tt> <tt class="py-line"> <tt class="py-name">term</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-185" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-185', 'get_string', 'link-171');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L982"></a><tt class="py-lineno"> 982</tt> <tt class="py-line"> <tt class="py-name">width</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-186" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-186', 'get_int', 'link-173');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L983"></a><tt class="py-lineno"> 983</tt> <tt class="py-line"> <tt class="py-name">height</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-187" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-187', 'get_int', 'link-173');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L984"></a><tt class="py-lineno"> 984</tt> <tt class="py-line"> <tt class="py-name">pixelwidth</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-188" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-188', 'get_int', 'link-173');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L985"></a><tt class="py-lineno"> 985</tt> <tt class="py-line"> <tt class="py-name">pixelheight</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-189" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-189', 'get_int', 'link-173');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L986"></a><tt class="py-lineno"> 986</tt> <tt class="py-line"> <tt class="py-name">modes</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-190" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-190', 'get_string', 'link-171');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L987"></a><tt class="py-lineno"> 987</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-191" class="py-name"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-191', 'server', 'link-181');">server</a></tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L988"></a><tt class="py-lineno"> 988</tt> <tt class="py-line"> <tt class="py-name">ok</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L989"></a><tt class="py-lineno"> 989</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L990"></a><tt class="py-lineno"> 990</tt> <tt class="py-line"> <tt class="py-name">ok</tt> <tt class="py-op">=</tt> <tt id="link-192" class="py-name"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-192', 'server', 'link-181');">server</a></tt><tt class="py-op">.</tt><tt id="link-193" class="py-name" targets="Method paramiko.ServerInterface.check_channel_pty_request()=paramiko.ServerInterface-class.html#check_channel_pty_request"><a title="paramiko.ServerInterface.check_channel_pty_request" class="py-name" href="#" onclick="return doclink('link-193', 'check_channel_pty_request', 'link-193');">check_channel_pty_request</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-name">term</tt><tt class="py-op">,</tt> <tt class="py-name">width</tt><tt class="py-op">,</tt> <tt class="py-name">height</tt><tt class="py-op">,</tt> <tt class="py-name">pixelwidth</tt><tt class="py-op">,</tt> </tt>
-<a name="L991"></a><tt class="py-lineno"> 991</tt> <tt class="py-line"> <tt class="py-name">pixelheight</tt><tt class="py-op">,</tt> <tt class="py-name">modes</tt><tt class="py-op">)</tt> </tt>
-<a name="L992"></a><tt class="py-lineno"> 992</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">key</tt> <tt class="py-op">==</tt> <tt class="py-string">'shell'</tt><tt class="py-op">:</tt> </tt>
-<a name="L993"></a><tt class="py-lineno"> 993</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-194" class="py-name"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-194', 'server', 'link-181');">server</a></tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L994"></a><tt class="py-lineno"> 994</tt> <tt class="py-line"> <tt class="py-name">ok</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L995"></a><tt class="py-lineno"> 995</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L996"></a><tt class="py-lineno"> 996</tt> <tt class="py-line"> <tt class="py-name">ok</tt> <tt class="py-op">=</tt> <tt id="link-195" class="py-name"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-195', 'server', 'link-181');">server</a></tt><tt class="py-op">.</tt><tt id="link-196" class="py-name" targets="Method paramiko.ServerInterface.check_channel_shell_request()=paramiko.ServerInterface-class.html#check_channel_shell_request"><a title="paramiko.ServerInterface.check_channel_shell_request" class="py-name" href="#" onclick="return doclink('link-196', 'check_channel_shell_request', 'link-196');">check_channel_shell_request</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt> </tt>
-<a name="L997"></a><tt class="py-lineno"> 997</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">key</tt> <tt class="py-op">==</tt> <tt class="py-string">'exec'</tt><tt class="py-op">:</tt> </tt>
-<a name="L998"></a><tt class="py-lineno"> 998</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-197" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-197', 'get_string', 'link-171');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L999"></a><tt class="py-lineno"> 999</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-198" class="py-name"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-198', 'server', 'link-181');">server</a></tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L1000"></a><tt class="py-lineno">1000</tt> <tt class="py-line"> <tt class="py-name">ok</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1001"></a><tt class="py-lineno">1001</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1002"></a><tt class="py-lineno">1002</tt> <tt class="py-line"> <tt class="py-name">ok</tt> <tt class="py-op">=</tt> <tt id="link-199" class="py-name"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-199', 'server', 'link-181');">server</a></tt><tt class="py-op">.</tt><tt id="link-200" class="py-name" targets="Method paramiko.ServerInterface.check_channel_exec_request()=paramiko.ServerInterface-class.html#check_channel_exec_request"><a title="paramiko.ServerInterface.check_channel_exec_request" class="py-name" href="#" onclick="return doclink('link-200', 'check_channel_exec_request', 'link-200');">check_channel_exec_request</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-name">cmd</tt><tt class="py-op">)</tt> </tt>
-<a name="L1003"></a><tt class="py-lineno">1003</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">key</tt> <tt class="py-op">==</tt> <tt class="py-string">'subsystem'</tt><tt class="py-op">:</tt> </tt>
-<a name="L1004"></a><tt class="py-lineno">1004</tt> <tt class="py-line"> <tt id="link-201" class="py-name"><a title="paramiko.kex_gex.KexGex.name
-paramiko.kex_group1.KexGroup1.name" class="py-name" href="#" onclick="return doclink('link-201', 'name', 'link-105');">name</a></tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-202" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-202', 'get_string', 'link-171');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1005"></a><tt class="py-lineno">1005</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-203" class="py-name"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-203', 'server', 'link-181');">server</a></tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L1006"></a><tt class="py-lineno">1006</tt> <tt class="py-line"> <tt class="py-name">ok</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1007"></a><tt class="py-lineno">1007</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1008"></a><tt class="py-lineno">1008</tt> <tt class="py-line"> <tt class="py-name">ok</tt> <tt class="py-op">=</tt> <tt id="link-204" class="py-name"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-204', 'server', 'link-181');">server</a></tt><tt class="py-op">.</tt><tt id="link-205" class="py-name" targets="Method paramiko.ServerInterface.check_channel_subsystem_request()=paramiko.ServerInterface-class.html#check_channel_subsystem_request"><a title="paramiko.ServerInterface.check_channel_subsystem_request" class="py-name" href="#" onclick="return doclink('link-205', 'check_channel_subsystem_request', 'link-205');">check_channel_subsystem_request</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">,</tt> <tt id="link-206" class="py-name"><a title="paramiko.kex_gex.KexGex.name
-paramiko.kex_group1.KexGroup1.name" class="py-name" href="#" onclick="return doclink('link-206', 'name', 'link-105');">name</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L1009"></a><tt class="py-lineno">1009</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">key</tt> <tt class="py-op">==</tt> <tt class="py-string">'window-change'</tt><tt class="py-op">:</tt> </tt>
-<a name="L1010"></a><tt class="py-lineno">1010</tt> <tt class="py-line"> <tt class="py-name">width</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-207" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-207', 'get_int', 'link-173');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1011"></a><tt class="py-lineno">1011</tt> <tt class="py-line"> <tt class="py-name">height</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-208" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-208', 'get_int', 'link-173');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1012"></a><tt class="py-lineno">1012</tt> <tt class="py-line"> <tt class="py-name">pixelwidth</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-209" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-209', 'get_int', 'link-173');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1013"></a><tt class="py-lineno">1013</tt> <tt class="py-line"> <tt class="py-name">pixelheight</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-210" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-210', 'get_int', 'link-173');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1014"></a><tt class="py-lineno">1014</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-211" class="py-name"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-211', 'server', 'link-181');">server</a></tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L1015"></a><tt class="py-lineno">1015</tt> <tt class="py-line"> <tt class="py-name">ok</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1016"></a><tt class="py-lineno">1016</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1017"></a><tt class="py-lineno">1017</tt> <tt class="py-line"> <tt class="py-name">ok</tt> <tt class="py-op">=</tt> <tt id="link-212" class="py-name"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-212', 'server', 'link-181');">server</a></tt><tt class="py-op">.</tt><tt id="link-213" class="py-name" targets="Method paramiko.ServerInterface.check_channel_window_change_request()=paramiko.ServerInterface-class.html#check_channel_window_change_request"><a title="paramiko.ServerInterface.check_channel_window_change_request" class="py-name" href="#" onclick="return doclink('link-213', 'check_channel_window_change_request', 'link-213');">check_channel_window_change_request</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-name">width</tt><tt class="py-op">,</tt> <tt class="py-name">height</tt><tt class="py-op">,</tt> <tt class="py-name">pixelwidth</tt><tt class="py-op">,</tt> </tt>
-<a name="L1018"></a><tt class="py-lineno">1018</tt> <tt class="py-line"> <tt class="py-name">pixelheight</tt><tt class="py-op">)</tt> </tt>
-<a name="L1019"></a><tt class="py-lineno">1019</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">key</tt> <tt class="py-op">==</tt> <tt class="py-string">'x11-req'</tt><tt class="py-op">:</tt> </tt>
-<a name="L1020"></a><tt class="py-lineno">1020</tt> <tt class="py-line"> <tt class="py-name">single_connection</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-214" class="py-name"><a title="paramiko.Message.get_boolean" class="py-name" href="#" onclick="return doclink('link-214', 'get_boolean', 'link-180');">get_boolean</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1021"></a><tt class="py-lineno">1021</tt> <tt class="py-line"> <tt class="py-name">auth_proto</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-215" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-215', 'get_string', 'link-171');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1022"></a><tt class="py-lineno">1022</tt> <tt class="py-line"> <tt class="py-name">auth_cookie</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-216" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-216', 'get_string', 'link-171');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1023"></a><tt class="py-lineno">1023</tt> <tt class="py-line"> <tt class="py-name">screen_number</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-217" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-217', 'get_int', 'link-173');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1024"></a><tt class="py-lineno">1024</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-218" class="py-name"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-218', 'server', 'link-181');">server</a></tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L1025"></a><tt class="py-lineno">1025</tt> <tt class="py-line"> <tt class="py-name">ok</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1026"></a><tt class="py-lineno">1026</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1027"></a><tt class="py-lineno">1027</tt> <tt class="py-line"> <tt class="py-name">ok</tt> <tt class="py-op">=</tt> <tt id="link-219" class="py-name"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-219', 'server', 'link-181');">server</a></tt><tt class="py-op">.</tt><tt id="link-220" class="py-name" targets="Method paramiko.ServerInterface.check_channel_x11_request()=paramiko.ServerInterface-class.html#check_channel_x11_request"><a title="paramiko.ServerInterface.check_channel_x11_request" class="py-name" href="#" onclick="return doclink('link-220', 'check_channel_x11_request', 'link-220');">check_channel_x11_request</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-name">single_connection</tt><tt class="py-op">,</tt> </tt>
-<a name="L1028"></a><tt class="py-lineno">1028</tt> <tt class="py-line"> <tt class="py-name">auth_proto</tt><tt class="py-op">,</tt> <tt class="py-name">auth_cookie</tt><tt class="py-op">,</tt> <tt class="py-name">screen_number</tt><tt class="py-op">)</tt> </tt>
-<a name="L1029"></a><tt class="py-lineno">1029</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1030"></a><tt class="py-lineno">1030</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-221" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-221', 'DEBUG', 'link-165');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Unhandled channel request "%s"'</tt> <tt class="py-op">%</tt> <tt class="py-name">key</tt><tt class="py-op">)</tt> </tt>
-<a name="L1031"></a><tt class="py-lineno">1031</tt> <tt class="py-line"> <tt class="py-name">ok</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1032"></a><tt class="py-lineno">1032</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">want_reply</tt><tt class="py-op">:</tt> </tt>
-<a name="L1033"></a><tt class="py-lineno">1033</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-222" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-222', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1034"></a><tt class="py-lineno">1034</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ok</tt><tt class="py-op">:</tt> </tt>
-<a name="L1035"></a><tt class="py-lineno">1035</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-223" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-223', 'add_byte', 'link-30');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-224" class="py-name" targets="Variable paramiko.auth_handler.MSG_CHANNEL_SUCCESS=paramiko.auth_handler-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.channel.MSG_CHANNEL_SUCCESS=paramiko.channel-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.client.MSG_CHANNEL_SUCCESS=paramiko.client-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.common.MSG_CHANNEL_SUCCESS=paramiko.common-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.dsskey.MSG_CHANNEL_SUCCESS=paramiko.dsskey-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.hostkeys.MSG_CHANNEL_SUCCESS=paramiko.hostkeys-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.kex_gex.MSG_CHANNEL_SUCCESS=paramiko.kex_gex-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.kex_group1.MSG_CHANNEL_SUCCESS=paramiko.kex_group1-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.packet.MSG_CHANNEL_SUCCESS=paramiko.packet-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.pkey.MSG_CHANNEL_SUCCESS=paramiko.pkey-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.rsakey.MSG_CHANNEL_SUCCESS=paramiko.rsakey-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.server.MSG_CHANNEL_SUCCESS=paramiko.server-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.sftp.MSG_CHANNEL_SUCCESS=paramiko.sftp-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.sftp_attr.MSG_CHANNEL_SUCCESS=paramiko.sftp_attr-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.sftp_client.MSG_CHANNEL_SUCCESS=paramiko.sftp_client-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.sftp_file.MSG_CHANNEL_SUCCESS=paramiko.sftp_file-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.sftp_handle.MSG_CHANNEL_SUCCESS=paramiko.sftp_handle-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.sftp_server.MSG_CHANNEL_SUCCESS=paramiko.sftp_server-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.sftp_si.MSG_CHANNEL_SUCCESS=paramiko.sftp_si-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.transport.MSG_CHANNEL_SUCCESS=paramiko.transport-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.util.MSG_CHANNEL_SUCCESS=paramiko.util-module.html#MSG_CHANNEL_SUCCESS"><a title="paramiko.auth_handler.MSG_CHANNEL_SUCCESS
-paramiko.channel.MSG_CHANNEL_SUCCESS
-paramiko.client.MSG_CHANNEL_SUCCESS
-paramiko.common.MSG_CHANNEL_SUCCESS
-paramiko.dsskey.MSG_CHANNEL_SUCCESS
-paramiko.hostkeys.MSG_CHANNEL_SUCCESS
-paramiko.kex_gex.MSG_CHANNEL_SUCCESS
-paramiko.kex_group1.MSG_CHANNEL_SUCCESS
-paramiko.packet.MSG_CHANNEL_SUCCESS
-paramiko.pkey.MSG_CHANNEL_SUCCESS
-paramiko.rsakey.MSG_CHANNEL_SUCCESS
-paramiko.server.MSG_CHANNEL_SUCCESS
-paramiko.sftp.MSG_CHANNEL_SUCCESS
-paramiko.sftp_attr.MSG_CHANNEL_SUCCESS
-paramiko.sftp_client.MSG_CHANNEL_SUCCESS
-paramiko.sftp_file.MSG_CHANNEL_SUCCESS
-paramiko.sftp_handle.MSG_CHANNEL_SUCCESS
-paramiko.sftp_server.MSG_CHANNEL_SUCCESS
-paramiko.sftp_si.MSG_CHANNEL_SUCCESS
-paramiko.transport.MSG_CHANNEL_SUCCESS
-paramiko.util.MSG_CHANNEL_SUCCESS" class="py-name" href="#" onclick="return doclink('link-224', 'MSG_CHANNEL_SUCCESS', 'link-224');">MSG_CHANNEL_SUCCESS</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1036"></a><tt class="py-lineno">1036</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1037"></a><tt class="py-lineno">1037</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-225" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-225', 'add_byte', 'link-30');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-226" class="py-name" targets="Variable paramiko.auth_handler.MSG_CHANNEL_FAILURE=paramiko.auth_handler-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.channel.MSG_CHANNEL_FAILURE=paramiko.channel-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.client.MSG_CHANNEL_FAILURE=paramiko.client-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.common.MSG_CHANNEL_FAILURE=paramiko.common-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.dsskey.MSG_CHANNEL_FAILURE=paramiko.dsskey-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.hostkeys.MSG_CHANNEL_FAILURE=paramiko.hostkeys-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.kex_gex.MSG_CHANNEL_FAILURE=paramiko.kex_gex-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.kex_group1.MSG_CHANNEL_FAILURE=paramiko.kex_group1-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.packet.MSG_CHANNEL_FAILURE=paramiko.packet-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.pkey.MSG_CHANNEL_FAILURE=paramiko.pkey-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.rsakey.MSG_CHANNEL_FAILURE=paramiko.rsakey-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.server.MSG_CHANNEL_FAILURE=paramiko.server-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.sftp.MSG_CHANNEL_FAILURE=paramiko.sftp-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.sftp_attr.MSG_CHANNEL_FAILURE=paramiko.sftp_attr-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.sftp_client.MSG_CHANNEL_FAILURE=paramiko.sftp_client-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.sftp_file.MSG_CHANNEL_FAILURE=paramiko.sftp_file-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.sftp_handle.MSG_CHANNEL_FAILURE=paramiko.sftp_handle-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.sftp_server.MSG_CHANNEL_FAILURE=paramiko.sftp_server-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.sftp_si.MSG_CHANNEL_FAILURE=paramiko.sftp_si-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.transport.MSG_CHANNEL_FAILURE=paramiko.transport-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.util.MSG_CHANNEL_FAILURE=paramiko.util-module.html#MSG_CHANNEL_FAILURE"><a title="paramiko.auth_handler.MSG_CHANNEL_FAILURE
-paramiko.channel.MSG_CHANNEL_FAILURE
-paramiko.client.MSG_CHANNEL_FAILURE
-paramiko.common.MSG_CHANNEL_FAILURE
-paramiko.dsskey.MSG_CHANNEL_FAILURE
-paramiko.hostkeys.MSG_CHANNEL_FAILURE
-paramiko.kex_gex.MSG_CHANNEL_FAILURE
-paramiko.kex_group1.MSG_CHANNEL_FAILURE
-paramiko.packet.MSG_CHANNEL_FAILURE
-paramiko.pkey.MSG_CHANNEL_FAILURE
-paramiko.rsakey.MSG_CHANNEL_FAILURE
-paramiko.server.MSG_CHANNEL_FAILURE
-paramiko.sftp.MSG_CHANNEL_FAILURE
-paramiko.sftp_attr.MSG_CHANNEL_FAILURE
-paramiko.sftp_client.MSG_CHANNEL_FAILURE
-paramiko.sftp_file.MSG_CHANNEL_FAILURE
-paramiko.sftp_handle.MSG_CHANNEL_FAILURE
-paramiko.sftp_server.MSG_CHANNEL_FAILURE
-paramiko.sftp_si.MSG_CHANNEL_FAILURE
-paramiko.transport.MSG_CHANNEL_FAILURE
-paramiko.util.MSG_CHANNEL_FAILURE" class="py-name" href="#" onclick="return doclink('link-226', 'MSG_CHANNEL_FAILURE', 'link-226');">MSG_CHANNEL_FAILURE</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1038"></a><tt class="py-lineno">1038</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-227" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-227', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_chanid</tt><tt class="py-op">)</tt> </tt>
-<a name="L1039"></a><tt class="py-lineno">1039</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-228" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-228', 'transport', 'link-20');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_user_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1040"></a><tt class="py-lineno">1040</tt> <tt class="py-line"> </tt>
-<a name="Channel._handle_eof"></a><div id="Channel._handle_eof-def"><a name="L1041"></a><tt class="py-lineno">1041</tt> <a class="py-toggle" href="#" id="Channel._handle_eof-toggle" onclick="return toggle('Channel._handle_eof');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#_handle_eof">_handle_eof</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel._handle_eof-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel._handle_eof-expanded"><a name="L1042"></a><tt class="py-lineno">1042</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1043"></a><tt class="py-lineno">1043</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1044"></a><tt class="py-lineno">1044</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">eof_received</tt><tt class="py-op">:</tt> </tt>
-<a name="L1045"></a><tt class="py-lineno">1045</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">eof_received</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1046"></a><tt class="py-lineno">1046</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_buffer</tt><tt class="py-op">.</tt><tt id="link-229" class="py-name"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-229', 'close', 'link-26');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1047"></a><tt class="py-lineno">1047</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_stderr_buffer</tt><tt class="py-op">.</tt><tt id="link-230" class="py-name"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-230', 'close', 'link-26');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1048"></a><tt class="py-lineno">1048</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pipe</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L1049"></a><tt class="py-lineno">1049</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pipe</tt><tt class="py-op">.</tt><tt id="link-231" class="py-name" targets="Method paramiko.pipe.PosixPipe.set_forever()=paramiko.pipe.PosixPipe-class.html#set_forever,Method paramiko.pipe.WindowsPipe.set_forever()=paramiko.pipe.WindowsPipe-class.html#set_forever"><a title="paramiko.pipe.PosixPipe.set_forever
-paramiko.pipe.WindowsPipe.set_forever" class="py-name" href="#" onclick="return doclink('link-231', 'set_forever', 'link-231');">set_forever</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1050"></a><tt class="py-lineno">1050</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L1051"></a><tt class="py-lineno">1051</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1052"></a><tt class="py-lineno">1052</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-232" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-232', 'DEBUG', 'link-165');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'EOF received (%s)'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_name</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1053"></a><tt class="py-lineno">1053</tt> <tt class="py-line"> </tt>
-<a name="Channel._handle_close"></a><div id="Channel._handle_close-def"><a name="L1054"></a><tt class="py-lineno">1054</tt> <a class="py-toggle" href="#" id="Channel._handle_close-toggle" onclick="return toggle('Channel._handle_close');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#_handle_close">_handle_close</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel._handle_close-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel._handle_close-expanded"><a name="L1055"></a><tt class="py-lineno">1055</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1056"></a><tt class="py-lineno">1056</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1057"></a><tt class="py-lineno">1057</tt> <tt class="py-line"> <tt class="py-name">msgs</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_close_internal</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1058"></a><tt class="py-lineno">1058</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-233" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-233', 'transport', 'link-20');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_unlink_channel</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">chanid</tt><tt class="py-op">)</tt> </tt>
-<a name="L1059"></a><tt class="py-lineno">1059</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L1060"></a><tt class="py-lineno">1060</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1061"></a><tt class="py-lineno">1061</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">m</tt> <tt class="py-keyword">in</tt> <tt class="py-name">msgs</tt><tt class="py-op">:</tt> </tt>
-<a name="L1062"></a><tt class="py-lineno">1062</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">m</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L1063"></a><tt class="py-lineno">1063</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-234" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-234', 'transport', 'link-20');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_user_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1064"></a><tt class="py-lineno">1064</tt> <tt class="py-line"> </tt>
-<a name="L1065"></a><tt class="py-lineno">1065</tt> <tt class="py-line"> </tt>
-<a name="L1066"></a><tt class="py-lineno">1066</tt> <tt class="py-line"> <tt class="py-comment">### internals...</tt> </tt>
-<a name="L1067"></a><tt class="py-lineno">1067</tt> <tt class="py-line"> </tt>
-<a name="L1068"></a><tt class="py-lineno">1068</tt> <tt class="py-line"> </tt>
-<a name="Channel._log"></a><div id="Channel._log-def"><a name="L1069"></a><tt class="py-lineno">1069</tt> <a class="py-toggle" href="#" id="Channel._log-toggle" onclick="return toggle('Channel._log');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#_log">_log</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">level</tt><tt class="py-op">,</tt> <tt class="py-param">msg</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">args</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel._log-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel._log-expanded"><a name="L1070"></a><tt class="py-lineno">1070</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-235" class="py-name"><a title="paramiko.logging22.logger" class="py-name" href="#" onclick="return doclink('link-235', 'logger', 'link-23');">logger</a></tt><tt class="py-op">.</tt><tt id="link-236" class="py-name" targets="Method paramiko.logging22.logger.log()=paramiko.logging22.logger-class.html#log"><a title="paramiko.logging22.logger.log" class="py-name" href="#" onclick="return doclink('link-236', 'log', 'link-236');">log</a></tt><tt class="py-op">(</tt><tt class="py-name">level</tt><tt class="py-op">,</tt> <tt class="py-string">"[chan "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_name</tt> <tt class="py-op">+</tt> <tt class="py-string">"] "</tt> <tt class="py-op">+</tt> <tt class="py-name">msg</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-name">args</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1071"></a><tt class="py-lineno">1071</tt> <tt class="py-line"> </tt>
-<a name="Channel._event_pending"></a><div id="Channel._event_pending-def"><a name="L1072"></a><tt class="py-lineno">1072</tt> <a class="py-toggle" href="#" id="Channel._event_pending-toggle" onclick="return toggle('Channel._event_pending');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#_event_pending">_event_pending</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel._event_pending-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel._event_pending-expanded"><a name="L1073"></a><tt class="py-lineno">1073</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">event</tt><tt class="py-op">.</tt><tt id="link-237" class="py-name" targets="Method paramiko.HostKeys.clear()=paramiko.HostKeys-class.html#clear,Method paramiko.pipe.OrPipe.clear()=paramiko.pipe.OrPipe-class.html#clear,Method paramiko.pipe.PosixPipe.clear()=paramiko.pipe.PosixPipe-class.html#clear,Method paramiko.pipe.WindowsPipe.clear()=paramiko.pipe.WindowsPipe-class.html#clear"><a title="paramiko.HostKeys.clear
-paramiko.pipe.OrPipe.clear
-paramiko.pipe.PosixPipe.clear
-paramiko.pipe.WindowsPipe.clear" class="py-name" href="#" onclick="return doclink('link-237', 'clear', 'link-237');">clear</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1074"></a><tt class="py-lineno">1074</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">event_ready</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-</div><a name="L1075"></a><tt class="py-lineno">1075</tt> <tt class="py-line"> </tt>
-<a name="Channel._wait_for_event"></a><div id="Channel._wait_for_event-def"><a name="L1076"></a><tt class="py-lineno">1076</tt> <a class="py-toggle" href="#" id="Channel._wait_for_event-toggle" onclick="return toggle('Channel._wait_for_event');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#_wait_for_event">_wait_for_event</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel._wait_for_event-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel._wait_for_event-expanded"><a name="L1077"></a><tt class="py-lineno">1077</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">event</tt><tt class="py-op">.</tt><tt class="py-name">wait</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1078"></a><tt class="py-lineno">1078</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">event</tt><tt class="py-op">.</tt><tt class="py-name">isSet</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1079"></a><tt class="py-lineno">1079</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">event_ready</tt><tt class="py-op">:</tt> </tt>
-<a name="L1080"></a><tt class="py-lineno">1080</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L1081"></a><tt class="py-lineno">1081</tt> <tt class="py-line"> <tt class="py-name">e</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-238" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-238', 'transport', 'link-20');">transport</a></tt><tt class="py-op">.</tt><tt id="link-239" class="py-name" targets="Method paramiko.Transport.get_exception()=paramiko.Transport-class.html#get_exception"><a title="paramiko.Transport.get_exception" class="py-name" href="#" onclick="return doclink('link-239', 'get_exception', 'link-239');">get_exception</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1082"></a><tt class="py-lineno">1082</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">e</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L1083"></a><tt class="py-lineno">1083</tt> <tt class="py-line"> <tt class="py-name">e</tt> <tt class="py-op">=</tt> <tt id="link-240" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-240', 'SSHException', 'link-9');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Channel closed.'</tt><tt class="py-op">)</tt> </tt>
-<a name="L1084"></a><tt class="py-lineno">1084</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">e</tt> </tt>
-</div><a name="L1085"></a><tt class="py-lineno">1085</tt> <tt class="py-line"> </tt>
-<a name="Channel._set_closed"></a><div id="Channel._set_closed-def"><a name="L1086"></a><tt class="py-lineno">1086</tt> <a class="py-toggle" href="#" id="Channel._set_closed-toggle" onclick="return toggle('Channel._set_closed');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#_set_closed">_set_closed</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel._set_closed-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel._set_closed-expanded"><a name="L1087"></a><tt class="py-lineno">1087</tt> <tt class="py-line"> <tt class="py-comment"># you are holding the lock.</tt> </tt>
-<a name="L1088"></a><tt class="py-lineno">1088</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">closed</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1089"></a><tt class="py-lineno">1089</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_buffer</tt><tt class="py-op">.</tt><tt id="link-241" class="py-name"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-241', 'close', 'link-26');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1090"></a><tt class="py-lineno">1090</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_stderr_buffer</tt><tt class="py-op">.</tt><tt id="link-242" class="py-name"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-242', 'close', 'link-26');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1091"></a><tt class="py-lineno">1091</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">out_buffer_cv</tt><tt class="py-op">.</tt><tt class="py-name">notifyAll</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1092"></a><tt class="py-lineno">1092</tt> <tt class="py-line"> <tt class="py-comment"># Notify any waiters that we are closed</tt> </tt>
-<a name="L1093"></a><tt class="py-lineno">1093</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">event</tt><tt class="py-op">.</tt><tt id="link-243" class="py-name"><a title="paramiko.pipe.OrPipe.set
-paramiko.pipe.PosixPipe.set
-paramiko.pipe.WindowsPipe.set" class="py-name" href="#" onclick="return doclink('link-243', 'set', 'link-169');">set</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1094"></a><tt class="py-lineno">1094</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">status_event</tt><tt class="py-op">.</tt><tt id="link-244" class="py-name"><a title="paramiko.pipe.OrPipe.set
-paramiko.pipe.PosixPipe.set
-paramiko.pipe.WindowsPipe.set" class="py-name" href="#" onclick="return doclink('link-244', 'set', 'link-169');">set</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1095"></a><tt class="py-lineno">1095</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pipe</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L1096"></a><tt class="py-lineno">1096</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pipe</tt><tt class="py-op">.</tt><tt id="link-245" class="py-name"><a title="paramiko.pipe.PosixPipe.set_forever
-paramiko.pipe.WindowsPipe.set_forever" class="py-name" href="#" onclick="return doclink('link-245', 'set_forever', 'link-231');">set_forever</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1097"></a><tt class="py-lineno">1097</tt> <tt class="py-line"> </tt>
-<a name="Channel._send_eof"></a><div id="Channel._send_eof-def"><a name="L1098"></a><tt class="py-lineno">1098</tt> <a class="py-toggle" href="#" id="Channel._send_eof-toggle" onclick="return toggle('Channel._send_eof');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#_send_eof">_send_eof</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel._send_eof-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel._send_eof-expanded"><a name="L1099"></a><tt class="py-lineno">1099</tt> <tt class="py-line"> <tt class="py-comment"># you are holding the lock.</tt> </tt>
-<a name="L1100"></a><tt class="py-lineno">1100</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">eof_sent</tt><tt class="py-op">:</tt> </tt>
-<a name="L1101"></a><tt class="py-lineno">1101</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1102"></a><tt class="py-lineno">1102</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-246" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-246', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1103"></a><tt class="py-lineno">1103</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-247" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-247', 'add_byte', 'link-30');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-248" class="py-name" targets="Variable paramiko.auth_handler.MSG_CHANNEL_EOF=paramiko.auth_handler-module.html#MSG_CHANNEL_EOF,Variable paramiko.channel.MSG_CHANNEL_EOF=paramiko.channel-module.html#MSG_CHANNEL_EOF,Variable paramiko.client.MSG_CHANNEL_EOF=paramiko.client-module.html#MSG_CHANNEL_EOF,Variable paramiko.common.MSG_CHANNEL_EOF=paramiko.common-module.html#MSG_CHANNEL_EOF,Variable paramiko.dsskey.MSG_CHANNEL_EOF=paramiko.dsskey-module.html#MSG_CHANNEL_EOF,Variable paramiko.hostkeys.MSG_CHANNEL_EOF=paramiko.hostkeys-module.html#MSG_CHANNEL_EOF,Variable paramiko.kex_gex.MSG_CHANNEL_EOF=paramiko.kex_gex-module.html#MSG_CHANNEL_EOF,Variable paramiko.kex_group1.MSG_CHANNEL_EOF=paramiko.kex_group1-module.html#MSG_CHANNEL_EOF,Variable paramiko.packet.MSG_CHANNEL_EOF=paramiko.packet-module.html#MSG_CHANNEL_EOF,Variable paramiko.pkey.MSG_CHANNEL_EOF=paramiko.pkey-module.html#MSG_CHANNEL_EOF,Variable paramiko.rsakey.MSG_CHANNEL_EOF=paramiko.rsakey-module.html#MSG_CHANNEL_EOF,Variable paramiko.server.MSG_CHANNEL_EOF=paramiko.server-module.html#MSG_CHANNEL_EOF,Variable paramiko.sftp.MSG_CHANNEL_EOF=paramiko.sftp-module.html#MSG_CHANNEL_EOF,Variable paramiko.sftp_attr.MSG_CHANNEL_EOF=paramiko.sftp_attr-module.html#MSG_CHANNEL_EOF,Variable paramiko.sftp_client.MSG_CHANNEL_EOF=paramiko.sftp_client-module.html#MSG_CHANNEL_EOF,Variable paramiko.sftp_file.MSG_CHANNEL_EOF=paramiko.sftp_file-module.html#MSG_CHANNEL_EOF,Variable paramiko.sftp_handle.MSG_CHANNEL_EOF=paramiko.sftp_handle-module.html#MSG_CHANNEL_EOF,Variable paramiko.sftp_server.MSG_CHANNEL_EOF=paramiko.sftp_server-module.html#MSG_CHANNEL_EOF,Variable paramiko.sftp_si.MSG_CHANNEL_EOF=paramiko.sftp_si-module.html#MSG_CHANNEL_EOF,Variable paramiko.transport.MSG_CHANNEL_EOF=paramiko.transport-module.html#MSG_CHANNEL_EOF,Variable paramiko.util.MSG_CHANNEL_EOF=paramiko.util-module.html#MSG_CHANNEL_EOF"><a title="paramiko.auth_handler.MSG_CHANNEL_EOF
-paramiko.channel.MSG_CHANNEL_EOF
-paramiko.client.MSG_CHANNEL_EOF
-paramiko.common.MSG_CHANNEL_EOF
-paramiko.dsskey.MSG_CHANNEL_EOF
-paramiko.hostkeys.MSG_CHANNEL_EOF
-paramiko.kex_gex.MSG_CHANNEL_EOF
-paramiko.kex_group1.MSG_CHANNEL_EOF
-paramiko.packet.MSG_CHANNEL_EOF
-paramiko.pkey.MSG_CHANNEL_EOF
-paramiko.rsakey.MSG_CHANNEL_EOF
-paramiko.server.MSG_CHANNEL_EOF
-paramiko.sftp.MSG_CHANNEL_EOF
-paramiko.sftp_attr.MSG_CHANNEL_EOF
-paramiko.sftp_client.MSG_CHANNEL_EOF
-paramiko.sftp_file.MSG_CHANNEL_EOF
-paramiko.sftp_handle.MSG_CHANNEL_EOF
-paramiko.sftp_server.MSG_CHANNEL_EOF
-paramiko.sftp_si.MSG_CHANNEL_EOF
-paramiko.transport.MSG_CHANNEL_EOF
-paramiko.util.MSG_CHANNEL_EOF" class="py-name" href="#" onclick="return doclink('link-248', 'MSG_CHANNEL_EOF', 'link-248');">MSG_CHANNEL_EOF</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1104"></a><tt class="py-lineno">1104</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-249" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-249', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_chanid</tt><tt class="py-op">)</tt> </tt>
-<a name="L1105"></a><tt class="py-lineno">1105</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">eof_sent</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1106"></a><tt class="py-lineno">1106</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-250" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-250', 'DEBUG', 'link-165');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'EOF sent (%s)'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_name</tt><tt class="py-op">)</tt> </tt>
-<a name="L1107"></a><tt class="py-lineno">1107</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">m</tt> </tt>
-</div><a name="L1108"></a><tt class="py-lineno">1108</tt> <tt class="py-line"> </tt>
-<a name="Channel._close_internal"></a><div id="Channel._close_internal-def"><a name="L1109"></a><tt class="py-lineno">1109</tt> <a class="py-toggle" href="#" id="Channel._close_internal-toggle" onclick="return toggle('Channel._close_internal');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#_close_internal">_close_internal</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel._close_internal-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel._close_internal-expanded"><a name="L1110"></a><tt class="py-lineno">1110</tt> <tt class="py-line"> <tt class="py-comment"># you are holding the lock.</tt> </tt>
-<a name="L1111"></a><tt class="py-lineno">1111</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt> <tt class="py-keyword">or</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">closed</tt><tt class="py-op">:</tt> </tt>
-<a name="L1112"></a><tt class="py-lineno">1112</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1113"></a><tt class="py-lineno">1113</tt> <tt class="py-line"> <tt class="py-name">m1</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_eof</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1114"></a><tt class="py-lineno">1114</tt> <tt class="py-line"> <tt class="py-name">m2</tt> <tt class="py-op">=</tt> <tt id="link-251" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-251', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1115"></a><tt class="py-lineno">1115</tt> <tt class="py-line"> <tt class="py-name">m2</tt><tt class="py-op">.</tt><tt id="link-252" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-252', 'add_byte', 'link-30');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-253" class="py-name" targets="Variable paramiko.auth_handler.MSG_CHANNEL_CLOSE=paramiko.auth_handler-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.channel.MSG_CHANNEL_CLOSE=paramiko.channel-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.client.MSG_CHANNEL_CLOSE=paramiko.client-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.common.MSG_CHANNEL_CLOSE=paramiko.common-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.dsskey.MSG_CHANNEL_CLOSE=paramiko.dsskey-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.hostkeys.MSG_CHANNEL_CLOSE=paramiko.hostkeys-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.kex_gex.MSG_CHANNEL_CLOSE=paramiko.kex_gex-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.kex_group1.MSG_CHANNEL_CLOSE=paramiko.kex_group1-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.packet.MSG_CHANNEL_CLOSE=paramiko.packet-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.pkey.MSG_CHANNEL_CLOSE=paramiko.pkey-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.rsakey.MSG_CHANNEL_CLOSE=paramiko.rsakey-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.server.MSG_CHANNEL_CLOSE=paramiko.server-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.sftp.MSG_CHANNEL_CLOSE=paramiko.sftp-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.sftp_attr.MSG_CHANNEL_CLOSE=paramiko.sftp_attr-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.sftp_client.MSG_CHANNEL_CLOSE=paramiko.sftp_client-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.sftp_file.MSG_CHANNEL_CLOSE=paramiko.sftp_file-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.sftp_handle.MSG_CHANNEL_CLOSE=paramiko.sftp_handle-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.sftp_server.MSG_CHANNEL_CLOSE=paramiko.sftp_server-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.sftp_si.MSG_CHANNEL_CLOSE=paramiko.sftp_si-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.transport.MSG_CHANNEL_CLOSE=paramiko.transport-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.util.MSG_CHANNEL_CLOSE=paramiko.util-module.html#MSG_CHANNEL_CLOSE"><a title="paramiko.auth_handler.MSG_CHANNEL_CLOSE
-paramiko.channel.MSG_CHANNEL_CLOSE
-paramiko.client.MSG_CHANNEL_CLOSE
-paramiko.common.MSG_CHANNEL_CLOSE
-paramiko.dsskey.MSG_CHANNEL_CLOSE
-paramiko.hostkeys.MSG_CHANNEL_CLOSE
-paramiko.kex_gex.MSG_CHANNEL_CLOSE
-paramiko.kex_group1.MSG_CHANNEL_CLOSE
-paramiko.packet.MSG_CHANNEL_CLOSE
-paramiko.pkey.MSG_CHANNEL_CLOSE
-paramiko.rsakey.MSG_CHANNEL_CLOSE
-paramiko.server.MSG_CHANNEL_CLOSE
-paramiko.sftp.MSG_CHANNEL_CLOSE
-paramiko.sftp_attr.MSG_CHANNEL_CLOSE
-paramiko.sftp_client.MSG_CHANNEL_CLOSE
-paramiko.sftp_file.MSG_CHANNEL_CLOSE
-paramiko.sftp_handle.MSG_CHANNEL_CLOSE
-paramiko.sftp_server.MSG_CHANNEL_CLOSE
-paramiko.sftp_si.MSG_CHANNEL_CLOSE
-paramiko.transport.MSG_CHANNEL_CLOSE
-paramiko.util.MSG_CHANNEL_CLOSE" class="py-name" href="#" onclick="return doclink('link-253', 'MSG_CHANNEL_CLOSE', 'link-253');">MSG_CHANNEL_CLOSE</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1116"></a><tt class="py-lineno">1116</tt> <tt class="py-line"> <tt class="py-name">m2</tt><tt class="py-op">.</tt><tt id="link-254" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-254', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_chanid</tt><tt class="py-op">)</tt> </tt>
-<a name="L1117"></a><tt class="py-lineno">1117</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_set_closed</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1118"></a><tt class="py-lineno">1118</tt> <tt class="py-line"> <tt class="py-comment"># can't unlink from the Transport yet -- the remote side may still</tt> </tt>
-<a name="L1119"></a><tt class="py-lineno">1119</tt> <tt class="py-line"> <tt class="py-comment"># try to send meta-data (exit-status, etc)</tt> </tt>
-<a name="L1120"></a><tt class="py-lineno">1120</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">m1</tt><tt class="py-op">,</tt> <tt class="py-name">m2</tt> </tt>
-</div><a name="L1121"></a><tt class="py-lineno">1121</tt> <tt class="py-line"> </tt>
-<a name="Channel._unlink"></a><div id="Channel._unlink-def"><a name="L1122"></a><tt class="py-lineno">1122</tt> <a class="py-toggle" href="#" id="Channel._unlink-toggle" onclick="return toggle('Channel._unlink');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#_unlink">_unlink</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel._unlink-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel._unlink-expanded"><a name="L1123"></a><tt class="py-lineno">1123</tt> <tt class="py-line"> <tt class="py-comment"># server connection could die before we become active: still signal the close!</tt> </tt>
-<a name="L1124"></a><tt class="py-lineno">1124</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">closed</tt><tt class="py-op">:</tt> </tt>
-<a name="L1125"></a><tt class="py-lineno">1125</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L1126"></a><tt class="py-lineno">1126</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1127"></a><tt class="py-lineno">1127</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1128"></a><tt class="py-lineno">1128</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_set_closed</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1129"></a><tt class="py-lineno">1129</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-255" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-255', 'transport', 'link-20');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_unlink_channel</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">chanid</tt><tt class="py-op">)</tt> </tt>
-<a name="L1130"></a><tt class="py-lineno">1130</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L1131"></a><tt class="py-lineno">1131</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1132"></a><tt class="py-lineno">1132</tt> <tt class="py-line"> </tt>
-<a name="Channel._check_add_window"></a><div id="Channel._check_add_window-def"><a name="L1133"></a><tt class="py-lineno">1133</tt> <a class="py-toggle" href="#" id="Channel._check_add_window-toggle" onclick="return toggle('Channel._check_add_window');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#_check_add_window">_check_add_window</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">n</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel._check_add_window-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel._check_add_window-expanded"><a name="L1134"></a><tt class="py-lineno">1134</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1135"></a><tt class="py-lineno">1135</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1136"></a><tt class="py-lineno">1136</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">closed</tt> <tt class="py-keyword">or</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">eof_received</tt> <tt class="py-keyword">or</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt><tt class="py-op">:</tt> </tt>
-<a name="L1137"></a><tt class="py-lineno">1137</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-number">0</tt> </tt>
-<a name="L1138"></a><tt class="py-lineno">1138</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ultra_debug</tt><tt class="py-op">:</tt> </tt>
-<a name="L1139"></a><tt class="py-lineno">1139</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-256" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-256', 'DEBUG', 'link-165');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'addwindow %d'</tt> <tt class="py-op">%</tt> <tt class="py-name">n</tt><tt class="py-op">)</tt> </tt>
-<a name="L1140"></a><tt class="py-lineno">1140</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_window_sofar</tt> <tt class="py-op">+=</tt> <tt class="py-name">n</tt> </tt>
-<a name="L1141"></a><tt class="py-lineno">1141</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_window_sofar</tt> <tt class="py-op">&lt;=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_window_threshold</tt><tt class="py-op">:</tt> </tt>
-<a name="L1142"></a><tt class="py-lineno">1142</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-number">0</tt> </tt>
-<a name="L1143"></a><tt class="py-lineno">1143</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ultra_debug</tt><tt class="py-op">:</tt> </tt>
-<a name="L1144"></a><tt class="py-lineno">1144</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-257" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-257', 'DEBUG', 'link-165');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'addwindow send %d'</tt> <tt class="py-op">%</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_window_sofar</tt><tt class="py-op">)</tt> </tt>
-<a name="L1145"></a><tt class="py-lineno">1145</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_window_sofar</tt> </tt>
-<a name="L1146"></a><tt class="py-lineno">1146</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_window_sofar</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L1147"></a><tt class="py-lineno">1147</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">out</tt> </tt>
-<a name="L1148"></a><tt class="py-lineno">1148</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L1149"></a><tt class="py-lineno">1149</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1150"></a><tt class="py-lineno">1150</tt> <tt class="py-line"> </tt>
-<a name="Channel._wait_for_send_window"></a><div id="Channel._wait_for_send_window-def"><a name="L1151"></a><tt class="py-lineno">1151</tt> <a class="py-toggle" href="#" id="Channel._wait_for_send_window-toggle" onclick="return toggle('Channel._wait_for_send_window');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.Channel-class.html#_wait_for_send_window">_wait_for_send_window</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">size</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Channel._wait_for_send_window-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Channel._wait_for_send_window-expanded"><a name="L1152"></a><tt class="py-lineno">1152</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1153"></a><tt class="py-lineno">1153</tt> <tt class="py-line"><tt class="py-docstring"> (You are already holding the lock.)</tt> </tt>
-<a name="L1154"></a><tt class="py-lineno">1154</tt> <tt class="py-line"><tt class="py-docstring"> Wait for the send window to open up, and allocate up to C{size} bytes</tt> </tt>
-<a name="L1155"></a><tt class="py-lineno">1155</tt> <tt class="py-line"><tt class="py-docstring"> for transmission. If no space opens up before the timeout, a timeout</tt> </tt>
-<a name="L1156"></a><tt class="py-lineno">1156</tt> <tt class="py-line"><tt class="py-docstring"> exception is raised. Returns the number of bytes available to send</tt> </tt>
-<a name="L1157"></a><tt class="py-lineno">1157</tt> <tt class="py-line"><tt class="py-docstring"> (may be less than requested).</tt> </tt>
-<a name="L1158"></a><tt class="py-lineno">1158</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1159"></a><tt class="py-lineno">1159</tt> <tt class="py-line"> <tt class="py-comment"># you are already holding the lock</tt> </tt>
-<a name="L1160"></a><tt class="py-lineno">1160</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">closed</tt> <tt class="py-keyword">or</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">eof_sent</tt><tt class="py-op">:</tt> </tt>
-<a name="L1161"></a><tt class="py-lineno">1161</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-number">0</tt> </tt>
-<a name="L1162"></a><tt class="py-lineno">1162</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">out_window_size</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L1163"></a><tt class="py-lineno">1163</tt> <tt class="py-line"> <tt class="py-comment"># should we block?</tt> </tt>
-<a name="L1164"></a><tt class="py-lineno">1164</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">==</tt> <tt class="py-number">0.0</tt><tt class="py-op">:</tt> </tt>
-<a name="L1165"></a><tt class="py-lineno">1165</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1166"></a><tt class="py-lineno">1166</tt> <tt class="py-line"> <tt class="py-comment"># loop here in case we get woken up but a different thread has filled the buffer</tt> </tt>
-<a name="L1167"></a><tt class="py-lineno">1167</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> </tt>
-<a name="L1168"></a><tt class="py-lineno">1168</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">out_window_size</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L1169"></a><tt class="py-lineno">1169</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">closed</tt> <tt class="py-keyword">or</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">eof_sent</tt><tt class="py-op">:</tt> </tt>
-<a name="L1170"></a><tt class="py-lineno">1170</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-number">0</tt> </tt>
-<a name="L1171"></a><tt class="py-lineno">1171</tt> <tt class="py-line"> <tt class="py-name">then</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1172"></a><tt class="py-lineno">1172</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">out_buffer_cv</tt><tt class="py-op">.</tt><tt class="py-name">wait</tt><tt class="py-op">(</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L1173"></a><tt class="py-lineno">1173</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">timeout</tt> <tt class="py-op">!=</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L1174"></a><tt class="py-lineno">1174</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">-=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">then</tt> </tt>
-<a name="L1175"></a><tt class="py-lineno">1175</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">timeout</tt> <tt class="py-op">&lt;=</tt> <tt class="py-number">0.0</tt><tt class="py-op">:</tt> </tt>
-<a name="L1176"></a><tt class="py-lineno">1176</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1177"></a><tt class="py-lineno">1177</tt> <tt class="py-line"> <tt class="py-comment"># we have some window to squeeze into</tt> </tt>
-<a name="L1178"></a><tt class="py-lineno">1178</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">closed</tt> <tt class="py-keyword">or</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">eof_sent</tt><tt class="py-op">:</tt> </tt>
-<a name="L1179"></a><tt class="py-lineno">1179</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-number">0</tt> </tt>
-<a name="L1180"></a><tt class="py-lineno">1180</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">out_window_size</tt> <tt class="py-op">&lt;</tt> <tt class="py-name">size</tt><tt class="py-op">:</tt> </tt>
-<a name="L1181"></a><tt class="py-lineno">1181</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">out_window_size</tt> </tt>
-<a name="L1182"></a><tt class="py-lineno">1182</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">out_max_packet_size</tt> <tt class="py-op">-</tt> <tt class="py-number">64</tt> <tt class="py-op">&lt;</tt> <tt class="py-name">size</tt><tt class="py-op">:</tt> </tt>
-<a name="L1183"></a><tt class="py-lineno">1183</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">out_max_packet_size</tt> <tt class="py-op">-</tt> <tt class="py-number">64</tt> </tt>
-<a name="L1184"></a><tt class="py-lineno">1184</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">out_window_size</tt> <tt class="py-op">-=</tt> <tt class="py-name">size</tt> </tt>
-<a name="L1185"></a><tt class="py-lineno">1185</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ultra_debug</tt><tt class="py-op">:</tt> </tt>
-<a name="L1186"></a><tt class="py-lineno">1186</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-258" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-258', 'DEBUG', 'link-165');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'window down to %d'</tt> <tt class="py-op">%</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">out_window_size</tt><tt class="py-op">)</tt> </tt>
-<a name="L1187"></a><tt class="py-lineno">1187</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">size</tt> </tt>
-</div></div><a name="L1188"></a><tt class="py-lineno">1188</tt> <tt class="py-line"> </tt>
-<a name="L1189"></a><tt class="py-lineno">1189</tt> <tt class="py-line"> </tt>
-<a name="ChannelFile"></a><div id="ChannelFile-def"><a name="L1190"></a><tt class="py-lineno">1190</tt> <a class="py-toggle" href="#" id="ChannelFile-toggle" onclick="return toggle('ChannelFile');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.channel.ChannelFile-class.html">ChannelFile</a> <tt class="py-op">(</tt><tt class="py-base-class">BufferedFile</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ChannelFile-collapsed" style="display:none;" pad="++++" indent="++++"></div><div id="ChannelFile-expanded"><a name="L1191"></a><tt class="py-lineno">1191</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1192"></a><tt class="py-lineno">1192</tt> <tt class="py-line"><tt class="py-docstring"> A file-like wrapper around L{Channel}. A ChannelFile is created by calling</tt> </tt>
-<a name="L1193"></a><tt class="py-lineno">1193</tt> <tt class="py-line"><tt class="py-docstring"> L{Channel.makefile}.</tt> </tt>
-<a name="L1194"></a><tt class="py-lineno">1194</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1195"></a><tt class="py-lineno">1195</tt> <tt class="py-line"><tt class="py-docstring"> @bug: To correctly emulate the file object created from a socket's</tt> </tt>
-<a name="L1196"></a><tt class="py-lineno">1196</tt> <tt class="py-line"><tt class="py-docstring"> C{makefile} method, a L{Channel} and its C{ChannelFile} should be able</tt> </tt>
-<a name="L1197"></a><tt class="py-lineno">1197</tt> <tt class="py-line"><tt class="py-docstring"> to be closed or garbage-collected independently. Currently, closing</tt> </tt>
-<a name="L1198"></a><tt class="py-lineno">1198</tt> <tt class="py-line"><tt class="py-docstring"> the C{ChannelFile} does nothing but flush the buffer.</tt> </tt>
-<a name="L1199"></a><tt class="py-lineno">1199</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1200"></a><tt class="py-lineno">1200</tt> <tt class="py-line"> </tt>
-<a name="ChannelFile.__init__"></a><div id="ChannelFile.__init__-def"><a name="L1201"></a><tt class="py-lineno">1201</tt> <a class="py-toggle" href="#" id="ChannelFile.__init__-toggle" onclick="return toggle('ChannelFile.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.ChannelFile-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">channel</tt><tt class="py-op">,</tt> <tt class="py-param">mode</tt> <tt class="py-op">=</tt> <tt class="py-string">'r'</tt><tt class="py-op">,</tt> <tt class="py-param">bufsize</tt> <tt class="py-op">=</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ChannelFile.__init__-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="ChannelFile.__init__-expanded"><a name="L1202"></a><tt class="py-lineno">1202</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-259" class="py-name" targets="Module paramiko.channel=paramiko.channel-module.html"><a title="paramiko.channel" class="py-name" href="#" onclick="return doclink('link-259', 'channel', 'link-259');">channel</a></tt> <tt class="py-op">=</tt> <tt id="link-260" class="py-name"><a title="paramiko.channel" class="py-name" href="#" onclick="return doclink('link-260', 'channel', 'link-259');">channel</a></tt> </tt>
-<a name="L1203"></a><tt class="py-lineno">1203</tt> <tt class="py-line"> <tt id="link-261" class="py-name"><a title="paramiko.BufferedFile" class="py-name" href="#" onclick="return doclink('link-261', 'BufferedFile', 'link-12');">BufferedFile</a></tt><tt class="py-op">.</tt><tt id="link-262" class="py-name" targets="Method paramiko.Agent.__init__()=paramiko.Agent-class.html#__init__,Method paramiko.AgentKey.__init__()=paramiko.AgentKey-class.html#__init__,Method paramiko.BadAuthenticationType.__init__()=paramiko.BadAuthenticationType-class.html#__init__,Method paramiko.BadHostKeyException.__init__()=paramiko.BadHostKeyException-class.html#__init__,Method paramiko.BufferedFile.__init__()=paramiko.BufferedFile-class.html#__init__,Method paramiko.Channel.__init__()=paramiko.Channel-class.html#__init__,Method paramiko.ChannelException.__init__()=paramiko.ChannelException-class.html#__init__,Method paramiko.DSSKey.__init__()=paramiko.DSSKey-class.html#__init__,Method paramiko.HostKeys.__init__()=paramiko.HostKeys-class.html#__init__,Method paramiko.Message.__init__()=paramiko.Message-class.html#__init__,Method paramiko.PKey.__init__()=paramiko.PKey-class.html#__init__,Method paramiko.RSAKey.__init__()=paramiko.RSAKey-class.html#__init__,Method paramiko.SFTPAttributes.__init__()=paramiko.SFTPAttributes-class.html#__init__,Method paramiko.SFTPClient.__init__()=paramiko.SFTPClient-class.html#__init__,Method paramiko.SFTPFile.__init__()=paramiko.SFTPFile-class.html#__init__,Method paramiko.SFTPHandle.__init__()=paramiko.SFTPHandle-class.html#__init__,Method paramiko.SFTPServer.__init__()=paramiko.SFTPServer-class.html#__init__,Method paramiko.SFTPServerInterface.__init__()=paramiko.SFTPServerInterface-class.html#__init__,Method paramiko.SSHClient.__init__()=paramiko.SSHClient-class.html#__init__,Method paramiko.SSHConfig.__init__()=paramiko.SSHConfig-class.html#__init__,Method paramiko.SecurityOptions.__init__()=paramiko.SecurityOptions-class.html#__init__,Method paramiko.SubsystemHandler.__init__()=paramiko.SubsystemHandler-class.html#__init__,Method paramiko.Transport.__init__()=paramiko.Transport-class.html#__init__,Method paramiko.ber.BER.__init__()=paramiko.ber.BER-class.html#__init__,Method paramiko.buffered_pipe.BufferedPipe.__init__()=paramiko.buffered_pipe.BufferedPipe-class.html#__init__,Method paramiko.channel.ChannelStderrFile.__init__()=paramiko.channel.ChannelStderrFile-class.html#__init__,Method paramiko.compress.ZlibCompressor.__init__()=paramiko.compress.ZlibCompressor-class.html#__init__,Method paramiko.compress.ZlibDecompressor.__init__()=paramiko.compress.ZlibDecompressor-class.html#__init__,Method paramiko.hostkeys.HostKeyEntry.__init__()=paramiko.hostkeys.HostKeyEntry-class.html#__init__,Method paramiko.kex_gex.KexGex.__init__()=paramiko.kex_gex.KexGex-class.html#__init__,Method paramiko.kex_group1.KexGroup1.__init__()=paramiko.kex_group1.KexGroup1-class.html#__init__,Method paramiko.logging22.Formatter.__init__()=paramiko.logging22.Formatter-class.html#__init__,Method paramiko.logging22.StreamHandler.__init__()=paramiko.logging22.StreamHandler-class.html#__init__,Method paramiko.logging22.logger.__init__()=paramiko.logging22.logger-class.html#__init__,Method paramiko.pipe.OrPipe.__init__()=paramiko.pipe.OrPipe-class.html#__init__,Method paramiko.pipe.PosixPipe.__init__()=paramiko.pipe.PosixPipe-class.html#__init__,Method paramiko.pipe.WindowsPipe.__init__()=paramiko.pipe.WindowsPipe-class.html#__init__,Method paramiko.primes.ModulusPack.__init__()=paramiko.primes.ModulusPack-class.html#__init__,Method paramiko.ssh_exception.PartialAuthentication.__init__()=paramiko.ssh_exception.PartialAuthentication-class.html#__init__,Method paramiko.transport.ChannelMap.__init__()=paramiko.transport.ChannelMap-class.html#__init__,Method paramiko.util.Counter.__init__()=paramiko.util.Counter-class.html#__init__,Method paramiko.util.enumerate.__init__()=paramiko.util.enumerate-class.html#__init__,Method paramiko.win_pageant.PageantConnection.__init__()=paramiko.win_pageant.PageantConnection-class.html#__init__"><a title="paramiko.Agent.__init__
-paramiko.AgentKey.__init__
-paramiko.BadAuthenticationType.__init__
-paramiko.BadHostKeyException.__init__
-paramiko.BufferedFile.__init__
-paramiko.Channel.__init__
-paramiko.ChannelException.__init__
-paramiko.DSSKey.__init__
-paramiko.HostKeys.__init__
-paramiko.Message.__init__
-paramiko.PKey.__init__
-paramiko.RSAKey.__init__
-paramiko.SFTPAttributes.__init__
-paramiko.SFTPClient.__init__
-paramiko.SFTPFile.__init__
-paramiko.SFTPHandle.__init__
-paramiko.SFTPServer.__init__
-paramiko.SFTPServerInterface.__init__
-paramiko.SSHClient.__init__
-paramiko.SSHConfig.__init__
-paramiko.SecurityOptions.__init__
-paramiko.SubsystemHandler.__init__
-paramiko.Transport.__init__
-paramiko.ber.BER.__init__
-paramiko.buffered_pipe.BufferedPipe.__init__
-paramiko.channel.ChannelStderrFile.__init__
-paramiko.compress.ZlibCompressor.__init__
-paramiko.compress.ZlibDecompressor.__init__
-paramiko.hostkeys.HostKeyEntry.__init__
-paramiko.kex_gex.KexGex.__init__
-paramiko.kex_group1.KexGroup1.__init__
-paramiko.logging22.Formatter.__init__
-paramiko.logging22.StreamHandler.__init__
-paramiko.logging22.logger.__init__
-paramiko.pipe.OrPipe.__init__
-paramiko.pipe.PosixPipe.__init__
-paramiko.pipe.WindowsPipe.__init__
-paramiko.primes.ModulusPack.__init__
-paramiko.ssh_exception.PartialAuthentication.__init__
-paramiko.transport.ChannelMap.__init__
-paramiko.util.Counter.__init__
-paramiko.util.enumerate.__init__
-paramiko.win_pageant.PageantConnection.__init__" class="py-name" href="#" onclick="return doclink('link-262', '__init__', 'link-262');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt> </tt>
-<a name="L1204"></a><tt class="py-lineno">1204</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_set_mode</tt><tt class="py-op">(</tt><tt class="py-name">mode</tt><tt class="py-op">,</tt> <tt class="py-name">bufsize</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1205"></a><tt class="py-lineno">1205</tt> <tt class="py-line"> </tt>
-<a name="ChannelFile.__repr__"></a><div id="ChannelFile.__repr__-def"><a name="L1206"></a><tt class="py-lineno">1206</tt> <a class="py-toggle" href="#" id="ChannelFile.__repr__-toggle" onclick="return toggle('ChannelFile.__repr__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.ChannelFile-class.html#__repr__">__repr__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ChannelFile.__repr__-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="ChannelFile.__repr__-expanded"><a name="L1207"></a><tt class="py-lineno">1207</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1208"></a><tt class="py-lineno">1208</tt> <tt class="py-line"><tt class="py-docstring"> Returns a string representation of this object, for debugging.</tt> </tt>
-<a name="L1209"></a><tt class="py-lineno">1209</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1210"></a><tt class="py-lineno">1210</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: str</tt> </tt>
-<a name="L1211"></a><tt class="py-lineno">1211</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1212"></a><tt class="py-lineno">1212</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">'&lt;paramiko.ChannelFile from '</tt> <tt class="py-op">+</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-263" class="py-name"><a title="paramiko.channel" class="py-name" href="#" onclick="return doclink('link-263', 'channel', 'link-259');">channel</a></tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">'&gt;'</tt> </tt>
-</div><a name="L1213"></a><tt class="py-lineno">1213</tt> <tt class="py-line"> </tt>
-<a name="ChannelFile._read"></a><div id="ChannelFile._read-def"><a name="L1214"></a><tt class="py-lineno">1214</tt> <a class="py-toggle" href="#" id="ChannelFile._read-toggle" onclick="return toggle('ChannelFile._read');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.ChannelFile-class.html#_read">_read</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">size</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ChannelFile._read-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="ChannelFile._read-expanded"><a name="L1215"></a><tt class="py-lineno">1215</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-264" class="py-name"><a title="paramiko.channel" class="py-name" href="#" onclick="return doclink('link-264', 'channel', 'link-259');">channel</a></tt><tt class="py-op">.</tt><tt id="link-265" class="py-name" targets="Method paramiko.Channel.recv()=paramiko.Channel-class.html#recv,Method paramiko.win_pageant.PageantConnection.recv()=paramiko.win_pageant.PageantConnection-class.html#recv"><a title="paramiko.Channel.recv
-paramiko.win_pageant.PageantConnection.recv" class="py-name" href="#" onclick="return doclink('link-265', 'recv', 'link-265');">recv</a></tt><tt class="py-op">(</tt><tt class="py-name">size</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1216"></a><tt class="py-lineno">1216</tt> <tt class="py-line"> </tt>
-<a name="ChannelFile._write"></a><div id="ChannelFile._write-def"><a name="L1217"></a><tt class="py-lineno">1217</tt> <a class="py-toggle" href="#" id="ChannelFile._write-toggle" onclick="return toggle('ChannelFile._write');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.ChannelFile-class.html#_write">_write</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">data</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ChannelFile._write-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="ChannelFile._write-expanded"><a name="L1218"></a><tt class="py-lineno">1218</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-266" class="py-name"><a title="paramiko.channel" class="py-name" href="#" onclick="return doclink('link-266', 'channel', 'link-259');">channel</a></tt><tt class="py-op">.</tt><tt id="link-267" class="py-name" targets="Method paramiko.Channel.sendall()=paramiko.Channel-class.html#sendall"><a title="paramiko.Channel.sendall" class="py-name" href="#" onclick="return doclink('link-267', 'sendall', 'link-267');">sendall</a></tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L1219"></a><tt class="py-lineno">1219</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L1220"></a><tt class="py-lineno">1220</tt> <tt class="py-line"> </tt>
-<a name="L1221"></a><tt class="py-lineno">1221</tt> <tt class="py-line"> </tt>
-<a name="ChannelStderrFile"></a><div id="ChannelStderrFile-def"><a name="L1222"></a><tt class="py-lineno">1222</tt> <a class="py-toggle" href="#" id="ChannelStderrFile-toggle" onclick="return toggle('ChannelStderrFile');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.channel.ChannelStderrFile-class.html">ChannelStderrFile</a> <tt class="py-op">(</tt><tt class="py-base-class">ChannelFile</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ChannelStderrFile-collapsed" style="display:none;" pad="++++" indent="++++"></div><div id="ChannelStderrFile-expanded"><a name="ChannelStderrFile.__init__"></a><div id="ChannelStderrFile.__init__-def"><a name="L1223"></a><tt class="py-lineno">1223</tt> <a class="py-toggle" href="#" id="ChannelStderrFile.__init__-toggle" onclick="return toggle('ChannelStderrFile.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.ChannelStderrFile-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">channel</tt><tt class="py-op">,</tt> <tt class="py-param">mode</tt> <tt class="py-op">=</tt> <tt class="py-string">'r'</tt><tt class="py-op">,</tt> <tt class="py-param">bufsize</tt> <tt class="py-op">=</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ChannelStderrFile.__init__-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="ChannelStderrFile.__init__-expanded"><a name="L1224"></a><tt class="py-lineno">1224</tt> <tt class="py-line"> <tt class="py-name">ChannelFile</tt><tt class="py-op">.</tt><tt id="link-268" class="py-name"><a title="paramiko.Agent.__init__
-paramiko.AgentKey.__init__
-paramiko.BadAuthenticationType.__init__
-paramiko.BadHostKeyException.__init__
-paramiko.BufferedFile.__init__
-paramiko.Channel.__init__
-paramiko.ChannelException.__init__
-paramiko.DSSKey.__init__
-paramiko.HostKeys.__init__
-paramiko.Message.__init__
-paramiko.PKey.__init__
-paramiko.RSAKey.__init__
-paramiko.SFTPAttributes.__init__
-paramiko.SFTPClient.__init__
-paramiko.SFTPFile.__init__
-paramiko.SFTPHandle.__init__
-paramiko.SFTPServer.__init__
-paramiko.SFTPServerInterface.__init__
-paramiko.SSHClient.__init__
-paramiko.SSHConfig.__init__
-paramiko.SecurityOptions.__init__
-paramiko.SubsystemHandler.__init__
-paramiko.Transport.__init__
-paramiko.ber.BER.__init__
-paramiko.buffered_pipe.BufferedPipe.__init__
-paramiko.channel.ChannelStderrFile.__init__
-paramiko.compress.ZlibCompressor.__init__
-paramiko.compress.ZlibDecompressor.__init__
-paramiko.hostkeys.HostKeyEntry.__init__
-paramiko.kex_gex.KexGex.__init__
-paramiko.kex_group1.KexGroup1.__init__
-paramiko.logging22.Formatter.__init__
-paramiko.logging22.StreamHandler.__init__
-paramiko.logging22.logger.__init__
-paramiko.pipe.OrPipe.__init__
-paramiko.pipe.PosixPipe.__init__
-paramiko.pipe.WindowsPipe.__init__
-paramiko.primes.ModulusPack.__init__
-paramiko.ssh_exception.PartialAuthentication.__init__
-paramiko.transport.ChannelMap.__init__
-paramiko.util.Counter.__init__
-paramiko.util.enumerate.__init__
-paramiko.win_pageant.PageantConnection.__init__" class="py-name" href="#" onclick="return doclink('link-268', '__init__', 'link-262');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">,</tt> <tt id="link-269" class="py-name"><a title="paramiko.channel" class="py-name" href="#" onclick="return doclink('link-269', 'channel', 'link-259');">channel</a></tt><tt class="py-op">,</tt> <tt class="py-name">mode</tt><tt class="py-op">,</tt> <tt class="py-name">bufsize</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1225"></a><tt class="py-lineno">1225</tt> <tt class="py-line"> </tt>
-<a name="ChannelStderrFile._read"></a><div id="ChannelStderrFile._read-def"><a name="L1226"></a><tt class="py-lineno">1226</tt> <a class="py-toggle" href="#" id="ChannelStderrFile._read-toggle" onclick="return toggle('ChannelStderrFile._read');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.ChannelStderrFile-class.html#_read">_read</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">size</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ChannelStderrFile._read-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="ChannelStderrFile._read-expanded"><a name="L1227"></a><tt class="py-lineno">1227</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-270" class="py-name"><a title="paramiko.channel" class="py-name" href="#" onclick="return doclink('link-270', 'channel', 'link-259');">channel</a></tt><tt class="py-op">.</tt><tt id="link-271" class="py-name" targets="Method paramiko.Channel.recv_stderr()=paramiko.Channel-class.html#recv_stderr"><a title="paramiko.Channel.recv_stderr" class="py-name" href="#" onclick="return doclink('link-271', 'recv_stderr', 'link-271');">recv_stderr</a></tt><tt class="py-op">(</tt><tt class="py-name">size</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1228"></a><tt class="py-lineno">1228</tt> <tt class="py-line"> </tt>
-<a name="ChannelStderrFile._write"></a><div id="ChannelStderrFile._write-def"><a name="L1229"></a><tt class="py-lineno">1229</tt> <a class="py-toggle" href="#" id="ChannelStderrFile._write-toggle" onclick="return toggle('ChannelStderrFile._write');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.channel.ChannelStderrFile-class.html#_write">_write</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">data</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ChannelStderrFile._write-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="ChannelStderrFile._write-expanded"><a name="L1230"></a><tt class="py-lineno">1230</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-272" class="py-name"><a title="paramiko.channel" class="py-name" href="#" onclick="return doclink('link-272', 'channel', 'link-259');">channel</a></tt><tt class="py-op">.</tt><tt id="link-273" class="py-name" targets="Method paramiko.Channel.sendall_stderr()=paramiko.Channel-class.html#sendall_stderr"><a title="paramiko.Channel.sendall_stderr" class="py-name" href="#" onclick="return doclink('link-273', 'sendall_stderr', 'link-273');">sendall_stderr</a></tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L1231"></a><tt class="py-lineno">1231</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L1232"></a><tt class="py-lineno">1232</tt> <tt class="py-line"> </tt>
-<a name="L1233"></a><tt class="py-lineno">1233</tt> <tt class="py-line"> </tt>
-<a name="L1234"></a><tt class="py-lineno">1234</tt> <tt class="py-line"><tt class="py-comment"># vim: set shiftwidth=4 expandtab :</tt> </tt>
-<a name="L1235"></a><tt class="py-lineno">1235</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:07 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.channel.ChannelStderrFile-class.html b/docs/paramiko.channel.ChannelStderrFile-class.html
deleted file mode 100644
index 3136f45..0000000
--- a/docs/paramiko.channel.ChannelStderrFile-class.html
+++ /dev/null
@@ -1,257 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.channel.ChannelStderrFile</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- <a href="paramiko.channel-module.html" onclick="show_private();">Module&nbsp;channel</a> ::
- Class&nbsp;ChannelStderrFile
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.channel.ChannelStderrFile-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class ChannelStderrFile</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.channel-pysrc.html#ChannelStderrFile">source&nbsp;code</a></span></p>
-<pre class="base-tree">
- object --+
- |
-<a href="paramiko.BufferedFile-class.html">BufferedFile</a> --+
- |
- ChannelFile --+
- |
- <strong class="uidshort">ChannelStderrFile</strong>
-</pre>
-
-<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.channel.ChannelStderrFile-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">channel</span>,
- <span class="summary-sig-arg">mode</span>=<span class="summary-sig-default"><code class="variable-quote">'</code><code class="variable-string">r</code><code class="variable-quote">'</code></span>,
- <span class="summary-sig-arg">bufsize</span>=<span class="summary-sig-default">-1</span>)</span><br />
- x.__init__(...) initializes x; see x.__class__.__doc__ for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.channel-pysrc.html#ChannelStderrFile.__init__">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>ChannelFile</code></b>:
- <code>__repr__</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code><a href="paramiko.BufferedFile-class.html">BufferedFile</a></code></b>:
- <code><a href="paramiko.BufferedFile-class.html#__del__">__del__</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#__iter__">__iter__</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#close">close</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#flush">flush</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#next">next</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#read">read</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#readline">readline</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#readlines">readlines</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#seek">seek</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#tell">tell</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#write">write</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#writelines">writelines</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#xreadlines">xreadlines</a></code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS VARIABLES ==================== -->
-<a name="section-ClassVariables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Class Variables</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code><a href="paramiko.BufferedFile-class.html">BufferedFile</a></code></b>:
- <code><a href="paramiko.BufferedFile-class.html#FLAG_APPEND">FLAG_APPEND</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#FLAG_BINARY">FLAG_BINARY</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#FLAG_BUFFERED">FLAG_BUFFERED</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#FLAG_LINE_BUFFERED">FLAG_LINE_BUFFERED</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#FLAG_READ">FLAG_READ</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#FLAG_UNIVERSAL_NEWLINE">FLAG_UNIVERSAL_NEWLINE</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#FLAG_WRITE">FLAG_WRITE</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#SEEK_CUR">SEEK_CUR</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#SEEK_END">SEEK_END</a></code>,
- <code><a href="paramiko.BufferedFile-class.html#SEEK_SET">SEEK_SET</a></code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">channel</span>,
- <span class="sig-arg">mode</span>=<span class="sig-default"><code class="variable-quote">'</code><code class="variable-string">r</code><code class="variable-quote">'</code></span>,
- <span class="sig-arg">bufsize</span>=<span class="sig-default">-1</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.channel-pysrc.html#ChannelStderrFile.__init__">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see x.__class__.__doc__ for
- signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:04 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.client-module.html b/docs/paramiko.client-module.html
deleted file mode 100644
index 48d7ff9..0000000
--- a/docs/paramiko.client-module.html
+++ /dev/null
@@ -1,539 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.client</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;client
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.client-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module client</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.client-pysrc.html">source&nbsp;code</a></span></p>
-<p><a href="paramiko.SSHClient-class.html"
- class="link">SSHClient</a>.</p>
-
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SSH_PORT"></a><span class="summary-name">SSH_PORT</span> = <code title="22">22</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_FAILED"></a><span class="summary-name">AUTH_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_PARTIALLY_SUCCESSFUL"></a><span class="summary-name">AUTH_PARTIALLY_SUCCESSFUL</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_SUCCESSFUL"></a><span class="summary-name">AUTH_SUCCESSFUL</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.client-module.html#CONNECTION_FAILED_CODE" class="summary-name">CONNECTION_FAILED_CODE</a> = <code title="{1: 'Administratively prohibited',
- 2: 'Connect failed',
- 3: 'Unknown channel type',
- 4: 'Resource shortage'}"><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">:</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CRITICAL"></a><span class="summary-name">CRITICAL</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DEBUG"></a><span class="summary-name">DEBUG</span> = <code title="10">10</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_AUTH_CANCELLED_BY_USER"></a><span class="summary-name">DISCONNECT_AUTH_CANCELLED_BY_USER</span> = <code title="13">13</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE"></a><span class="summary-name">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</span> = <code title="14">14</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_SERVICE_NOT_AVAILABLE"></a><span class="summary-name">DISCONNECT_SERVICE_NOT_AVAILABLE</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="ERROR"></a><span class="summary-name">ERROR</span> = <code title="40">40</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="INFO"></a><span class="summary-name">INFO</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_CLOSE"></a><span class="summary-name">MSG_CHANNEL_CLOSE</span> = <code title="97">97</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_DATA"></a><span class="summary-name">MSG_CHANNEL_DATA</span> = <code title="94">94</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EOF"></a><span class="summary-name">MSG_CHANNEL_EOF</span> = <code title="96">96</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EXTENDED_DATA"></a><span class="summary-name">MSG_CHANNEL_EXTENDED_DATA</span> = <code title="95">95</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_FAILURE"></a><span class="summary-name">MSG_CHANNEL_FAILURE</span> = <code title="100">100</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN"></a><span class="summary-name">MSG_CHANNEL_OPEN</span> = <code title="90">90</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_FAILURE"></a><span class="summary-name">MSG_CHANNEL_OPEN_FAILURE</span> = <code title="92">92</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_OPEN_SUCCESS</span> = <code title="91">91</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_REQUEST"></a><span class="summary-name">MSG_CHANNEL_REQUEST</span> = <code title="98">98</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_SUCCESS</span> = <code title="99">99</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_WINDOW_ADJUST"></a><span class="summary-name">MSG_CHANNEL_WINDOW_ADJUST</span> = <code title="93">93</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DEBUG"></a><span class="summary-name">MSG_DEBUG</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DISCONNECT"></a><span class="summary-name">MSG_DISCONNECT</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_GLOBAL_REQUEST"></a><span class="summary-name">MSG_GLOBAL_REQUEST</span> = <code title="80">80</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_IGNORE"></a><span class="summary-name">MSG_IGNORE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_KEXINIT"></a><span class="summary-name">MSG_KEXINIT</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.client-module.html#MSG_NAMES" class="summary-name">MSG_NAMES</a> = <code title="{1: 'disconnect',
- 2: 'ignore',
- 3: 'unimplemented',
- 4: 'debug',
- 5: 'service-request',
- 6: 'service-accept',
- 20: 'kexinit',
- 21: 'newkeys',
-..."><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">, </code>3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_NEWKEYS"></a><span class="summary-name">MSG_NEWKEYS</span> = <code title="21">21</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_FAILURE"></a><span class="summary-name">MSG_REQUEST_FAILURE</span> = <code title="82">82</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_SUCCESS"></a><span class="summary-name">MSG_REQUEST_SUCCESS</span> = <code title="81">81</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_ACCEPT"></a><span class="summary-name">MSG_SERVICE_ACCEPT</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_REQUEST"></a><span class="summary-name">MSG_SERVICE_REQUEST</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_UNIMPLEMENTED"></a><span class="summary-name">MSG_UNIMPLEMENTED</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_BANNER"></a><span class="summary-name">MSG_USERAUTH_BANNER</span> = <code title="53">53</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_FAILURE"></a><span class="summary-name">MSG_USERAUTH_FAILURE</span> = <code title="51">51</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_REQUEST"></a><span class="summary-name">MSG_USERAUTH_INFO_REQUEST</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_RESPONSE"></a><span class="summary-name">MSG_USERAUTH_INFO_RESPONSE</span> = <code title="61">61</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_PK_OK"></a><span class="summary-name">MSG_USERAUTH_PK_OK</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_REQUEST"></a><span class="summary-name">MSG_USERAUTH_REQUEST</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_SUCCESS"></a><span class="summary-name">MSG_USERAUTH_SUCCESS</span> = <code title="52">52</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED"></a><span class="summary-name">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_CONNECT_FAILED"></a><span class="summary-name">OPEN_FAILED_CONNECT_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_RESOURCE_SHORTAGE"></a><span class="summary-name">OPEN_FAILED_RESOURCE_SHORTAGE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_UNKNOWN_CHANNEL_TYPE"></a><span class="summary-name">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_SUCCEEDED"></a><span class="summary-name">OPEN_SUCCEEDED</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="PY22"></a><span class="summary-name">PY22</span> = <code title="False">False</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="WARNING"></a><span class="summary-name">WARNING</span> = <code title="30">30</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'paramiko'"><code class="variable-quote">'</code><code class="variable-string">paramiko</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="rng"></a><span class="summary-name">rng</span> = <code title="Random.new()">Random.new()</code>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES DETAILS ==================== -->
-<a name="section-VariablesDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables Details</span></td>
-</tr>
-</table>
-<a name="CONNECTION_FAILED_CODE"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">CONNECTION_FAILED_CODE</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Connect failed</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Unknown channel type</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Resource shortage</code><code class="variable-quote">'</code><code class="variable-group">}</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="MSG_NAMES"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">MSG_NAMES</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">debug</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 5<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-request</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 6<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-accept</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 20<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">kexinit</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 21<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">newkeys</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:02 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.client-pysrc.html b/docs/paramiko.client-pysrc.html
deleted file mode 100644
index cdca4fe..0000000
--- a/docs/paramiko.client-pysrc.html
+++ /dev/null
@@ -1,801 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.client</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;client
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.client-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.client-module.html" onclick="show_private();">Module paramiko.client</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2006-2007 Robey Pointer &lt;robeypointer@gmail.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring">L{SSHClient}.</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">binascii</tt> <tt class="py-keyword">import</tt> <tt class="py-name">hexlify</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">getpass</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">socket</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">warnings</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package paramiko=paramiko-module.html"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-0', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Module paramiko.agent=paramiko.agent-module.html"><a title="paramiko.agent" class="py-name" href="#" onclick="return doclink('link-1', 'agent', 'link-1');">agent</a></tt> <tt class="py-keyword">import</tt> <tt id="link-2" class="py-name" targets="Class paramiko.Agent=paramiko.Agent-class.html"><a title="paramiko.Agent" class="py-name" href="#" onclick="return doclink('link-2', 'Agent', 'link-2');">Agent</a></tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-3" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-3', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-4" class="py-name" targets="Module paramiko.common=paramiko.common-module.html"><a title="paramiko.common" class="py-name" href="#" onclick="return doclink('link-4', 'common', 'link-4');">common</a></tt> <tt class="py-keyword">import</tt> <tt class="py-op">*</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-5" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-5', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-6" class="py-name" targets="Module paramiko.dsskey=paramiko.dsskey-module.html"><a title="paramiko.dsskey" class="py-name" href="#" onclick="return doclink('link-6', 'dsskey', 'link-6');">dsskey</a></tt> <tt class="py-keyword">import</tt> <tt id="link-7" class="py-name" targets="Class paramiko.DSSKey=paramiko.DSSKey-class.html"><a title="paramiko.DSSKey" class="py-name" href="#" onclick="return doclink('link-7', 'DSSKey', 'link-7');">DSSKey</a></tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-8" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-8', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-9" class="py-name" targets="Module paramiko.hostkeys=paramiko.hostkeys-module.html"><a title="paramiko.hostkeys" class="py-name" href="#" onclick="return doclink('link-9', 'hostkeys', 'link-9');">hostkeys</a></tt> <tt class="py-keyword">import</tt> <tt id="link-10" class="py-name" targets="Class paramiko.HostKeys=paramiko.HostKeys-class.html"><a title="paramiko.HostKeys" class="py-name" href="#" onclick="return doclink('link-10', 'HostKeys', 'link-10');">HostKeys</a></tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-11" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-11', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-12" class="py-name" targets="Module paramiko.resource=paramiko.resource-module.html"><a title="paramiko.resource" class="py-name" href="#" onclick="return doclink('link-12', 'resource', 'link-12');">resource</a></tt> <tt class="py-keyword">import</tt> <tt id="link-13" class="py-name" targets="Variable paramiko.resource.ResourceManager=paramiko.resource-module.html#ResourceManager"><a title="paramiko.resource.ResourceManager" class="py-name" href="#" onclick="return doclink('link-13', 'ResourceManager', 'link-13');">ResourceManager</a></tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-14" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-14', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-15" class="py-name" targets="Module paramiko.rsakey=paramiko.rsakey-module.html"><a title="paramiko.rsakey" class="py-name" href="#" onclick="return doclink('link-15', 'rsakey', 'link-15');">rsakey</a></tt> <tt class="py-keyword">import</tt> <tt id="link-16" class="py-name" targets="Class paramiko.RSAKey=paramiko.RSAKey-class.html"><a title="paramiko.RSAKey" class="py-name" href="#" onclick="return doclink('link-16', 'RSAKey', 'link-16');">RSAKey</a></tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-17" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-17', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-18" class="py-name" targets="Module paramiko.ssh_exception=paramiko.ssh_exception-module.html"><a title="paramiko.ssh_exception" class="py-name" href="#" onclick="return doclink('link-18', 'ssh_exception', 'link-18');">ssh_exception</a></tt> <tt class="py-keyword">import</tt> <tt id="link-19" class="py-name" targets="Class paramiko.SSHException=paramiko.SSHException-class.html"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-19', 'SSHException', 'link-19');">SSHException</a></tt><tt class="py-op">,</tt> <tt id="link-20" class="py-name" targets="Class paramiko.BadHostKeyException=paramiko.BadHostKeyException-class.html"><a title="paramiko.BadHostKeyException" class="py-name" href="#" onclick="return doclink('link-20', 'BadHostKeyException', 'link-20');">BadHostKeyException</a></tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-21" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-21', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-22" class="py-name" targets="Module paramiko.transport=paramiko.transport-module.html"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-22', 'transport', 'link-22');">transport</a></tt> <tt class="py-keyword">import</tt> <tt id="link-23" class="py-name" targets="Class paramiko.Transport=paramiko.Transport-class.html"><a title="paramiko.Transport" class="py-name" href="#" onclick="return doclink('link-23', 'Transport', 'link-23');">Transport</a></tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"><tt id="link-24" class="py-name" targets="Variable paramiko.client.SSH_PORT=paramiko.client-module.html#SSH_PORT"><a title="paramiko.client.SSH_PORT" class="py-name" href="#" onclick="return doclink('link-24', 'SSH_PORT', 'link-24');">SSH_PORT</a></tt> <tt class="py-op">=</tt> <tt class="py-number">22</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> </tt>
-<a name="MissingHostKeyPolicy"></a><div id="MissingHostKeyPolicy-def"><a name="L41"></a><tt class="py-lineno"> 41</tt> <a class="py-toggle" href="#" id="MissingHostKeyPolicy-toggle" onclick="return toggle('MissingHostKeyPolicy');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.client.MissingHostKeyPolicy-class.html">MissingHostKeyPolicy</a> <tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MissingHostKeyPolicy-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="MissingHostKeyPolicy-expanded"><a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"><tt class="py-docstring"> Interface for defining the policy that L{SSHClient} should use when the</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"><tt class="py-docstring"> SSH server's hostname is not in either the system host keys or the</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"><tt class="py-docstring"> application's keys. Pre-made classes implement policies for automatically</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"><tt class="py-docstring"> adding the key to the application's L{HostKeys} object (L{AutoAddPolicy}),</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"><tt class="py-docstring"> and for automatically rejecting the key (L{RejectPolicy}).</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"><tt class="py-docstring"> This function may be used to ask the user to verify the key, for example.</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> </tt>
-<a name="MissingHostKeyPolicy.missing_host_key"></a><div id="MissingHostKeyPolicy.missing_host_key-def"><a name="L52"></a><tt class="py-lineno"> 52</tt> <a class="py-toggle" href="#" id="MissingHostKeyPolicy.missing_host_key-toggle" onclick="return toggle('MissingHostKeyPolicy.missing_host_key');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.client.MissingHostKeyPolicy-class.html#missing_host_key">missing_host_key</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">client</tt><tt class="py-op">,</tt> <tt class="py-param">hostname</tt><tt class="py-op">,</tt> <tt class="py-param">key</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MissingHostKeyPolicy.missing_host_key-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="MissingHostKeyPolicy.missing_host_key-expanded"><a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"><tt class="py-docstring"> Called when an L{SSHClient} receives a server key for a server that</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"><tt class="py-docstring"> isn't in either the system or local L{HostKeys} object. To accept</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"><tt class="py-docstring"> the key, simply return. To reject, raised an exception (which will</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"><tt class="py-docstring"> be passed to the calling application).</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-</div></div><a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> </tt>
-<a name="AutoAddPolicy"></a><div id="AutoAddPolicy-def"><a name="L62"></a><tt class="py-lineno"> 62</tt> <a class="py-toggle" href="#" id="AutoAddPolicy-toggle" onclick="return toggle('AutoAddPolicy');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.client.AutoAddPolicy-class.html">AutoAddPolicy</a> <tt class="py-op">(</tt><tt class="py-base-class">MissingHostKeyPolicy</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="AutoAddPolicy-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="AutoAddPolicy-expanded"><a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"><tt class="py-docstring"> Policy for automatically adding the hostname and new host key to the</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"><tt class="py-docstring"> local L{HostKeys} object, and saving it. This is used by L{SSHClient}.</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> </tt>
-<a name="AutoAddPolicy.missing_host_key"></a><div id="AutoAddPolicy.missing_host_key-def"><a name="L68"></a><tt class="py-lineno"> 68</tt> <a class="py-toggle" href="#" id="AutoAddPolicy.missing_host_key-toggle" onclick="return toggle('AutoAddPolicy.missing_host_key');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.client.AutoAddPolicy-class.html#missing_host_key">missing_host_key</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">client</tt><tt class="py-op">,</tt> <tt class="py-param">hostname</tt><tt class="py-op">,</tt> <tt class="py-param">key</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="AutoAddPolicy.missing_host_key-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="AutoAddPolicy.missing_host_key-expanded"><a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt id="link-25" class="py-name" targets="Module paramiko.client=paramiko.client-module.html"><a title="paramiko.client" class="py-name" href="#" onclick="return doclink('link-25', 'client', 'link-25');">client</a></tt><tt class="py-op">.</tt><tt class="py-name">_host_keys</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name" targets="Method paramiko.HostKeys.add()=paramiko.HostKeys-class.html#add,Method paramiko.Message.add()=paramiko.Message-class.html#add"><a title="paramiko.HostKeys.add
-paramiko.Message.add" class="py-name" href="#" onclick="return doclink('link-26', 'add', 'link-26');">add</a></tt><tt class="py-op">(</tt><tt class="py-name">hostname</tt><tt class="py-op">,</tt> <tt class="py-name">key</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name" targets="Method paramiko.AgentKey.get_name()=paramiko.AgentKey-class.html#get_name,Method paramiko.Channel.get_name()=paramiko.Channel-class.html#get_name,Method paramiko.DSSKey.get_name()=paramiko.DSSKey-class.html#get_name,Method paramiko.PKey.get_name()=paramiko.PKey-class.html#get_name,Method paramiko.RSAKey.get_name()=paramiko.RSAKey-class.html#get_name"><a title="paramiko.AgentKey.get_name
-paramiko.Channel.get_name
-paramiko.DSSKey.get_name
-paramiko.PKey.get_name
-paramiko.RSAKey.get_name" class="py-name" href="#" onclick="return doclink('link-27', 'get_name', 'link-27');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">key</tt><tt class="py-op">)</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-28" class="py-name"><a title="paramiko.client" class="py-name" href="#" onclick="return doclink('link-28', 'client', 'link-25');">client</a></tt><tt class="py-op">.</tt><tt class="py-name">_host_keys_filename</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt id="link-29" class="py-name"><a title="paramiko.client" class="py-name" href="#" onclick="return doclink('link-29', 'client', 'link-25');">client</a></tt><tt class="py-op">.</tt><tt id="link-30" class="py-name" targets="Method paramiko.SSHClient.save_host_keys()=paramiko.SSHClient-class.html#save_host_keys"><a title="paramiko.SSHClient.save_host_keys" class="py-name" href="#" onclick="return doclink('link-30', 'save_host_keys', 'link-30');">save_host_keys</a></tt><tt class="py-op">(</tt><tt id="link-31" class="py-name"><a title="paramiko.client" class="py-name" href="#" onclick="return doclink('link-31', 'client', 'link-25');">client</a></tt><tt class="py-op">.</tt><tt class="py-name">_host_keys_filename</tt><tt class="py-op">)</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt id="link-32" class="py-name"><a title="paramiko.client" class="py-name" href="#" onclick="return doclink('link-32', 'client', 'link-25');">client</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-33" class="py-name" targets="Variable paramiko.auth_handler.DEBUG=paramiko.auth_handler-module.html#DEBUG,Variable paramiko.channel.DEBUG=paramiko.channel-module.html#DEBUG,Variable paramiko.client.DEBUG=paramiko.client-module.html#DEBUG,Variable paramiko.common.DEBUG=paramiko.common-module.html#DEBUG,Variable paramiko.dsskey.DEBUG=paramiko.dsskey-module.html#DEBUG,Variable paramiko.hostkeys.DEBUG=paramiko.hostkeys-module.html#DEBUG,Variable paramiko.kex_gex.DEBUG=paramiko.kex_gex-module.html#DEBUG,Variable paramiko.kex_group1.DEBUG=paramiko.kex_group1-module.html#DEBUG,Variable paramiko.logging22.DEBUG=paramiko.logging22-module.html#DEBUG,Variable paramiko.packet.DEBUG=paramiko.packet-module.html#DEBUG,Variable paramiko.pkey.DEBUG=paramiko.pkey-module.html#DEBUG,Variable paramiko.rsakey.DEBUG=paramiko.rsakey-module.html#DEBUG,Variable paramiko.server.DEBUG=paramiko.server-module.html#DEBUG,Variable paramiko.sftp.DEBUG=paramiko.sftp-module.html#DEBUG,Variable paramiko.sftp_attr.DEBUG=paramiko.sftp_attr-module.html#DEBUG,Variable paramiko.sftp_client.DEBUG=paramiko.sftp_client-module.html#DEBUG,Variable paramiko.sftp_file.DEBUG=paramiko.sftp_file-module.html#DEBUG,Variable paramiko.sftp_handle.DEBUG=paramiko.sftp_handle-module.html#DEBUG,Variable paramiko.sftp_server.DEBUG=paramiko.sftp_server-module.html#DEBUG,Variable paramiko.sftp_si.DEBUG=paramiko.sftp_si-module.html#DEBUG,Variable paramiko.transport.DEBUG=paramiko.transport-module.html#DEBUG,Variable paramiko.util.DEBUG=paramiko.util-module.html#DEBUG"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-33', 'DEBUG', 'link-33');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Adding %s host key for %s: %s'</tt> <tt class="py-op">%</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="paramiko.AgentKey.get_name
-paramiko.Channel.get_name
-paramiko.DSSKey.get_name
-paramiko.PKey.get_name
-paramiko.RSAKey.get_name" class="py-name" href="#" onclick="return doclink('link-34', 'get_name', 'link-27');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">hostname</tt><tt class="py-op">,</tt> <tt class="py-name">hexlify</tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name" targets="Method paramiko.PKey.get_fingerprint()=paramiko.PKey-class.html#get_fingerprint"><a title="paramiko.PKey.get_fingerprint" class="py-name" href="#" onclick="return doclink('link-35', 'get_fingerprint', 'link-35');">get_fingerprint</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> </tt>
-<a name="RejectPolicy"></a><div id="RejectPolicy-def"><a name="L76"></a><tt class="py-lineno"> 76</tt> <a class="py-toggle" href="#" id="RejectPolicy-toggle" onclick="return toggle('RejectPolicy');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.client.RejectPolicy-class.html">RejectPolicy</a> <tt class="py-op">(</tt><tt class="py-base-class">MissingHostKeyPolicy</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RejectPolicy-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="RejectPolicy-expanded"><a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"><tt class="py-docstring"> Policy for automatically rejecting the unknown hostname &amp; key. This is</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"><tt class="py-docstring"> used by L{SSHClient}.</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> </tt>
-<a name="RejectPolicy.missing_host_key"></a><div id="RejectPolicy.missing_host_key-def"><a name="L82"></a><tt class="py-lineno"> 82</tt> <a class="py-toggle" href="#" id="RejectPolicy.missing_host_key-toggle" onclick="return toggle('RejectPolicy.missing_host_key');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.client.RejectPolicy-class.html#missing_host_key">missing_host_key</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">client</tt><tt class="py-op">,</tt> <tt class="py-param">hostname</tt><tt class="py-op">,</tt> <tt class="py-param">key</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RejectPolicy.missing_host_key-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RejectPolicy.missing_host_key-expanded"><a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt id="link-36" class="py-name"><a title="paramiko.client" class="py-name" href="#" onclick="return doclink('link-36', 'client', 'link-25');">client</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-37" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-37', 'DEBUG', 'link-33');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Rejecting %s host key for %s: %s'</tt> <tt class="py-op">%</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="paramiko.AgentKey.get_name
-paramiko.Channel.get_name
-paramiko.DSSKey.get_name
-paramiko.PKey.get_name
-paramiko.RSAKey.get_name" class="py-name" href="#" onclick="return doclink('link-38', 'get_name', 'link-27');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">hostname</tt><tt class="py-op">,</tt> <tt class="py-name">hexlify</tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="paramiko.PKey.get_fingerprint" class="py-name" href="#" onclick="return doclink('link-39', 'get_fingerprint', 'link-35');">get_fingerprint</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-40" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-40', 'SSHException', 'link-19');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Unknown server %s'</tt> <tt class="py-op">%</tt> <tt class="py-name">hostname</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> </tt>
-<a name="WarningPolicy"></a><div id="WarningPolicy-def"><a name="L88"></a><tt class="py-lineno"> 88</tt> <a class="py-toggle" href="#" id="WarningPolicy-toggle" onclick="return toggle('WarningPolicy');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.client.WarningPolicy-class.html">WarningPolicy</a> <tt class="py-op">(</tt><tt class="py-base-class">MissingHostKeyPolicy</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="WarningPolicy-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="WarningPolicy-expanded"><a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"><tt class="py-docstring"> Policy for logging a python-style warning for an unknown host key, but</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"><tt class="py-docstring"> accepting it. This is used by L{SSHClient}.</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="WarningPolicy.missing_host_key"></a><div id="WarningPolicy.missing_host_key-def"><a name="L93"></a><tt class="py-lineno"> 93</tt> <a class="py-toggle" href="#" id="WarningPolicy.missing_host_key-toggle" onclick="return toggle('WarningPolicy.missing_host_key');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.client.WarningPolicy-class.html#missing_host_key">missing_host_key</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">client</tt><tt class="py-op">,</tt> <tt class="py-param">hostname</tt><tt class="py-op">,</tt> <tt class="py-param">key</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="WarningPolicy.missing_host_key-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="WarningPolicy.missing_host_key-expanded"><a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-name">warnings</tt><tt class="py-op">.</tt><tt class="py-name">warn</tt><tt class="py-op">(</tt><tt class="py-string">'Unknown %s host key for %s: %s'</tt> <tt class="py-op">%</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name"><a title="paramiko.AgentKey.get_name
-paramiko.Channel.get_name
-paramiko.DSSKey.get_name
-paramiko.PKey.get_name
-paramiko.RSAKey.get_name" class="py-name" href="#" onclick="return doclink('link-41', 'get_name', 'link-27');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">hostname</tt><tt class="py-op">,</tt> <tt class="py-name">hexlify</tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">.</tt><tt id="link-42" class="py-name"><a title="paramiko.PKey.get_fingerprint" class="py-name" href="#" onclick="return doclink('link-42', 'get_fingerprint', 'link-35');">get_fingerprint</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> </tt>
-<a name="SSHClient"></a><div id="SSHClient-def"><a name="L98"></a><tt class="py-lineno"> 98</tt> <a class="py-toggle" href="#" id="SSHClient-toggle" onclick="return toggle('SSHClient');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.client.SSHClient-class.html">SSHClient</a> <tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SSHClient-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="SSHClient-expanded"><a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"><tt class="py-docstring"> A high-level representation of a session with an SSH server. This class</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"><tt class="py-docstring"> wraps L{Transport}, L{Channel}, and L{SFTPClient} to take care of most</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"><tt class="py-docstring"> aspects of authenticating and opening channels. A typical use case is::</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"><tt class="py-docstring"> client = SSHClient()</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"><tt class="py-docstring"> client.load_system_host_keys()</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"><tt class="py-docstring"> client.connect('ssh.example.com')</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"><tt class="py-docstring"> stdin, stdout, stderr = client.exec_command('ls -l')</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"><tt class="py-docstring"> You may pass in explicit overrides for authentication and server host key</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"><tt class="py-docstring"> checking. The default mechanism is to try to use local key files or an</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"><tt class="py-docstring"> SSH agent (if one is running).</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.6</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> </tt>
-<a name="SSHClient.__init__"></a><div id="SSHClient.__init__-def"><a name="L116"></a><tt class="py-lineno">116</tt> <a class="py-toggle" href="#" id="SSHClient.__init__-toggle" onclick="return toggle('SSHClient.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.client.SSHClient-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SSHClient.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SSHClient.__init__-expanded"><a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"><tt class="py-docstring"> Create a new SSHClient.</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_system_host_keys</tt> <tt class="py-op">=</tt> <tt id="link-43" class="py-name"><a title="paramiko.HostKeys" class="py-name" href="#" onclick="return doclink('link-43', 'HostKeys', 'link-10');">HostKeys</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_host_keys</tt> <tt class="py-op">=</tt> <tt id="link-44" class="py-name"><a title="paramiko.HostKeys" class="py-name" href="#" onclick="return doclink('link-44', 'HostKeys', 'link-10');">HostKeys</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_host_keys_filename</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log_channel</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_policy</tt> <tt class="py-op">=</tt> <tt id="link-45" class="py-name" targets="Class paramiko.RejectPolicy=paramiko.RejectPolicy-class.html"><a title="paramiko.RejectPolicy" class="py-name" href="#" onclick="return doclink('link-45', 'RejectPolicy', 'link-45');">RejectPolicy</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_transport</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_agent</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> </tt>
-<a name="SSHClient.load_system_host_keys"></a><div id="SSHClient.load_system_host_keys-def"><a name="L128"></a><tt class="py-lineno">128</tt> <a class="py-toggle" href="#" id="SSHClient.load_system_host_keys-toggle" onclick="return toggle('SSHClient.load_system_host_keys');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.client.SSHClient-class.html#load_system_host_keys">load_system_host_keys</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">filename</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SSHClient.load_system_host_keys-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SSHClient.load_system_host_keys-expanded"><a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"><tt class="py-docstring"> Load host keys from a system (read-only) file. Host keys read with</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"><tt class="py-docstring"> this method will not be saved back by L{save_host_keys}.</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"><tt class="py-docstring"> This method can be called multiple times. Each new set of host keys</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"><tt class="py-docstring"> will be merged with the existing set (new replacing old if there are</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"><tt class="py-docstring"> conflicts).</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"><tt class="py-docstring"> If C{filename} is left as C{None}, an attempt will be made to read</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"><tt class="py-docstring"> keys from the user's local "known hosts" file, as used by OpenSSH,</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"><tt class="py-docstring"> and no exception will be raised if the file can't be read. This is</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"><tt class="py-docstring"> probably only useful on posix.</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"><tt class="py-docstring"> @param filename: the filename to read, or C{None}</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"><tt class="py-docstring"> @type filename: str</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"><tt class="py-docstring"> @raise IOError: if a filename was provided and the file could not be</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"><tt class="py-docstring"> read</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">filename</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt class="py-comment"># try the user's .ssh key file, and mask exceptions</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt class="py-name">filename</tt> <tt class="py-op">=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">path</tt><tt class="py-op">.</tt><tt class="py-name">expanduser</tt><tt class="py-op">(</tt><tt class="py-string">'~/.ssh/known_hosts'</tt><tt class="py-op">)</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_system_host_keys</tt><tt class="py-op">.</tt><tt id="link-46" class="py-name" targets="Method paramiko.HostKeys.load()=paramiko.HostKeys-class.html#load"><a title="paramiko.HostKeys.load" class="py-name" href="#" onclick="return doclink('link-46', 'load', 'link-46');">load</a></tt><tt class="py-op">(</tt><tt class="py-name">filename</tt><tt class="py-op">)</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">IOError</tt><tt class="py-op">:</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_system_host_keys</tt><tt class="py-op">.</tt><tt id="link-47" class="py-name"><a title="paramiko.HostKeys.load" class="py-name" href="#" onclick="return doclink('link-47', 'load', 'link-46');">load</a></tt><tt class="py-op">(</tt><tt class="py-name">filename</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> </tt>
-<a name="SSHClient.load_host_keys"></a><div id="SSHClient.load_host_keys-def"><a name="L158"></a><tt class="py-lineno">158</tt> <a class="py-toggle" href="#" id="SSHClient.load_host_keys-toggle" onclick="return toggle('SSHClient.load_host_keys');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.client.SSHClient-class.html#load_host_keys">load_host_keys</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">filename</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SSHClient.load_host_keys-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SSHClient.load_host_keys-expanded"><a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"><tt class="py-docstring"> Load host keys from a local host-key file. Host keys read with this</tt> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"><tt class="py-docstring"> method will be checked I{after} keys loaded via L{load_system_host_keys},</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"><tt class="py-docstring"> but will be saved back by L{save_host_keys} (so they can be modified).</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"><tt class="py-docstring"> The missing host key policy L{AutoAddPolicy} adds keys to this set and</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"><tt class="py-docstring"> saves them, when connecting to a previously-unknown server.</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"><tt class="py-docstring"> This method can be called multiple times. Each new set of host keys</tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"><tt class="py-docstring"> will be merged with the existing set (new replacing old if there are</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"><tt class="py-docstring"> conflicts). When automatically saving, the last hostname is used.</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"><tt class="py-docstring"> @param filename: the filename to read</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"><tt class="py-docstring"> @type filename: str</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"><tt class="py-docstring"> @raise IOError: if the filename could not be read</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_host_keys_filename</tt> <tt class="py-op">=</tt> <tt class="py-name">filename</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_host_keys</tt><tt class="py-op">.</tt><tt id="link-48" class="py-name"><a title="paramiko.HostKeys.load" class="py-name" href="#" onclick="return doclink('link-48', 'load', 'link-46');">load</a></tt><tt class="py-op">(</tt><tt class="py-name">filename</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> </tt>
-<a name="SSHClient.save_host_keys"></a><div id="SSHClient.save_host_keys-def"><a name="L178"></a><tt class="py-lineno">178</tt> <a class="py-toggle" href="#" id="SSHClient.save_host_keys-toggle" onclick="return toggle('SSHClient.save_host_keys');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.client.SSHClient-class.html#save_host_keys">save_host_keys</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">filename</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SSHClient.save_host_keys-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SSHClient.save_host_keys-expanded"><a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"><tt class="py-docstring"> Save the host keys back to a file. Only the host keys loaded with</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"><tt class="py-docstring"> L{load_host_keys} (plus any added directly) will be saved -- not any</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"><tt class="py-docstring"> host keys loaded with L{load_system_host_keys}.</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"><tt class="py-docstring"> @param filename: the filename to save to</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"><tt class="py-docstring"> @type filename: str</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"><tt class="py-docstring"> @raise IOError: if the file could not be written</tt> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"> <tt class="py-name">f</tt> <tt class="py-op">=</tt> <tt id="link-49" class="py-name" targets="Method paramiko.SFTPServerInterface.open()=paramiko.SFTPServerInterface-class.html#open"><a title="paramiko.SFTPServerInterface.open" class="py-name" href="#" onclick="return doclink('link-49', 'open', 'link-49');">open</a></tt><tt class="py-op">(</tt><tt class="py-name">filename</tt><tt class="py-op">,</tt> <tt class="py-string">'w'</tt><tt class="py-op">)</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"> <tt class="py-name">f</tt><tt class="py-op">.</tt><tt id="link-50" class="py-name" targets="Method paramiko.BufferedFile.write()=paramiko.BufferedFile-class.html#write,Method paramiko.SFTPHandle.write()=paramiko.SFTPHandle-class.html#write"><a title="paramiko.BufferedFile.write
-paramiko.SFTPHandle.write" class="py-name" href="#" onclick="return doclink('link-50', 'write', 'link-50');">write</a></tt><tt class="py-op">(</tt><tt class="py-string">'# SSH host keys collected by paramiko\n'</tt><tt class="py-op">)</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">hostname</tt><tt class="py-op">,</tt> <tt id="link-51" class="py-name" targets="Method paramiko.HostKeys.keys()=paramiko.HostKeys-class.html#keys"><a title="paramiko.HostKeys.keys" class="py-name" href="#" onclick="return doclink('link-51', 'keys', 'link-51');">keys</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_host_keys</tt><tt class="py-op">.</tt><tt class="py-name">iteritems</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">keytype</tt><tt class="py-op">,</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt id="link-52" class="py-name"><a title="paramiko.HostKeys.keys" class="py-name" href="#" onclick="return doclink('link-52', 'keys', 'link-51');">keys</a></tt><tt class="py-op">.</tt><tt class="py-name">iteritems</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"> <tt class="py-name">f</tt><tt class="py-op">.</tt><tt id="link-53" class="py-name"><a title="paramiko.BufferedFile.write
-paramiko.SFTPHandle.write" class="py-name" href="#" onclick="return doclink('link-53', 'write', 'link-50');">write</a></tt><tt class="py-op">(</tt><tt class="py-string">'%s %s %s\n'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">hostname</tt><tt class="py-op">,</tt> <tt class="py-name">keytype</tt><tt class="py-op">,</tt> <tt class="py-name">key</tt><tt class="py-op">.</tt><tt id="link-54" class="py-name" targets="Method paramiko.PKey.get_base64()=paramiko.PKey-class.html#get_base64"><a title="paramiko.PKey.get_base64" class="py-name" href="#" onclick="return doclink('link-54', 'get_base64', 'link-54');">get_base64</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> <tt class="py-name">f</tt><tt class="py-op">.</tt><tt id="link-55" class="py-name" targets="Method paramiko.Agent.close()=paramiko.Agent-class.html#close,Method paramiko.BufferedFile.close()=paramiko.BufferedFile-class.html#close,Method paramiko.Channel.close()=paramiko.Channel-class.html#close,Method paramiko.SFTPClient.close()=paramiko.SFTPClient-class.html#close,Method paramiko.SFTPFile.close()=paramiko.SFTPFile-class.html#close,Method paramiko.SFTPHandle.close()=paramiko.SFTPHandle-class.html#close,Method paramiko.SSHClient.close()=paramiko.SSHClient-class.html#close,Method paramiko.Transport.close()=paramiko.Transport-class.html#close,Method paramiko.buffered_pipe.BufferedPipe.close()=paramiko.buffered_pipe.BufferedPipe-class.html#close,Method paramiko.pipe.PosixPipe.close()=paramiko.pipe.PosixPipe-class.html#close,Method paramiko.pipe.WindowsPipe.close()=paramiko.pipe.WindowsPipe-class.html#close,Method paramiko.win_pageant.PageantConnection.close()=paramiko.win_pageant.PageantConnection-class.html#close"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-55', 'close', 'link-55');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"> </tt>
-<a name="SSHClient.get_host_keys"></a><div id="SSHClient.get_host_keys-def"><a name="L196"></a><tt class="py-lineno">196</tt> <a class="py-toggle" href="#" id="SSHClient.get_host_keys-toggle" onclick="return toggle('SSHClient.get_host_keys');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.client.SSHClient-class.html#get_host_keys">get_host_keys</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SSHClient.get_host_keys-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SSHClient.get_host_keys-expanded"><a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"><tt class="py-docstring"> Get the local L{HostKeys} object. This can be used to examine the</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"><tt class="py-docstring"> local host keys or change them.</tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"><tt class="py-docstring"> @return: the local host keys</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: L{HostKeys}</tt> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_host_keys</tt> </tt>
-</div><a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"> </tt>
-<a name="SSHClient.set_log_channel"></a><div id="SSHClient.set_log_channel-def"><a name="L206"></a><tt class="py-lineno">206</tt> <a class="py-toggle" href="#" id="SSHClient.set_log_channel-toggle" onclick="return toggle('SSHClient.set_log_channel');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.client.SSHClient-class.html#set_log_channel">set_log_channel</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">name</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SSHClient.set_log_channel-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SSHClient.set_log_channel-expanded"><a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"><tt class="py-docstring"> Set the channel for logging. The default is C{"paramiko.transport"}</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"><tt class="py-docstring"> but it can be set to anything you want.</tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"><tt class="py-docstring"> @param name: new channel name for logging</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"><tt class="py-docstring"> @type name: str</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log_channel</tt> <tt class="py-op">=</tt> <tt id="link-56" class="py-name" targets="Variable paramiko.kex_gex.KexGex.name=paramiko.kex_gex.KexGex-class.html#name,Variable paramiko.kex_group1.KexGroup1.name=paramiko.kex_group1.KexGroup1-class.html#name"><a title="paramiko.kex_gex.KexGex.name
-paramiko.kex_group1.KexGroup1.name" class="py-name" href="#" onclick="return doclink('link-56', 'name', 'link-56');">name</a></tt> </tt>
-</div><a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"> </tt>
-<a name="SSHClient.set_missing_host_key_policy"></a><div id="SSHClient.set_missing_host_key_policy-def"><a name="L216"></a><tt class="py-lineno">216</tt> <a class="py-toggle" href="#" id="SSHClient.set_missing_host_key_policy-toggle" onclick="return toggle('SSHClient.set_missing_host_key_policy');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.client.SSHClient-class.html#set_missing_host_key_policy">set_missing_host_key_policy</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">policy</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SSHClient.set_missing_host_key_policy-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SSHClient.set_missing_host_key_policy-expanded"><a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"><tt class="py-docstring"> Set the policy to use when connecting to a server that doesn't have a</tt> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"><tt class="py-docstring"> host key in either the system or local L{HostKeys} objects. The</tt> </tt>
-<a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"><tt class="py-docstring"> default policy is to reject all unknown servers (using L{RejectPolicy}).</tt> </tt>
-<a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"><tt class="py-docstring"> You may substitute L{AutoAddPolicy} or write your own policy class.</tt> </tt>
-<a name="L222"></a><tt class="py-lineno">222</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"><tt class="py-docstring"> @param policy: the policy to use when receiving a host key from a</tt> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"><tt class="py-docstring"> previously-unknown server</tt> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"><tt class="py-docstring"> @type policy: L{MissingHostKeyPolicy}</tt> </tt>
-<a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_policy</tt> <tt class="py-op">=</tt> <tt class="py-name">policy</tt> </tt>
-</div><a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"> </tt>
-<a name="SSHClient.connect"></a><div id="SSHClient.connect-def"><a name="L229"></a><tt class="py-lineno">229</tt> <a class="py-toggle" href="#" id="SSHClient.connect-toggle" onclick="return toggle('SSHClient.connect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.client.SSHClient-class.html#connect">connect</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">hostname</tt><tt class="py-op">,</tt> <tt class="py-param">port</tt><tt class="py-op">=</tt><tt id="link-57" class="py-name"><a title="paramiko.client.SSH_PORT" class="py-name" href="#" onclick="return doclink('link-57', 'SSH_PORT', 'link-24');">SSH_PORT</a></tt><tt class="py-op">,</tt> <tt class="py-param">username</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">password</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">pkey</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> </tt>
-<a name="L230"></a><tt class="py-lineno">230</tt> <tt class="py-line"> <tt class="py-param">key_filename</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">timeout</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">allow_agent</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> <tt class="py-param">look_for_keys</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
-<a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"> <tt class="py-param">compress</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SSHClient.connect-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SSHClient.connect-expanded"><a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"><tt class="py-docstring"> Connect to an SSH server and authenticate to it. The server's host key</tt> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"><tt class="py-docstring"> is checked against the system host keys (see L{load_system_host_keys})</tt> </tt>
-<a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"><tt class="py-docstring"> and any local host keys (L{load_host_keys}). If the server's hostname</tt> </tt>
-<a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"><tt class="py-docstring"> is not found in either set of host keys, the missing host key policy</tt> </tt>
-<a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"><tt class="py-docstring"> is used (see L{set_missing_host_key_policy}). The default policy is</tt> </tt>
-<a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"><tt class="py-docstring"> to reject the key and raise an L{SSHException}.</tt> </tt>
-<a name="L239"></a><tt class="py-lineno">239</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"><tt class="py-docstring"> Authentication is attempted in the following order of priority:</tt> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"><tt class="py-docstring"> - The C{pkey} or C{key_filename} passed in (if any)</tt> </tt>
-<a name="L243"></a><tt class="py-lineno">243</tt> <tt class="py-line"><tt class="py-docstring"> - Any key we can find through an SSH agent</tt> </tt>
-<a name="L244"></a><tt class="py-lineno">244</tt> <tt class="py-line"><tt class="py-docstring"> - Any "id_rsa" or "id_dsa" key discoverable in C{~/.ssh/}</tt> </tt>
-<a name="L245"></a><tt class="py-lineno">245</tt> <tt class="py-line"><tt class="py-docstring"> - Plain username/password auth, if a password was given</tt> </tt>
-<a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L247"></a><tt class="py-lineno">247</tt> <tt class="py-line"><tt class="py-docstring"> If a private key requires a password to unlock it, and a password is</tt> </tt>
-<a name="L248"></a><tt class="py-lineno">248</tt> <tt class="py-line"><tt class="py-docstring"> passed in, that password will be used to attempt to unlock the key.</tt> </tt>
-<a name="L249"></a><tt class="py-lineno">249</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L250"></a><tt class="py-lineno">250</tt> <tt class="py-line"><tt class="py-docstring"> @param hostname: the server to connect to</tt> </tt>
-<a name="L251"></a><tt class="py-lineno">251</tt> <tt class="py-line"><tt class="py-docstring"> @type hostname: str</tt> </tt>
-<a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"><tt class="py-docstring"> @param port: the server port to connect to</tt> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt> <tt class="py-line"><tt class="py-docstring"> @type port: int</tt> </tt>
-<a name="L254"></a><tt class="py-lineno">254</tt> <tt class="py-line"><tt class="py-docstring"> @param username: the username to authenticate as (defaults to the</tt> </tt>
-<a name="L255"></a><tt class="py-lineno">255</tt> <tt class="py-line"><tt class="py-docstring"> current local username)</tt> </tt>
-<a name="L256"></a><tt class="py-lineno">256</tt> <tt class="py-line"><tt class="py-docstring"> @type username: str</tt> </tt>
-<a name="L257"></a><tt class="py-lineno">257</tt> <tt class="py-line"><tt class="py-docstring"> @param password: a password to use for authentication or for unlocking</tt> </tt>
-<a name="L258"></a><tt class="py-lineno">258</tt> <tt class="py-line"><tt class="py-docstring"> a private key</tt> </tt>
-<a name="L259"></a><tt class="py-lineno">259</tt> <tt class="py-line"><tt class="py-docstring"> @type password: str</tt> </tt>
-<a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"><tt class="py-docstring"> @param pkey: an optional private key to use for authentication</tt> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt> <tt class="py-line"><tt class="py-docstring"> @type pkey: L{PKey}</tt> </tt>
-<a name="L262"></a><tt class="py-lineno">262</tt> <tt class="py-line"><tt class="py-docstring"> @param key_filename: the filename, or list of filenames, of optional</tt> </tt>
-<a name="L263"></a><tt class="py-lineno">263</tt> <tt class="py-line"><tt class="py-docstring"> private key(s) to try for authentication</tt> </tt>
-<a name="L264"></a><tt class="py-lineno">264</tt> <tt class="py-line"><tt class="py-docstring"> @type key_filename: str or list(str)</tt> </tt>
-<a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"><tt class="py-docstring"> @param timeout: an optional timeout (in seconds) for the TCP connect</tt> </tt>
-<a name="L266"></a><tt class="py-lineno">266</tt> <tt class="py-line"><tt class="py-docstring"> @type timeout: float</tt> </tt>
-<a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"><tt class="py-docstring"> @param allow_agent: set to False to disable connecting to the SSH agent</tt> </tt>
-<a name="L268"></a><tt class="py-lineno">268</tt> <tt class="py-line"><tt class="py-docstring"> @type allow_agent: bool</tt> </tt>
-<a name="L269"></a><tt class="py-lineno">269</tt> <tt class="py-line"><tt class="py-docstring"> @param look_for_keys: set to False to disable searching for discoverable</tt> </tt>
-<a name="L270"></a><tt class="py-lineno">270</tt> <tt class="py-line"><tt class="py-docstring"> private key files in C{~/.ssh/}</tt> </tt>
-<a name="L271"></a><tt class="py-lineno">271</tt> <tt class="py-line"><tt class="py-docstring"> @type look_for_keys: bool</tt> </tt>
-<a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"><tt class="py-docstring"> @param compress: set to True to turn on compression</tt> </tt>
-<a name="L273"></a><tt class="py-lineno">273</tt> <tt class="py-line"><tt class="py-docstring"> @type compress: bool</tt> </tt>
-<a name="L274"></a><tt class="py-lineno">274</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"><tt class="py-docstring"> @raise BadHostKeyException: if the server's host key could not be</tt> </tt>
-<a name="L276"></a><tt class="py-lineno">276</tt> <tt class="py-line"><tt class="py-docstring"> verified</tt> </tt>
-<a name="L277"></a><tt class="py-lineno">277</tt> <tt class="py-line"><tt class="py-docstring"> @raise AuthenticationException: if authentication failed</tt> </tt>
-<a name="L278"></a><tt class="py-lineno">278</tt> <tt class="py-line"><tt class="py-docstring"> @raise SSHException: if there was any other error connecting or</tt> </tt>
-<a name="L279"></a><tt class="py-lineno">279</tt> <tt class="py-line"><tt class="py-docstring"> establishing an SSH session</tt> </tt>
-<a name="L280"></a><tt class="py-lineno">280</tt> <tt class="py-line"><tt class="py-docstring"> @raise socket.error: if a socket error occurred while connecting</tt> </tt>
-<a name="L281"></a><tt class="py-lineno">281</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L282"></a><tt class="py-lineno">282</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-op">(</tt><tt class="py-name">family</tt><tt class="py-op">,</tt> <tt class="py-name">socktype</tt><tt class="py-op">,</tt> <tt class="py-name">proto</tt><tt class="py-op">,</tt> <tt class="py-name">canonname</tt><tt class="py-op">,</tt> <tt class="py-name">sockaddr</tt><tt class="py-op">)</tt> <tt class="py-keyword">in</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">getaddrinfo</tt><tt class="py-op">(</tt><tt class="py-name">hostname</tt><tt class="py-op">,</tt> <tt class="py-name">port</tt><tt class="py-op">,</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">AF_UNSPEC</tt><tt class="py-op">,</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">SOCK_STREAM</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L283"></a><tt class="py-lineno">283</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">socktype</tt> <tt class="py-op">==</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">SOCK_STREAM</tt><tt class="py-op">:</tt> </tt>
-<a name="L284"></a><tt class="py-lineno">284</tt> <tt class="py-line"> <tt class="py-name">af</tt> <tt class="py-op">=</tt> <tt class="py-name">family</tt> </tt>
-<a name="L285"></a><tt class="py-lineno">285</tt> <tt class="py-line"> <tt class="py-name">addr</tt> <tt class="py-op">=</tt> <tt class="py-name">sockaddr</tt> </tt>
-<a name="L286"></a><tt class="py-lineno">286</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L287"></a><tt class="py-lineno">287</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L288"></a><tt class="py-lineno">288</tt> <tt class="py-line"> <tt class="py-comment"># some OS like AIX don't indicate SOCK_STREAM support, so just guess. :(</tt> </tt>
-<a name="L289"></a><tt class="py-lineno">289</tt> <tt class="py-line"> <tt class="py-name">af</tt><tt class="py-op">,</tt> <tt class="py-name">_</tt><tt class="py-op">,</tt> <tt class="py-name">_</tt><tt class="py-op">,</tt> <tt class="py-name">_</tt><tt class="py-op">,</tt> <tt class="py-name">addr</tt> <tt class="py-op">=</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">getaddrinfo</tt><tt class="py-op">(</tt><tt class="py-name">hostname</tt><tt class="py-op">,</tt> <tt class="py-name">port</tt><tt class="py-op">,</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">AF_UNSPEC</tt><tt class="py-op">,</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">SOCK_STREAM</tt><tt class="py-op">)</tt> </tt>
-<a name="L290"></a><tt class="py-lineno">290</tt> <tt class="py-line"> <tt class="py-name">sock</tt> <tt class="py-op">=</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">socket</tt><tt class="py-op">(</tt><tt class="py-name">af</tt><tt class="py-op">,</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">SOCK_STREAM</tt><tt class="py-op">)</tt> </tt>
-<a name="L291"></a><tt class="py-lineno">291</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">timeout</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L292"></a><tt class="py-lineno">292</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L293"></a><tt class="py-lineno">293</tt> <tt class="py-line"> <tt class="py-name">sock</tt><tt class="py-op">.</tt><tt id="link-58" class="py-name" targets="Method paramiko.Channel.settimeout()=paramiko.Channel-class.html#settimeout,Method paramiko.SFTPFile.settimeout()=paramiko.SFTPFile-class.html#settimeout"><a title="paramiko.Channel.settimeout
-paramiko.SFTPFile.settimeout" class="py-name" href="#" onclick="return doclink('link-58', 'settimeout', 'link-58');">settimeout</a></tt><tt class="py-op">(</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L294"></a><tt class="py-lineno">294</tt> <tt class="py-line"> <tt class="py-keyword">except</tt><tt class="py-op">:</tt> </tt>
-<a name="L295"></a><tt class="py-lineno">295</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L296"></a><tt class="py-lineno">296</tt> <tt class="py-line"> <tt class="py-name">sock</tt><tt class="py-op">.</tt><tt id="link-59" class="py-name" targets="Method paramiko.SSHClient.connect()=paramiko.SSHClient-class.html#connect,Method paramiko.Transport.connect()=paramiko.Transport-class.html#connect"><a title="paramiko.SSHClient.connect
-paramiko.Transport.connect" class="py-name" href="#" onclick="return doclink('link-59', 'connect', 'link-59');">connect</a></tt><tt class="py-op">(</tt><tt class="py-name">addr</tt><tt class="py-op">)</tt> </tt>
-<a name="L297"></a><tt class="py-lineno">297</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_transport</tt> <tt class="py-op">=</tt> <tt id="link-60" class="py-name"><a title="paramiko.Transport" class="py-name" href="#" onclick="return doclink('link-60', 'Transport', 'link-23');">Transport</a></tt><tt class="py-op">(</tt><tt class="py-name">sock</tt><tt class="py-op">)</tt> </tt>
-<a name="L298"></a><tt class="py-lineno">298</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt id="link-61" class="py-name" targets="Method paramiko.Transport.use_compression()=paramiko.Transport-class.html#use_compression"><a title="paramiko.Transport.use_compression" class="py-name" href="#" onclick="return doclink('link-61', 'use_compression', 'link-61');">use_compression</a></tt><tt class="py-op">(</tt><tt id="link-62" class="py-name" targets="Module paramiko.compress=paramiko.compress-module.html"><a title="paramiko.compress" class="py-name" href="#" onclick="return doclink('link-62', 'compress', 'link-62');">compress</a></tt><tt class="py-op">=</tt><tt id="link-63" class="py-name"><a title="paramiko.compress" class="py-name" href="#" onclick="return doclink('link-63', 'compress', 'link-62');">compress</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L299"></a><tt class="py-lineno">299</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log_channel</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L300"></a><tt class="py-lineno">300</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt id="link-64" class="py-name" targets="Method paramiko.SSHClient.set_log_channel()=paramiko.SSHClient-class.html#set_log_channel,Method paramiko.Transport.set_log_channel()=paramiko.Transport-class.html#set_log_channel"><a title="paramiko.SSHClient.set_log_channel
-paramiko.Transport.set_log_channel" class="py-name" href="#" onclick="return doclink('link-64', 'set_log_channel', 'link-64');">set_log_channel</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log_channel</tt><tt class="py-op">)</tt> </tt>
-<a name="L301"></a><tt class="py-lineno">301</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt id="link-65" class="py-name" targets="Method paramiko.Transport.start_client()=paramiko.Transport-class.html#start_client"><a title="paramiko.Transport.start_client" class="py-name" href="#" onclick="return doclink('link-65', 'start_client', 'link-65');">start_client</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L302"></a><tt class="py-lineno">302</tt> <tt class="py-line"> <tt id="link-66" class="py-name"><a title="paramiko.resource.ResourceManager" class="py-name" href="#" onclick="return doclink('link-66', 'ResourceManager', 'link-13');">ResourceManager</a></tt><tt class="py-op">.</tt><tt class="py-name">register</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-name">t</tt><tt class="py-op">)</tt> </tt>
-<a name="L303"></a><tt class="py-lineno">303</tt> <tt class="py-line"> </tt>
-<a name="L304"></a><tt class="py-lineno">304</tt> <tt class="py-line"> <tt class="py-name">server_key</tt> <tt class="py-op">=</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt id="link-67" class="py-name" targets="Method paramiko.Transport.get_remote_server_key()=paramiko.Transport-class.html#get_remote_server_key"><a title="paramiko.Transport.get_remote_server_key" class="py-name" href="#" onclick="return doclink('link-67', 'get_remote_server_key', 'link-67');">get_remote_server_key</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L305"></a><tt class="py-lineno">305</tt> <tt class="py-line"> <tt class="py-name">keytype</tt> <tt class="py-op">=</tt> <tt class="py-name">server_key</tt><tt class="py-op">.</tt><tt id="link-68" class="py-name"><a title="paramiko.AgentKey.get_name
-paramiko.Channel.get_name
-paramiko.DSSKey.get_name
-paramiko.PKey.get_name
-paramiko.RSAKey.get_name" class="py-name" href="#" onclick="return doclink('link-68', 'get_name', 'link-27');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L306"></a><tt class="py-lineno">306</tt> <tt class="py-line"> </tt>
-<a name="L307"></a><tt class="py-lineno">307</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">port</tt> <tt class="py-op">==</tt> <tt id="link-69" class="py-name"><a title="paramiko.client.SSH_PORT" class="py-name" href="#" onclick="return doclink('link-69', 'SSH_PORT', 'link-24');">SSH_PORT</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L308"></a><tt class="py-lineno">308</tt> <tt class="py-line"> <tt class="py-name">server_hostkey_name</tt> <tt class="py-op">=</tt> <tt class="py-name">hostname</tt> </tt>
-<a name="L309"></a><tt class="py-lineno">309</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L310"></a><tt class="py-lineno">310</tt> <tt class="py-line"> <tt class="py-name">server_hostkey_name</tt> <tt class="py-op">=</tt> <tt class="py-string">"[%s]:%d"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">hostname</tt><tt class="py-op">,</tt> <tt class="py-name">port</tt><tt class="py-op">)</tt> </tt>
-<a name="L311"></a><tt class="py-lineno">311</tt> <tt class="py-line"> <tt class="py-name">our_server_key</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_system_host_keys</tt><tt class="py-op">.</tt><tt id="link-70" class="py-name" targets="Method paramiko.SFTPClient.get()=paramiko.SFTPClient-class.html#get,Method paramiko.transport.ChannelMap.get()=paramiko.transport.ChannelMap-class.html#get"><a title="paramiko.SFTPClient.get
-paramiko.transport.ChannelMap.get" class="py-name" href="#" onclick="return doclink('link-70', 'get', 'link-70');">get</a></tt><tt class="py-op">(</tt><tt class="py-name">server_hostkey_name</tt><tt class="py-op">,</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-71" class="py-name"><a title="paramiko.SFTPClient.get
-paramiko.transport.ChannelMap.get" class="py-name" href="#" onclick="return doclink('link-71', 'get', 'link-70');">get</a></tt><tt class="py-op">(</tt><tt class="py-name">keytype</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> </tt>
-<a name="L312"></a><tt class="py-lineno">312</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">our_server_key</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L313"></a><tt class="py-lineno">313</tt> <tt class="py-line"> <tt class="py-name">our_server_key</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_host_keys</tt><tt class="py-op">.</tt><tt id="link-72" class="py-name"><a title="paramiko.SFTPClient.get
-paramiko.transport.ChannelMap.get" class="py-name" href="#" onclick="return doclink('link-72', 'get', 'link-70');">get</a></tt><tt class="py-op">(</tt><tt class="py-name">server_hostkey_name</tt><tt class="py-op">,</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-73" class="py-name"><a title="paramiko.SFTPClient.get
-paramiko.transport.ChannelMap.get" class="py-name" href="#" onclick="return doclink('link-73', 'get', 'link-70');">get</a></tt><tt class="py-op">(</tt><tt class="py-name">keytype</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> </tt>
-<a name="L314"></a><tt class="py-lineno">314</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">our_server_key</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L315"></a><tt class="py-lineno">315</tt> <tt class="py-line"> <tt class="py-comment"># will raise exception if the key is rejected; let that fall out</tt> </tt>
-<a name="L316"></a><tt class="py-lineno">316</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_policy</tt><tt class="py-op">.</tt><tt id="link-74" class="py-name" targets="Method paramiko.AutoAddPolicy.missing_host_key()=paramiko.AutoAddPolicy-class.html#missing_host_key,Method paramiko.MissingHostKeyPolicy.missing_host_key()=paramiko.MissingHostKeyPolicy-class.html#missing_host_key,Method paramiko.RejectPolicy.missing_host_key()=paramiko.RejectPolicy-class.html#missing_host_key,Method paramiko.WarningPolicy.missing_host_key()=paramiko.WarningPolicy-class.html#missing_host_key"><a title="paramiko.AutoAddPolicy.missing_host_key
-paramiko.MissingHostKeyPolicy.missing_host_key
-paramiko.RejectPolicy.missing_host_key
-paramiko.WarningPolicy.missing_host_key" class="py-name" href="#" onclick="return doclink('link-74', 'missing_host_key', 'link-74');">missing_host_key</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-name">server_hostkey_name</tt><tt class="py-op">,</tt> <tt class="py-name">server_key</tt><tt class="py-op">)</tt> </tt>
-<a name="L317"></a><tt class="py-lineno">317</tt> <tt class="py-line"> <tt class="py-comment"># if the callback returns, assume the key is ok</tt> </tt>
-<a name="L318"></a><tt class="py-lineno">318</tt> <tt class="py-line"> <tt class="py-name">our_server_key</tt> <tt class="py-op">=</tt> <tt class="py-name">server_key</tt> </tt>
-<a name="L319"></a><tt class="py-lineno">319</tt> <tt class="py-line"> </tt>
-<a name="L320"></a><tt class="py-lineno">320</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">server_key</tt> <tt class="py-op">!=</tt> <tt class="py-name">our_server_key</tt><tt class="py-op">:</tt> </tt>
-<a name="L321"></a><tt class="py-lineno">321</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-75" class="py-name"><a title="paramiko.BadHostKeyException" class="py-name" href="#" onclick="return doclink('link-75', 'BadHostKeyException', 'link-20');">BadHostKeyException</a></tt><tt class="py-op">(</tt><tt class="py-name">hostname</tt><tt class="py-op">,</tt> <tt class="py-name">server_key</tt><tt class="py-op">,</tt> <tt class="py-name">our_server_key</tt><tt class="py-op">)</tt> </tt>
-<a name="L322"></a><tt class="py-lineno">322</tt> <tt class="py-line"> </tt>
-<a name="L323"></a><tt class="py-lineno">323</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">username</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L324"></a><tt class="py-lineno">324</tt> <tt class="py-line"> <tt class="py-name">username</tt> <tt class="py-op">=</tt> <tt class="py-name">getpass</tt><tt class="py-op">.</tt><tt class="py-name">getuser</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L325"></a><tt class="py-lineno">325</tt> <tt class="py-line"> </tt>
-<a name="L326"></a><tt class="py-lineno">326</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">key_filename</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L327"></a><tt class="py-lineno">327</tt> <tt class="py-line"> <tt class="py-name">key_filenames</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L328"></a><tt class="py-lineno">328</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">key_filename</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">,</tt> <tt class="py-name">unicode</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L329"></a><tt class="py-lineno">329</tt> <tt class="py-line"> <tt class="py-name">key_filenames</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">key_filename</tt> <tt class="py-op">]</tt> </tt>
-<a name="L330"></a><tt class="py-lineno">330</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L331"></a><tt class="py-lineno">331</tt> <tt class="py-line"> <tt class="py-name">key_filenames</tt> <tt class="py-op">=</tt> <tt class="py-name">key_filename</tt> </tt>
-<a name="L332"></a><tt class="py-lineno">332</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_auth</tt><tt class="py-op">(</tt><tt class="py-name">username</tt><tt class="py-op">,</tt> <tt class="py-name">password</tt><tt class="py-op">,</tt> <tt id="link-76" class="py-name" targets="Module paramiko.pkey=paramiko.pkey-module.html"><a title="paramiko.pkey" class="py-name" href="#" onclick="return doclink('link-76', 'pkey', 'link-76');">pkey</a></tt><tt class="py-op">,</tt> <tt class="py-name">key_filenames</tt><tt class="py-op">,</tt> <tt class="py-name">allow_agent</tt><tt class="py-op">,</tt> <tt class="py-name">look_for_keys</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L333"></a><tt class="py-lineno">333</tt> <tt class="py-line"> </tt>
-<a name="SSHClient.close"></a><div id="SSHClient.close-def"><a name="L334"></a><tt class="py-lineno">334</tt> <a class="py-toggle" href="#" id="SSHClient.close-toggle" onclick="return toggle('SSHClient.close');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.client.SSHClient-class.html#close">close</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SSHClient.close-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SSHClient.close-expanded"><a name="L335"></a><tt class="py-lineno">335</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L336"></a><tt class="py-lineno">336</tt> <tt class="py-line"><tt class="py-docstring"> Close this SSHClient and its underlying L{Transport}.</tt> </tt>
-<a name="L337"></a><tt class="py-lineno">337</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L338"></a><tt class="py-lineno">338</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_transport</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L339"></a><tt class="py-lineno">339</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L340"></a><tt class="py-lineno">340</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_transport</tt><tt class="py-op">.</tt><tt id="link-77" class="py-name"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-77', 'close', 'link-55');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L341"></a><tt class="py-lineno">341</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_transport</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L342"></a><tt class="py-lineno">342</tt> <tt class="py-line"> </tt>
-<a name="L343"></a><tt class="py-lineno">343</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_agent</tt> <tt class="py-op">!=</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L344"></a><tt class="py-lineno">344</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_agent</tt><tt class="py-op">.</tt><tt id="link-78" class="py-name"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-78', 'close', 'link-55');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L345"></a><tt class="py-lineno">345</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_agent</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L346"></a><tt class="py-lineno">346</tt> <tt class="py-line"> </tt>
-<a name="SSHClient.exec_command"></a><div id="SSHClient.exec_command-def"><a name="L347"></a><tt class="py-lineno">347</tt> <a class="py-toggle" href="#" id="SSHClient.exec_command-toggle" onclick="return toggle('SSHClient.exec_command');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.client.SSHClient-class.html#exec_command">exec_command</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">command</tt><tt class="py-op">,</tt> <tt class="py-param">bufsize</tt><tt class="py-op">=</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SSHClient.exec_command-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SSHClient.exec_command-expanded"><a name="L348"></a><tt class="py-lineno">348</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L349"></a><tt class="py-lineno">349</tt> <tt class="py-line"><tt class="py-docstring"> Execute a command on the SSH server. A new L{Channel} is opened and</tt> </tt>
-<a name="L350"></a><tt class="py-lineno">350</tt> <tt class="py-line"><tt class="py-docstring"> the requested command is executed. The command's input and output</tt> </tt>
-<a name="L351"></a><tt class="py-lineno">351</tt> <tt class="py-line"><tt class="py-docstring"> streams are returned as python C{file}-like objects representing</tt> </tt>
-<a name="L352"></a><tt class="py-lineno">352</tt> <tt class="py-line"><tt class="py-docstring"> stdin, stdout, and stderr.</tt> </tt>
-<a name="L353"></a><tt class="py-lineno">353</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L354"></a><tt class="py-lineno">354</tt> <tt class="py-line"><tt class="py-docstring"> @param command: the command to execute</tt> </tt>
-<a name="L355"></a><tt class="py-lineno">355</tt> <tt class="py-line"><tt class="py-docstring"> @type command: str</tt> </tt>
-<a name="L356"></a><tt class="py-lineno">356</tt> <tt class="py-line"><tt class="py-docstring"> @param bufsize: interpreted the same way as by the built-in C{file()} function in python</tt> </tt>
-<a name="L357"></a><tt class="py-lineno">357</tt> <tt class="py-line"><tt class="py-docstring"> @type bufsize: int</tt> </tt>
-<a name="L358"></a><tt class="py-lineno">358</tt> <tt class="py-line"><tt class="py-docstring"> @return: the stdin, stdout, and stderr of the executing command</tt> </tt>
-<a name="L359"></a><tt class="py-lineno">359</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: tuple(L{ChannelFile}, L{ChannelFile}, L{ChannelFile})</tt> </tt>
-<a name="L360"></a><tt class="py-lineno">360</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L361"></a><tt class="py-lineno">361</tt> <tt class="py-line"><tt class="py-docstring"> @raise SSHException: if the server fails to execute the command</tt> </tt>
-<a name="L362"></a><tt class="py-lineno">362</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L363"></a><tt class="py-lineno">363</tt> <tt class="py-line"> <tt class="py-name">chan</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_transport</tt><tt class="py-op">.</tt><tt id="link-79" class="py-name" targets="Method paramiko.Transport.open_session()=paramiko.Transport-class.html#open_session"><a title="paramiko.Transport.open_session" class="py-name" href="#" onclick="return doclink('link-79', 'open_session', 'link-79');">open_session</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L364"></a><tt class="py-lineno">364</tt> <tt class="py-line"> <tt class="py-name">chan</tt><tt class="py-op">.</tt><tt id="link-80" class="py-name" targets="Method paramiko.Channel.exec_command()=paramiko.Channel-class.html#exec_command,Method paramiko.SSHClient.exec_command()=paramiko.SSHClient-class.html#exec_command"><a title="paramiko.Channel.exec_command
-paramiko.SSHClient.exec_command" class="py-name" href="#" onclick="return doclink('link-80', 'exec_command', 'link-80');">exec_command</a></tt><tt class="py-op">(</tt><tt class="py-name">command</tt><tt class="py-op">)</tt> </tt>
-<a name="L365"></a><tt class="py-lineno">365</tt> <tt class="py-line"> <tt class="py-name">stdin</tt> <tt class="py-op">=</tt> <tt class="py-name">chan</tt><tt class="py-op">.</tt><tt id="link-81" class="py-name" targets="Method paramiko.Channel.makefile()=paramiko.Channel-class.html#makefile"><a title="paramiko.Channel.makefile" class="py-name" href="#" onclick="return doclink('link-81', 'makefile', 'link-81');">makefile</a></tt><tt class="py-op">(</tt><tt class="py-string">'wb'</tt><tt class="py-op">,</tt> <tt class="py-name">bufsize</tt><tt class="py-op">)</tt> </tt>
-<a name="L366"></a><tt class="py-lineno">366</tt> <tt class="py-line"> <tt class="py-name">stdout</tt> <tt class="py-op">=</tt> <tt class="py-name">chan</tt><tt class="py-op">.</tt><tt id="link-82" class="py-name"><a title="paramiko.Channel.makefile" class="py-name" href="#" onclick="return doclink('link-82', 'makefile', 'link-81');">makefile</a></tt><tt class="py-op">(</tt><tt class="py-string">'rb'</tt><tt class="py-op">,</tt> <tt class="py-name">bufsize</tt><tt class="py-op">)</tt> </tt>
-<a name="L367"></a><tt class="py-lineno">367</tt> <tt class="py-line"> <tt class="py-name">stderr</tt> <tt class="py-op">=</tt> <tt class="py-name">chan</tt><tt class="py-op">.</tt><tt id="link-83" class="py-name" targets="Method paramiko.Channel.makefile_stderr()=paramiko.Channel-class.html#makefile_stderr"><a title="paramiko.Channel.makefile_stderr" class="py-name" href="#" onclick="return doclink('link-83', 'makefile_stderr', 'link-83');">makefile_stderr</a></tt><tt class="py-op">(</tt><tt class="py-string">'rb'</tt><tt class="py-op">,</tt> <tt class="py-name">bufsize</tt><tt class="py-op">)</tt> </tt>
-<a name="L368"></a><tt class="py-lineno">368</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">stdin</tt><tt class="py-op">,</tt> <tt class="py-name">stdout</tt><tt class="py-op">,</tt> <tt class="py-name">stderr</tt> </tt>
-</div><a name="L369"></a><tt class="py-lineno">369</tt> <tt class="py-line"> </tt>
-<a name="SSHClient.invoke_shell"></a><div id="SSHClient.invoke_shell-def"><a name="L370"></a><tt class="py-lineno">370</tt> <a class="py-toggle" href="#" id="SSHClient.invoke_shell-toggle" onclick="return toggle('SSHClient.invoke_shell');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.client.SSHClient-class.html#invoke_shell">invoke_shell</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">term</tt><tt class="py-op">=</tt><tt class="py-string">'vt100'</tt><tt class="py-op">,</tt> <tt class="py-param">width</tt><tt class="py-op">=</tt><tt class="py-number">80</tt><tt class="py-op">,</tt> <tt class="py-param">height</tt><tt class="py-op">=</tt><tt class="py-number">24</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SSHClient.invoke_shell-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SSHClient.invoke_shell-expanded"><a name="L371"></a><tt class="py-lineno">371</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L372"></a><tt class="py-lineno">372</tt> <tt class="py-line"><tt class="py-docstring"> Start an interactive shell session on the SSH server. A new L{Channel}</tt> </tt>
-<a name="L373"></a><tt class="py-lineno">373</tt> <tt class="py-line"><tt class="py-docstring"> is opened and connected to a pseudo-terminal using the requested</tt> </tt>
-<a name="L374"></a><tt class="py-lineno">374</tt> <tt class="py-line"><tt class="py-docstring"> terminal type and size.</tt> </tt>
-<a name="L375"></a><tt class="py-lineno">375</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L376"></a><tt class="py-lineno">376</tt> <tt class="py-line"><tt class="py-docstring"> @param term: the terminal type to emulate (for example, C{"vt100"})</tt> </tt>
-<a name="L377"></a><tt class="py-lineno">377</tt> <tt class="py-line"><tt class="py-docstring"> @type term: str</tt> </tt>
-<a name="L378"></a><tt class="py-lineno">378</tt> <tt class="py-line"><tt class="py-docstring"> @param width: the width (in characters) of the terminal window</tt> </tt>
-<a name="L379"></a><tt class="py-lineno">379</tt> <tt class="py-line"><tt class="py-docstring"> @type width: int</tt> </tt>
-<a name="L380"></a><tt class="py-lineno">380</tt> <tt class="py-line"><tt class="py-docstring"> @param height: the height (in characters) of the terminal window</tt> </tt>
-<a name="L381"></a><tt class="py-lineno">381</tt> <tt class="py-line"><tt class="py-docstring"> @type height: int</tt> </tt>
-<a name="L382"></a><tt class="py-lineno">382</tt> <tt class="py-line"><tt class="py-docstring"> @return: a new channel connected to the remote shell</tt> </tt>
-<a name="L383"></a><tt class="py-lineno">383</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: L{Channel}</tt> </tt>
-<a name="L384"></a><tt class="py-lineno">384</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L385"></a><tt class="py-lineno">385</tt> <tt class="py-line"><tt class="py-docstring"> @raise SSHException: if the server fails to invoke a shell</tt> </tt>
-<a name="L386"></a><tt class="py-lineno">386</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L387"></a><tt class="py-lineno">387</tt> <tt class="py-line"> <tt class="py-name">chan</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_transport</tt><tt class="py-op">.</tt><tt id="link-84" class="py-name"><a title="paramiko.Transport.open_session" class="py-name" href="#" onclick="return doclink('link-84', 'open_session', 'link-79');">open_session</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L388"></a><tt class="py-lineno">388</tt> <tt class="py-line"> <tt class="py-name">chan</tt><tt class="py-op">.</tt><tt id="link-85" class="py-name" targets="Method paramiko.Channel.get_pty()=paramiko.Channel-class.html#get_pty"><a title="paramiko.Channel.get_pty" class="py-name" href="#" onclick="return doclink('link-85', 'get_pty', 'link-85');">get_pty</a></tt><tt class="py-op">(</tt><tt class="py-name">term</tt><tt class="py-op">,</tt> <tt class="py-name">width</tt><tt class="py-op">,</tt> <tt class="py-name">height</tt><tt class="py-op">)</tt> </tt>
-<a name="L389"></a><tt class="py-lineno">389</tt> <tt class="py-line"> <tt class="py-name">chan</tt><tt class="py-op">.</tt><tt id="link-86" class="py-name" targets="Method paramiko.Channel.invoke_shell()=paramiko.Channel-class.html#invoke_shell,Method paramiko.SSHClient.invoke_shell()=paramiko.SSHClient-class.html#invoke_shell"><a title="paramiko.Channel.invoke_shell
-paramiko.SSHClient.invoke_shell" class="py-name" href="#" onclick="return doclink('link-86', 'invoke_shell', 'link-86');">invoke_shell</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L390"></a><tt class="py-lineno">390</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">chan</tt> </tt>
-</div><a name="L391"></a><tt class="py-lineno">391</tt> <tt class="py-line"> </tt>
-<a name="SSHClient.open_sftp"></a><div id="SSHClient.open_sftp-def"><a name="L392"></a><tt class="py-lineno">392</tt> <a class="py-toggle" href="#" id="SSHClient.open_sftp-toggle" onclick="return toggle('SSHClient.open_sftp');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.client.SSHClient-class.html#open_sftp">open_sftp</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SSHClient.open_sftp-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SSHClient.open_sftp-expanded"><a name="L393"></a><tt class="py-lineno">393</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L394"></a><tt class="py-lineno">394</tt> <tt class="py-line"><tt class="py-docstring"> Open an SFTP session on the SSH server.</tt> </tt>
-<a name="L395"></a><tt class="py-lineno">395</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L396"></a><tt class="py-lineno">396</tt> <tt class="py-line"><tt class="py-docstring"> @return: a new SFTP session object</tt> </tt>
-<a name="L397"></a><tt class="py-lineno">397</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: L{SFTPClient}</tt> </tt>
-<a name="L398"></a><tt class="py-lineno">398</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L399"></a><tt class="py-lineno">399</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_transport</tt><tt class="py-op">.</tt><tt id="link-87" class="py-name" targets="Method paramiko.Transport.open_sftp_client()=paramiko.Transport-class.html#open_sftp_client"><a title="paramiko.Transport.open_sftp_client" class="py-name" href="#" onclick="return doclink('link-87', 'open_sftp_client', 'link-87');">open_sftp_client</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L400"></a><tt class="py-lineno">400</tt> <tt class="py-line"> </tt>
-<a name="SSHClient.get_transport"></a><div id="SSHClient.get_transport-def"><a name="L401"></a><tt class="py-lineno">401</tt> <a class="py-toggle" href="#" id="SSHClient.get_transport-toggle" onclick="return toggle('SSHClient.get_transport');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.client.SSHClient-class.html#get_transport">get_transport</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SSHClient.get_transport-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SSHClient.get_transport-expanded"><a name="L402"></a><tt class="py-lineno">402</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L403"></a><tt class="py-lineno">403</tt> <tt class="py-line"><tt class="py-docstring"> Return the underlying L{Transport} object for this SSH connection.</tt> </tt>
-<a name="L404"></a><tt class="py-lineno">404</tt> <tt class="py-line"><tt class="py-docstring"> This can be used to perform lower-level tasks, like opening specific</tt> </tt>
-<a name="L405"></a><tt class="py-lineno">405</tt> <tt class="py-line"><tt class="py-docstring"> kinds of channels.</tt> </tt>
-<a name="L406"></a><tt class="py-lineno">406</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L407"></a><tt class="py-lineno">407</tt> <tt class="py-line"><tt class="py-docstring"> @return: the Transport for this connection</tt> </tt>
-<a name="L408"></a><tt class="py-lineno">408</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: L{Transport}</tt> </tt>
-<a name="L409"></a><tt class="py-lineno">409</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L410"></a><tt class="py-lineno">410</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_transport</tt> </tt>
-</div><a name="L411"></a><tt class="py-lineno">411</tt> <tt class="py-line"> </tt>
-<a name="SSHClient._auth"></a><div id="SSHClient._auth-def"><a name="L412"></a><tt class="py-lineno">412</tt> <a class="py-toggle" href="#" id="SSHClient._auth-toggle" onclick="return toggle('SSHClient._auth');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.client.SSHClient-class.html#_auth">_auth</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">username</tt><tt class="py-op">,</tt> <tt class="py-param">password</tt><tt class="py-op">,</tt> <tt class="py-param">pkey</tt><tt class="py-op">,</tt> <tt class="py-param">key_filenames</tt><tt class="py-op">,</tt> <tt class="py-param">allow_agent</tt><tt class="py-op">,</tt> <tt class="py-param">look_for_keys</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SSHClient._auth-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SSHClient._auth-expanded"><a name="L413"></a><tt class="py-lineno">413</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L414"></a><tt class="py-lineno">414</tt> <tt class="py-line"><tt class="py-docstring"> Try, in order:</tt> </tt>
-<a name="L415"></a><tt class="py-lineno">415</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L416"></a><tt class="py-lineno">416</tt> <tt class="py-line"><tt class="py-docstring"> - The key passed in, if one was passed in.</tt> </tt>
-<a name="L417"></a><tt class="py-lineno">417</tt> <tt class="py-line"><tt class="py-docstring"> - Any key we can find through an SSH agent (if allowed).</tt> </tt>
-<a name="L418"></a><tt class="py-lineno">418</tt> <tt class="py-line"><tt class="py-docstring"> - Any "id_rsa" or "id_dsa" key discoverable in ~/.ssh/ (if allowed).</tt> </tt>
-<a name="L419"></a><tt class="py-lineno">419</tt> <tt class="py-line"><tt class="py-docstring"> - Plain username/password auth, if a password was given.</tt> </tt>
-<a name="L420"></a><tt class="py-lineno">420</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L421"></a><tt class="py-lineno">421</tt> <tt class="py-line"><tt class="py-docstring"> (The password might be needed to unlock a private key.)</tt> </tt>
-<a name="L422"></a><tt class="py-lineno">422</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L423"></a><tt class="py-lineno">423</tt> <tt class="py-line"> <tt class="py-name">saved_exception</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L424"></a><tt class="py-lineno">424</tt> <tt class="py-line"> </tt>
-<a name="L425"></a><tt class="py-lineno">425</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-88" class="py-name"><a title="paramiko.pkey" class="py-name" href="#" onclick="return doclink('link-88', 'pkey', 'link-76');">pkey</a></tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L426"></a><tt class="py-lineno">426</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L427"></a><tt class="py-lineno">427</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-89" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-89', 'DEBUG', 'link-33');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Trying SSH key %s'</tt> <tt class="py-op">%</tt> <tt class="py-name">hexlify</tt><tt class="py-op">(</tt><tt id="link-90" class="py-name"><a title="paramiko.pkey" class="py-name" href="#" onclick="return doclink('link-90', 'pkey', 'link-76');">pkey</a></tt><tt class="py-op">.</tt><tt id="link-91" class="py-name"><a title="paramiko.PKey.get_fingerprint" class="py-name" href="#" onclick="return doclink('link-91', 'get_fingerprint', 'link-35');">get_fingerprint</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L428"></a><tt class="py-lineno">428</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_transport</tt><tt class="py-op">.</tt><tt id="link-92" class="py-name" targets="Method paramiko.Transport.auth_publickey()=paramiko.Transport-class.html#auth_publickey"><a title="paramiko.Transport.auth_publickey" class="py-name" href="#" onclick="return doclink('link-92', 'auth_publickey', 'link-92');">auth_publickey</a></tt><tt class="py-op">(</tt><tt class="py-name">username</tt><tt class="py-op">,</tt> <tt id="link-93" class="py-name"><a title="paramiko.pkey" class="py-name" href="#" onclick="return doclink('link-93', 'pkey', 'link-76');">pkey</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L429"></a><tt class="py-lineno">429</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L430"></a><tt class="py-lineno">430</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt id="link-94" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-94', 'SSHException', 'link-19');">SSHException</a></tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L431"></a><tt class="py-lineno">431</tt> <tt class="py-line"> <tt class="py-name">saved_exception</tt> <tt class="py-op">=</tt> <tt class="py-name">e</tt> </tt>
-<a name="L432"></a><tt class="py-lineno">432</tt> <tt class="py-line"> </tt>
-<a name="L433"></a><tt class="py-lineno">433</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key_filename</tt> <tt class="py-keyword">in</tt> <tt class="py-name">key_filenames</tt><tt class="py-op">:</tt> </tt>
-<a name="L434"></a><tt class="py-lineno">434</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">pkey_class</tt> <tt class="py-keyword">in</tt> <tt class="py-op">(</tt><tt id="link-95" class="py-name"><a title="paramiko.RSAKey" class="py-name" href="#" onclick="return doclink('link-95', 'RSAKey', 'link-16');">RSAKey</a></tt><tt class="py-op">,</tt> <tt id="link-96" class="py-name"><a title="paramiko.DSSKey" class="py-name" href="#" onclick="return doclink('link-96', 'DSSKey', 'link-7');">DSSKey</a></tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L435"></a><tt class="py-lineno">435</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L436"></a><tt class="py-lineno">436</tt> <tt class="py-line"> <tt class="py-name">key</tt> <tt class="py-op">=</tt> <tt class="py-name">pkey_class</tt><tt class="py-op">.</tt><tt id="link-97" class="py-name" targets="Class Method paramiko.PKey.from_private_key_file()=paramiko.PKey-class.html#from_private_key_file"><a title="paramiko.PKey.from_private_key_file" class="py-name" href="#" onclick="return doclink('link-97', 'from_private_key_file', 'link-97');">from_private_key_file</a></tt><tt class="py-op">(</tt><tt class="py-name">key_filename</tt><tt class="py-op">,</tt> <tt class="py-name">password</tt><tt class="py-op">)</tt> </tt>
-<a name="L437"></a><tt class="py-lineno">437</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-98" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-98', 'DEBUG', 'link-33');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Trying key %s from %s'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">hexlify</tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">.</tt><tt id="link-99" class="py-name"><a title="paramiko.PKey.get_fingerprint" class="py-name" href="#" onclick="return doclink('link-99', 'get_fingerprint', 'link-35');">get_fingerprint</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">key_filename</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L438"></a><tt class="py-lineno">438</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_transport</tt><tt class="py-op">.</tt><tt id="link-100" class="py-name"><a title="paramiko.Transport.auth_publickey" class="py-name" href="#" onclick="return doclink('link-100', 'auth_publickey', 'link-92');">auth_publickey</a></tt><tt class="py-op">(</tt><tt class="py-name">username</tt><tt class="py-op">,</tt> <tt class="py-name">key</tt><tt class="py-op">)</tt> </tt>
-<a name="L439"></a><tt class="py-lineno">439</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L440"></a><tt class="py-lineno">440</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt id="link-101" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-101', 'SSHException', 'link-19');">SSHException</a></tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L441"></a><tt class="py-lineno">441</tt> <tt class="py-line"> <tt class="py-name">saved_exception</tt> <tt class="py-op">=</tt> <tt class="py-name">e</tt> </tt>
-<a name="L442"></a><tt class="py-lineno">442</tt> <tt class="py-line"> </tt>
-<a name="L443"></a><tt class="py-lineno">443</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">allow_agent</tt><tt class="py-op">:</tt> </tt>
-<a name="L444"></a><tt class="py-lineno">444</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_agent</tt> <tt class="py-op">==</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L445"></a><tt class="py-lineno">445</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_agent</tt> <tt class="py-op">=</tt> <tt id="link-102" class="py-name"><a title="paramiko.Agent" class="py-name" href="#" onclick="return doclink('link-102', 'Agent', 'link-2');">Agent</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L446"></a><tt class="py-lineno">446</tt> <tt class="py-line"> </tt>
-<a name="L447"></a><tt class="py-lineno">447</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_agent</tt><tt class="py-op">.</tt><tt id="link-103" class="py-name" targets="Method paramiko.Agent.get_keys()=paramiko.Agent-class.html#get_keys"><a title="paramiko.Agent.get_keys" class="py-name" href="#" onclick="return doclink('link-103', 'get_keys', 'link-103');">get_keys</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L448"></a><tt class="py-lineno">448</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L449"></a><tt class="py-lineno">449</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-104" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-104', 'DEBUG', 'link-33');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Trying SSH agent key %s'</tt> <tt class="py-op">%</tt> <tt class="py-name">hexlify</tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">.</tt><tt id="link-105" class="py-name"><a title="paramiko.PKey.get_fingerprint" class="py-name" href="#" onclick="return doclink('link-105', 'get_fingerprint', 'link-35');">get_fingerprint</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L450"></a><tt class="py-lineno">450</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_transport</tt><tt class="py-op">.</tt><tt id="link-106" class="py-name"><a title="paramiko.Transport.auth_publickey" class="py-name" href="#" onclick="return doclink('link-106', 'auth_publickey', 'link-92');">auth_publickey</a></tt><tt class="py-op">(</tt><tt class="py-name">username</tt><tt class="py-op">,</tt> <tt class="py-name">key</tt><tt class="py-op">)</tt> </tt>
-<a name="L451"></a><tt class="py-lineno">451</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L452"></a><tt class="py-lineno">452</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt id="link-107" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-107', 'SSHException', 'link-19');">SSHException</a></tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L453"></a><tt class="py-lineno">453</tt> <tt class="py-line"> <tt class="py-name">saved_exception</tt> <tt class="py-op">=</tt> <tt class="py-name">e</tt> </tt>
-<a name="L454"></a><tt class="py-lineno">454</tt> <tt class="py-line"> </tt>
-<a name="L455"></a><tt class="py-lineno">455</tt> <tt class="py-line"> <tt class="py-name">keyfiles</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L456"></a><tt class="py-lineno">456</tt> <tt class="py-line"> <tt class="py-name">rsa_key</tt> <tt class="py-op">=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">path</tt><tt class="py-op">.</tt><tt class="py-name">expanduser</tt><tt class="py-op">(</tt><tt class="py-string">'~/.ssh/id_rsa'</tt><tt class="py-op">)</tt> </tt>
-<a name="L457"></a><tt class="py-lineno">457</tt> <tt class="py-line"> <tt class="py-name">dsa_key</tt> <tt class="py-op">=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">path</tt><tt class="py-op">.</tt><tt class="py-name">expanduser</tt><tt class="py-op">(</tt><tt class="py-string">'~/.ssh/id_dsa'</tt><tt class="py-op">)</tt> </tt>
-<a name="L458"></a><tt class="py-lineno">458</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">path</tt><tt class="py-op">.</tt><tt class="py-name">isfile</tt><tt class="py-op">(</tt><tt class="py-name">rsa_key</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L459"></a><tt class="py-lineno">459</tt> <tt class="py-line"> <tt class="py-name">keyfiles</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt id="link-108" class="py-name"><a title="paramiko.RSAKey" class="py-name" href="#" onclick="return doclink('link-108', 'RSAKey', 'link-16');">RSAKey</a></tt><tt class="py-op">,</tt> <tt class="py-name">rsa_key</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L460"></a><tt class="py-lineno">460</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">path</tt><tt class="py-op">.</tt><tt class="py-name">isfile</tt><tt class="py-op">(</tt><tt class="py-name">dsa_key</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L461"></a><tt class="py-lineno">461</tt> <tt class="py-line"> <tt class="py-name">keyfiles</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt id="link-109" class="py-name"><a title="paramiko.DSSKey" class="py-name" href="#" onclick="return doclink('link-109', 'DSSKey', 'link-7');">DSSKey</a></tt><tt class="py-op">,</tt> <tt class="py-name">dsa_key</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L462"></a><tt class="py-lineno">462</tt> <tt class="py-line"> <tt class="py-comment"># look in ~/ssh/ for windows users:</tt> </tt>
-<a name="L463"></a><tt class="py-lineno">463</tt> <tt class="py-line"> <tt class="py-name">rsa_key</tt> <tt class="py-op">=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">path</tt><tt class="py-op">.</tt><tt class="py-name">expanduser</tt><tt class="py-op">(</tt><tt class="py-string">'~/ssh/id_rsa'</tt><tt class="py-op">)</tt> </tt>
-<a name="L464"></a><tt class="py-lineno">464</tt> <tt class="py-line"> <tt class="py-name">dsa_key</tt> <tt class="py-op">=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">path</tt><tt class="py-op">.</tt><tt class="py-name">expanduser</tt><tt class="py-op">(</tt><tt class="py-string">'~/ssh/id_dsa'</tt><tt class="py-op">)</tt> </tt>
-<a name="L465"></a><tt class="py-lineno">465</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">path</tt><tt class="py-op">.</tt><tt class="py-name">isfile</tt><tt class="py-op">(</tt><tt class="py-name">rsa_key</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L466"></a><tt class="py-lineno">466</tt> <tt class="py-line"> <tt class="py-name">keyfiles</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt id="link-110" class="py-name"><a title="paramiko.RSAKey" class="py-name" href="#" onclick="return doclink('link-110', 'RSAKey', 'link-16');">RSAKey</a></tt><tt class="py-op">,</tt> <tt class="py-name">rsa_key</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L467"></a><tt class="py-lineno">467</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">path</tt><tt class="py-op">.</tt><tt class="py-name">isfile</tt><tt class="py-op">(</tt><tt class="py-name">dsa_key</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L468"></a><tt class="py-lineno">468</tt> <tt class="py-line"> <tt class="py-name">keyfiles</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt id="link-111" class="py-name"><a title="paramiko.DSSKey" class="py-name" href="#" onclick="return doclink('link-111', 'DSSKey', 'link-7');">DSSKey</a></tt><tt class="py-op">,</tt> <tt class="py-name">dsa_key</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L469"></a><tt class="py-lineno">469</tt> <tt class="py-line"> </tt>
-<a name="L470"></a><tt class="py-lineno">470</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">look_for_keys</tt><tt class="py-op">:</tt> </tt>
-<a name="L471"></a><tt class="py-lineno">471</tt> <tt class="py-line"> <tt class="py-name">keyfiles</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L472"></a><tt class="py-lineno">472</tt> <tt class="py-line"> </tt>
-<a name="L473"></a><tt class="py-lineno">473</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">pkey_class</tt><tt class="py-op">,</tt> <tt class="py-name">filename</tt> <tt class="py-keyword">in</tt> <tt class="py-name">keyfiles</tt><tt class="py-op">:</tt> </tt>
-<a name="L474"></a><tt class="py-lineno">474</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L475"></a><tt class="py-lineno">475</tt> <tt class="py-line"> <tt class="py-name">key</tt> <tt class="py-op">=</tt> <tt class="py-name">pkey_class</tt><tt class="py-op">.</tt><tt id="link-112" class="py-name"><a title="paramiko.PKey.from_private_key_file" class="py-name" href="#" onclick="return doclink('link-112', 'from_private_key_file', 'link-97');">from_private_key_file</a></tt><tt class="py-op">(</tt><tt class="py-name">filename</tt><tt class="py-op">,</tt> <tt class="py-name">password</tt><tt class="py-op">)</tt> </tt>
-<a name="L476"></a><tt class="py-lineno">476</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-113" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-113', 'DEBUG', 'link-33');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Trying discovered key %s in %s'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">hexlify</tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">.</tt><tt id="link-114" class="py-name"><a title="paramiko.PKey.get_fingerprint" class="py-name" href="#" onclick="return doclink('link-114', 'get_fingerprint', 'link-35');">get_fingerprint</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">filename</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L477"></a><tt class="py-lineno">477</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_transport</tt><tt class="py-op">.</tt><tt id="link-115" class="py-name"><a title="paramiko.Transport.auth_publickey" class="py-name" href="#" onclick="return doclink('link-115', 'auth_publickey', 'link-92');">auth_publickey</a></tt><tt class="py-op">(</tt><tt class="py-name">username</tt><tt class="py-op">,</tt> <tt class="py-name">key</tt><tt class="py-op">)</tt> </tt>
-<a name="L478"></a><tt class="py-lineno">478</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L479"></a><tt class="py-lineno">479</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt id="link-116" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-116', 'SSHException', 'link-19');">SSHException</a></tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L480"></a><tt class="py-lineno">480</tt> <tt class="py-line"> <tt class="py-name">saved_exception</tt> <tt class="py-op">=</tt> <tt class="py-name">e</tt> </tt>
-<a name="L481"></a><tt class="py-lineno">481</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">IOError</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L482"></a><tt class="py-lineno">482</tt> <tt class="py-line"> <tt class="py-name">saved_exception</tt> <tt class="py-op">=</tt> <tt class="py-name">e</tt> </tt>
-<a name="L483"></a><tt class="py-lineno">483</tt> <tt class="py-line"> </tt>
-<a name="L484"></a><tt class="py-lineno">484</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">password</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L485"></a><tt class="py-lineno">485</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L486"></a><tt class="py-lineno">486</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_transport</tt><tt class="py-op">.</tt><tt id="link-117" class="py-name" targets="Method paramiko.Transport.auth_password()=paramiko.Transport-class.html#auth_password"><a title="paramiko.Transport.auth_password" class="py-name" href="#" onclick="return doclink('link-117', 'auth_password', 'link-117');">auth_password</a></tt><tt class="py-op">(</tt><tt class="py-name">username</tt><tt class="py-op">,</tt> <tt class="py-name">password</tt><tt class="py-op">)</tt> </tt>
-<a name="L487"></a><tt class="py-lineno">487</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L488"></a><tt class="py-lineno">488</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt id="link-118" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-118', 'SSHException', 'link-19');">SSHException</a></tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L489"></a><tt class="py-lineno">489</tt> <tt class="py-line"> <tt class="py-name">saved_exception</tt> <tt class="py-op">=</tt> <tt class="py-name">e</tt> </tt>
-<a name="L490"></a><tt class="py-lineno">490</tt> <tt class="py-line"> </tt>
-<a name="L491"></a><tt class="py-lineno">491</tt> <tt class="py-line"> <tt class="py-comment"># if we got an auth-failed exception earlier, re-raise it</tt> </tt>
-<a name="L492"></a><tt class="py-lineno">492</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">saved_exception</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L493"></a><tt class="py-lineno">493</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">saved_exception</tt> </tt>
-<a name="L494"></a><tt class="py-lineno">494</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-119" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-119', 'SSHException', 'link-19');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'No authentication methods available'</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L495"></a><tt class="py-lineno">495</tt> <tt class="py-line"> </tt>
-<a name="SSHClient._log"></a><div id="SSHClient._log-def"><a name="L496"></a><tt class="py-lineno">496</tt> <a class="py-toggle" href="#" id="SSHClient._log-toggle" onclick="return toggle('SSHClient._log');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.client.SSHClient-class.html#_log">_log</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">level</tt><tt class="py-op">,</tt> <tt class="py-param">msg</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SSHClient._log-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SSHClient._log-expanded"><a name="L497"></a><tt class="py-lineno">497</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_transport</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt class="py-name">level</tt><tt class="py-op">,</tt> <tt class="py-name">msg</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L498"></a><tt class="py-lineno">498</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:04 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.common-module.html b/docs/paramiko.common-module.html
deleted file mode 100644
index 9b48688..0000000
--- a/docs/paramiko.common-module.html
+++ /dev/null
@@ -1,531 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.common</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;common
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.common-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module common</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.common-pysrc.html">source&nbsp;code</a></span></p>
-<p>Common constants and global variables.</p>
-
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_PK_OK"></a><span class="summary-name">MSG_USERAUTH_PK_OK</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.common-module.html#MSG_NAMES" class="summary-name">MSG_NAMES</a> = <code title="{1: 'disconnect',
- 2: 'ignore',
- 3: 'unimplemented',
- 4: 'debug',
- 5: 'service-request',
- 6: 'service-accept',
- 20: 'kexinit',
- 21: 'newkeys',
-..."><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">, </code>3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.common-module.html#CONNECTION_FAILED_CODE" class="summary-name">CONNECTION_FAILED_CODE</a> = <code title="{1: 'Administratively prohibited',
- 2: 'Connect failed',
- 3: 'Unknown channel type',
- 4: 'Resource shortage'}"><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">:</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="rng"></a><span class="summary-name">rng</span> = <code title="Random.new()">Random.new()</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="PY22"></a><span class="summary-name">PY22</span> = <code title="False">False</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DEBUG"></a><span class="summary-name">DEBUG</span> = <code title="10">10</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="INFO"></a><span class="summary-name">INFO</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="WARNING"></a><span class="summary-name">WARNING</span> = <code title="30">30</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="ERROR"></a><span class="summary-name">ERROR</span> = <code title="40">40</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CRITICAL"></a><span class="summary-name">CRITICAL</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_FAILED"></a><span class="summary-name">AUTH_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_PARTIALLY_SUCCESSFUL"></a><span class="summary-name">AUTH_PARTIALLY_SUCCESSFUL</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_SUCCESSFUL"></a><span class="summary-name">AUTH_SUCCESSFUL</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_AUTH_CANCELLED_BY_USER"></a><span class="summary-name">DISCONNECT_AUTH_CANCELLED_BY_USER</span> = <code title="13">13</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE"></a><span class="summary-name">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</span> = <code title="14">14</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_SERVICE_NOT_AVAILABLE"></a><span class="summary-name">DISCONNECT_SERVICE_NOT_AVAILABLE</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_CLOSE"></a><span class="summary-name">MSG_CHANNEL_CLOSE</span> = <code title="97">97</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_DATA"></a><span class="summary-name">MSG_CHANNEL_DATA</span> = <code title="94">94</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EOF"></a><span class="summary-name">MSG_CHANNEL_EOF</span> = <code title="96">96</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EXTENDED_DATA"></a><span class="summary-name">MSG_CHANNEL_EXTENDED_DATA</span> = <code title="95">95</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_FAILURE"></a><span class="summary-name">MSG_CHANNEL_FAILURE</span> = <code title="100">100</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN"></a><span class="summary-name">MSG_CHANNEL_OPEN</span> = <code title="90">90</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_FAILURE"></a><span class="summary-name">MSG_CHANNEL_OPEN_FAILURE</span> = <code title="92">92</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_OPEN_SUCCESS</span> = <code title="91">91</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_REQUEST"></a><span class="summary-name">MSG_CHANNEL_REQUEST</span> = <code title="98">98</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_SUCCESS</span> = <code title="99">99</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_WINDOW_ADJUST"></a><span class="summary-name">MSG_CHANNEL_WINDOW_ADJUST</span> = <code title="93">93</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DEBUG"></a><span class="summary-name">MSG_DEBUG</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DISCONNECT"></a><span class="summary-name">MSG_DISCONNECT</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_GLOBAL_REQUEST"></a><span class="summary-name">MSG_GLOBAL_REQUEST</span> = <code title="80">80</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_IGNORE"></a><span class="summary-name">MSG_IGNORE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_KEXINIT"></a><span class="summary-name">MSG_KEXINIT</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_NEWKEYS"></a><span class="summary-name">MSG_NEWKEYS</span> = <code title="21">21</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_FAILURE"></a><span class="summary-name">MSG_REQUEST_FAILURE</span> = <code title="82">82</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_SUCCESS"></a><span class="summary-name">MSG_REQUEST_SUCCESS</span> = <code title="81">81</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_ACCEPT"></a><span class="summary-name">MSG_SERVICE_ACCEPT</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_REQUEST"></a><span class="summary-name">MSG_SERVICE_REQUEST</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_UNIMPLEMENTED"></a><span class="summary-name">MSG_UNIMPLEMENTED</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_BANNER"></a><span class="summary-name">MSG_USERAUTH_BANNER</span> = <code title="53">53</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_FAILURE"></a><span class="summary-name">MSG_USERAUTH_FAILURE</span> = <code title="51">51</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_REQUEST"></a><span class="summary-name">MSG_USERAUTH_INFO_REQUEST</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_RESPONSE"></a><span class="summary-name">MSG_USERAUTH_INFO_RESPONSE</span> = <code title="61">61</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_REQUEST"></a><span class="summary-name">MSG_USERAUTH_REQUEST</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_SUCCESS"></a><span class="summary-name">MSG_USERAUTH_SUCCESS</span> = <code title="52">52</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED"></a><span class="summary-name">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_CONNECT_FAILED"></a><span class="summary-name">OPEN_FAILED_CONNECT_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_RESOURCE_SHORTAGE"></a><span class="summary-name">OPEN_FAILED_RESOURCE_SHORTAGE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_UNKNOWN_CHANNEL_TYPE"></a><span class="summary-name">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_SUCCEEDED"></a><span class="summary-name">OPEN_SUCCEEDED</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'paramiko'"><code class="variable-quote">'</code><code class="variable-string">paramiko</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES DETAILS ==================== -->
-<a name="section-VariablesDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables Details</span></td>
-</tr>
-</table>
-<a name="MSG_NAMES"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">MSG_NAMES</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">debug</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 5<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-request</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 6<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-accept</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 20<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">kexinit</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 21<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">newkeys</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="CONNECTION_FAILED_CODE"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">CONNECTION_FAILED_CODE</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Connect failed</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Unknown channel type</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Resource shortage</code><code class="variable-quote">'</code><code class="variable-group">}</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:02 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.common-pysrc.html b/docs/paramiko.common-pysrc.html
deleted file mode 100644
index 92e998f..0000000
--- a/docs/paramiko.common-pysrc.html
+++ /dev/null
@@ -1,1905 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.common</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;common
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.common-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.common-module.html" onclick="show_private();">Module paramiko.common</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2003-2007 Robey Pointer &lt;robeypointer@gmail.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring">Common constants and global variables.</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt id="link-0" class="py-name" targets="Variable paramiko.auth_handler.MSG_DISCONNECT=paramiko.auth_handler-module.html#MSG_DISCONNECT,Variable paramiko.channel.MSG_DISCONNECT=paramiko.channel-module.html#MSG_DISCONNECT,Variable paramiko.client.MSG_DISCONNECT=paramiko.client-module.html#MSG_DISCONNECT,Variable paramiko.common.MSG_DISCONNECT=paramiko.common-module.html#MSG_DISCONNECT,Variable paramiko.dsskey.MSG_DISCONNECT=paramiko.dsskey-module.html#MSG_DISCONNECT,Variable paramiko.hostkeys.MSG_DISCONNECT=paramiko.hostkeys-module.html#MSG_DISCONNECT,Variable paramiko.kex_gex.MSG_DISCONNECT=paramiko.kex_gex-module.html#MSG_DISCONNECT,Variable paramiko.kex_group1.MSG_DISCONNECT=paramiko.kex_group1-module.html#MSG_DISCONNECT,Variable paramiko.packet.MSG_DISCONNECT=paramiko.packet-module.html#MSG_DISCONNECT,Variable paramiko.pkey.MSG_DISCONNECT=paramiko.pkey-module.html#MSG_DISCONNECT,Variable paramiko.rsakey.MSG_DISCONNECT=paramiko.rsakey-module.html#MSG_DISCONNECT,Variable paramiko.server.MSG_DISCONNECT=paramiko.server-module.html#MSG_DISCONNECT,Variable paramiko.sftp.MSG_DISCONNECT=paramiko.sftp-module.html#MSG_DISCONNECT,Variable paramiko.sftp_attr.MSG_DISCONNECT=paramiko.sftp_attr-module.html#MSG_DISCONNECT,Variable paramiko.sftp_client.MSG_DISCONNECT=paramiko.sftp_client-module.html#MSG_DISCONNECT,Variable paramiko.sftp_file.MSG_DISCONNECT=paramiko.sftp_file-module.html#MSG_DISCONNECT,Variable paramiko.sftp_handle.MSG_DISCONNECT=paramiko.sftp_handle-module.html#MSG_DISCONNECT,Variable paramiko.sftp_server.MSG_DISCONNECT=paramiko.sftp_server-module.html#MSG_DISCONNECT,Variable paramiko.sftp_si.MSG_DISCONNECT=paramiko.sftp_si-module.html#MSG_DISCONNECT,Variable paramiko.transport.MSG_DISCONNECT=paramiko.transport-module.html#MSG_DISCONNECT,Variable paramiko.util.MSG_DISCONNECT=paramiko.util-module.html#MSG_DISCONNECT"><a title="paramiko.auth_handler.MSG_DISCONNECT
-paramiko.channel.MSG_DISCONNECT
-paramiko.client.MSG_DISCONNECT
-paramiko.common.MSG_DISCONNECT
-paramiko.dsskey.MSG_DISCONNECT
-paramiko.hostkeys.MSG_DISCONNECT
-paramiko.kex_gex.MSG_DISCONNECT
-paramiko.kex_group1.MSG_DISCONNECT
-paramiko.packet.MSG_DISCONNECT
-paramiko.pkey.MSG_DISCONNECT
-paramiko.rsakey.MSG_DISCONNECT
-paramiko.server.MSG_DISCONNECT
-paramiko.sftp.MSG_DISCONNECT
-paramiko.sftp_attr.MSG_DISCONNECT
-paramiko.sftp_client.MSG_DISCONNECT
-paramiko.sftp_file.MSG_DISCONNECT
-paramiko.sftp_handle.MSG_DISCONNECT
-paramiko.sftp_server.MSG_DISCONNECT
-paramiko.sftp_si.MSG_DISCONNECT
-paramiko.transport.MSG_DISCONNECT
-paramiko.util.MSG_DISCONNECT" class="py-name" href="#" onclick="return doclink('link-0', 'MSG_DISCONNECT', 'link-0');">MSG_DISCONNECT</a></tt><tt class="py-op">,</tt> <tt id="link-1" class="py-name" targets="Variable paramiko.auth_handler.MSG_IGNORE=paramiko.auth_handler-module.html#MSG_IGNORE,Variable paramiko.channel.MSG_IGNORE=paramiko.channel-module.html#MSG_IGNORE,Variable paramiko.client.MSG_IGNORE=paramiko.client-module.html#MSG_IGNORE,Variable paramiko.common.MSG_IGNORE=paramiko.common-module.html#MSG_IGNORE,Variable paramiko.dsskey.MSG_IGNORE=paramiko.dsskey-module.html#MSG_IGNORE,Variable paramiko.hostkeys.MSG_IGNORE=paramiko.hostkeys-module.html#MSG_IGNORE,Variable paramiko.kex_gex.MSG_IGNORE=paramiko.kex_gex-module.html#MSG_IGNORE,Variable paramiko.kex_group1.MSG_IGNORE=paramiko.kex_group1-module.html#MSG_IGNORE,Variable paramiko.packet.MSG_IGNORE=paramiko.packet-module.html#MSG_IGNORE,Variable paramiko.pkey.MSG_IGNORE=paramiko.pkey-module.html#MSG_IGNORE,Variable paramiko.rsakey.MSG_IGNORE=paramiko.rsakey-module.html#MSG_IGNORE,Variable paramiko.server.MSG_IGNORE=paramiko.server-module.html#MSG_IGNORE,Variable paramiko.sftp.MSG_IGNORE=paramiko.sftp-module.html#MSG_IGNORE,Variable paramiko.sftp_attr.MSG_IGNORE=paramiko.sftp_attr-module.html#MSG_IGNORE,Variable paramiko.sftp_client.MSG_IGNORE=paramiko.sftp_client-module.html#MSG_IGNORE,Variable paramiko.sftp_file.MSG_IGNORE=paramiko.sftp_file-module.html#MSG_IGNORE,Variable paramiko.sftp_handle.MSG_IGNORE=paramiko.sftp_handle-module.html#MSG_IGNORE,Variable paramiko.sftp_server.MSG_IGNORE=paramiko.sftp_server-module.html#MSG_IGNORE,Variable paramiko.sftp_si.MSG_IGNORE=paramiko.sftp_si-module.html#MSG_IGNORE,Variable paramiko.transport.MSG_IGNORE=paramiko.transport-module.html#MSG_IGNORE,Variable paramiko.util.MSG_IGNORE=paramiko.util-module.html#MSG_IGNORE"><a title="paramiko.auth_handler.MSG_IGNORE
-paramiko.channel.MSG_IGNORE
-paramiko.client.MSG_IGNORE
-paramiko.common.MSG_IGNORE
-paramiko.dsskey.MSG_IGNORE
-paramiko.hostkeys.MSG_IGNORE
-paramiko.kex_gex.MSG_IGNORE
-paramiko.kex_group1.MSG_IGNORE
-paramiko.packet.MSG_IGNORE
-paramiko.pkey.MSG_IGNORE
-paramiko.rsakey.MSG_IGNORE
-paramiko.server.MSG_IGNORE
-paramiko.sftp.MSG_IGNORE
-paramiko.sftp_attr.MSG_IGNORE
-paramiko.sftp_client.MSG_IGNORE
-paramiko.sftp_file.MSG_IGNORE
-paramiko.sftp_handle.MSG_IGNORE
-paramiko.sftp_server.MSG_IGNORE
-paramiko.sftp_si.MSG_IGNORE
-paramiko.transport.MSG_IGNORE
-paramiko.util.MSG_IGNORE" class="py-name" href="#" onclick="return doclink('link-1', 'MSG_IGNORE', 'link-1');">MSG_IGNORE</a></tt><tt class="py-op">,</tt> <tt id="link-2" class="py-name" targets="Variable paramiko.auth_handler.MSG_UNIMPLEMENTED=paramiko.auth_handler-module.html#MSG_UNIMPLEMENTED,Variable paramiko.channel.MSG_UNIMPLEMENTED=paramiko.channel-module.html#MSG_UNIMPLEMENTED,Variable paramiko.client.MSG_UNIMPLEMENTED=paramiko.client-module.html#MSG_UNIMPLEMENTED,Variable paramiko.common.MSG_UNIMPLEMENTED=paramiko.common-module.html#MSG_UNIMPLEMENTED,Variable paramiko.dsskey.MSG_UNIMPLEMENTED=paramiko.dsskey-module.html#MSG_UNIMPLEMENTED,Variable paramiko.hostkeys.MSG_UNIMPLEMENTED=paramiko.hostkeys-module.html#MSG_UNIMPLEMENTED,Variable paramiko.kex_gex.MSG_UNIMPLEMENTED=paramiko.kex_gex-module.html#MSG_UNIMPLEMENTED,Variable paramiko.kex_group1.MSG_UNIMPLEMENTED=paramiko.kex_group1-module.html#MSG_UNIMPLEMENTED,Variable paramiko.packet.MSG_UNIMPLEMENTED=paramiko.packet-module.html#MSG_UNIMPLEMENTED,Variable paramiko.pkey.MSG_UNIMPLEMENTED=paramiko.pkey-module.html#MSG_UNIMPLEMENTED,Variable paramiko.rsakey.MSG_UNIMPLEMENTED=paramiko.rsakey-module.html#MSG_UNIMPLEMENTED,Variable paramiko.server.MSG_UNIMPLEMENTED=paramiko.server-module.html#MSG_UNIMPLEMENTED,Variable paramiko.sftp.MSG_UNIMPLEMENTED=paramiko.sftp-module.html#MSG_UNIMPLEMENTED,Variable paramiko.sftp_attr.MSG_UNIMPLEMENTED=paramiko.sftp_attr-module.html#MSG_UNIMPLEMENTED,Variable paramiko.sftp_client.MSG_UNIMPLEMENTED=paramiko.sftp_client-module.html#MSG_UNIMPLEMENTED,Variable paramiko.sftp_file.MSG_UNIMPLEMENTED=paramiko.sftp_file-module.html#MSG_UNIMPLEMENTED,Variable paramiko.sftp_handle.MSG_UNIMPLEMENTED=paramiko.sftp_handle-module.html#MSG_UNIMPLEMENTED,Variable paramiko.sftp_server.MSG_UNIMPLEMENTED=paramiko.sftp_server-module.html#MSG_UNIMPLEMENTED,Variable paramiko.sftp_si.MSG_UNIMPLEMENTED=paramiko.sftp_si-module.html#MSG_UNIMPLEMENTED,Variable paramiko.transport.MSG_UNIMPLEMENTED=paramiko.transport-module.html#MSG_UNIMPLEMENTED,Variable paramiko.util.MSG_UNIMPLEMENTED=paramiko.util-module.html#MSG_UNIMPLEMENTED"><a title="paramiko.auth_handler.MSG_UNIMPLEMENTED
-paramiko.channel.MSG_UNIMPLEMENTED
-paramiko.client.MSG_UNIMPLEMENTED
-paramiko.common.MSG_UNIMPLEMENTED
-paramiko.dsskey.MSG_UNIMPLEMENTED
-paramiko.hostkeys.MSG_UNIMPLEMENTED
-paramiko.kex_gex.MSG_UNIMPLEMENTED
-paramiko.kex_group1.MSG_UNIMPLEMENTED
-paramiko.packet.MSG_UNIMPLEMENTED
-paramiko.pkey.MSG_UNIMPLEMENTED
-paramiko.rsakey.MSG_UNIMPLEMENTED
-paramiko.server.MSG_UNIMPLEMENTED
-paramiko.sftp.MSG_UNIMPLEMENTED
-paramiko.sftp_attr.MSG_UNIMPLEMENTED
-paramiko.sftp_client.MSG_UNIMPLEMENTED
-paramiko.sftp_file.MSG_UNIMPLEMENTED
-paramiko.sftp_handle.MSG_UNIMPLEMENTED
-paramiko.sftp_server.MSG_UNIMPLEMENTED
-paramiko.sftp_si.MSG_UNIMPLEMENTED
-paramiko.transport.MSG_UNIMPLEMENTED
-paramiko.util.MSG_UNIMPLEMENTED" class="py-name" href="#" onclick="return doclink('link-2', 'MSG_UNIMPLEMENTED', 'link-2');">MSG_UNIMPLEMENTED</a></tt><tt class="py-op">,</tt> <tt id="link-3" class="py-name" targets="Variable paramiko.auth_handler.MSG_DEBUG=paramiko.auth_handler-module.html#MSG_DEBUG,Variable paramiko.channel.MSG_DEBUG=paramiko.channel-module.html#MSG_DEBUG,Variable paramiko.client.MSG_DEBUG=paramiko.client-module.html#MSG_DEBUG,Variable paramiko.common.MSG_DEBUG=paramiko.common-module.html#MSG_DEBUG,Variable paramiko.dsskey.MSG_DEBUG=paramiko.dsskey-module.html#MSG_DEBUG,Variable paramiko.hostkeys.MSG_DEBUG=paramiko.hostkeys-module.html#MSG_DEBUG,Variable paramiko.kex_gex.MSG_DEBUG=paramiko.kex_gex-module.html#MSG_DEBUG,Variable paramiko.kex_group1.MSG_DEBUG=paramiko.kex_group1-module.html#MSG_DEBUG,Variable paramiko.packet.MSG_DEBUG=paramiko.packet-module.html#MSG_DEBUG,Variable paramiko.pkey.MSG_DEBUG=paramiko.pkey-module.html#MSG_DEBUG,Variable paramiko.rsakey.MSG_DEBUG=paramiko.rsakey-module.html#MSG_DEBUG,Variable paramiko.server.MSG_DEBUG=paramiko.server-module.html#MSG_DEBUG,Variable paramiko.sftp.MSG_DEBUG=paramiko.sftp-module.html#MSG_DEBUG,Variable paramiko.sftp_attr.MSG_DEBUG=paramiko.sftp_attr-module.html#MSG_DEBUG,Variable paramiko.sftp_client.MSG_DEBUG=paramiko.sftp_client-module.html#MSG_DEBUG,Variable paramiko.sftp_file.MSG_DEBUG=paramiko.sftp_file-module.html#MSG_DEBUG,Variable paramiko.sftp_handle.MSG_DEBUG=paramiko.sftp_handle-module.html#MSG_DEBUG,Variable paramiko.sftp_server.MSG_DEBUG=paramiko.sftp_server-module.html#MSG_DEBUG,Variable paramiko.sftp_si.MSG_DEBUG=paramiko.sftp_si-module.html#MSG_DEBUG,Variable paramiko.transport.MSG_DEBUG=paramiko.transport-module.html#MSG_DEBUG,Variable paramiko.util.MSG_DEBUG=paramiko.util-module.html#MSG_DEBUG"><a title="paramiko.auth_handler.MSG_DEBUG
-paramiko.channel.MSG_DEBUG
-paramiko.client.MSG_DEBUG
-paramiko.common.MSG_DEBUG
-paramiko.dsskey.MSG_DEBUG
-paramiko.hostkeys.MSG_DEBUG
-paramiko.kex_gex.MSG_DEBUG
-paramiko.kex_group1.MSG_DEBUG
-paramiko.packet.MSG_DEBUG
-paramiko.pkey.MSG_DEBUG
-paramiko.rsakey.MSG_DEBUG
-paramiko.server.MSG_DEBUG
-paramiko.sftp.MSG_DEBUG
-paramiko.sftp_attr.MSG_DEBUG
-paramiko.sftp_client.MSG_DEBUG
-paramiko.sftp_file.MSG_DEBUG
-paramiko.sftp_handle.MSG_DEBUG
-paramiko.sftp_server.MSG_DEBUG
-paramiko.sftp_si.MSG_DEBUG
-paramiko.transport.MSG_DEBUG
-paramiko.util.MSG_DEBUG" class="py-name" href="#" onclick="return doclink('link-3', 'MSG_DEBUG', 'link-3');">MSG_DEBUG</a></tt><tt class="py-op">,</tt> <tt id="link-4" class="py-name" targets="Variable paramiko.auth_handler.MSG_SERVICE_REQUEST=paramiko.auth_handler-module.html#MSG_SERVICE_REQUEST,Variable paramiko.channel.MSG_SERVICE_REQUEST=paramiko.channel-module.html#MSG_SERVICE_REQUEST,Variable paramiko.client.MSG_SERVICE_REQUEST=paramiko.client-module.html#MSG_SERVICE_REQUEST,Variable paramiko.common.MSG_SERVICE_REQUEST=paramiko.common-module.html#MSG_SERVICE_REQUEST,Variable paramiko.dsskey.MSG_SERVICE_REQUEST=paramiko.dsskey-module.html#MSG_SERVICE_REQUEST,Variable paramiko.hostkeys.MSG_SERVICE_REQUEST=paramiko.hostkeys-module.html#MSG_SERVICE_REQUEST,Variable paramiko.kex_gex.MSG_SERVICE_REQUEST=paramiko.kex_gex-module.html#MSG_SERVICE_REQUEST,Variable paramiko.kex_group1.MSG_SERVICE_REQUEST=paramiko.kex_group1-module.html#MSG_SERVICE_REQUEST,Variable paramiko.packet.MSG_SERVICE_REQUEST=paramiko.packet-module.html#MSG_SERVICE_REQUEST,Variable paramiko.pkey.MSG_SERVICE_REQUEST=paramiko.pkey-module.html#MSG_SERVICE_REQUEST,Variable paramiko.rsakey.MSG_SERVICE_REQUEST=paramiko.rsakey-module.html#MSG_SERVICE_REQUEST,Variable paramiko.server.MSG_SERVICE_REQUEST=paramiko.server-module.html#MSG_SERVICE_REQUEST,Variable paramiko.sftp.MSG_SERVICE_REQUEST=paramiko.sftp-module.html#MSG_SERVICE_REQUEST,Variable paramiko.sftp_attr.MSG_SERVICE_REQUEST=paramiko.sftp_attr-module.html#MSG_SERVICE_REQUEST,Variable paramiko.sftp_client.MSG_SERVICE_REQUEST=paramiko.sftp_client-module.html#MSG_SERVICE_REQUEST,Variable paramiko.sftp_file.MSG_SERVICE_REQUEST=paramiko.sftp_file-module.html#MSG_SERVICE_REQUEST,Variable paramiko.sftp_handle.MSG_SERVICE_REQUEST=paramiko.sftp_handle-module.html#MSG_SERVICE_REQUEST,Variable paramiko.sftp_server.MSG_SERVICE_REQUEST=paramiko.sftp_server-module.html#MSG_SERVICE_REQUEST,Variable paramiko.sftp_si.MSG_SERVICE_REQUEST=paramiko.sftp_si-module.html#MSG_SERVICE_REQUEST,Variable paramiko.transport.MSG_SERVICE_REQUEST=paramiko.transport-module.html#MSG_SERVICE_REQUEST,Variable paramiko.util.MSG_SERVICE_REQUEST=paramiko.util-module.html#MSG_SERVICE_REQUEST"><a title="paramiko.auth_handler.MSG_SERVICE_REQUEST
-paramiko.channel.MSG_SERVICE_REQUEST
-paramiko.client.MSG_SERVICE_REQUEST
-paramiko.common.MSG_SERVICE_REQUEST
-paramiko.dsskey.MSG_SERVICE_REQUEST
-paramiko.hostkeys.MSG_SERVICE_REQUEST
-paramiko.kex_gex.MSG_SERVICE_REQUEST
-paramiko.kex_group1.MSG_SERVICE_REQUEST
-paramiko.packet.MSG_SERVICE_REQUEST
-paramiko.pkey.MSG_SERVICE_REQUEST
-paramiko.rsakey.MSG_SERVICE_REQUEST
-paramiko.server.MSG_SERVICE_REQUEST
-paramiko.sftp.MSG_SERVICE_REQUEST
-paramiko.sftp_attr.MSG_SERVICE_REQUEST
-paramiko.sftp_client.MSG_SERVICE_REQUEST
-paramiko.sftp_file.MSG_SERVICE_REQUEST
-paramiko.sftp_handle.MSG_SERVICE_REQUEST
-paramiko.sftp_server.MSG_SERVICE_REQUEST
-paramiko.sftp_si.MSG_SERVICE_REQUEST
-paramiko.transport.MSG_SERVICE_REQUEST
-paramiko.util.MSG_SERVICE_REQUEST" class="py-name" href="#" onclick="return doclink('link-4', 'MSG_SERVICE_REQUEST', 'link-4');">MSG_SERVICE_REQUEST</a></tt><tt class="py-op">,</tt> \ </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"> <tt id="link-5" class="py-name" targets="Variable paramiko.auth_handler.MSG_SERVICE_ACCEPT=paramiko.auth_handler-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.channel.MSG_SERVICE_ACCEPT=paramiko.channel-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.client.MSG_SERVICE_ACCEPT=paramiko.client-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.common.MSG_SERVICE_ACCEPT=paramiko.common-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.dsskey.MSG_SERVICE_ACCEPT=paramiko.dsskey-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.hostkeys.MSG_SERVICE_ACCEPT=paramiko.hostkeys-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.kex_gex.MSG_SERVICE_ACCEPT=paramiko.kex_gex-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.kex_group1.MSG_SERVICE_ACCEPT=paramiko.kex_group1-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.packet.MSG_SERVICE_ACCEPT=paramiko.packet-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.pkey.MSG_SERVICE_ACCEPT=paramiko.pkey-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.rsakey.MSG_SERVICE_ACCEPT=paramiko.rsakey-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.server.MSG_SERVICE_ACCEPT=paramiko.server-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.sftp.MSG_SERVICE_ACCEPT=paramiko.sftp-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.sftp_attr.MSG_SERVICE_ACCEPT=paramiko.sftp_attr-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.sftp_client.MSG_SERVICE_ACCEPT=paramiko.sftp_client-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.sftp_file.MSG_SERVICE_ACCEPT=paramiko.sftp_file-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.sftp_handle.MSG_SERVICE_ACCEPT=paramiko.sftp_handle-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.sftp_server.MSG_SERVICE_ACCEPT=paramiko.sftp_server-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.sftp_si.MSG_SERVICE_ACCEPT=paramiko.sftp_si-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.transport.MSG_SERVICE_ACCEPT=paramiko.transport-module.html#MSG_SERVICE_ACCEPT,Variable paramiko.util.MSG_SERVICE_ACCEPT=paramiko.util-module.html#MSG_SERVICE_ACCEPT"><a title="paramiko.auth_handler.MSG_SERVICE_ACCEPT
-paramiko.channel.MSG_SERVICE_ACCEPT
-paramiko.client.MSG_SERVICE_ACCEPT
-paramiko.common.MSG_SERVICE_ACCEPT
-paramiko.dsskey.MSG_SERVICE_ACCEPT
-paramiko.hostkeys.MSG_SERVICE_ACCEPT
-paramiko.kex_gex.MSG_SERVICE_ACCEPT
-paramiko.kex_group1.MSG_SERVICE_ACCEPT
-paramiko.packet.MSG_SERVICE_ACCEPT
-paramiko.pkey.MSG_SERVICE_ACCEPT
-paramiko.rsakey.MSG_SERVICE_ACCEPT
-paramiko.server.MSG_SERVICE_ACCEPT
-paramiko.sftp.MSG_SERVICE_ACCEPT
-paramiko.sftp_attr.MSG_SERVICE_ACCEPT
-paramiko.sftp_client.MSG_SERVICE_ACCEPT
-paramiko.sftp_file.MSG_SERVICE_ACCEPT
-paramiko.sftp_handle.MSG_SERVICE_ACCEPT
-paramiko.sftp_server.MSG_SERVICE_ACCEPT
-paramiko.sftp_si.MSG_SERVICE_ACCEPT
-paramiko.transport.MSG_SERVICE_ACCEPT
-paramiko.util.MSG_SERVICE_ACCEPT" class="py-name" href="#" onclick="return doclink('link-5', 'MSG_SERVICE_ACCEPT', 'link-5');">MSG_SERVICE_ACCEPT</a></tt> <tt class="py-op">=</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-number">7</tt><tt class="py-op">)</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt id="link-6" class="py-name" targets="Variable paramiko.auth_handler.MSG_KEXINIT=paramiko.auth_handler-module.html#MSG_KEXINIT,Variable paramiko.channel.MSG_KEXINIT=paramiko.channel-module.html#MSG_KEXINIT,Variable paramiko.client.MSG_KEXINIT=paramiko.client-module.html#MSG_KEXINIT,Variable paramiko.common.MSG_KEXINIT=paramiko.common-module.html#MSG_KEXINIT,Variable paramiko.dsskey.MSG_KEXINIT=paramiko.dsskey-module.html#MSG_KEXINIT,Variable paramiko.hostkeys.MSG_KEXINIT=paramiko.hostkeys-module.html#MSG_KEXINIT,Variable paramiko.kex_gex.MSG_KEXINIT=paramiko.kex_gex-module.html#MSG_KEXINIT,Variable paramiko.kex_group1.MSG_KEXINIT=paramiko.kex_group1-module.html#MSG_KEXINIT,Variable paramiko.packet.MSG_KEXINIT=paramiko.packet-module.html#MSG_KEXINIT,Variable paramiko.pkey.MSG_KEXINIT=paramiko.pkey-module.html#MSG_KEXINIT,Variable paramiko.rsakey.MSG_KEXINIT=paramiko.rsakey-module.html#MSG_KEXINIT,Variable paramiko.server.MSG_KEXINIT=paramiko.server-module.html#MSG_KEXINIT,Variable paramiko.sftp.MSG_KEXINIT=paramiko.sftp-module.html#MSG_KEXINIT,Variable paramiko.sftp_attr.MSG_KEXINIT=paramiko.sftp_attr-module.html#MSG_KEXINIT,Variable paramiko.sftp_client.MSG_KEXINIT=paramiko.sftp_client-module.html#MSG_KEXINIT,Variable paramiko.sftp_file.MSG_KEXINIT=paramiko.sftp_file-module.html#MSG_KEXINIT,Variable paramiko.sftp_handle.MSG_KEXINIT=paramiko.sftp_handle-module.html#MSG_KEXINIT,Variable paramiko.sftp_server.MSG_KEXINIT=paramiko.sftp_server-module.html#MSG_KEXINIT,Variable paramiko.sftp_si.MSG_KEXINIT=paramiko.sftp_si-module.html#MSG_KEXINIT,Variable paramiko.transport.MSG_KEXINIT=paramiko.transport-module.html#MSG_KEXINIT,Variable paramiko.util.MSG_KEXINIT=paramiko.util-module.html#MSG_KEXINIT"><a title="paramiko.auth_handler.MSG_KEXINIT
-paramiko.channel.MSG_KEXINIT
-paramiko.client.MSG_KEXINIT
-paramiko.common.MSG_KEXINIT
-paramiko.dsskey.MSG_KEXINIT
-paramiko.hostkeys.MSG_KEXINIT
-paramiko.kex_gex.MSG_KEXINIT
-paramiko.kex_group1.MSG_KEXINIT
-paramiko.packet.MSG_KEXINIT
-paramiko.pkey.MSG_KEXINIT
-paramiko.rsakey.MSG_KEXINIT
-paramiko.server.MSG_KEXINIT
-paramiko.sftp.MSG_KEXINIT
-paramiko.sftp_attr.MSG_KEXINIT
-paramiko.sftp_client.MSG_KEXINIT
-paramiko.sftp_file.MSG_KEXINIT
-paramiko.sftp_handle.MSG_KEXINIT
-paramiko.sftp_server.MSG_KEXINIT
-paramiko.sftp_si.MSG_KEXINIT
-paramiko.transport.MSG_KEXINIT
-paramiko.util.MSG_KEXINIT" class="py-name" href="#" onclick="return doclink('link-6', 'MSG_KEXINIT', 'link-6');">MSG_KEXINIT</a></tt><tt class="py-op">,</tt> <tt id="link-7" class="py-name" targets="Variable paramiko.auth_handler.MSG_NEWKEYS=paramiko.auth_handler-module.html#MSG_NEWKEYS,Variable paramiko.channel.MSG_NEWKEYS=paramiko.channel-module.html#MSG_NEWKEYS,Variable paramiko.client.MSG_NEWKEYS=paramiko.client-module.html#MSG_NEWKEYS,Variable paramiko.common.MSG_NEWKEYS=paramiko.common-module.html#MSG_NEWKEYS,Variable paramiko.dsskey.MSG_NEWKEYS=paramiko.dsskey-module.html#MSG_NEWKEYS,Variable paramiko.hostkeys.MSG_NEWKEYS=paramiko.hostkeys-module.html#MSG_NEWKEYS,Variable paramiko.kex_gex.MSG_NEWKEYS=paramiko.kex_gex-module.html#MSG_NEWKEYS,Variable paramiko.kex_group1.MSG_NEWKEYS=paramiko.kex_group1-module.html#MSG_NEWKEYS,Variable paramiko.packet.MSG_NEWKEYS=paramiko.packet-module.html#MSG_NEWKEYS,Variable paramiko.pkey.MSG_NEWKEYS=paramiko.pkey-module.html#MSG_NEWKEYS,Variable paramiko.rsakey.MSG_NEWKEYS=paramiko.rsakey-module.html#MSG_NEWKEYS,Variable paramiko.server.MSG_NEWKEYS=paramiko.server-module.html#MSG_NEWKEYS,Variable paramiko.sftp.MSG_NEWKEYS=paramiko.sftp-module.html#MSG_NEWKEYS,Variable paramiko.sftp_attr.MSG_NEWKEYS=paramiko.sftp_attr-module.html#MSG_NEWKEYS,Variable paramiko.sftp_client.MSG_NEWKEYS=paramiko.sftp_client-module.html#MSG_NEWKEYS,Variable paramiko.sftp_file.MSG_NEWKEYS=paramiko.sftp_file-module.html#MSG_NEWKEYS,Variable paramiko.sftp_handle.MSG_NEWKEYS=paramiko.sftp_handle-module.html#MSG_NEWKEYS,Variable paramiko.sftp_server.MSG_NEWKEYS=paramiko.sftp_server-module.html#MSG_NEWKEYS,Variable paramiko.sftp_si.MSG_NEWKEYS=paramiko.sftp_si-module.html#MSG_NEWKEYS,Variable paramiko.transport.MSG_NEWKEYS=paramiko.transport-module.html#MSG_NEWKEYS,Variable paramiko.util.MSG_NEWKEYS=paramiko.util-module.html#MSG_NEWKEYS"><a title="paramiko.auth_handler.MSG_NEWKEYS
-paramiko.channel.MSG_NEWKEYS
-paramiko.client.MSG_NEWKEYS
-paramiko.common.MSG_NEWKEYS
-paramiko.dsskey.MSG_NEWKEYS
-paramiko.hostkeys.MSG_NEWKEYS
-paramiko.kex_gex.MSG_NEWKEYS
-paramiko.kex_group1.MSG_NEWKEYS
-paramiko.packet.MSG_NEWKEYS
-paramiko.pkey.MSG_NEWKEYS
-paramiko.rsakey.MSG_NEWKEYS
-paramiko.server.MSG_NEWKEYS
-paramiko.sftp.MSG_NEWKEYS
-paramiko.sftp_attr.MSG_NEWKEYS
-paramiko.sftp_client.MSG_NEWKEYS
-paramiko.sftp_file.MSG_NEWKEYS
-paramiko.sftp_handle.MSG_NEWKEYS
-paramiko.sftp_server.MSG_NEWKEYS
-paramiko.sftp_si.MSG_NEWKEYS
-paramiko.transport.MSG_NEWKEYS
-paramiko.util.MSG_NEWKEYS" class="py-name" href="#" onclick="return doclink('link-7', 'MSG_NEWKEYS', 'link-7');">MSG_NEWKEYS</a></tt> <tt class="py-op">=</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">20</tt><tt class="py-op">,</tt> <tt class="py-number">22</tt><tt class="py-op">)</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt id="link-8" class="py-name" targets="Variable paramiko.auth_handler.MSG_USERAUTH_REQUEST=paramiko.auth_handler-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.channel.MSG_USERAUTH_REQUEST=paramiko.channel-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.client.MSG_USERAUTH_REQUEST=paramiko.client-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.common.MSG_USERAUTH_REQUEST=paramiko.common-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.dsskey.MSG_USERAUTH_REQUEST=paramiko.dsskey-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.hostkeys.MSG_USERAUTH_REQUEST=paramiko.hostkeys-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.kex_gex.MSG_USERAUTH_REQUEST=paramiko.kex_gex-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.kex_group1.MSG_USERAUTH_REQUEST=paramiko.kex_group1-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.packet.MSG_USERAUTH_REQUEST=paramiko.packet-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.pkey.MSG_USERAUTH_REQUEST=paramiko.pkey-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.rsakey.MSG_USERAUTH_REQUEST=paramiko.rsakey-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.server.MSG_USERAUTH_REQUEST=paramiko.server-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.sftp.MSG_USERAUTH_REQUEST=paramiko.sftp-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.sftp_attr.MSG_USERAUTH_REQUEST=paramiko.sftp_attr-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.sftp_client.MSG_USERAUTH_REQUEST=paramiko.sftp_client-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.sftp_file.MSG_USERAUTH_REQUEST=paramiko.sftp_file-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.sftp_handle.MSG_USERAUTH_REQUEST=paramiko.sftp_handle-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.sftp_server.MSG_USERAUTH_REQUEST=paramiko.sftp_server-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.sftp_si.MSG_USERAUTH_REQUEST=paramiko.sftp_si-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.transport.MSG_USERAUTH_REQUEST=paramiko.transport-module.html#MSG_USERAUTH_REQUEST,Variable paramiko.util.MSG_USERAUTH_REQUEST=paramiko.util-module.html#MSG_USERAUTH_REQUEST"><a title="paramiko.auth_handler.MSG_USERAUTH_REQUEST
-paramiko.channel.MSG_USERAUTH_REQUEST
-paramiko.client.MSG_USERAUTH_REQUEST
-paramiko.common.MSG_USERAUTH_REQUEST
-paramiko.dsskey.MSG_USERAUTH_REQUEST
-paramiko.hostkeys.MSG_USERAUTH_REQUEST
-paramiko.kex_gex.MSG_USERAUTH_REQUEST
-paramiko.kex_group1.MSG_USERAUTH_REQUEST
-paramiko.packet.MSG_USERAUTH_REQUEST
-paramiko.pkey.MSG_USERAUTH_REQUEST
-paramiko.rsakey.MSG_USERAUTH_REQUEST
-paramiko.server.MSG_USERAUTH_REQUEST
-paramiko.sftp.MSG_USERAUTH_REQUEST
-paramiko.sftp_attr.MSG_USERAUTH_REQUEST
-paramiko.sftp_client.MSG_USERAUTH_REQUEST
-paramiko.sftp_file.MSG_USERAUTH_REQUEST
-paramiko.sftp_handle.MSG_USERAUTH_REQUEST
-paramiko.sftp_server.MSG_USERAUTH_REQUEST
-paramiko.sftp_si.MSG_USERAUTH_REQUEST
-paramiko.transport.MSG_USERAUTH_REQUEST
-paramiko.util.MSG_USERAUTH_REQUEST" class="py-name" href="#" onclick="return doclink('link-8', 'MSG_USERAUTH_REQUEST', 'link-8');">MSG_USERAUTH_REQUEST</a></tt><tt class="py-op">,</tt> <tt id="link-9" class="py-name" targets="Variable paramiko.auth_handler.MSG_USERAUTH_FAILURE=paramiko.auth_handler-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.channel.MSG_USERAUTH_FAILURE=paramiko.channel-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.client.MSG_USERAUTH_FAILURE=paramiko.client-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.common.MSG_USERAUTH_FAILURE=paramiko.common-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.dsskey.MSG_USERAUTH_FAILURE=paramiko.dsskey-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.hostkeys.MSG_USERAUTH_FAILURE=paramiko.hostkeys-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.kex_gex.MSG_USERAUTH_FAILURE=paramiko.kex_gex-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.kex_group1.MSG_USERAUTH_FAILURE=paramiko.kex_group1-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.packet.MSG_USERAUTH_FAILURE=paramiko.packet-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.pkey.MSG_USERAUTH_FAILURE=paramiko.pkey-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.rsakey.MSG_USERAUTH_FAILURE=paramiko.rsakey-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.server.MSG_USERAUTH_FAILURE=paramiko.server-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.sftp.MSG_USERAUTH_FAILURE=paramiko.sftp-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.sftp_attr.MSG_USERAUTH_FAILURE=paramiko.sftp_attr-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.sftp_client.MSG_USERAUTH_FAILURE=paramiko.sftp_client-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.sftp_file.MSG_USERAUTH_FAILURE=paramiko.sftp_file-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.sftp_handle.MSG_USERAUTH_FAILURE=paramiko.sftp_handle-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.sftp_server.MSG_USERAUTH_FAILURE=paramiko.sftp_server-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.sftp_si.MSG_USERAUTH_FAILURE=paramiko.sftp_si-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.transport.MSG_USERAUTH_FAILURE=paramiko.transport-module.html#MSG_USERAUTH_FAILURE,Variable paramiko.util.MSG_USERAUTH_FAILURE=paramiko.util-module.html#MSG_USERAUTH_FAILURE"><a title="paramiko.auth_handler.MSG_USERAUTH_FAILURE
-paramiko.channel.MSG_USERAUTH_FAILURE
-paramiko.client.MSG_USERAUTH_FAILURE
-paramiko.common.MSG_USERAUTH_FAILURE
-paramiko.dsskey.MSG_USERAUTH_FAILURE
-paramiko.hostkeys.MSG_USERAUTH_FAILURE
-paramiko.kex_gex.MSG_USERAUTH_FAILURE
-paramiko.kex_group1.MSG_USERAUTH_FAILURE
-paramiko.packet.MSG_USERAUTH_FAILURE
-paramiko.pkey.MSG_USERAUTH_FAILURE
-paramiko.rsakey.MSG_USERAUTH_FAILURE
-paramiko.server.MSG_USERAUTH_FAILURE
-paramiko.sftp.MSG_USERAUTH_FAILURE
-paramiko.sftp_attr.MSG_USERAUTH_FAILURE
-paramiko.sftp_client.MSG_USERAUTH_FAILURE
-paramiko.sftp_file.MSG_USERAUTH_FAILURE
-paramiko.sftp_handle.MSG_USERAUTH_FAILURE
-paramiko.sftp_server.MSG_USERAUTH_FAILURE
-paramiko.sftp_si.MSG_USERAUTH_FAILURE
-paramiko.transport.MSG_USERAUTH_FAILURE
-paramiko.util.MSG_USERAUTH_FAILURE" class="py-name" href="#" onclick="return doclink('link-9', 'MSG_USERAUTH_FAILURE', 'link-9');">MSG_USERAUTH_FAILURE</a></tt><tt class="py-op">,</tt> <tt id="link-10" class="py-name" targets="Variable paramiko.auth_handler.MSG_USERAUTH_SUCCESS=paramiko.auth_handler-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.channel.MSG_USERAUTH_SUCCESS=paramiko.channel-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.client.MSG_USERAUTH_SUCCESS=paramiko.client-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.common.MSG_USERAUTH_SUCCESS=paramiko.common-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.dsskey.MSG_USERAUTH_SUCCESS=paramiko.dsskey-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.hostkeys.MSG_USERAUTH_SUCCESS=paramiko.hostkeys-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.kex_gex.MSG_USERAUTH_SUCCESS=paramiko.kex_gex-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.kex_group1.MSG_USERAUTH_SUCCESS=paramiko.kex_group1-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.packet.MSG_USERAUTH_SUCCESS=paramiko.packet-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.pkey.MSG_USERAUTH_SUCCESS=paramiko.pkey-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.rsakey.MSG_USERAUTH_SUCCESS=paramiko.rsakey-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.server.MSG_USERAUTH_SUCCESS=paramiko.server-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.sftp.MSG_USERAUTH_SUCCESS=paramiko.sftp-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.sftp_attr.MSG_USERAUTH_SUCCESS=paramiko.sftp_attr-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.sftp_client.MSG_USERAUTH_SUCCESS=paramiko.sftp_client-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.sftp_file.MSG_USERAUTH_SUCCESS=paramiko.sftp_file-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.sftp_handle.MSG_USERAUTH_SUCCESS=paramiko.sftp_handle-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.sftp_server.MSG_USERAUTH_SUCCESS=paramiko.sftp_server-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.sftp_si.MSG_USERAUTH_SUCCESS=paramiko.sftp_si-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.transport.MSG_USERAUTH_SUCCESS=paramiko.transport-module.html#MSG_USERAUTH_SUCCESS,Variable paramiko.util.MSG_USERAUTH_SUCCESS=paramiko.util-module.html#MSG_USERAUTH_SUCCESS"><a title="paramiko.auth_handler.MSG_USERAUTH_SUCCESS
-paramiko.channel.MSG_USERAUTH_SUCCESS
-paramiko.client.MSG_USERAUTH_SUCCESS
-paramiko.common.MSG_USERAUTH_SUCCESS
-paramiko.dsskey.MSG_USERAUTH_SUCCESS
-paramiko.hostkeys.MSG_USERAUTH_SUCCESS
-paramiko.kex_gex.MSG_USERAUTH_SUCCESS
-paramiko.kex_group1.MSG_USERAUTH_SUCCESS
-paramiko.packet.MSG_USERAUTH_SUCCESS
-paramiko.pkey.MSG_USERAUTH_SUCCESS
-paramiko.rsakey.MSG_USERAUTH_SUCCESS
-paramiko.server.MSG_USERAUTH_SUCCESS
-paramiko.sftp.MSG_USERAUTH_SUCCESS
-paramiko.sftp_attr.MSG_USERAUTH_SUCCESS
-paramiko.sftp_client.MSG_USERAUTH_SUCCESS
-paramiko.sftp_file.MSG_USERAUTH_SUCCESS
-paramiko.sftp_handle.MSG_USERAUTH_SUCCESS
-paramiko.sftp_server.MSG_USERAUTH_SUCCESS
-paramiko.sftp_si.MSG_USERAUTH_SUCCESS
-paramiko.transport.MSG_USERAUTH_SUCCESS
-paramiko.util.MSG_USERAUTH_SUCCESS" class="py-name" href="#" onclick="return doclink('link-10', 'MSG_USERAUTH_SUCCESS', 'link-10');">MSG_USERAUTH_SUCCESS</a></tt><tt class="py-op">,</tt> \ </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> <tt id="link-11" class="py-name" targets="Variable paramiko.auth_handler.MSG_USERAUTH_BANNER=paramiko.auth_handler-module.html#MSG_USERAUTH_BANNER,Variable paramiko.channel.MSG_USERAUTH_BANNER=paramiko.channel-module.html#MSG_USERAUTH_BANNER,Variable paramiko.client.MSG_USERAUTH_BANNER=paramiko.client-module.html#MSG_USERAUTH_BANNER,Variable paramiko.common.MSG_USERAUTH_BANNER=paramiko.common-module.html#MSG_USERAUTH_BANNER,Variable paramiko.dsskey.MSG_USERAUTH_BANNER=paramiko.dsskey-module.html#MSG_USERAUTH_BANNER,Variable paramiko.hostkeys.MSG_USERAUTH_BANNER=paramiko.hostkeys-module.html#MSG_USERAUTH_BANNER,Variable paramiko.kex_gex.MSG_USERAUTH_BANNER=paramiko.kex_gex-module.html#MSG_USERAUTH_BANNER,Variable paramiko.kex_group1.MSG_USERAUTH_BANNER=paramiko.kex_group1-module.html#MSG_USERAUTH_BANNER,Variable paramiko.packet.MSG_USERAUTH_BANNER=paramiko.packet-module.html#MSG_USERAUTH_BANNER,Variable paramiko.pkey.MSG_USERAUTH_BANNER=paramiko.pkey-module.html#MSG_USERAUTH_BANNER,Variable paramiko.rsakey.MSG_USERAUTH_BANNER=paramiko.rsakey-module.html#MSG_USERAUTH_BANNER,Variable paramiko.server.MSG_USERAUTH_BANNER=paramiko.server-module.html#MSG_USERAUTH_BANNER,Variable paramiko.sftp.MSG_USERAUTH_BANNER=paramiko.sftp-module.html#MSG_USERAUTH_BANNER,Variable paramiko.sftp_attr.MSG_USERAUTH_BANNER=paramiko.sftp_attr-module.html#MSG_USERAUTH_BANNER,Variable paramiko.sftp_client.MSG_USERAUTH_BANNER=paramiko.sftp_client-module.html#MSG_USERAUTH_BANNER,Variable paramiko.sftp_file.MSG_USERAUTH_BANNER=paramiko.sftp_file-module.html#MSG_USERAUTH_BANNER,Variable paramiko.sftp_handle.MSG_USERAUTH_BANNER=paramiko.sftp_handle-module.html#MSG_USERAUTH_BANNER,Variable paramiko.sftp_server.MSG_USERAUTH_BANNER=paramiko.sftp_server-module.html#MSG_USERAUTH_BANNER,Variable paramiko.sftp_si.MSG_USERAUTH_BANNER=paramiko.sftp_si-module.html#MSG_USERAUTH_BANNER,Variable paramiko.transport.MSG_USERAUTH_BANNER=paramiko.transport-module.html#MSG_USERAUTH_BANNER,Variable paramiko.util.MSG_USERAUTH_BANNER=paramiko.util-module.html#MSG_USERAUTH_BANNER"><a title="paramiko.auth_handler.MSG_USERAUTH_BANNER
-paramiko.channel.MSG_USERAUTH_BANNER
-paramiko.client.MSG_USERAUTH_BANNER
-paramiko.common.MSG_USERAUTH_BANNER
-paramiko.dsskey.MSG_USERAUTH_BANNER
-paramiko.hostkeys.MSG_USERAUTH_BANNER
-paramiko.kex_gex.MSG_USERAUTH_BANNER
-paramiko.kex_group1.MSG_USERAUTH_BANNER
-paramiko.packet.MSG_USERAUTH_BANNER
-paramiko.pkey.MSG_USERAUTH_BANNER
-paramiko.rsakey.MSG_USERAUTH_BANNER
-paramiko.server.MSG_USERAUTH_BANNER
-paramiko.sftp.MSG_USERAUTH_BANNER
-paramiko.sftp_attr.MSG_USERAUTH_BANNER
-paramiko.sftp_client.MSG_USERAUTH_BANNER
-paramiko.sftp_file.MSG_USERAUTH_BANNER
-paramiko.sftp_handle.MSG_USERAUTH_BANNER
-paramiko.sftp_server.MSG_USERAUTH_BANNER
-paramiko.sftp_si.MSG_USERAUTH_BANNER
-paramiko.transport.MSG_USERAUTH_BANNER
-paramiko.util.MSG_USERAUTH_BANNER" class="py-name" href="#" onclick="return doclink('link-11', 'MSG_USERAUTH_BANNER', 'link-11');">MSG_USERAUTH_BANNER</a></tt> <tt class="py-op">=</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">50</tt><tt class="py-op">,</tt> <tt class="py-number">54</tt><tt class="py-op">)</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"><tt id="link-12" class="py-name" targets="Variable paramiko.auth_handler.MSG_USERAUTH_PK_OK=paramiko.auth_handler-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.channel.MSG_USERAUTH_PK_OK=paramiko.channel-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.client.MSG_USERAUTH_PK_OK=paramiko.client-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.common.MSG_USERAUTH_PK_OK=paramiko.common-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.dsskey.MSG_USERAUTH_PK_OK=paramiko.dsskey-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.hostkeys.MSG_USERAUTH_PK_OK=paramiko.hostkeys-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.kex_gex.MSG_USERAUTH_PK_OK=paramiko.kex_gex-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.kex_group1.MSG_USERAUTH_PK_OK=paramiko.kex_group1-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.packet.MSG_USERAUTH_PK_OK=paramiko.packet-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.pkey.MSG_USERAUTH_PK_OK=paramiko.pkey-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.rsakey.MSG_USERAUTH_PK_OK=paramiko.rsakey-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.server.MSG_USERAUTH_PK_OK=paramiko.server-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.sftp.MSG_USERAUTH_PK_OK=paramiko.sftp-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.sftp_attr.MSG_USERAUTH_PK_OK=paramiko.sftp_attr-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.sftp_client.MSG_USERAUTH_PK_OK=paramiko.sftp_client-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.sftp_file.MSG_USERAUTH_PK_OK=paramiko.sftp_file-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.sftp_handle.MSG_USERAUTH_PK_OK=paramiko.sftp_handle-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.sftp_server.MSG_USERAUTH_PK_OK=paramiko.sftp_server-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.sftp_si.MSG_USERAUTH_PK_OK=paramiko.sftp_si-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.transport.MSG_USERAUTH_PK_OK=paramiko.transport-module.html#MSG_USERAUTH_PK_OK,Variable paramiko.util.MSG_USERAUTH_PK_OK=paramiko.util-module.html#MSG_USERAUTH_PK_OK"><a title="paramiko.auth_handler.MSG_USERAUTH_PK_OK
-paramiko.channel.MSG_USERAUTH_PK_OK
-paramiko.client.MSG_USERAUTH_PK_OK
-paramiko.common.MSG_USERAUTH_PK_OK
-paramiko.dsskey.MSG_USERAUTH_PK_OK
-paramiko.hostkeys.MSG_USERAUTH_PK_OK
-paramiko.kex_gex.MSG_USERAUTH_PK_OK
-paramiko.kex_group1.MSG_USERAUTH_PK_OK
-paramiko.packet.MSG_USERAUTH_PK_OK
-paramiko.pkey.MSG_USERAUTH_PK_OK
-paramiko.rsakey.MSG_USERAUTH_PK_OK
-paramiko.server.MSG_USERAUTH_PK_OK
-paramiko.sftp.MSG_USERAUTH_PK_OK
-paramiko.sftp_attr.MSG_USERAUTH_PK_OK
-paramiko.sftp_client.MSG_USERAUTH_PK_OK
-paramiko.sftp_file.MSG_USERAUTH_PK_OK
-paramiko.sftp_handle.MSG_USERAUTH_PK_OK
-paramiko.sftp_server.MSG_USERAUTH_PK_OK
-paramiko.sftp_si.MSG_USERAUTH_PK_OK
-paramiko.transport.MSG_USERAUTH_PK_OK
-paramiko.util.MSG_USERAUTH_PK_OK" class="py-name" href="#" onclick="return doclink('link-12', 'MSG_USERAUTH_PK_OK', 'link-12');">MSG_USERAUTH_PK_OK</a></tt> <tt class="py-op">=</tt> <tt class="py-number">60</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"><tt id="link-13" class="py-name" targets="Variable paramiko.auth_handler.MSG_USERAUTH_INFO_REQUEST=paramiko.auth_handler-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.channel.MSG_USERAUTH_INFO_REQUEST=paramiko.channel-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.client.MSG_USERAUTH_INFO_REQUEST=paramiko.client-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.common.MSG_USERAUTH_INFO_REQUEST=paramiko.common-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.dsskey.MSG_USERAUTH_INFO_REQUEST=paramiko.dsskey-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.hostkeys.MSG_USERAUTH_INFO_REQUEST=paramiko.hostkeys-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.kex_gex.MSG_USERAUTH_INFO_REQUEST=paramiko.kex_gex-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.kex_group1.MSG_USERAUTH_INFO_REQUEST=paramiko.kex_group1-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.packet.MSG_USERAUTH_INFO_REQUEST=paramiko.packet-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.pkey.MSG_USERAUTH_INFO_REQUEST=paramiko.pkey-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.rsakey.MSG_USERAUTH_INFO_REQUEST=paramiko.rsakey-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.server.MSG_USERAUTH_INFO_REQUEST=paramiko.server-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.sftp.MSG_USERAUTH_INFO_REQUEST=paramiko.sftp-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.sftp_attr.MSG_USERAUTH_INFO_REQUEST=paramiko.sftp_attr-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.sftp_client.MSG_USERAUTH_INFO_REQUEST=paramiko.sftp_client-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.sftp_file.MSG_USERAUTH_INFO_REQUEST=paramiko.sftp_file-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.sftp_handle.MSG_USERAUTH_INFO_REQUEST=paramiko.sftp_handle-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.sftp_server.MSG_USERAUTH_INFO_REQUEST=paramiko.sftp_server-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.sftp_si.MSG_USERAUTH_INFO_REQUEST=paramiko.sftp_si-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.transport.MSG_USERAUTH_INFO_REQUEST=paramiko.transport-module.html#MSG_USERAUTH_INFO_REQUEST,Variable paramiko.util.MSG_USERAUTH_INFO_REQUEST=paramiko.util-module.html#MSG_USERAUTH_INFO_REQUEST"><a title="paramiko.auth_handler.MSG_USERAUTH_INFO_REQUEST
-paramiko.channel.MSG_USERAUTH_INFO_REQUEST
-paramiko.client.MSG_USERAUTH_INFO_REQUEST
-paramiko.common.MSG_USERAUTH_INFO_REQUEST
-paramiko.dsskey.MSG_USERAUTH_INFO_REQUEST
-paramiko.hostkeys.MSG_USERAUTH_INFO_REQUEST
-paramiko.kex_gex.MSG_USERAUTH_INFO_REQUEST
-paramiko.kex_group1.MSG_USERAUTH_INFO_REQUEST
-paramiko.packet.MSG_USERAUTH_INFO_REQUEST
-paramiko.pkey.MSG_USERAUTH_INFO_REQUEST
-paramiko.rsakey.MSG_USERAUTH_INFO_REQUEST
-paramiko.server.MSG_USERAUTH_INFO_REQUEST
-paramiko.sftp.MSG_USERAUTH_INFO_REQUEST
-paramiko.sftp_attr.MSG_USERAUTH_INFO_REQUEST
-paramiko.sftp_client.MSG_USERAUTH_INFO_REQUEST
-paramiko.sftp_file.MSG_USERAUTH_INFO_REQUEST
-paramiko.sftp_handle.MSG_USERAUTH_INFO_REQUEST
-paramiko.sftp_server.MSG_USERAUTH_INFO_REQUEST
-paramiko.sftp_si.MSG_USERAUTH_INFO_REQUEST
-paramiko.transport.MSG_USERAUTH_INFO_REQUEST
-paramiko.util.MSG_USERAUTH_INFO_REQUEST" class="py-name" href="#" onclick="return doclink('link-13', 'MSG_USERAUTH_INFO_REQUEST', 'link-13');">MSG_USERAUTH_INFO_REQUEST</a></tt><tt class="py-op">,</tt> <tt id="link-14" class="py-name" targets="Variable paramiko.auth_handler.MSG_USERAUTH_INFO_RESPONSE=paramiko.auth_handler-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.channel.MSG_USERAUTH_INFO_RESPONSE=paramiko.channel-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.client.MSG_USERAUTH_INFO_RESPONSE=paramiko.client-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.common.MSG_USERAUTH_INFO_RESPONSE=paramiko.common-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.dsskey.MSG_USERAUTH_INFO_RESPONSE=paramiko.dsskey-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.hostkeys.MSG_USERAUTH_INFO_RESPONSE=paramiko.hostkeys-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.kex_gex.MSG_USERAUTH_INFO_RESPONSE=paramiko.kex_gex-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.kex_group1.MSG_USERAUTH_INFO_RESPONSE=paramiko.kex_group1-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.packet.MSG_USERAUTH_INFO_RESPONSE=paramiko.packet-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.pkey.MSG_USERAUTH_INFO_RESPONSE=paramiko.pkey-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.rsakey.MSG_USERAUTH_INFO_RESPONSE=paramiko.rsakey-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.server.MSG_USERAUTH_INFO_RESPONSE=paramiko.server-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.sftp.MSG_USERAUTH_INFO_RESPONSE=paramiko.sftp-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.sftp_attr.MSG_USERAUTH_INFO_RESPONSE=paramiko.sftp_attr-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.sftp_client.MSG_USERAUTH_INFO_RESPONSE=paramiko.sftp_client-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.sftp_file.MSG_USERAUTH_INFO_RESPONSE=paramiko.sftp_file-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.sftp_handle.MSG_USERAUTH_INFO_RESPONSE=paramiko.sftp_handle-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.sftp_server.MSG_USERAUTH_INFO_RESPONSE=paramiko.sftp_server-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.sftp_si.MSG_USERAUTH_INFO_RESPONSE=paramiko.sftp_si-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.transport.MSG_USERAUTH_INFO_RESPONSE=paramiko.transport-module.html#MSG_USERAUTH_INFO_RESPONSE,Variable paramiko.util.MSG_USERAUTH_INFO_RESPONSE=paramiko.util-module.html#MSG_USERAUTH_INFO_RESPONSE"><a title="paramiko.auth_handler.MSG_USERAUTH_INFO_RESPONSE
-paramiko.channel.MSG_USERAUTH_INFO_RESPONSE
-paramiko.client.MSG_USERAUTH_INFO_RESPONSE
-paramiko.common.MSG_USERAUTH_INFO_RESPONSE
-paramiko.dsskey.MSG_USERAUTH_INFO_RESPONSE
-paramiko.hostkeys.MSG_USERAUTH_INFO_RESPONSE
-paramiko.kex_gex.MSG_USERAUTH_INFO_RESPONSE
-paramiko.kex_group1.MSG_USERAUTH_INFO_RESPONSE
-paramiko.packet.MSG_USERAUTH_INFO_RESPONSE
-paramiko.pkey.MSG_USERAUTH_INFO_RESPONSE
-paramiko.rsakey.MSG_USERAUTH_INFO_RESPONSE
-paramiko.server.MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp.MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp_attr.MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp_client.MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp_file.MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp_handle.MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp_server.MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp_si.MSG_USERAUTH_INFO_RESPONSE
-paramiko.transport.MSG_USERAUTH_INFO_RESPONSE
-paramiko.util.MSG_USERAUTH_INFO_RESPONSE" class="py-name" href="#" onclick="return doclink('link-14', 'MSG_USERAUTH_INFO_RESPONSE', 'link-14');">MSG_USERAUTH_INFO_RESPONSE</a></tt> <tt class="py-op">=</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">60</tt><tt class="py-op">,</tt> <tt class="py-number">62</tt><tt class="py-op">)</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"><tt id="link-15" class="py-name" targets="Variable paramiko.auth_handler.MSG_GLOBAL_REQUEST=paramiko.auth_handler-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.channel.MSG_GLOBAL_REQUEST=paramiko.channel-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.client.MSG_GLOBAL_REQUEST=paramiko.client-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.common.MSG_GLOBAL_REQUEST=paramiko.common-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.dsskey.MSG_GLOBAL_REQUEST=paramiko.dsskey-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.hostkeys.MSG_GLOBAL_REQUEST=paramiko.hostkeys-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.kex_gex.MSG_GLOBAL_REQUEST=paramiko.kex_gex-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.kex_group1.MSG_GLOBAL_REQUEST=paramiko.kex_group1-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.packet.MSG_GLOBAL_REQUEST=paramiko.packet-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.pkey.MSG_GLOBAL_REQUEST=paramiko.pkey-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.rsakey.MSG_GLOBAL_REQUEST=paramiko.rsakey-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.server.MSG_GLOBAL_REQUEST=paramiko.server-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.sftp.MSG_GLOBAL_REQUEST=paramiko.sftp-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.sftp_attr.MSG_GLOBAL_REQUEST=paramiko.sftp_attr-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.sftp_client.MSG_GLOBAL_REQUEST=paramiko.sftp_client-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.sftp_file.MSG_GLOBAL_REQUEST=paramiko.sftp_file-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.sftp_handle.MSG_GLOBAL_REQUEST=paramiko.sftp_handle-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.sftp_server.MSG_GLOBAL_REQUEST=paramiko.sftp_server-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.sftp_si.MSG_GLOBAL_REQUEST=paramiko.sftp_si-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.transport.MSG_GLOBAL_REQUEST=paramiko.transport-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.util.MSG_GLOBAL_REQUEST=paramiko.util-module.html#MSG_GLOBAL_REQUEST"><a title="paramiko.auth_handler.MSG_GLOBAL_REQUEST
-paramiko.channel.MSG_GLOBAL_REQUEST
-paramiko.client.MSG_GLOBAL_REQUEST
-paramiko.common.MSG_GLOBAL_REQUEST
-paramiko.dsskey.MSG_GLOBAL_REQUEST
-paramiko.hostkeys.MSG_GLOBAL_REQUEST
-paramiko.kex_gex.MSG_GLOBAL_REQUEST
-paramiko.kex_group1.MSG_GLOBAL_REQUEST
-paramiko.packet.MSG_GLOBAL_REQUEST
-paramiko.pkey.MSG_GLOBAL_REQUEST
-paramiko.rsakey.MSG_GLOBAL_REQUEST
-paramiko.server.MSG_GLOBAL_REQUEST
-paramiko.sftp.MSG_GLOBAL_REQUEST
-paramiko.sftp_attr.MSG_GLOBAL_REQUEST
-paramiko.sftp_client.MSG_GLOBAL_REQUEST
-paramiko.sftp_file.MSG_GLOBAL_REQUEST
-paramiko.sftp_handle.MSG_GLOBAL_REQUEST
-paramiko.sftp_server.MSG_GLOBAL_REQUEST
-paramiko.sftp_si.MSG_GLOBAL_REQUEST
-paramiko.transport.MSG_GLOBAL_REQUEST
-paramiko.util.MSG_GLOBAL_REQUEST" class="py-name" href="#" onclick="return doclink('link-15', 'MSG_GLOBAL_REQUEST', 'link-15');">MSG_GLOBAL_REQUEST</a></tt><tt class="py-op">,</tt> <tt id="link-16" class="py-name" targets="Variable paramiko.auth_handler.MSG_REQUEST_SUCCESS=paramiko.auth_handler-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.channel.MSG_REQUEST_SUCCESS=paramiko.channel-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.client.MSG_REQUEST_SUCCESS=paramiko.client-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.common.MSG_REQUEST_SUCCESS=paramiko.common-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.dsskey.MSG_REQUEST_SUCCESS=paramiko.dsskey-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.hostkeys.MSG_REQUEST_SUCCESS=paramiko.hostkeys-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.kex_gex.MSG_REQUEST_SUCCESS=paramiko.kex_gex-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.kex_group1.MSG_REQUEST_SUCCESS=paramiko.kex_group1-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.packet.MSG_REQUEST_SUCCESS=paramiko.packet-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.pkey.MSG_REQUEST_SUCCESS=paramiko.pkey-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.rsakey.MSG_REQUEST_SUCCESS=paramiko.rsakey-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.server.MSG_REQUEST_SUCCESS=paramiko.server-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.sftp.MSG_REQUEST_SUCCESS=paramiko.sftp-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.sftp_attr.MSG_REQUEST_SUCCESS=paramiko.sftp_attr-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.sftp_client.MSG_REQUEST_SUCCESS=paramiko.sftp_client-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.sftp_file.MSG_REQUEST_SUCCESS=paramiko.sftp_file-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.sftp_handle.MSG_REQUEST_SUCCESS=paramiko.sftp_handle-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.sftp_server.MSG_REQUEST_SUCCESS=paramiko.sftp_server-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.sftp_si.MSG_REQUEST_SUCCESS=paramiko.sftp_si-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.transport.MSG_REQUEST_SUCCESS=paramiko.transport-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.util.MSG_REQUEST_SUCCESS=paramiko.util-module.html#MSG_REQUEST_SUCCESS"><a title="paramiko.auth_handler.MSG_REQUEST_SUCCESS
-paramiko.channel.MSG_REQUEST_SUCCESS
-paramiko.client.MSG_REQUEST_SUCCESS
-paramiko.common.MSG_REQUEST_SUCCESS
-paramiko.dsskey.MSG_REQUEST_SUCCESS
-paramiko.hostkeys.MSG_REQUEST_SUCCESS
-paramiko.kex_gex.MSG_REQUEST_SUCCESS
-paramiko.kex_group1.MSG_REQUEST_SUCCESS
-paramiko.packet.MSG_REQUEST_SUCCESS
-paramiko.pkey.MSG_REQUEST_SUCCESS
-paramiko.rsakey.MSG_REQUEST_SUCCESS
-paramiko.server.MSG_REQUEST_SUCCESS
-paramiko.sftp.MSG_REQUEST_SUCCESS
-paramiko.sftp_attr.MSG_REQUEST_SUCCESS
-paramiko.sftp_client.MSG_REQUEST_SUCCESS
-paramiko.sftp_file.MSG_REQUEST_SUCCESS
-paramiko.sftp_handle.MSG_REQUEST_SUCCESS
-paramiko.sftp_server.MSG_REQUEST_SUCCESS
-paramiko.sftp_si.MSG_REQUEST_SUCCESS
-paramiko.transport.MSG_REQUEST_SUCCESS
-paramiko.util.MSG_REQUEST_SUCCESS" class="py-name" href="#" onclick="return doclink('link-16', 'MSG_REQUEST_SUCCESS', 'link-16');">MSG_REQUEST_SUCCESS</a></tt><tt class="py-op">,</tt> <tt id="link-17" class="py-name" targets="Variable paramiko.auth_handler.MSG_REQUEST_FAILURE=paramiko.auth_handler-module.html#MSG_REQUEST_FAILURE,Variable paramiko.channel.MSG_REQUEST_FAILURE=paramiko.channel-module.html#MSG_REQUEST_FAILURE,Variable paramiko.client.MSG_REQUEST_FAILURE=paramiko.client-module.html#MSG_REQUEST_FAILURE,Variable paramiko.common.MSG_REQUEST_FAILURE=paramiko.common-module.html#MSG_REQUEST_FAILURE,Variable paramiko.dsskey.MSG_REQUEST_FAILURE=paramiko.dsskey-module.html#MSG_REQUEST_FAILURE,Variable paramiko.hostkeys.MSG_REQUEST_FAILURE=paramiko.hostkeys-module.html#MSG_REQUEST_FAILURE,Variable paramiko.kex_gex.MSG_REQUEST_FAILURE=paramiko.kex_gex-module.html#MSG_REQUEST_FAILURE,Variable paramiko.kex_group1.MSG_REQUEST_FAILURE=paramiko.kex_group1-module.html#MSG_REQUEST_FAILURE,Variable paramiko.packet.MSG_REQUEST_FAILURE=paramiko.packet-module.html#MSG_REQUEST_FAILURE,Variable paramiko.pkey.MSG_REQUEST_FAILURE=paramiko.pkey-module.html#MSG_REQUEST_FAILURE,Variable paramiko.rsakey.MSG_REQUEST_FAILURE=paramiko.rsakey-module.html#MSG_REQUEST_FAILURE,Variable paramiko.server.MSG_REQUEST_FAILURE=paramiko.server-module.html#MSG_REQUEST_FAILURE,Variable paramiko.sftp.MSG_REQUEST_FAILURE=paramiko.sftp-module.html#MSG_REQUEST_FAILURE,Variable paramiko.sftp_attr.MSG_REQUEST_FAILURE=paramiko.sftp_attr-module.html#MSG_REQUEST_FAILURE,Variable paramiko.sftp_client.MSG_REQUEST_FAILURE=paramiko.sftp_client-module.html#MSG_REQUEST_FAILURE,Variable paramiko.sftp_file.MSG_REQUEST_FAILURE=paramiko.sftp_file-module.html#MSG_REQUEST_FAILURE,Variable paramiko.sftp_handle.MSG_REQUEST_FAILURE=paramiko.sftp_handle-module.html#MSG_REQUEST_FAILURE,Variable paramiko.sftp_server.MSG_REQUEST_FAILURE=paramiko.sftp_server-module.html#MSG_REQUEST_FAILURE,Variable paramiko.sftp_si.MSG_REQUEST_FAILURE=paramiko.sftp_si-module.html#MSG_REQUEST_FAILURE,Variable paramiko.transport.MSG_REQUEST_FAILURE=paramiko.transport-module.html#MSG_REQUEST_FAILURE,Variable paramiko.util.MSG_REQUEST_FAILURE=paramiko.util-module.html#MSG_REQUEST_FAILURE"><a title="paramiko.auth_handler.MSG_REQUEST_FAILURE
-paramiko.channel.MSG_REQUEST_FAILURE
-paramiko.client.MSG_REQUEST_FAILURE
-paramiko.common.MSG_REQUEST_FAILURE
-paramiko.dsskey.MSG_REQUEST_FAILURE
-paramiko.hostkeys.MSG_REQUEST_FAILURE
-paramiko.kex_gex.MSG_REQUEST_FAILURE
-paramiko.kex_group1.MSG_REQUEST_FAILURE
-paramiko.packet.MSG_REQUEST_FAILURE
-paramiko.pkey.MSG_REQUEST_FAILURE
-paramiko.rsakey.MSG_REQUEST_FAILURE
-paramiko.server.MSG_REQUEST_FAILURE
-paramiko.sftp.MSG_REQUEST_FAILURE
-paramiko.sftp_attr.MSG_REQUEST_FAILURE
-paramiko.sftp_client.MSG_REQUEST_FAILURE
-paramiko.sftp_file.MSG_REQUEST_FAILURE
-paramiko.sftp_handle.MSG_REQUEST_FAILURE
-paramiko.sftp_server.MSG_REQUEST_FAILURE
-paramiko.sftp_si.MSG_REQUEST_FAILURE
-paramiko.transport.MSG_REQUEST_FAILURE
-paramiko.util.MSG_REQUEST_FAILURE" class="py-name" href="#" onclick="return doclink('link-17', 'MSG_REQUEST_FAILURE', 'link-17');">MSG_REQUEST_FAILURE</a></tt> <tt class="py-op">=</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">80</tt><tt class="py-op">,</tt> <tt class="py-number">83</tt><tt class="py-op">)</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"><tt id="link-18" class="py-name" targets="Variable paramiko.auth_handler.MSG_CHANNEL_OPEN=paramiko.auth_handler-module.html#MSG_CHANNEL_OPEN,Variable paramiko.channel.MSG_CHANNEL_OPEN=paramiko.channel-module.html#MSG_CHANNEL_OPEN,Variable paramiko.client.MSG_CHANNEL_OPEN=paramiko.client-module.html#MSG_CHANNEL_OPEN,Variable paramiko.common.MSG_CHANNEL_OPEN=paramiko.common-module.html#MSG_CHANNEL_OPEN,Variable paramiko.dsskey.MSG_CHANNEL_OPEN=paramiko.dsskey-module.html#MSG_CHANNEL_OPEN,Variable paramiko.hostkeys.MSG_CHANNEL_OPEN=paramiko.hostkeys-module.html#MSG_CHANNEL_OPEN,Variable paramiko.kex_gex.MSG_CHANNEL_OPEN=paramiko.kex_gex-module.html#MSG_CHANNEL_OPEN,Variable paramiko.kex_group1.MSG_CHANNEL_OPEN=paramiko.kex_group1-module.html#MSG_CHANNEL_OPEN,Variable paramiko.packet.MSG_CHANNEL_OPEN=paramiko.packet-module.html#MSG_CHANNEL_OPEN,Variable paramiko.pkey.MSG_CHANNEL_OPEN=paramiko.pkey-module.html#MSG_CHANNEL_OPEN,Variable paramiko.rsakey.MSG_CHANNEL_OPEN=paramiko.rsakey-module.html#MSG_CHANNEL_OPEN,Variable paramiko.server.MSG_CHANNEL_OPEN=paramiko.server-module.html#MSG_CHANNEL_OPEN,Variable paramiko.sftp.MSG_CHANNEL_OPEN=paramiko.sftp-module.html#MSG_CHANNEL_OPEN,Variable paramiko.sftp_attr.MSG_CHANNEL_OPEN=paramiko.sftp_attr-module.html#MSG_CHANNEL_OPEN,Variable paramiko.sftp_client.MSG_CHANNEL_OPEN=paramiko.sftp_client-module.html#MSG_CHANNEL_OPEN,Variable paramiko.sftp_file.MSG_CHANNEL_OPEN=paramiko.sftp_file-module.html#MSG_CHANNEL_OPEN,Variable paramiko.sftp_handle.MSG_CHANNEL_OPEN=paramiko.sftp_handle-module.html#MSG_CHANNEL_OPEN,Variable paramiko.sftp_server.MSG_CHANNEL_OPEN=paramiko.sftp_server-module.html#MSG_CHANNEL_OPEN,Variable paramiko.sftp_si.MSG_CHANNEL_OPEN=paramiko.sftp_si-module.html#MSG_CHANNEL_OPEN,Variable paramiko.transport.MSG_CHANNEL_OPEN=paramiko.transport-module.html#MSG_CHANNEL_OPEN,Variable paramiko.util.MSG_CHANNEL_OPEN=paramiko.util-module.html#MSG_CHANNEL_OPEN"><a title="paramiko.auth_handler.MSG_CHANNEL_OPEN
-paramiko.channel.MSG_CHANNEL_OPEN
-paramiko.client.MSG_CHANNEL_OPEN
-paramiko.common.MSG_CHANNEL_OPEN
-paramiko.dsskey.MSG_CHANNEL_OPEN
-paramiko.hostkeys.MSG_CHANNEL_OPEN
-paramiko.kex_gex.MSG_CHANNEL_OPEN
-paramiko.kex_group1.MSG_CHANNEL_OPEN
-paramiko.packet.MSG_CHANNEL_OPEN
-paramiko.pkey.MSG_CHANNEL_OPEN
-paramiko.rsakey.MSG_CHANNEL_OPEN
-paramiko.server.MSG_CHANNEL_OPEN
-paramiko.sftp.MSG_CHANNEL_OPEN
-paramiko.sftp_attr.MSG_CHANNEL_OPEN
-paramiko.sftp_client.MSG_CHANNEL_OPEN
-paramiko.sftp_file.MSG_CHANNEL_OPEN
-paramiko.sftp_handle.MSG_CHANNEL_OPEN
-paramiko.sftp_server.MSG_CHANNEL_OPEN
-paramiko.sftp_si.MSG_CHANNEL_OPEN
-paramiko.transport.MSG_CHANNEL_OPEN
-paramiko.util.MSG_CHANNEL_OPEN" class="py-name" href="#" onclick="return doclink('link-18', 'MSG_CHANNEL_OPEN', 'link-18');">MSG_CHANNEL_OPEN</a></tt><tt class="py-op">,</tt> <tt id="link-19" class="py-name" targets="Variable paramiko.auth_handler.MSG_CHANNEL_OPEN_SUCCESS=paramiko.auth_handler-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.channel.MSG_CHANNEL_OPEN_SUCCESS=paramiko.channel-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.client.MSG_CHANNEL_OPEN_SUCCESS=paramiko.client-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.common.MSG_CHANNEL_OPEN_SUCCESS=paramiko.common-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.dsskey.MSG_CHANNEL_OPEN_SUCCESS=paramiko.dsskey-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.hostkeys.MSG_CHANNEL_OPEN_SUCCESS=paramiko.hostkeys-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.kex_gex.MSG_CHANNEL_OPEN_SUCCESS=paramiko.kex_gex-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.kex_group1.MSG_CHANNEL_OPEN_SUCCESS=paramiko.kex_group1-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.packet.MSG_CHANNEL_OPEN_SUCCESS=paramiko.packet-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.pkey.MSG_CHANNEL_OPEN_SUCCESS=paramiko.pkey-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.rsakey.MSG_CHANNEL_OPEN_SUCCESS=paramiko.rsakey-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.server.MSG_CHANNEL_OPEN_SUCCESS=paramiko.server-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.sftp.MSG_CHANNEL_OPEN_SUCCESS=paramiko.sftp-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.sftp_attr.MSG_CHANNEL_OPEN_SUCCESS=paramiko.sftp_attr-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.sftp_client.MSG_CHANNEL_OPEN_SUCCESS=paramiko.sftp_client-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.sftp_file.MSG_CHANNEL_OPEN_SUCCESS=paramiko.sftp_file-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.sftp_handle.MSG_CHANNEL_OPEN_SUCCESS=paramiko.sftp_handle-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.sftp_server.MSG_CHANNEL_OPEN_SUCCESS=paramiko.sftp_server-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.sftp_si.MSG_CHANNEL_OPEN_SUCCESS=paramiko.sftp_si-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.transport.MSG_CHANNEL_OPEN_SUCCESS=paramiko.transport-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.util.MSG_CHANNEL_OPEN_SUCCESS=paramiko.util-module.html#MSG_CHANNEL_OPEN_SUCCESS"><a title="paramiko.auth_handler.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.channel.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.client.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.common.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.dsskey.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.hostkeys.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.kex_gex.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.kex_group1.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.packet.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.pkey.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.rsakey.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.server.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp_attr.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp_client.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp_file.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp_handle.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp_server.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp_si.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.transport.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.util.MSG_CHANNEL_OPEN_SUCCESS" class="py-name" href="#" onclick="return doclink('link-19', 'MSG_CHANNEL_OPEN_SUCCESS', 'link-19');">MSG_CHANNEL_OPEN_SUCCESS</a></tt><tt class="py-op">,</tt> <tt id="link-20" class="py-name" targets="Variable paramiko.auth_handler.MSG_CHANNEL_OPEN_FAILURE=paramiko.auth_handler-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.channel.MSG_CHANNEL_OPEN_FAILURE=paramiko.channel-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.client.MSG_CHANNEL_OPEN_FAILURE=paramiko.client-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.common.MSG_CHANNEL_OPEN_FAILURE=paramiko.common-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.dsskey.MSG_CHANNEL_OPEN_FAILURE=paramiko.dsskey-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.hostkeys.MSG_CHANNEL_OPEN_FAILURE=paramiko.hostkeys-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.kex_gex.MSG_CHANNEL_OPEN_FAILURE=paramiko.kex_gex-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.kex_group1.MSG_CHANNEL_OPEN_FAILURE=paramiko.kex_group1-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.packet.MSG_CHANNEL_OPEN_FAILURE=paramiko.packet-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.pkey.MSG_CHANNEL_OPEN_FAILURE=paramiko.pkey-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.rsakey.MSG_CHANNEL_OPEN_FAILURE=paramiko.rsakey-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.server.MSG_CHANNEL_OPEN_FAILURE=paramiko.server-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.sftp.MSG_CHANNEL_OPEN_FAILURE=paramiko.sftp-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.sftp_attr.MSG_CHANNEL_OPEN_FAILURE=paramiko.sftp_attr-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.sftp_client.MSG_CHANNEL_OPEN_FAILURE=paramiko.sftp_client-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.sftp_file.MSG_CHANNEL_OPEN_FAILURE=paramiko.sftp_file-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.sftp_handle.MSG_CHANNEL_OPEN_FAILURE=paramiko.sftp_handle-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.sftp_server.MSG_CHANNEL_OPEN_FAILURE=paramiko.sftp_server-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.sftp_si.MSG_CHANNEL_OPEN_FAILURE=paramiko.sftp_si-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.transport.MSG_CHANNEL_OPEN_FAILURE=paramiko.transport-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.util.MSG_CHANNEL_OPEN_FAILURE=paramiko.util-module.html#MSG_CHANNEL_OPEN_FAILURE"><a title="paramiko.auth_handler.MSG_CHANNEL_OPEN_FAILURE
-paramiko.channel.MSG_CHANNEL_OPEN_FAILURE
-paramiko.client.MSG_CHANNEL_OPEN_FAILURE
-paramiko.common.MSG_CHANNEL_OPEN_FAILURE
-paramiko.dsskey.MSG_CHANNEL_OPEN_FAILURE
-paramiko.hostkeys.MSG_CHANNEL_OPEN_FAILURE
-paramiko.kex_gex.MSG_CHANNEL_OPEN_FAILURE
-paramiko.kex_group1.MSG_CHANNEL_OPEN_FAILURE
-paramiko.packet.MSG_CHANNEL_OPEN_FAILURE
-paramiko.pkey.MSG_CHANNEL_OPEN_FAILURE
-paramiko.rsakey.MSG_CHANNEL_OPEN_FAILURE
-paramiko.server.MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp.MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp_attr.MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp_client.MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp_file.MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp_handle.MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp_server.MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp_si.MSG_CHANNEL_OPEN_FAILURE
-paramiko.transport.MSG_CHANNEL_OPEN_FAILURE
-paramiko.util.MSG_CHANNEL_OPEN_FAILURE" class="py-name" href="#" onclick="return doclink('link-20', 'MSG_CHANNEL_OPEN_FAILURE', 'link-20');">MSG_CHANNEL_OPEN_FAILURE</a></tt><tt class="py-op">,</tt> \ </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> <tt id="link-21" class="py-name" targets="Variable paramiko.auth_handler.MSG_CHANNEL_WINDOW_ADJUST=paramiko.auth_handler-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.channel.MSG_CHANNEL_WINDOW_ADJUST=paramiko.channel-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.client.MSG_CHANNEL_WINDOW_ADJUST=paramiko.client-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.common.MSG_CHANNEL_WINDOW_ADJUST=paramiko.common-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.dsskey.MSG_CHANNEL_WINDOW_ADJUST=paramiko.dsskey-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.hostkeys.MSG_CHANNEL_WINDOW_ADJUST=paramiko.hostkeys-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.kex_gex.MSG_CHANNEL_WINDOW_ADJUST=paramiko.kex_gex-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.kex_group1.MSG_CHANNEL_WINDOW_ADJUST=paramiko.kex_group1-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.packet.MSG_CHANNEL_WINDOW_ADJUST=paramiko.packet-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.pkey.MSG_CHANNEL_WINDOW_ADJUST=paramiko.pkey-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.rsakey.MSG_CHANNEL_WINDOW_ADJUST=paramiko.rsakey-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.server.MSG_CHANNEL_WINDOW_ADJUST=paramiko.server-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.sftp.MSG_CHANNEL_WINDOW_ADJUST=paramiko.sftp-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.sftp_attr.MSG_CHANNEL_WINDOW_ADJUST=paramiko.sftp_attr-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.sftp_client.MSG_CHANNEL_WINDOW_ADJUST=paramiko.sftp_client-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.sftp_file.MSG_CHANNEL_WINDOW_ADJUST=paramiko.sftp_file-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.sftp_handle.MSG_CHANNEL_WINDOW_ADJUST=paramiko.sftp_handle-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.sftp_server.MSG_CHANNEL_WINDOW_ADJUST=paramiko.sftp_server-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.sftp_si.MSG_CHANNEL_WINDOW_ADJUST=paramiko.sftp_si-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.transport.MSG_CHANNEL_WINDOW_ADJUST=paramiko.transport-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.util.MSG_CHANNEL_WINDOW_ADJUST=paramiko.util-module.html#MSG_CHANNEL_WINDOW_ADJUST"><a title="paramiko.auth_handler.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.channel.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.client.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.common.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.dsskey.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.hostkeys.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.kex_gex.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.kex_group1.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.packet.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.pkey.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.rsakey.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.server.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_attr.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_client.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_file.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_handle.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_server.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_si.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.transport.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.util.MSG_CHANNEL_WINDOW_ADJUST" class="py-name" href="#" onclick="return doclink('link-21', 'MSG_CHANNEL_WINDOW_ADJUST', 'link-21');">MSG_CHANNEL_WINDOW_ADJUST</a></tt><tt class="py-op">,</tt> <tt id="link-22" class="py-name" targets="Variable paramiko.auth_handler.MSG_CHANNEL_DATA=paramiko.auth_handler-module.html#MSG_CHANNEL_DATA,Variable paramiko.channel.MSG_CHANNEL_DATA=paramiko.channel-module.html#MSG_CHANNEL_DATA,Variable paramiko.client.MSG_CHANNEL_DATA=paramiko.client-module.html#MSG_CHANNEL_DATA,Variable paramiko.common.MSG_CHANNEL_DATA=paramiko.common-module.html#MSG_CHANNEL_DATA,Variable paramiko.dsskey.MSG_CHANNEL_DATA=paramiko.dsskey-module.html#MSG_CHANNEL_DATA,Variable paramiko.hostkeys.MSG_CHANNEL_DATA=paramiko.hostkeys-module.html#MSG_CHANNEL_DATA,Variable paramiko.kex_gex.MSG_CHANNEL_DATA=paramiko.kex_gex-module.html#MSG_CHANNEL_DATA,Variable paramiko.kex_group1.MSG_CHANNEL_DATA=paramiko.kex_group1-module.html#MSG_CHANNEL_DATA,Variable paramiko.packet.MSG_CHANNEL_DATA=paramiko.packet-module.html#MSG_CHANNEL_DATA,Variable paramiko.pkey.MSG_CHANNEL_DATA=paramiko.pkey-module.html#MSG_CHANNEL_DATA,Variable paramiko.rsakey.MSG_CHANNEL_DATA=paramiko.rsakey-module.html#MSG_CHANNEL_DATA,Variable paramiko.server.MSG_CHANNEL_DATA=paramiko.server-module.html#MSG_CHANNEL_DATA,Variable paramiko.sftp.MSG_CHANNEL_DATA=paramiko.sftp-module.html#MSG_CHANNEL_DATA,Variable paramiko.sftp_attr.MSG_CHANNEL_DATA=paramiko.sftp_attr-module.html#MSG_CHANNEL_DATA,Variable paramiko.sftp_client.MSG_CHANNEL_DATA=paramiko.sftp_client-module.html#MSG_CHANNEL_DATA,Variable paramiko.sftp_file.MSG_CHANNEL_DATA=paramiko.sftp_file-module.html#MSG_CHANNEL_DATA,Variable paramiko.sftp_handle.MSG_CHANNEL_DATA=paramiko.sftp_handle-module.html#MSG_CHANNEL_DATA,Variable paramiko.sftp_server.MSG_CHANNEL_DATA=paramiko.sftp_server-module.html#MSG_CHANNEL_DATA,Variable paramiko.sftp_si.MSG_CHANNEL_DATA=paramiko.sftp_si-module.html#MSG_CHANNEL_DATA,Variable paramiko.transport.MSG_CHANNEL_DATA=paramiko.transport-module.html#MSG_CHANNEL_DATA,Variable paramiko.util.MSG_CHANNEL_DATA=paramiko.util-module.html#MSG_CHANNEL_DATA"><a title="paramiko.auth_handler.MSG_CHANNEL_DATA
-paramiko.channel.MSG_CHANNEL_DATA
-paramiko.client.MSG_CHANNEL_DATA
-paramiko.common.MSG_CHANNEL_DATA
-paramiko.dsskey.MSG_CHANNEL_DATA
-paramiko.hostkeys.MSG_CHANNEL_DATA
-paramiko.kex_gex.MSG_CHANNEL_DATA
-paramiko.kex_group1.MSG_CHANNEL_DATA
-paramiko.packet.MSG_CHANNEL_DATA
-paramiko.pkey.MSG_CHANNEL_DATA
-paramiko.rsakey.MSG_CHANNEL_DATA
-paramiko.server.MSG_CHANNEL_DATA
-paramiko.sftp.MSG_CHANNEL_DATA
-paramiko.sftp_attr.MSG_CHANNEL_DATA
-paramiko.sftp_client.MSG_CHANNEL_DATA
-paramiko.sftp_file.MSG_CHANNEL_DATA
-paramiko.sftp_handle.MSG_CHANNEL_DATA
-paramiko.sftp_server.MSG_CHANNEL_DATA
-paramiko.sftp_si.MSG_CHANNEL_DATA
-paramiko.transport.MSG_CHANNEL_DATA
-paramiko.util.MSG_CHANNEL_DATA" class="py-name" href="#" onclick="return doclink('link-22', 'MSG_CHANNEL_DATA', 'link-22');">MSG_CHANNEL_DATA</a></tt><tt class="py-op">,</tt> <tt id="link-23" class="py-name" targets="Variable paramiko.auth_handler.MSG_CHANNEL_EXTENDED_DATA=paramiko.auth_handler-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.channel.MSG_CHANNEL_EXTENDED_DATA=paramiko.channel-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.client.MSG_CHANNEL_EXTENDED_DATA=paramiko.client-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.common.MSG_CHANNEL_EXTENDED_DATA=paramiko.common-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.dsskey.MSG_CHANNEL_EXTENDED_DATA=paramiko.dsskey-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.hostkeys.MSG_CHANNEL_EXTENDED_DATA=paramiko.hostkeys-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.kex_gex.MSG_CHANNEL_EXTENDED_DATA=paramiko.kex_gex-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.kex_group1.MSG_CHANNEL_EXTENDED_DATA=paramiko.kex_group1-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.packet.MSG_CHANNEL_EXTENDED_DATA=paramiko.packet-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.pkey.MSG_CHANNEL_EXTENDED_DATA=paramiko.pkey-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.rsakey.MSG_CHANNEL_EXTENDED_DATA=paramiko.rsakey-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.server.MSG_CHANNEL_EXTENDED_DATA=paramiko.server-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.sftp.MSG_CHANNEL_EXTENDED_DATA=paramiko.sftp-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.sftp_attr.MSG_CHANNEL_EXTENDED_DATA=paramiko.sftp_attr-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.sftp_client.MSG_CHANNEL_EXTENDED_DATA=paramiko.sftp_client-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.sftp_file.MSG_CHANNEL_EXTENDED_DATA=paramiko.sftp_file-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.sftp_handle.MSG_CHANNEL_EXTENDED_DATA=paramiko.sftp_handle-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.sftp_server.MSG_CHANNEL_EXTENDED_DATA=paramiko.sftp_server-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.sftp_si.MSG_CHANNEL_EXTENDED_DATA=paramiko.sftp_si-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.transport.MSG_CHANNEL_EXTENDED_DATA=paramiko.transport-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.util.MSG_CHANNEL_EXTENDED_DATA=paramiko.util-module.html#MSG_CHANNEL_EXTENDED_DATA"><a title="paramiko.auth_handler.MSG_CHANNEL_EXTENDED_DATA
-paramiko.channel.MSG_CHANNEL_EXTENDED_DATA
-paramiko.client.MSG_CHANNEL_EXTENDED_DATA
-paramiko.common.MSG_CHANNEL_EXTENDED_DATA
-paramiko.dsskey.MSG_CHANNEL_EXTENDED_DATA
-paramiko.hostkeys.MSG_CHANNEL_EXTENDED_DATA
-paramiko.kex_gex.MSG_CHANNEL_EXTENDED_DATA
-paramiko.kex_group1.MSG_CHANNEL_EXTENDED_DATA
-paramiko.packet.MSG_CHANNEL_EXTENDED_DATA
-paramiko.pkey.MSG_CHANNEL_EXTENDED_DATA
-paramiko.rsakey.MSG_CHANNEL_EXTENDED_DATA
-paramiko.server.MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp.MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp_attr.MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp_client.MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp_file.MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp_handle.MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp_server.MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp_si.MSG_CHANNEL_EXTENDED_DATA
-paramiko.transport.MSG_CHANNEL_EXTENDED_DATA
-paramiko.util.MSG_CHANNEL_EXTENDED_DATA" class="py-name" href="#" onclick="return doclink('link-23', 'MSG_CHANNEL_EXTENDED_DATA', 'link-23');">MSG_CHANNEL_EXTENDED_DATA</a></tt><tt class="py-op">,</tt> \ </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> <tt id="link-24" class="py-name" targets="Variable paramiko.auth_handler.MSG_CHANNEL_EOF=paramiko.auth_handler-module.html#MSG_CHANNEL_EOF,Variable paramiko.channel.MSG_CHANNEL_EOF=paramiko.channel-module.html#MSG_CHANNEL_EOF,Variable paramiko.client.MSG_CHANNEL_EOF=paramiko.client-module.html#MSG_CHANNEL_EOF,Variable paramiko.common.MSG_CHANNEL_EOF=paramiko.common-module.html#MSG_CHANNEL_EOF,Variable paramiko.dsskey.MSG_CHANNEL_EOF=paramiko.dsskey-module.html#MSG_CHANNEL_EOF,Variable paramiko.hostkeys.MSG_CHANNEL_EOF=paramiko.hostkeys-module.html#MSG_CHANNEL_EOF,Variable paramiko.kex_gex.MSG_CHANNEL_EOF=paramiko.kex_gex-module.html#MSG_CHANNEL_EOF,Variable paramiko.kex_group1.MSG_CHANNEL_EOF=paramiko.kex_group1-module.html#MSG_CHANNEL_EOF,Variable paramiko.packet.MSG_CHANNEL_EOF=paramiko.packet-module.html#MSG_CHANNEL_EOF,Variable paramiko.pkey.MSG_CHANNEL_EOF=paramiko.pkey-module.html#MSG_CHANNEL_EOF,Variable paramiko.rsakey.MSG_CHANNEL_EOF=paramiko.rsakey-module.html#MSG_CHANNEL_EOF,Variable paramiko.server.MSG_CHANNEL_EOF=paramiko.server-module.html#MSG_CHANNEL_EOF,Variable paramiko.sftp.MSG_CHANNEL_EOF=paramiko.sftp-module.html#MSG_CHANNEL_EOF,Variable paramiko.sftp_attr.MSG_CHANNEL_EOF=paramiko.sftp_attr-module.html#MSG_CHANNEL_EOF,Variable paramiko.sftp_client.MSG_CHANNEL_EOF=paramiko.sftp_client-module.html#MSG_CHANNEL_EOF,Variable paramiko.sftp_file.MSG_CHANNEL_EOF=paramiko.sftp_file-module.html#MSG_CHANNEL_EOF,Variable paramiko.sftp_handle.MSG_CHANNEL_EOF=paramiko.sftp_handle-module.html#MSG_CHANNEL_EOF,Variable paramiko.sftp_server.MSG_CHANNEL_EOF=paramiko.sftp_server-module.html#MSG_CHANNEL_EOF,Variable paramiko.sftp_si.MSG_CHANNEL_EOF=paramiko.sftp_si-module.html#MSG_CHANNEL_EOF,Variable paramiko.transport.MSG_CHANNEL_EOF=paramiko.transport-module.html#MSG_CHANNEL_EOF,Variable paramiko.util.MSG_CHANNEL_EOF=paramiko.util-module.html#MSG_CHANNEL_EOF"><a title="paramiko.auth_handler.MSG_CHANNEL_EOF
-paramiko.channel.MSG_CHANNEL_EOF
-paramiko.client.MSG_CHANNEL_EOF
-paramiko.common.MSG_CHANNEL_EOF
-paramiko.dsskey.MSG_CHANNEL_EOF
-paramiko.hostkeys.MSG_CHANNEL_EOF
-paramiko.kex_gex.MSG_CHANNEL_EOF
-paramiko.kex_group1.MSG_CHANNEL_EOF
-paramiko.packet.MSG_CHANNEL_EOF
-paramiko.pkey.MSG_CHANNEL_EOF
-paramiko.rsakey.MSG_CHANNEL_EOF
-paramiko.server.MSG_CHANNEL_EOF
-paramiko.sftp.MSG_CHANNEL_EOF
-paramiko.sftp_attr.MSG_CHANNEL_EOF
-paramiko.sftp_client.MSG_CHANNEL_EOF
-paramiko.sftp_file.MSG_CHANNEL_EOF
-paramiko.sftp_handle.MSG_CHANNEL_EOF
-paramiko.sftp_server.MSG_CHANNEL_EOF
-paramiko.sftp_si.MSG_CHANNEL_EOF
-paramiko.transport.MSG_CHANNEL_EOF
-paramiko.util.MSG_CHANNEL_EOF" class="py-name" href="#" onclick="return doclink('link-24', 'MSG_CHANNEL_EOF', 'link-24');">MSG_CHANNEL_EOF</a></tt><tt class="py-op">,</tt> <tt id="link-25" class="py-name" targets="Variable paramiko.auth_handler.MSG_CHANNEL_CLOSE=paramiko.auth_handler-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.channel.MSG_CHANNEL_CLOSE=paramiko.channel-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.client.MSG_CHANNEL_CLOSE=paramiko.client-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.common.MSG_CHANNEL_CLOSE=paramiko.common-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.dsskey.MSG_CHANNEL_CLOSE=paramiko.dsskey-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.hostkeys.MSG_CHANNEL_CLOSE=paramiko.hostkeys-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.kex_gex.MSG_CHANNEL_CLOSE=paramiko.kex_gex-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.kex_group1.MSG_CHANNEL_CLOSE=paramiko.kex_group1-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.packet.MSG_CHANNEL_CLOSE=paramiko.packet-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.pkey.MSG_CHANNEL_CLOSE=paramiko.pkey-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.rsakey.MSG_CHANNEL_CLOSE=paramiko.rsakey-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.server.MSG_CHANNEL_CLOSE=paramiko.server-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.sftp.MSG_CHANNEL_CLOSE=paramiko.sftp-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.sftp_attr.MSG_CHANNEL_CLOSE=paramiko.sftp_attr-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.sftp_client.MSG_CHANNEL_CLOSE=paramiko.sftp_client-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.sftp_file.MSG_CHANNEL_CLOSE=paramiko.sftp_file-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.sftp_handle.MSG_CHANNEL_CLOSE=paramiko.sftp_handle-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.sftp_server.MSG_CHANNEL_CLOSE=paramiko.sftp_server-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.sftp_si.MSG_CHANNEL_CLOSE=paramiko.sftp_si-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.transport.MSG_CHANNEL_CLOSE=paramiko.transport-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.util.MSG_CHANNEL_CLOSE=paramiko.util-module.html#MSG_CHANNEL_CLOSE"><a title="paramiko.auth_handler.MSG_CHANNEL_CLOSE
-paramiko.channel.MSG_CHANNEL_CLOSE
-paramiko.client.MSG_CHANNEL_CLOSE
-paramiko.common.MSG_CHANNEL_CLOSE
-paramiko.dsskey.MSG_CHANNEL_CLOSE
-paramiko.hostkeys.MSG_CHANNEL_CLOSE
-paramiko.kex_gex.MSG_CHANNEL_CLOSE
-paramiko.kex_group1.MSG_CHANNEL_CLOSE
-paramiko.packet.MSG_CHANNEL_CLOSE
-paramiko.pkey.MSG_CHANNEL_CLOSE
-paramiko.rsakey.MSG_CHANNEL_CLOSE
-paramiko.server.MSG_CHANNEL_CLOSE
-paramiko.sftp.MSG_CHANNEL_CLOSE
-paramiko.sftp_attr.MSG_CHANNEL_CLOSE
-paramiko.sftp_client.MSG_CHANNEL_CLOSE
-paramiko.sftp_file.MSG_CHANNEL_CLOSE
-paramiko.sftp_handle.MSG_CHANNEL_CLOSE
-paramiko.sftp_server.MSG_CHANNEL_CLOSE
-paramiko.sftp_si.MSG_CHANNEL_CLOSE
-paramiko.transport.MSG_CHANNEL_CLOSE
-paramiko.util.MSG_CHANNEL_CLOSE" class="py-name" href="#" onclick="return doclink('link-25', 'MSG_CHANNEL_CLOSE', 'link-25');">MSG_CHANNEL_CLOSE</a></tt><tt class="py-op">,</tt> <tt id="link-26" class="py-name" targets="Variable paramiko.auth_handler.MSG_CHANNEL_REQUEST=paramiko.auth_handler-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.channel.MSG_CHANNEL_REQUEST=paramiko.channel-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.client.MSG_CHANNEL_REQUEST=paramiko.client-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.common.MSG_CHANNEL_REQUEST=paramiko.common-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.dsskey.MSG_CHANNEL_REQUEST=paramiko.dsskey-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.hostkeys.MSG_CHANNEL_REQUEST=paramiko.hostkeys-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.kex_gex.MSG_CHANNEL_REQUEST=paramiko.kex_gex-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.kex_group1.MSG_CHANNEL_REQUEST=paramiko.kex_group1-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.packet.MSG_CHANNEL_REQUEST=paramiko.packet-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.pkey.MSG_CHANNEL_REQUEST=paramiko.pkey-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.rsakey.MSG_CHANNEL_REQUEST=paramiko.rsakey-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.server.MSG_CHANNEL_REQUEST=paramiko.server-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.sftp.MSG_CHANNEL_REQUEST=paramiko.sftp-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.sftp_attr.MSG_CHANNEL_REQUEST=paramiko.sftp_attr-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.sftp_client.MSG_CHANNEL_REQUEST=paramiko.sftp_client-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.sftp_file.MSG_CHANNEL_REQUEST=paramiko.sftp_file-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.sftp_handle.MSG_CHANNEL_REQUEST=paramiko.sftp_handle-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.sftp_server.MSG_CHANNEL_REQUEST=paramiko.sftp_server-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.sftp_si.MSG_CHANNEL_REQUEST=paramiko.sftp_si-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.transport.MSG_CHANNEL_REQUEST=paramiko.transport-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.util.MSG_CHANNEL_REQUEST=paramiko.util-module.html#MSG_CHANNEL_REQUEST"><a title="paramiko.auth_handler.MSG_CHANNEL_REQUEST
-paramiko.channel.MSG_CHANNEL_REQUEST
-paramiko.client.MSG_CHANNEL_REQUEST
-paramiko.common.MSG_CHANNEL_REQUEST
-paramiko.dsskey.MSG_CHANNEL_REQUEST
-paramiko.hostkeys.MSG_CHANNEL_REQUEST
-paramiko.kex_gex.MSG_CHANNEL_REQUEST
-paramiko.kex_group1.MSG_CHANNEL_REQUEST
-paramiko.packet.MSG_CHANNEL_REQUEST
-paramiko.pkey.MSG_CHANNEL_REQUEST
-paramiko.rsakey.MSG_CHANNEL_REQUEST
-paramiko.server.MSG_CHANNEL_REQUEST
-paramiko.sftp.MSG_CHANNEL_REQUEST
-paramiko.sftp_attr.MSG_CHANNEL_REQUEST
-paramiko.sftp_client.MSG_CHANNEL_REQUEST
-paramiko.sftp_file.MSG_CHANNEL_REQUEST
-paramiko.sftp_handle.MSG_CHANNEL_REQUEST
-paramiko.sftp_server.MSG_CHANNEL_REQUEST
-paramiko.sftp_si.MSG_CHANNEL_REQUEST
-paramiko.transport.MSG_CHANNEL_REQUEST
-paramiko.util.MSG_CHANNEL_REQUEST" class="py-name" href="#" onclick="return doclink('link-26', 'MSG_CHANNEL_REQUEST', 'link-26');">MSG_CHANNEL_REQUEST</a></tt><tt class="py-op">,</tt> \ </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> <tt id="link-27" class="py-name" targets="Variable paramiko.auth_handler.MSG_CHANNEL_SUCCESS=paramiko.auth_handler-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.channel.MSG_CHANNEL_SUCCESS=paramiko.channel-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.client.MSG_CHANNEL_SUCCESS=paramiko.client-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.common.MSG_CHANNEL_SUCCESS=paramiko.common-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.dsskey.MSG_CHANNEL_SUCCESS=paramiko.dsskey-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.hostkeys.MSG_CHANNEL_SUCCESS=paramiko.hostkeys-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.kex_gex.MSG_CHANNEL_SUCCESS=paramiko.kex_gex-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.kex_group1.MSG_CHANNEL_SUCCESS=paramiko.kex_group1-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.packet.MSG_CHANNEL_SUCCESS=paramiko.packet-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.pkey.MSG_CHANNEL_SUCCESS=paramiko.pkey-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.rsakey.MSG_CHANNEL_SUCCESS=paramiko.rsakey-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.server.MSG_CHANNEL_SUCCESS=paramiko.server-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.sftp.MSG_CHANNEL_SUCCESS=paramiko.sftp-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.sftp_attr.MSG_CHANNEL_SUCCESS=paramiko.sftp_attr-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.sftp_client.MSG_CHANNEL_SUCCESS=paramiko.sftp_client-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.sftp_file.MSG_CHANNEL_SUCCESS=paramiko.sftp_file-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.sftp_handle.MSG_CHANNEL_SUCCESS=paramiko.sftp_handle-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.sftp_server.MSG_CHANNEL_SUCCESS=paramiko.sftp_server-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.sftp_si.MSG_CHANNEL_SUCCESS=paramiko.sftp_si-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.transport.MSG_CHANNEL_SUCCESS=paramiko.transport-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.util.MSG_CHANNEL_SUCCESS=paramiko.util-module.html#MSG_CHANNEL_SUCCESS"><a title="paramiko.auth_handler.MSG_CHANNEL_SUCCESS
-paramiko.channel.MSG_CHANNEL_SUCCESS
-paramiko.client.MSG_CHANNEL_SUCCESS
-paramiko.common.MSG_CHANNEL_SUCCESS
-paramiko.dsskey.MSG_CHANNEL_SUCCESS
-paramiko.hostkeys.MSG_CHANNEL_SUCCESS
-paramiko.kex_gex.MSG_CHANNEL_SUCCESS
-paramiko.kex_group1.MSG_CHANNEL_SUCCESS
-paramiko.packet.MSG_CHANNEL_SUCCESS
-paramiko.pkey.MSG_CHANNEL_SUCCESS
-paramiko.rsakey.MSG_CHANNEL_SUCCESS
-paramiko.server.MSG_CHANNEL_SUCCESS
-paramiko.sftp.MSG_CHANNEL_SUCCESS
-paramiko.sftp_attr.MSG_CHANNEL_SUCCESS
-paramiko.sftp_client.MSG_CHANNEL_SUCCESS
-paramiko.sftp_file.MSG_CHANNEL_SUCCESS
-paramiko.sftp_handle.MSG_CHANNEL_SUCCESS
-paramiko.sftp_server.MSG_CHANNEL_SUCCESS
-paramiko.sftp_si.MSG_CHANNEL_SUCCESS
-paramiko.transport.MSG_CHANNEL_SUCCESS
-paramiko.util.MSG_CHANNEL_SUCCESS" class="py-name" href="#" onclick="return doclink('link-27', 'MSG_CHANNEL_SUCCESS', 'link-27');">MSG_CHANNEL_SUCCESS</a></tt><tt class="py-op">,</tt> <tt id="link-28" class="py-name" targets="Variable paramiko.auth_handler.MSG_CHANNEL_FAILURE=paramiko.auth_handler-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.channel.MSG_CHANNEL_FAILURE=paramiko.channel-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.client.MSG_CHANNEL_FAILURE=paramiko.client-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.common.MSG_CHANNEL_FAILURE=paramiko.common-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.dsskey.MSG_CHANNEL_FAILURE=paramiko.dsskey-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.hostkeys.MSG_CHANNEL_FAILURE=paramiko.hostkeys-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.kex_gex.MSG_CHANNEL_FAILURE=paramiko.kex_gex-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.kex_group1.MSG_CHANNEL_FAILURE=paramiko.kex_group1-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.packet.MSG_CHANNEL_FAILURE=paramiko.packet-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.pkey.MSG_CHANNEL_FAILURE=paramiko.pkey-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.rsakey.MSG_CHANNEL_FAILURE=paramiko.rsakey-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.server.MSG_CHANNEL_FAILURE=paramiko.server-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.sftp.MSG_CHANNEL_FAILURE=paramiko.sftp-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.sftp_attr.MSG_CHANNEL_FAILURE=paramiko.sftp_attr-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.sftp_client.MSG_CHANNEL_FAILURE=paramiko.sftp_client-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.sftp_file.MSG_CHANNEL_FAILURE=paramiko.sftp_file-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.sftp_handle.MSG_CHANNEL_FAILURE=paramiko.sftp_handle-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.sftp_server.MSG_CHANNEL_FAILURE=paramiko.sftp_server-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.sftp_si.MSG_CHANNEL_FAILURE=paramiko.sftp_si-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.transport.MSG_CHANNEL_FAILURE=paramiko.transport-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.util.MSG_CHANNEL_FAILURE=paramiko.util-module.html#MSG_CHANNEL_FAILURE"><a title="paramiko.auth_handler.MSG_CHANNEL_FAILURE
-paramiko.channel.MSG_CHANNEL_FAILURE
-paramiko.client.MSG_CHANNEL_FAILURE
-paramiko.common.MSG_CHANNEL_FAILURE
-paramiko.dsskey.MSG_CHANNEL_FAILURE
-paramiko.hostkeys.MSG_CHANNEL_FAILURE
-paramiko.kex_gex.MSG_CHANNEL_FAILURE
-paramiko.kex_group1.MSG_CHANNEL_FAILURE
-paramiko.packet.MSG_CHANNEL_FAILURE
-paramiko.pkey.MSG_CHANNEL_FAILURE
-paramiko.rsakey.MSG_CHANNEL_FAILURE
-paramiko.server.MSG_CHANNEL_FAILURE
-paramiko.sftp.MSG_CHANNEL_FAILURE
-paramiko.sftp_attr.MSG_CHANNEL_FAILURE
-paramiko.sftp_client.MSG_CHANNEL_FAILURE
-paramiko.sftp_file.MSG_CHANNEL_FAILURE
-paramiko.sftp_handle.MSG_CHANNEL_FAILURE
-paramiko.sftp_server.MSG_CHANNEL_FAILURE
-paramiko.sftp_si.MSG_CHANNEL_FAILURE
-paramiko.transport.MSG_CHANNEL_FAILURE
-paramiko.util.MSG_CHANNEL_FAILURE" class="py-name" href="#" onclick="return doclink('link-28', 'MSG_CHANNEL_FAILURE', 'link-28');">MSG_CHANNEL_FAILURE</a></tt> <tt class="py-op">=</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">90</tt><tt class="py-op">,</tt> <tt class="py-number">101</tt><tt class="py-op">)</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"><tt class="py-comment"># for debugging:</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"><tt id="link-29" class="py-name" targets="Variable paramiko.auth_handler.MSG_NAMES=paramiko.auth_handler-module.html#MSG_NAMES,Variable paramiko.channel.MSG_NAMES=paramiko.channel-module.html#MSG_NAMES,Variable paramiko.client.MSG_NAMES=paramiko.client-module.html#MSG_NAMES,Variable paramiko.common.MSG_NAMES=paramiko.common-module.html#MSG_NAMES,Variable paramiko.dsskey.MSG_NAMES=paramiko.dsskey-module.html#MSG_NAMES,Variable paramiko.hostkeys.MSG_NAMES=paramiko.hostkeys-module.html#MSG_NAMES,Variable paramiko.kex_gex.MSG_NAMES=paramiko.kex_gex-module.html#MSG_NAMES,Variable paramiko.kex_group1.MSG_NAMES=paramiko.kex_group1-module.html#MSG_NAMES,Variable paramiko.packet.MSG_NAMES=paramiko.packet-module.html#MSG_NAMES,Variable paramiko.pkey.MSG_NAMES=paramiko.pkey-module.html#MSG_NAMES,Variable paramiko.rsakey.MSG_NAMES=paramiko.rsakey-module.html#MSG_NAMES,Variable paramiko.server.MSG_NAMES=paramiko.server-module.html#MSG_NAMES,Variable paramiko.sftp.MSG_NAMES=paramiko.sftp-module.html#MSG_NAMES,Variable paramiko.sftp_attr.MSG_NAMES=paramiko.sftp_attr-module.html#MSG_NAMES,Variable paramiko.sftp_client.MSG_NAMES=paramiko.sftp_client-module.html#MSG_NAMES,Variable paramiko.sftp_file.MSG_NAMES=paramiko.sftp_file-module.html#MSG_NAMES,Variable paramiko.sftp_handle.MSG_NAMES=paramiko.sftp_handle-module.html#MSG_NAMES,Variable paramiko.sftp_server.MSG_NAMES=paramiko.sftp_server-module.html#MSG_NAMES,Variable paramiko.sftp_si.MSG_NAMES=paramiko.sftp_si-module.html#MSG_NAMES,Variable paramiko.transport.MSG_NAMES=paramiko.transport-module.html#MSG_NAMES,Variable paramiko.util.MSG_NAMES=paramiko.util-module.html#MSG_NAMES"><a title="paramiko.auth_handler.MSG_NAMES
-paramiko.channel.MSG_NAMES
-paramiko.client.MSG_NAMES
-paramiko.common.MSG_NAMES
-paramiko.dsskey.MSG_NAMES
-paramiko.hostkeys.MSG_NAMES
-paramiko.kex_gex.MSG_NAMES
-paramiko.kex_group1.MSG_NAMES
-paramiko.packet.MSG_NAMES
-paramiko.pkey.MSG_NAMES
-paramiko.rsakey.MSG_NAMES
-paramiko.server.MSG_NAMES
-paramiko.sftp.MSG_NAMES
-paramiko.sftp_attr.MSG_NAMES
-paramiko.sftp_client.MSG_NAMES
-paramiko.sftp_file.MSG_NAMES
-paramiko.sftp_handle.MSG_NAMES
-paramiko.sftp_server.MSG_NAMES
-paramiko.sftp_si.MSG_NAMES
-paramiko.transport.MSG_NAMES
-paramiko.util.MSG_NAMES" class="py-name" href="#" onclick="return doclink('link-29', 'MSG_NAMES', 'link-29');">MSG_NAMES</a></tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> <tt id="link-30" class="py-name"><a title="paramiko.auth_handler.MSG_DISCONNECT
-paramiko.channel.MSG_DISCONNECT
-paramiko.client.MSG_DISCONNECT
-paramiko.common.MSG_DISCONNECT
-paramiko.dsskey.MSG_DISCONNECT
-paramiko.hostkeys.MSG_DISCONNECT
-paramiko.kex_gex.MSG_DISCONNECT
-paramiko.kex_group1.MSG_DISCONNECT
-paramiko.packet.MSG_DISCONNECT
-paramiko.pkey.MSG_DISCONNECT
-paramiko.rsakey.MSG_DISCONNECT
-paramiko.server.MSG_DISCONNECT
-paramiko.sftp.MSG_DISCONNECT
-paramiko.sftp_attr.MSG_DISCONNECT
-paramiko.sftp_client.MSG_DISCONNECT
-paramiko.sftp_file.MSG_DISCONNECT
-paramiko.sftp_handle.MSG_DISCONNECT
-paramiko.sftp_server.MSG_DISCONNECT
-paramiko.sftp_si.MSG_DISCONNECT
-paramiko.transport.MSG_DISCONNECT
-paramiko.util.MSG_DISCONNECT" class="py-name" href="#" onclick="return doclink('link-30', 'MSG_DISCONNECT', 'link-0');">MSG_DISCONNECT</a></tt><tt class="py-op">:</tt> <tt class="py-string">'disconnect'</tt><tt class="py-op">,</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt id="link-31" class="py-name"><a title="paramiko.auth_handler.MSG_IGNORE
-paramiko.channel.MSG_IGNORE
-paramiko.client.MSG_IGNORE
-paramiko.common.MSG_IGNORE
-paramiko.dsskey.MSG_IGNORE
-paramiko.hostkeys.MSG_IGNORE
-paramiko.kex_gex.MSG_IGNORE
-paramiko.kex_group1.MSG_IGNORE
-paramiko.packet.MSG_IGNORE
-paramiko.pkey.MSG_IGNORE
-paramiko.rsakey.MSG_IGNORE
-paramiko.server.MSG_IGNORE
-paramiko.sftp.MSG_IGNORE
-paramiko.sftp_attr.MSG_IGNORE
-paramiko.sftp_client.MSG_IGNORE
-paramiko.sftp_file.MSG_IGNORE
-paramiko.sftp_handle.MSG_IGNORE
-paramiko.sftp_server.MSG_IGNORE
-paramiko.sftp_si.MSG_IGNORE
-paramiko.transport.MSG_IGNORE
-paramiko.util.MSG_IGNORE" class="py-name" href="#" onclick="return doclink('link-31', 'MSG_IGNORE', 'link-1');">MSG_IGNORE</a></tt><tt class="py-op">:</tt> <tt class="py-string">'ignore'</tt><tt class="py-op">,</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt id="link-32" class="py-name"><a title="paramiko.auth_handler.MSG_UNIMPLEMENTED
-paramiko.channel.MSG_UNIMPLEMENTED
-paramiko.client.MSG_UNIMPLEMENTED
-paramiko.common.MSG_UNIMPLEMENTED
-paramiko.dsskey.MSG_UNIMPLEMENTED
-paramiko.hostkeys.MSG_UNIMPLEMENTED
-paramiko.kex_gex.MSG_UNIMPLEMENTED
-paramiko.kex_group1.MSG_UNIMPLEMENTED
-paramiko.packet.MSG_UNIMPLEMENTED
-paramiko.pkey.MSG_UNIMPLEMENTED
-paramiko.rsakey.MSG_UNIMPLEMENTED
-paramiko.server.MSG_UNIMPLEMENTED
-paramiko.sftp.MSG_UNIMPLEMENTED
-paramiko.sftp_attr.MSG_UNIMPLEMENTED
-paramiko.sftp_client.MSG_UNIMPLEMENTED
-paramiko.sftp_file.MSG_UNIMPLEMENTED
-paramiko.sftp_handle.MSG_UNIMPLEMENTED
-paramiko.sftp_server.MSG_UNIMPLEMENTED
-paramiko.sftp_si.MSG_UNIMPLEMENTED
-paramiko.transport.MSG_UNIMPLEMENTED
-paramiko.util.MSG_UNIMPLEMENTED" class="py-name" href="#" onclick="return doclink('link-32', 'MSG_UNIMPLEMENTED', 'link-2');">MSG_UNIMPLEMENTED</a></tt><tt class="py-op">:</tt> <tt class="py-string">'unimplemented'</tt><tt class="py-op">,</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt id="link-33" class="py-name"><a title="paramiko.auth_handler.MSG_DEBUG
-paramiko.channel.MSG_DEBUG
-paramiko.client.MSG_DEBUG
-paramiko.common.MSG_DEBUG
-paramiko.dsskey.MSG_DEBUG
-paramiko.hostkeys.MSG_DEBUG
-paramiko.kex_gex.MSG_DEBUG
-paramiko.kex_group1.MSG_DEBUG
-paramiko.packet.MSG_DEBUG
-paramiko.pkey.MSG_DEBUG
-paramiko.rsakey.MSG_DEBUG
-paramiko.server.MSG_DEBUG
-paramiko.sftp.MSG_DEBUG
-paramiko.sftp_attr.MSG_DEBUG
-paramiko.sftp_client.MSG_DEBUG
-paramiko.sftp_file.MSG_DEBUG
-paramiko.sftp_handle.MSG_DEBUG
-paramiko.sftp_server.MSG_DEBUG
-paramiko.sftp_si.MSG_DEBUG
-paramiko.transport.MSG_DEBUG
-paramiko.util.MSG_DEBUG" class="py-name" href="#" onclick="return doclink('link-33', 'MSG_DEBUG', 'link-3');">MSG_DEBUG</a></tt><tt class="py-op">:</tt> <tt class="py-string">'debug'</tt><tt class="py-op">,</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt id="link-34" class="py-name"><a title="paramiko.auth_handler.MSG_SERVICE_REQUEST
-paramiko.channel.MSG_SERVICE_REQUEST
-paramiko.client.MSG_SERVICE_REQUEST
-paramiko.common.MSG_SERVICE_REQUEST
-paramiko.dsskey.MSG_SERVICE_REQUEST
-paramiko.hostkeys.MSG_SERVICE_REQUEST
-paramiko.kex_gex.MSG_SERVICE_REQUEST
-paramiko.kex_group1.MSG_SERVICE_REQUEST
-paramiko.packet.MSG_SERVICE_REQUEST
-paramiko.pkey.MSG_SERVICE_REQUEST
-paramiko.rsakey.MSG_SERVICE_REQUEST
-paramiko.server.MSG_SERVICE_REQUEST
-paramiko.sftp.MSG_SERVICE_REQUEST
-paramiko.sftp_attr.MSG_SERVICE_REQUEST
-paramiko.sftp_client.MSG_SERVICE_REQUEST
-paramiko.sftp_file.MSG_SERVICE_REQUEST
-paramiko.sftp_handle.MSG_SERVICE_REQUEST
-paramiko.sftp_server.MSG_SERVICE_REQUEST
-paramiko.sftp_si.MSG_SERVICE_REQUEST
-paramiko.transport.MSG_SERVICE_REQUEST
-paramiko.util.MSG_SERVICE_REQUEST" class="py-name" href="#" onclick="return doclink('link-34', 'MSG_SERVICE_REQUEST', 'link-4');">MSG_SERVICE_REQUEST</a></tt><tt class="py-op">:</tt> <tt class="py-string">'service-request'</tt><tt class="py-op">,</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt id="link-35" class="py-name"><a title="paramiko.auth_handler.MSG_SERVICE_ACCEPT
-paramiko.channel.MSG_SERVICE_ACCEPT
-paramiko.client.MSG_SERVICE_ACCEPT
-paramiko.common.MSG_SERVICE_ACCEPT
-paramiko.dsskey.MSG_SERVICE_ACCEPT
-paramiko.hostkeys.MSG_SERVICE_ACCEPT
-paramiko.kex_gex.MSG_SERVICE_ACCEPT
-paramiko.kex_group1.MSG_SERVICE_ACCEPT
-paramiko.packet.MSG_SERVICE_ACCEPT
-paramiko.pkey.MSG_SERVICE_ACCEPT
-paramiko.rsakey.MSG_SERVICE_ACCEPT
-paramiko.server.MSG_SERVICE_ACCEPT
-paramiko.sftp.MSG_SERVICE_ACCEPT
-paramiko.sftp_attr.MSG_SERVICE_ACCEPT
-paramiko.sftp_client.MSG_SERVICE_ACCEPT
-paramiko.sftp_file.MSG_SERVICE_ACCEPT
-paramiko.sftp_handle.MSG_SERVICE_ACCEPT
-paramiko.sftp_server.MSG_SERVICE_ACCEPT
-paramiko.sftp_si.MSG_SERVICE_ACCEPT
-paramiko.transport.MSG_SERVICE_ACCEPT
-paramiko.util.MSG_SERVICE_ACCEPT" class="py-name" href="#" onclick="return doclink('link-35', 'MSG_SERVICE_ACCEPT', 'link-5');">MSG_SERVICE_ACCEPT</a></tt><tt class="py-op">:</tt> <tt class="py-string">'service-accept'</tt><tt class="py-op">,</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt id="link-36" class="py-name"><a title="paramiko.auth_handler.MSG_KEXINIT
-paramiko.channel.MSG_KEXINIT
-paramiko.client.MSG_KEXINIT
-paramiko.common.MSG_KEXINIT
-paramiko.dsskey.MSG_KEXINIT
-paramiko.hostkeys.MSG_KEXINIT
-paramiko.kex_gex.MSG_KEXINIT
-paramiko.kex_group1.MSG_KEXINIT
-paramiko.packet.MSG_KEXINIT
-paramiko.pkey.MSG_KEXINIT
-paramiko.rsakey.MSG_KEXINIT
-paramiko.server.MSG_KEXINIT
-paramiko.sftp.MSG_KEXINIT
-paramiko.sftp_attr.MSG_KEXINIT
-paramiko.sftp_client.MSG_KEXINIT
-paramiko.sftp_file.MSG_KEXINIT
-paramiko.sftp_handle.MSG_KEXINIT
-paramiko.sftp_server.MSG_KEXINIT
-paramiko.sftp_si.MSG_KEXINIT
-paramiko.transport.MSG_KEXINIT
-paramiko.util.MSG_KEXINIT" class="py-name" href="#" onclick="return doclink('link-36', 'MSG_KEXINIT', 'link-6');">MSG_KEXINIT</a></tt><tt class="py-op">:</tt> <tt class="py-string">'kexinit'</tt><tt class="py-op">,</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt id="link-37" class="py-name"><a title="paramiko.auth_handler.MSG_NEWKEYS
-paramiko.channel.MSG_NEWKEYS
-paramiko.client.MSG_NEWKEYS
-paramiko.common.MSG_NEWKEYS
-paramiko.dsskey.MSG_NEWKEYS
-paramiko.hostkeys.MSG_NEWKEYS
-paramiko.kex_gex.MSG_NEWKEYS
-paramiko.kex_group1.MSG_NEWKEYS
-paramiko.packet.MSG_NEWKEYS
-paramiko.pkey.MSG_NEWKEYS
-paramiko.rsakey.MSG_NEWKEYS
-paramiko.server.MSG_NEWKEYS
-paramiko.sftp.MSG_NEWKEYS
-paramiko.sftp_attr.MSG_NEWKEYS
-paramiko.sftp_client.MSG_NEWKEYS
-paramiko.sftp_file.MSG_NEWKEYS
-paramiko.sftp_handle.MSG_NEWKEYS
-paramiko.sftp_server.MSG_NEWKEYS
-paramiko.sftp_si.MSG_NEWKEYS
-paramiko.transport.MSG_NEWKEYS
-paramiko.util.MSG_NEWKEYS" class="py-name" href="#" onclick="return doclink('link-37', 'MSG_NEWKEYS', 'link-7');">MSG_NEWKEYS</a></tt><tt class="py-op">:</tt> <tt class="py-string">'newkeys'</tt><tt class="py-op">,</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-number">30</tt><tt class="py-op">:</tt> <tt class="py-string">'kex30'</tt><tt class="py-op">,</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-number">31</tt><tt class="py-op">:</tt> <tt class="py-string">'kex31'</tt><tt class="py-op">,</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-number">32</tt><tt class="py-op">:</tt> <tt class="py-string">'kex32'</tt><tt class="py-op">,</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-number">33</tt><tt class="py-op">:</tt> <tt class="py-string">'kex33'</tt><tt class="py-op">,</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-number">34</tt><tt class="py-op">:</tt> <tt class="py-string">'kex34'</tt><tt class="py-op">,</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt id="link-38" class="py-name"><a title="paramiko.auth_handler.MSG_USERAUTH_REQUEST
-paramiko.channel.MSG_USERAUTH_REQUEST
-paramiko.client.MSG_USERAUTH_REQUEST
-paramiko.common.MSG_USERAUTH_REQUEST
-paramiko.dsskey.MSG_USERAUTH_REQUEST
-paramiko.hostkeys.MSG_USERAUTH_REQUEST
-paramiko.kex_gex.MSG_USERAUTH_REQUEST
-paramiko.kex_group1.MSG_USERAUTH_REQUEST
-paramiko.packet.MSG_USERAUTH_REQUEST
-paramiko.pkey.MSG_USERAUTH_REQUEST
-paramiko.rsakey.MSG_USERAUTH_REQUEST
-paramiko.server.MSG_USERAUTH_REQUEST
-paramiko.sftp.MSG_USERAUTH_REQUEST
-paramiko.sftp_attr.MSG_USERAUTH_REQUEST
-paramiko.sftp_client.MSG_USERAUTH_REQUEST
-paramiko.sftp_file.MSG_USERAUTH_REQUEST
-paramiko.sftp_handle.MSG_USERAUTH_REQUEST
-paramiko.sftp_server.MSG_USERAUTH_REQUEST
-paramiko.sftp_si.MSG_USERAUTH_REQUEST
-paramiko.transport.MSG_USERAUTH_REQUEST
-paramiko.util.MSG_USERAUTH_REQUEST" class="py-name" href="#" onclick="return doclink('link-38', 'MSG_USERAUTH_REQUEST', 'link-8');">MSG_USERAUTH_REQUEST</a></tt><tt class="py-op">:</tt> <tt class="py-string">'userauth-request'</tt><tt class="py-op">,</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt id="link-39" class="py-name"><a title="paramiko.auth_handler.MSG_USERAUTH_FAILURE
-paramiko.channel.MSG_USERAUTH_FAILURE
-paramiko.client.MSG_USERAUTH_FAILURE
-paramiko.common.MSG_USERAUTH_FAILURE
-paramiko.dsskey.MSG_USERAUTH_FAILURE
-paramiko.hostkeys.MSG_USERAUTH_FAILURE
-paramiko.kex_gex.MSG_USERAUTH_FAILURE
-paramiko.kex_group1.MSG_USERAUTH_FAILURE
-paramiko.packet.MSG_USERAUTH_FAILURE
-paramiko.pkey.MSG_USERAUTH_FAILURE
-paramiko.rsakey.MSG_USERAUTH_FAILURE
-paramiko.server.MSG_USERAUTH_FAILURE
-paramiko.sftp.MSG_USERAUTH_FAILURE
-paramiko.sftp_attr.MSG_USERAUTH_FAILURE
-paramiko.sftp_client.MSG_USERAUTH_FAILURE
-paramiko.sftp_file.MSG_USERAUTH_FAILURE
-paramiko.sftp_handle.MSG_USERAUTH_FAILURE
-paramiko.sftp_server.MSG_USERAUTH_FAILURE
-paramiko.sftp_si.MSG_USERAUTH_FAILURE
-paramiko.transport.MSG_USERAUTH_FAILURE
-paramiko.util.MSG_USERAUTH_FAILURE" class="py-name" href="#" onclick="return doclink('link-39', 'MSG_USERAUTH_FAILURE', 'link-9');">MSG_USERAUTH_FAILURE</a></tt><tt class="py-op">:</tt> <tt class="py-string">'userauth-failure'</tt><tt class="py-op">,</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt id="link-40" class="py-name"><a title="paramiko.auth_handler.MSG_USERAUTH_SUCCESS
-paramiko.channel.MSG_USERAUTH_SUCCESS
-paramiko.client.MSG_USERAUTH_SUCCESS
-paramiko.common.MSG_USERAUTH_SUCCESS
-paramiko.dsskey.MSG_USERAUTH_SUCCESS
-paramiko.hostkeys.MSG_USERAUTH_SUCCESS
-paramiko.kex_gex.MSG_USERAUTH_SUCCESS
-paramiko.kex_group1.MSG_USERAUTH_SUCCESS
-paramiko.packet.MSG_USERAUTH_SUCCESS
-paramiko.pkey.MSG_USERAUTH_SUCCESS
-paramiko.rsakey.MSG_USERAUTH_SUCCESS
-paramiko.server.MSG_USERAUTH_SUCCESS
-paramiko.sftp.MSG_USERAUTH_SUCCESS
-paramiko.sftp_attr.MSG_USERAUTH_SUCCESS
-paramiko.sftp_client.MSG_USERAUTH_SUCCESS
-paramiko.sftp_file.MSG_USERAUTH_SUCCESS
-paramiko.sftp_handle.MSG_USERAUTH_SUCCESS
-paramiko.sftp_server.MSG_USERAUTH_SUCCESS
-paramiko.sftp_si.MSG_USERAUTH_SUCCESS
-paramiko.transport.MSG_USERAUTH_SUCCESS
-paramiko.util.MSG_USERAUTH_SUCCESS" class="py-name" href="#" onclick="return doclink('link-40', 'MSG_USERAUTH_SUCCESS', 'link-10');">MSG_USERAUTH_SUCCESS</a></tt><tt class="py-op">:</tt> <tt class="py-string">'userauth-success'</tt><tt class="py-op">,</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt id="link-41" class="py-name"><a title="paramiko.auth_handler.MSG_USERAUTH_BANNER
-paramiko.channel.MSG_USERAUTH_BANNER
-paramiko.client.MSG_USERAUTH_BANNER
-paramiko.common.MSG_USERAUTH_BANNER
-paramiko.dsskey.MSG_USERAUTH_BANNER
-paramiko.hostkeys.MSG_USERAUTH_BANNER
-paramiko.kex_gex.MSG_USERAUTH_BANNER
-paramiko.kex_group1.MSG_USERAUTH_BANNER
-paramiko.packet.MSG_USERAUTH_BANNER
-paramiko.pkey.MSG_USERAUTH_BANNER
-paramiko.rsakey.MSG_USERAUTH_BANNER
-paramiko.server.MSG_USERAUTH_BANNER
-paramiko.sftp.MSG_USERAUTH_BANNER
-paramiko.sftp_attr.MSG_USERAUTH_BANNER
-paramiko.sftp_client.MSG_USERAUTH_BANNER
-paramiko.sftp_file.MSG_USERAUTH_BANNER
-paramiko.sftp_handle.MSG_USERAUTH_BANNER
-paramiko.sftp_server.MSG_USERAUTH_BANNER
-paramiko.sftp_si.MSG_USERAUTH_BANNER
-paramiko.transport.MSG_USERAUTH_BANNER
-paramiko.util.MSG_USERAUTH_BANNER" class="py-name" href="#" onclick="return doclink('link-41', 'MSG_USERAUTH_BANNER', 'link-11');">MSG_USERAUTH_BANNER</a></tt><tt class="py-op">:</tt> <tt class="py-string">'userauth--banner'</tt><tt class="py-op">,</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt id="link-42" class="py-name"><a title="paramiko.auth_handler.MSG_USERAUTH_PK_OK
-paramiko.channel.MSG_USERAUTH_PK_OK
-paramiko.client.MSG_USERAUTH_PK_OK
-paramiko.common.MSG_USERAUTH_PK_OK
-paramiko.dsskey.MSG_USERAUTH_PK_OK
-paramiko.hostkeys.MSG_USERAUTH_PK_OK
-paramiko.kex_gex.MSG_USERAUTH_PK_OK
-paramiko.kex_group1.MSG_USERAUTH_PK_OK
-paramiko.packet.MSG_USERAUTH_PK_OK
-paramiko.pkey.MSG_USERAUTH_PK_OK
-paramiko.rsakey.MSG_USERAUTH_PK_OK
-paramiko.server.MSG_USERAUTH_PK_OK
-paramiko.sftp.MSG_USERAUTH_PK_OK
-paramiko.sftp_attr.MSG_USERAUTH_PK_OK
-paramiko.sftp_client.MSG_USERAUTH_PK_OK
-paramiko.sftp_file.MSG_USERAUTH_PK_OK
-paramiko.sftp_handle.MSG_USERAUTH_PK_OK
-paramiko.sftp_server.MSG_USERAUTH_PK_OK
-paramiko.sftp_si.MSG_USERAUTH_PK_OK
-paramiko.transport.MSG_USERAUTH_PK_OK
-paramiko.util.MSG_USERAUTH_PK_OK" class="py-name" href="#" onclick="return doclink('link-42', 'MSG_USERAUTH_PK_OK', 'link-12');">MSG_USERAUTH_PK_OK</a></tt><tt class="py-op">:</tt> <tt class="py-string">'userauth-60(pk-ok/info-request)'</tt><tt class="py-op">,</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt id="link-43" class="py-name"><a title="paramiko.auth_handler.MSG_USERAUTH_INFO_RESPONSE
-paramiko.channel.MSG_USERAUTH_INFO_RESPONSE
-paramiko.client.MSG_USERAUTH_INFO_RESPONSE
-paramiko.common.MSG_USERAUTH_INFO_RESPONSE
-paramiko.dsskey.MSG_USERAUTH_INFO_RESPONSE
-paramiko.hostkeys.MSG_USERAUTH_INFO_RESPONSE
-paramiko.kex_gex.MSG_USERAUTH_INFO_RESPONSE
-paramiko.kex_group1.MSG_USERAUTH_INFO_RESPONSE
-paramiko.packet.MSG_USERAUTH_INFO_RESPONSE
-paramiko.pkey.MSG_USERAUTH_INFO_RESPONSE
-paramiko.rsakey.MSG_USERAUTH_INFO_RESPONSE
-paramiko.server.MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp.MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp_attr.MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp_client.MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp_file.MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp_handle.MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp_server.MSG_USERAUTH_INFO_RESPONSE
-paramiko.sftp_si.MSG_USERAUTH_INFO_RESPONSE
-paramiko.transport.MSG_USERAUTH_INFO_RESPONSE
-paramiko.util.MSG_USERAUTH_INFO_RESPONSE" class="py-name" href="#" onclick="return doclink('link-43', 'MSG_USERAUTH_INFO_RESPONSE', 'link-14');">MSG_USERAUTH_INFO_RESPONSE</a></tt><tt class="py-op">:</tt> <tt class="py-string">'userauth-info-response'</tt><tt class="py-op">,</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt id="link-44" class="py-name"><a title="paramiko.auth_handler.MSG_GLOBAL_REQUEST
-paramiko.channel.MSG_GLOBAL_REQUEST
-paramiko.client.MSG_GLOBAL_REQUEST
-paramiko.common.MSG_GLOBAL_REQUEST
-paramiko.dsskey.MSG_GLOBAL_REQUEST
-paramiko.hostkeys.MSG_GLOBAL_REQUEST
-paramiko.kex_gex.MSG_GLOBAL_REQUEST
-paramiko.kex_group1.MSG_GLOBAL_REQUEST
-paramiko.packet.MSG_GLOBAL_REQUEST
-paramiko.pkey.MSG_GLOBAL_REQUEST
-paramiko.rsakey.MSG_GLOBAL_REQUEST
-paramiko.server.MSG_GLOBAL_REQUEST
-paramiko.sftp.MSG_GLOBAL_REQUEST
-paramiko.sftp_attr.MSG_GLOBAL_REQUEST
-paramiko.sftp_client.MSG_GLOBAL_REQUEST
-paramiko.sftp_file.MSG_GLOBAL_REQUEST
-paramiko.sftp_handle.MSG_GLOBAL_REQUEST
-paramiko.sftp_server.MSG_GLOBAL_REQUEST
-paramiko.sftp_si.MSG_GLOBAL_REQUEST
-paramiko.transport.MSG_GLOBAL_REQUEST
-paramiko.util.MSG_GLOBAL_REQUEST" class="py-name" href="#" onclick="return doclink('link-44', 'MSG_GLOBAL_REQUEST', 'link-15');">MSG_GLOBAL_REQUEST</a></tt><tt class="py-op">:</tt> <tt class="py-string">'global-request'</tt><tt class="py-op">,</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt id="link-45" class="py-name"><a title="paramiko.auth_handler.MSG_REQUEST_SUCCESS
-paramiko.channel.MSG_REQUEST_SUCCESS
-paramiko.client.MSG_REQUEST_SUCCESS
-paramiko.common.MSG_REQUEST_SUCCESS
-paramiko.dsskey.MSG_REQUEST_SUCCESS
-paramiko.hostkeys.MSG_REQUEST_SUCCESS
-paramiko.kex_gex.MSG_REQUEST_SUCCESS
-paramiko.kex_group1.MSG_REQUEST_SUCCESS
-paramiko.packet.MSG_REQUEST_SUCCESS
-paramiko.pkey.MSG_REQUEST_SUCCESS
-paramiko.rsakey.MSG_REQUEST_SUCCESS
-paramiko.server.MSG_REQUEST_SUCCESS
-paramiko.sftp.MSG_REQUEST_SUCCESS
-paramiko.sftp_attr.MSG_REQUEST_SUCCESS
-paramiko.sftp_client.MSG_REQUEST_SUCCESS
-paramiko.sftp_file.MSG_REQUEST_SUCCESS
-paramiko.sftp_handle.MSG_REQUEST_SUCCESS
-paramiko.sftp_server.MSG_REQUEST_SUCCESS
-paramiko.sftp_si.MSG_REQUEST_SUCCESS
-paramiko.transport.MSG_REQUEST_SUCCESS
-paramiko.util.MSG_REQUEST_SUCCESS" class="py-name" href="#" onclick="return doclink('link-45', 'MSG_REQUEST_SUCCESS', 'link-16');">MSG_REQUEST_SUCCESS</a></tt><tt class="py-op">:</tt> <tt class="py-string">'request-success'</tt><tt class="py-op">,</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt id="link-46" class="py-name"><a title="paramiko.auth_handler.MSG_REQUEST_FAILURE
-paramiko.channel.MSG_REQUEST_FAILURE
-paramiko.client.MSG_REQUEST_FAILURE
-paramiko.common.MSG_REQUEST_FAILURE
-paramiko.dsskey.MSG_REQUEST_FAILURE
-paramiko.hostkeys.MSG_REQUEST_FAILURE
-paramiko.kex_gex.MSG_REQUEST_FAILURE
-paramiko.kex_group1.MSG_REQUEST_FAILURE
-paramiko.packet.MSG_REQUEST_FAILURE
-paramiko.pkey.MSG_REQUEST_FAILURE
-paramiko.rsakey.MSG_REQUEST_FAILURE
-paramiko.server.MSG_REQUEST_FAILURE
-paramiko.sftp.MSG_REQUEST_FAILURE
-paramiko.sftp_attr.MSG_REQUEST_FAILURE
-paramiko.sftp_client.MSG_REQUEST_FAILURE
-paramiko.sftp_file.MSG_REQUEST_FAILURE
-paramiko.sftp_handle.MSG_REQUEST_FAILURE
-paramiko.sftp_server.MSG_REQUEST_FAILURE
-paramiko.sftp_si.MSG_REQUEST_FAILURE
-paramiko.transport.MSG_REQUEST_FAILURE
-paramiko.util.MSG_REQUEST_FAILURE" class="py-name" href="#" onclick="return doclink('link-46', 'MSG_REQUEST_FAILURE', 'link-17');">MSG_REQUEST_FAILURE</a></tt><tt class="py-op">:</tt> <tt class="py-string">'request-failure'</tt><tt class="py-op">,</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt id="link-47" class="py-name"><a title="paramiko.auth_handler.MSG_CHANNEL_OPEN
-paramiko.channel.MSG_CHANNEL_OPEN
-paramiko.client.MSG_CHANNEL_OPEN
-paramiko.common.MSG_CHANNEL_OPEN
-paramiko.dsskey.MSG_CHANNEL_OPEN
-paramiko.hostkeys.MSG_CHANNEL_OPEN
-paramiko.kex_gex.MSG_CHANNEL_OPEN
-paramiko.kex_group1.MSG_CHANNEL_OPEN
-paramiko.packet.MSG_CHANNEL_OPEN
-paramiko.pkey.MSG_CHANNEL_OPEN
-paramiko.rsakey.MSG_CHANNEL_OPEN
-paramiko.server.MSG_CHANNEL_OPEN
-paramiko.sftp.MSG_CHANNEL_OPEN
-paramiko.sftp_attr.MSG_CHANNEL_OPEN
-paramiko.sftp_client.MSG_CHANNEL_OPEN
-paramiko.sftp_file.MSG_CHANNEL_OPEN
-paramiko.sftp_handle.MSG_CHANNEL_OPEN
-paramiko.sftp_server.MSG_CHANNEL_OPEN
-paramiko.sftp_si.MSG_CHANNEL_OPEN
-paramiko.transport.MSG_CHANNEL_OPEN
-paramiko.util.MSG_CHANNEL_OPEN" class="py-name" href="#" onclick="return doclink('link-47', 'MSG_CHANNEL_OPEN', 'link-18');">MSG_CHANNEL_OPEN</a></tt><tt class="py-op">:</tt> <tt class="py-string">'channel-open'</tt><tt class="py-op">,</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt id="link-48" class="py-name"><a title="paramiko.auth_handler.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.channel.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.client.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.common.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.dsskey.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.hostkeys.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.kex_gex.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.kex_group1.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.packet.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.pkey.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.rsakey.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.server.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp_attr.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp_client.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp_file.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp_handle.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp_server.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp_si.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.transport.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.util.MSG_CHANNEL_OPEN_SUCCESS" class="py-name" href="#" onclick="return doclink('link-48', 'MSG_CHANNEL_OPEN_SUCCESS', 'link-19');">MSG_CHANNEL_OPEN_SUCCESS</a></tt><tt class="py-op">:</tt> <tt class="py-string">'channel-open-success'</tt><tt class="py-op">,</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt id="link-49" class="py-name"><a title="paramiko.auth_handler.MSG_CHANNEL_OPEN_FAILURE
-paramiko.channel.MSG_CHANNEL_OPEN_FAILURE
-paramiko.client.MSG_CHANNEL_OPEN_FAILURE
-paramiko.common.MSG_CHANNEL_OPEN_FAILURE
-paramiko.dsskey.MSG_CHANNEL_OPEN_FAILURE
-paramiko.hostkeys.MSG_CHANNEL_OPEN_FAILURE
-paramiko.kex_gex.MSG_CHANNEL_OPEN_FAILURE
-paramiko.kex_group1.MSG_CHANNEL_OPEN_FAILURE
-paramiko.packet.MSG_CHANNEL_OPEN_FAILURE
-paramiko.pkey.MSG_CHANNEL_OPEN_FAILURE
-paramiko.rsakey.MSG_CHANNEL_OPEN_FAILURE
-paramiko.server.MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp.MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp_attr.MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp_client.MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp_file.MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp_handle.MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp_server.MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp_si.MSG_CHANNEL_OPEN_FAILURE
-paramiko.transport.MSG_CHANNEL_OPEN_FAILURE
-paramiko.util.MSG_CHANNEL_OPEN_FAILURE" class="py-name" href="#" onclick="return doclink('link-49', 'MSG_CHANNEL_OPEN_FAILURE', 'link-20');">MSG_CHANNEL_OPEN_FAILURE</a></tt><tt class="py-op">:</tt> <tt class="py-string">'channel-open-failure'</tt><tt class="py-op">,</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt id="link-50" class="py-name"><a title="paramiko.auth_handler.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.channel.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.client.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.common.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.dsskey.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.hostkeys.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.kex_gex.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.kex_group1.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.packet.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.pkey.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.rsakey.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.server.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_attr.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_client.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_file.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_handle.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_server.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_si.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.transport.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.util.MSG_CHANNEL_WINDOW_ADJUST" class="py-name" href="#" onclick="return doclink('link-50', 'MSG_CHANNEL_WINDOW_ADJUST', 'link-21');">MSG_CHANNEL_WINDOW_ADJUST</a></tt><tt class="py-op">:</tt> <tt class="py-string">'channel-window-adjust'</tt><tt class="py-op">,</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt id="link-51" class="py-name"><a title="paramiko.auth_handler.MSG_CHANNEL_DATA
-paramiko.channel.MSG_CHANNEL_DATA
-paramiko.client.MSG_CHANNEL_DATA
-paramiko.common.MSG_CHANNEL_DATA
-paramiko.dsskey.MSG_CHANNEL_DATA
-paramiko.hostkeys.MSG_CHANNEL_DATA
-paramiko.kex_gex.MSG_CHANNEL_DATA
-paramiko.kex_group1.MSG_CHANNEL_DATA
-paramiko.packet.MSG_CHANNEL_DATA
-paramiko.pkey.MSG_CHANNEL_DATA
-paramiko.rsakey.MSG_CHANNEL_DATA
-paramiko.server.MSG_CHANNEL_DATA
-paramiko.sftp.MSG_CHANNEL_DATA
-paramiko.sftp_attr.MSG_CHANNEL_DATA
-paramiko.sftp_client.MSG_CHANNEL_DATA
-paramiko.sftp_file.MSG_CHANNEL_DATA
-paramiko.sftp_handle.MSG_CHANNEL_DATA
-paramiko.sftp_server.MSG_CHANNEL_DATA
-paramiko.sftp_si.MSG_CHANNEL_DATA
-paramiko.transport.MSG_CHANNEL_DATA
-paramiko.util.MSG_CHANNEL_DATA" class="py-name" href="#" onclick="return doclink('link-51', 'MSG_CHANNEL_DATA', 'link-22');">MSG_CHANNEL_DATA</a></tt><tt class="py-op">:</tt> <tt class="py-string">'channel-data'</tt><tt class="py-op">,</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt id="link-52" class="py-name"><a title="paramiko.auth_handler.MSG_CHANNEL_EXTENDED_DATA
-paramiko.channel.MSG_CHANNEL_EXTENDED_DATA
-paramiko.client.MSG_CHANNEL_EXTENDED_DATA
-paramiko.common.MSG_CHANNEL_EXTENDED_DATA
-paramiko.dsskey.MSG_CHANNEL_EXTENDED_DATA
-paramiko.hostkeys.MSG_CHANNEL_EXTENDED_DATA
-paramiko.kex_gex.MSG_CHANNEL_EXTENDED_DATA
-paramiko.kex_group1.MSG_CHANNEL_EXTENDED_DATA
-paramiko.packet.MSG_CHANNEL_EXTENDED_DATA
-paramiko.pkey.MSG_CHANNEL_EXTENDED_DATA
-paramiko.rsakey.MSG_CHANNEL_EXTENDED_DATA
-paramiko.server.MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp.MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp_attr.MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp_client.MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp_file.MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp_handle.MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp_server.MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp_si.MSG_CHANNEL_EXTENDED_DATA
-paramiko.transport.MSG_CHANNEL_EXTENDED_DATA
-paramiko.util.MSG_CHANNEL_EXTENDED_DATA" class="py-name" href="#" onclick="return doclink('link-52', 'MSG_CHANNEL_EXTENDED_DATA', 'link-23');">MSG_CHANNEL_EXTENDED_DATA</a></tt><tt class="py-op">:</tt> <tt class="py-string">'channel-extended-data'</tt><tt class="py-op">,</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt id="link-53" class="py-name"><a title="paramiko.auth_handler.MSG_CHANNEL_EOF
-paramiko.channel.MSG_CHANNEL_EOF
-paramiko.client.MSG_CHANNEL_EOF
-paramiko.common.MSG_CHANNEL_EOF
-paramiko.dsskey.MSG_CHANNEL_EOF
-paramiko.hostkeys.MSG_CHANNEL_EOF
-paramiko.kex_gex.MSG_CHANNEL_EOF
-paramiko.kex_group1.MSG_CHANNEL_EOF
-paramiko.packet.MSG_CHANNEL_EOF
-paramiko.pkey.MSG_CHANNEL_EOF
-paramiko.rsakey.MSG_CHANNEL_EOF
-paramiko.server.MSG_CHANNEL_EOF
-paramiko.sftp.MSG_CHANNEL_EOF
-paramiko.sftp_attr.MSG_CHANNEL_EOF
-paramiko.sftp_client.MSG_CHANNEL_EOF
-paramiko.sftp_file.MSG_CHANNEL_EOF
-paramiko.sftp_handle.MSG_CHANNEL_EOF
-paramiko.sftp_server.MSG_CHANNEL_EOF
-paramiko.sftp_si.MSG_CHANNEL_EOF
-paramiko.transport.MSG_CHANNEL_EOF
-paramiko.util.MSG_CHANNEL_EOF" class="py-name" href="#" onclick="return doclink('link-53', 'MSG_CHANNEL_EOF', 'link-24');">MSG_CHANNEL_EOF</a></tt><tt class="py-op">:</tt> <tt class="py-string">'channel-eof'</tt><tt class="py-op">,</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt id="link-54" class="py-name"><a title="paramiko.auth_handler.MSG_CHANNEL_CLOSE
-paramiko.channel.MSG_CHANNEL_CLOSE
-paramiko.client.MSG_CHANNEL_CLOSE
-paramiko.common.MSG_CHANNEL_CLOSE
-paramiko.dsskey.MSG_CHANNEL_CLOSE
-paramiko.hostkeys.MSG_CHANNEL_CLOSE
-paramiko.kex_gex.MSG_CHANNEL_CLOSE
-paramiko.kex_group1.MSG_CHANNEL_CLOSE
-paramiko.packet.MSG_CHANNEL_CLOSE
-paramiko.pkey.MSG_CHANNEL_CLOSE
-paramiko.rsakey.MSG_CHANNEL_CLOSE
-paramiko.server.MSG_CHANNEL_CLOSE
-paramiko.sftp.MSG_CHANNEL_CLOSE
-paramiko.sftp_attr.MSG_CHANNEL_CLOSE
-paramiko.sftp_client.MSG_CHANNEL_CLOSE
-paramiko.sftp_file.MSG_CHANNEL_CLOSE
-paramiko.sftp_handle.MSG_CHANNEL_CLOSE
-paramiko.sftp_server.MSG_CHANNEL_CLOSE
-paramiko.sftp_si.MSG_CHANNEL_CLOSE
-paramiko.transport.MSG_CHANNEL_CLOSE
-paramiko.util.MSG_CHANNEL_CLOSE" class="py-name" href="#" onclick="return doclink('link-54', 'MSG_CHANNEL_CLOSE', 'link-25');">MSG_CHANNEL_CLOSE</a></tt><tt class="py-op">:</tt> <tt class="py-string">'channel-close'</tt><tt class="py-op">,</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt id="link-55" class="py-name"><a title="paramiko.auth_handler.MSG_CHANNEL_REQUEST
-paramiko.channel.MSG_CHANNEL_REQUEST
-paramiko.client.MSG_CHANNEL_REQUEST
-paramiko.common.MSG_CHANNEL_REQUEST
-paramiko.dsskey.MSG_CHANNEL_REQUEST
-paramiko.hostkeys.MSG_CHANNEL_REQUEST
-paramiko.kex_gex.MSG_CHANNEL_REQUEST
-paramiko.kex_group1.MSG_CHANNEL_REQUEST
-paramiko.packet.MSG_CHANNEL_REQUEST
-paramiko.pkey.MSG_CHANNEL_REQUEST
-paramiko.rsakey.MSG_CHANNEL_REQUEST
-paramiko.server.MSG_CHANNEL_REQUEST
-paramiko.sftp.MSG_CHANNEL_REQUEST
-paramiko.sftp_attr.MSG_CHANNEL_REQUEST
-paramiko.sftp_client.MSG_CHANNEL_REQUEST
-paramiko.sftp_file.MSG_CHANNEL_REQUEST
-paramiko.sftp_handle.MSG_CHANNEL_REQUEST
-paramiko.sftp_server.MSG_CHANNEL_REQUEST
-paramiko.sftp_si.MSG_CHANNEL_REQUEST
-paramiko.transport.MSG_CHANNEL_REQUEST
-paramiko.util.MSG_CHANNEL_REQUEST" class="py-name" href="#" onclick="return doclink('link-55', 'MSG_CHANNEL_REQUEST', 'link-26');">MSG_CHANNEL_REQUEST</a></tt><tt class="py-op">:</tt> <tt class="py-string">'channel-request'</tt><tt class="py-op">,</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt id="link-56" class="py-name"><a title="paramiko.auth_handler.MSG_CHANNEL_SUCCESS
-paramiko.channel.MSG_CHANNEL_SUCCESS
-paramiko.client.MSG_CHANNEL_SUCCESS
-paramiko.common.MSG_CHANNEL_SUCCESS
-paramiko.dsskey.MSG_CHANNEL_SUCCESS
-paramiko.hostkeys.MSG_CHANNEL_SUCCESS
-paramiko.kex_gex.MSG_CHANNEL_SUCCESS
-paramiko.kex_group1.MSG_CHANNEL_SUCCESS
-paramiko.packet.MSG_CHANNEL_SUCCESS
-paramiko.pkey.MSG_CHANNEL_SUCCESS
-paramiko.rsakey.MSG_CHANNEL_SUCCESS
-paramiko.server.MSG_CHANNEL_SUCCESS
-paramiko.sftp.MSG_CHANNEL_SUCCESS
-paramiko.sftp_attr.MSG_CHANNEL_SUCCESS
-paramiko.sftp_client.MSG_CHANNEL_SUCCESS
-paramiko.sftp_file.MSG_CHANNEL_SUCCESS
-paramiko.sftp_handle.MSG_CHANNEL_SUCCESS
-paramiko.sftp_server.MSG_CHANNEL_SUCCESS
-paramiko.sftp_si.MSG_CHANNEL_SUCCESS
-paramiko.transport.MSG_CHANNEL_SUCCESS
-paramiko.util.MSG_CHANNEL_SUCCESS" class="py-name" href="#" onclick="return doclink('link-56', 'MSG_CHANNEL_SUCCESS', 'link-27');">MSG_CHANNEL_SUCCESS</a></tt><tt class="py-op">:</tt> <tt class="py-string">'channel-success'</tt><tt class="py-op">,</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt id="link-57" class="py-name"><a title="paramiko.auth_handler.MSG_CHANNEL_FAILURE
-paramiko.channel.MSG_CHANNEL_FAILURE
-paramiko.client.MSG_CHANNEL_FAILURE
-paramiko.common.MSG_CHANNEL_FAILURE
-paramiko.dsskey.MSG_CHANNEL_FAILURE
-paramiko.hostkeys.MSG_CHANNEL_FAILURE
-paramiko.kex_gex.MSG_CHANNEL_FAILURE
-paramiko.kex_group1.MSG_CHANNEL_FAILURE
-paramiko.packet.MSG_CHANNEL_FAILURE
-paramiko.pkey.MSG_CHANNEL_FAILURE
-paramiko.rsakey.MSG_CHANNEL_FAILURE
-paramiko.server.MSG_CHANNEL_FAILURE
-paramiko.sftp.MSG_CHANNEL_FAILURE
-paramiko.sftp_attr.MSG_CHANNEL_FAILURE
-paramiko.sftp_client.MSG_CHANNEL_FAILURE
-paramiko.sftp_file.MSG_CHANNEL_FAILURE
-paramiko.sftp_handle.MSG_CHANNEL_FAILURE
-paramiko.sftp_server.MSG_CHANNEL_FAILURE
-paramiko.sftp_si.MSG_CHANNEL_FAILURE
-paramiko.transport.MSG_CHANNEL_FAILURE
-paramiko.util.MSG_CHANNEL_FAILURE" class="py-name" href="#" onclick="return doclink('link-57', 'MSG_CHANNEL_FAILURE', 'link-28');">MSG_CHANNEL_FAILURE</a></tt><tt class="py-op">:</tt> <tt class="py-string">'channel-failure'</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-op">}</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"><tt class="py-comment"># authentication request return codes:</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"><tt id="link-58" class="py-name" targets="Variable paramiko.auth_handler.AUTH_SUCCESSFUL=paramiko.auth_handler-module.html#AUTH_SUCCESSFUL,Variable paramiko.channel.AUTH_SUCCESSFUL=paramiko.channel-module.html#AUTH_SUCCESSFUL,Variable paramiko.client.AUTH_SUCCESSFUL=paramiko.client-module.html#AUTH_SUCCESSFUL,Variable paramiko.common.AUTH_SUCCESSFUL=paramiko.common-module.html#AUTH_SUCCESSFUL,Variable paramiko.dsskey.AUTH_SUCCESSFUL=paramiko.dsskey-module.html#AUTH_SUCCESSFUL,Variable paramiko.hostkeys.AUTH_SUCCESSFUL=paramiko.hostkeys-module.html#AUTH_SUCCESSFUL,Variable paramiko.kex_gex.AUTH_SUCCESSFUL=paramiko.kex_gex-module.html#AUTH_SUCCESSFUL,Variable paramiko.kex_group1.AUTH_SUCCESSFUL=paramiko.kex_group1-module.html#AUTH_SUCCESSFUL,Variable paramiko.packet.AUTH_SUCCESSFUL=paramiko.packet-module.html#AUTH_SUCCESSFUL,Variable paramiko.pkey.AUTH_SUCCESSFUL=paramiko.pkey-module.html#AUTH_SUCCESSFUL,Variable paramiko.rsakey.AUTH_SUCCESSFUL=paramiko.rsakey-module.html#AUTH_SUCCESSFUL,Variable paramiko.server.AUTH_SUCCESSFUL=paramiko.server-module.html#AUTH_SUCCESSFUL,Variable paramiko.sftp.AUTH_SUCCESSFUL=paramiko.sftp-module.html#AUTH_SUCCESSFUL,Variable paramiko.sftp_attr.AUTH_SUCCESSFUL=paramiko.sftp_attr-module.html#AUTH_SUCCESSFUL,Variable paramiko.sftp_client.AUTH_SUCCESSFUL=paramiko.sftp_client-module.html#AUTH_SUCCESSFUL,Variable paramiko.sftp_file.AUTH_SUCCESSFUL=paramiko.sftp_file-module.html#AUTH_SUCCESSFUL,Variable paramiko.sftp_handle.AUTH_SUCCESSFUL=paramiko.sftp_handle-module.html#AUTH_SUCCESSFUL,Variable paramiko.sftp_server.AUTH_SUCCESSFUL=paramiko.sftp_server-module.html#AUTH_SUCCESSFUL,Variable paramiko.sftp_si.AUTH_SUCCESSFUL=paramiko.sftp_si-module.html#AUTH_SUCCESSFUL,Variable paramiko.transport.AUTH_SUCCESSFUL=paramiko.transport-module.html#AUTH_SUCCESSFUL,Variable paramiko.util.AUTH_SUCCESSFUL=paramiko.util-module.html#AUTH_SUCCESSFUL"><a title="paramiko.auth_handler.AUTH_SUCCESSFUL
-paramiko.channel.AUTH_SUCCESSFUL
-paramiko.client.AUTH_SUCCESSFUL
-paramiko.common.AUTH_SUCCESSFUL
-paramiko.dsskey.AUTH_SUCCESSFUL
-paramiko.hostkeys.AUTH_SUCCESSFUL
-paramiko.kex_gex.AUTH_SUCCESSFUL
-paramiko.kex_group1.AUTH_SUCCESSFUL
-paramiko.packet.AUTH_SUCCESSFUL
-paramiko.pkey.AUTH_SUCCESSFUL
-paramiko.rsakey.AUTH_SUCCESSFUL
-paramiko.server.AUTH_SUCCESSFUL
-paramiko.sftp.AUTH_SUCCESSFUL
-paramiko.sftp_attr.AUTH_SUCCESSFUL
-paramiko.sftp_client.AUTH_SUCCESSFUL
-paramiko.sftp_file.AUTH_SUCCESSFUL
-paramiko.sftp_handle.AUTH_SUCCESSFUL
-paramiko.sftp_server.AUTH_SUCCESSFUL
-paramiko.sftp_si.AUTH_SUCCESSFUL
-paramiko.transport.AUTH_SUCCESSFUL
-paramiko.util.AUTH_SUCCESSFUL" class="py-name" href="#" onclick="return doclink('link-58', 'AUTH_SUCCESSFUL', 'link-58');">AUTH_SUCCESSFUL</a></tt><tt class="py-op">,</tt> <tt id="link-59" class="py-name" targets="Variable paramiko.auth_handler.AUTH_PARTIALLY_SUCCESSFUL=paramiko.auth_handler-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.channel.AUTH_PARTIALLY_SUCCESSFUL=paramiko.channel-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.client.AUTH_PARTIALLY_SUCCESSFUL=paramiko.client-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.common.AUTH_PARTIALLY_SUCCESSFUL=paramiko.common-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.dsskey.AUTH_PARTIALLY_SUCCESSFUL=paramiko.dsskey-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.hostkeys.AUTH_PARTIALLY_SUCCESSFUL=paramiko.hostkeys-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.kex_gex.AUTH_PARTIALLY_SUCCESSFUL=paramiko.kex_gex-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.kex_group1.AUTH_PARTIALLY_SUCCESSFUL=paramiko.kex_group1-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.packet.AUTH_PARTIALLY_SUCCESSFUL=paramiko.packet-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.pkey.AUTH_PARTIALLY_SUCCESSFUL=paramiko.pkey-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.rsakey.AUTH_PARTIALLY_SUCCESSFUL=paramiko.rsakey-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.server.AUTH_PARTIALLY_SUCCESSFUL=paramiko.server-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.sftp.AUTH_PARTIALLY_SUCCESSFUL=paramiko.sftp-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.sftp_attr.AUTH_PARTIALLY_SUCCESSFUL=paramiko.sftp_attr-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.sftp_client.AUTH_PARTIALLY_SUCCESSFUL=paramiko.sftp_client-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.sftp_file.AUTH_PARTIALLY_SUCCESSFUL=paramiko.sftp_file-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.sftp_handle.AUTH_PARTIALLY_SUCCESSFUL=paramiko.sftp_handle-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.sftp_server.AUTH_PARTIALLY_SUCCESSFUL=paramiko.sftp_server-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.sftp_si.AUTH_PARTIALLY_SUCCESSFUL=paramiko.sftp_si-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.transport.AUTH_PARTIALLY_SUCCESSFUL=paramiko.transport-module.html#AUTH_PARTIALLY_SUCCESSFUL,Variable paramiko.util.AUTH_PARTIALLY_SUCCESSFUL=paramiko.util-module.html#AUTH_PARTIALLY_SUCCESSFUL"><a title="paramiko.auth_handler.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.channel.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.client.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.common.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.dsskey.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.hostkeys.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.kex_gex.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.kex_group1.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.packet.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.pkey.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.rsakey.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.server.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.sftp.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.sftp_attr.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.sftp_client.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.sftp_file.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.sftp_handle.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.sftp_server.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.sftp_si.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.transport.AUTH_PARTIALLY_SUCCESSFUL
-paramiko.util.AUTH_PARTIALLY_SUCCESSFUL" class="py-name" href="#" onclick="return doclink('link-59', 'AUTH_PARTIALLY_SUCCESSFUL', 'link-59');">AUTH_PARTIALLY_SUCCESSFUL</a></tt><tt class="py-op">,</tt> <tt id="link-60" class="py-name" targets="Variable paramiko.auth_handler.AUTH_FAILED=paramiko.auth_handler-module.html#AUTH_FAILED,Variable paramiko.channel.AUTH_FAILED=paramiko.channel-module.html#AUTH_FAILED,Variable paramiko.client.AUTH_FAILED=paramiko.client-module.html#AUTH_FAILED,Variable paramiko.common.AUTH_FAILED=paramiko.common-module.html#AUTH_FAILED,Variable paramiko.dsskey.AUTH_FAILED=paramiko.dsskey-module.html#AUTH_FAILED,Variable paramiko.hostkeys.AUTH_FAILED=paramiko.hostkeys-module.html#AUTH_FAILED,Variable paramiko.kex_gex.AUTH_FAILED=paramiko.kex_gex-module.html#AUTH_FAILED,Variable paramiko.kex_group1.AUTH_FAILED=paramiko.kex_group1-module.html#AUTH_FAILED,Variable paramiko.packet.AUTH_FAILED=paramiko.packet-module.html#AUTH_FAILED,Variable paramiko.pkey.AUTH_FAILED=paramiko.pkey-module.html#AUTH_FAILED,Variable paramiko.rsakey.AUTH_FAILED=paramiko.rsakey-module.html#AUTH_FAILED,Variable paramiko.server.AUTH_FAILED=paramiko.server-module.html#AUTH_FAILED,Variable paramiko.sftp.AUTH_FAILED=paramiko.sftp-module.html#AUTH_FAILED,Variable paramiko.sftp_attr.AUTH_FAILED=paramiko.sftp_attr-module.html#AUTH_FAILED,Variable paramiko.sftp_client.AUTH_FAILED=paramiko.sftp_client-module.html#AUTH_FAILED,Variable paramiko.sftp_file.AUTH_FAILED=paramiko.sftp_file-module.html#AUTH_FAILED,Variable paramiko.sftp_handle.AUTH_FAILED=paramiko.sftp_handle-module.html#AUTH_FAILED,Variable paramiko.sftp_server.AUTH_FAILED=paramiko.sftp_server-module.html#AUTH_FAILED,Variable paramiko.sftp_si.AUTH_FAILED=paramiko.sftp_si-module.html#AUTH_FAILED,Variable paramiko.transport.AUTH_FAILED=paramiko.transport-module.html#AUTH_FAILED,Variable paramiko.util.AUTH_FAILED=paramiko.util-module.html#AUTH_FAILED"><a title="paramiko.auth_handler.AUTH_FAILED
-paramiko.channel.AUTH_FAILED
-paramiko.client.AUTH_FAILED
-paramiko.common.AUTH_FAILED
-paramiko.dsskey.AUTH_FAILED
-paramiko.hostkeys.AUTH_FAILED
-paramiko.kex_gex.AUTH_FAILED
-paramiko.kex_group1.AUTH_FAILED
-paramiko.packet.AUTH_FAILED
-paramiko.pkey.AUTH_FAILED
-paramiko.rsakey.AUTH_FAILED
-paramiko.server.AUTH_FAILED
-paramiko.sftp.AUTH_FAILED
-paramiko.sftp_attr.AUTH_FAILED
-paramiko.sftp_client.AUTH_FAILED
-paramiko.sftp_file.AUTH_FAILED
-paramiko.sftp_handle.AUTH_FAILED
-paramiko.sftp_server.AUTH_FAILED
-paramiko.sftp_si.AUTH_FAILED
-paramiko.transport.AUTH_FAILED
-paramiko.util.AUTH_FAILED" class="py-name" href="#" onclick="return doclink('link-60', 'AUTH_FAILED', 'link-60');">AUTH_FAILED</a></tt> <tt class="py-op">=</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">3</tt><tt class="py-op">)</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"><tt class="py-comment"># channel request failed reasons:</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"><tt class="py-op">(</tt><tt id="link-61" class="py-name" targets="Variable paramiko.auth_handler.OPEN_SUCCEEDED=paramiko.auth_handler-module.html#OPEN_SUCCEEDED,Variable paramiko.channel.OPEN_SUCCEEDED=paramiko.channel-module.html#OPEN_SUCCEEDED,Variable paramiko.client.OPEN_SUCCEEDED=paramiko.client-module.html#OPEN_SUCCEEDED,Variable paramiko.common.OPEN_SUCCEEDED=paramiko.common-module.html#OPEN_SUCCEEDED,Variable paramiko.dsskey.OPEN_SUCCEEDED=paramiko.dsskey-module.html#OPEN_SUCCEEDED,Variable paramiko.hostkeys.OPEN_SUCCEEDED=paramiko.hostkeys-module.html#OPEN_SUCCEEDED,Variable paramiko.kex_gex.OPEN_SUCCEEDED=paramiko.kex_gex-module.html#OPEN_SUCCEEDED,Variable paramiko.kex_group1.OPEN_SUCCEEDED=paramiko.kex_group1-module.html#OPEN_SUCCEEDED,Variable paramiko.packet.OPEN_SUCCEEDED=paramiko.packet-module.html#OPEN_SUCCEEDED,Variable paramiko.pkey.OPEN_SUCCEEDED=paramiko.pkey-module.html#OPEN_SUCCEEDED,Variable paramiko.rsakey.OPEN_SUCCEEDED=paramiko.rsakey-module.html#OPEN_SUCCEEDED,Variable paramiko.server.OPEN_SUCCEEDED=paramiko.server-module.html#OPEN_SUCCEEDED,Variable paramiko.sftp.OPEN_SUCCEEDED=paramiko.sftp-module.html#OPEN_SUCCEEDED,Variable paramiko.sftp_attr.OPEN_SUCCEEDED=paramiko.sftp_attr-module.html#OPEN_SUCCEEDED,Variable paramiko.sftp_client.OPEN_SUCCEEDED=paramiko.sftp_client-module.html#OPEN_SUCCEEDED,Variable paramiko.sftp_file.OPEN_SUCCEEDED=paramiko.sftp_file-module.html#OPEN_SUCCEEDED,Variable paramiko.sftp_handle.OPEN_SUCCEEDED=paramiko.sftp_handle-module.html#OPEN_SUCCEEDED,Variable paramiko.sftp_server.OPEN_SUCCEEDED=paramiko.sftp_server-module.html#OPEN_SUCCEEDED,Variable paramiko.sftp_si.OPEN_SUCCEEDED=paramiko.sftp_si-module.html#OPEN_SUCCEEDED,Variable paramiko.transport.OPEN_SUCCEEDED=paramiko.transport-module.html#OPEN_SUCCEEDED,Variable paramiko.util.OPEN_SUCCEEDED=paramiko.util-module.html#OPEN_SUCCEEDED"><a title="paramiko.auth_handler.OPEN_SUCCEEDED
-paramiko.channel.OPEN_SUCCEEDED
-paramiko.client.OPEN_SUCCEEDED
-paramiko.common.OPEN_SUCCEEDED
-paramiko.dsskey.OPEN_SUCCEEDED
-paramiko.hostkeys.OPEN_SUCCEEDED
-paramiko.kex_gex.OPEN_SUCCEEDED
-paramiko.kex_group1.OPEN_SUCCEEDED
-paramiko.packet.OPEN_SUCCEEDED
-paramiko.pkey.OPEN_SUCCEEDED
-paramiko.rsakey.OPEN_SUCCEEDED
-paramiko.server.OPEN_SUCCEEDED
-paramiko.sftp.OPEN_SUCCEEDED
-paramiko.sftp_attr.OPEN_SUCCEEDED
-paramiko.sftp_client.OPEN_SUCCEEDED
-paramiko.sftp_file.OPEN_SUCCEEDED
-paramiko.sftp_handle.OPEN_SUCCEEDED
-paramiko.sftp_server.OPEN_SUCCEEDED
-paramiko.sftp_si.OPEN_SUCCEEDED
-paramiko.transport.OPEN_SUCCEEDED
-paramiko.util.OPEN_SUCCEEDED" class="py-name" href="#" onclick="return doclink('link-61', 'OPEN_SUCCEEDED', 'link-61');">OPEN_SUCCEEDED</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt id="link-62" class="py-name" targets="Variable paramiko.auth_handler.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.auth_handler-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.channel.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.channel-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.client.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.client-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.common.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.common-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.dsskey.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.dsskey-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.hostkeys.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.hostkeys-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.kex_gex.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.kex_gex-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.kex_group1.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.kex_group1-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.packet.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.packet-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.pkey.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.pkey-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.rsakey.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.rsakey-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.server.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.server-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.sftp.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.sftp-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.sftp_attr.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.sftp_attr-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.sftp_client.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.sftp_client-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.sftp_file.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.sftp_file-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.sftp_handle.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.sftp_handle-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.sftp_server.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.sftp_server-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.sftp_si.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.sftp_si-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.transport.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.transport-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.util.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.util-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED"><a title="paramiko.auth_handler.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.channel.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.client.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.common.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.dsskey.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.hostkeys.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.kex_gex.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.kex_group1.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.packet.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.pkey.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.rsakey.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.server.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_attr.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_client.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_file.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_handle.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_server.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_si.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.transport.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.util.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED" class="py-name" href="#" onclick="return doclink('link-62', 'OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED', 'link-62');">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt id="link-63" class="py-name" targets="Variable paramiko.auth_handler.OPEN_FAILED_CONNECT_FAILED=paramiko.auth_handler-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.channel.OPEN_FAILED_CONNECT_FAILED=paramiko.channel-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.client.OPEN_FAILED_CONNECT_FAILED=paramiko.client-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.common.OPEN_FAILED_CONNECT_FAILED=paramiko.common-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.dsskey.OPEN_FAILED_CONNECT_FAILED=paramiko.dsskey-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.hostkeys.OPEN_FAILED_CONNECT_FAILED=paramiko.hostkeys-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.kex_gex.OPEN_FAILED_CONNECT_FAILED=paramiko.kex_gex-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.kex_group1.OPEN_FAILED_CONNECT_FAILED=paramiko.kex_group1-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.packet.OPEN_FAILED_CONNECT_FAILED=paramiko.packet-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.pkey.OPEN_FAILED_CONNECT_FAILED=paramiko.pkey-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.rsakey.OPEN_FAILED_CONNECT_FAILED=paramiko.rsakey-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.server.OPEN_FAILED_CONNECT_FAILED=paramiko.server-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.sftp.OPEN_FAILED_CONNECT_FAILED=paramiko.sftp-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.sftp_attr.OPEN_FAILED_CONNECT_FAILED=paramiko.sftp_attr-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.sftp_client.OPEN_FAILED_CONNECT_FAILED=paramiko.sftp_client-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.sftp_file.OPEN_FAILED_CONNECT_FAILED=paramiko.sftp_file-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.sftp_handle.OPEN_FAILED_CONNECT_FAILED=paramiko.sftp_handle-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.sftp_server.OPEN_FAILED_CONNECT_FAILED=paramiko.sftp_server-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.sftp_si.OPEN_FAILED_CONNECT_FAILED=paramiko.sftp_si-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.transport.OPEN_FAILED_CONNECT_FAILED=paramiko.transport-module.html#OPEN_FAILED_CONNECT_FAILED,Variable paramiko.util.OPEN_FAILED_CONNECT_FAILED=paramiko.util-module.html#OPEN_FAILED_CONNECT_FAILED"><a title="paramiko.auth_handler.OPEN_FAILED_CONNECT_FAILED
-paramiko.channel.OPEN_FAILED_CONNECT_FAILED
-paramiko.client.OPEN_FAILED_CONNECT_FAILED
-paramiko.common.OPEN_FAILED_CONNECT_FAILED
-paramiko.dsskey.OPEN_FAILED_CONNECT_FAILED
-paramiko.hostkeys.OPEN_FAILED_CONNECT_FAILED
-paramiko.kex_gex.OPEN_FAILED_CONNECT_FAILED
-paramiko.kex_group1.OPEN_FAILED_CONNECT_FAILED
-paramiko.packet.OPEN_FAILED_CONNECT_FAILED
-paramiko.pkey.OPEN_FAILED_CONNECT_FAILED
-paramiko.rsakey.OPEN_FAILED_CONNECT_FAILED
-paramiko.server.OPEN_FAILED_CONNECT_FAILED
-paramiko.sftp.OPEN_FAILED_CONNECT_FAILED
-paramiko.sftp_attr.OPEN_FAILED_CONNECT_FAILED
-paramiko.sftp_client.OPEN_FAILED_CONNECT_FAILED
-paramiko.sftp_file.OPEN_FAILED_CONNECT_FAILED
-paramiko.sftp_handle.OPEN_FAILED_CONNECT_FAILED
-paramiko.sftp_server.OPEN_FAILED_CONNECT_FAILED
-paramiko.sftp_si.OPEN_FAILED_CONNECT_FAILED
-paramiko.transport.OPEN_FAILED_CONNECT_FAILED
-paramiko.util.OPEN_FAILED_CONNECT_FAILED" class="py-name" href="#" onclick="return doclink('link-63', 'OPEN_FAILED_CONNECT_FAILED', 'link-63');">OPEN_FAILED_CONNECT_FAILED</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt id="link-64" class="py-name" targets="Variable paramiko.auth_handler.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.auth_handler-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.channel.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.channel-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.client.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.client-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.common.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.common-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.dsskey.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.dsskey-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.hostkeys.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.hostkeys-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.kex_gex.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.kex_gex-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.kex_group1.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.kex_group1-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.packet.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.packet-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.pkey.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.pkey-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.rsakey.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.rsakey-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.server.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.server-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.sftp.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.sftp-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.sftp_attr.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.sftp_attr-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.sftp_client.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.sftp_client-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.sftp_file.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.sftp_file-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.sftp_handle.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.sftp_handle-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.sftp_server.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.sftp_server-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.sftp_si.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.sftp_si-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.transport.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.transport-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE,Variable paramiko.util.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE=paramiko.util-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE"><a title="paramiko.auth_handler.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.channel.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.client.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.common.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.dsskey.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.hostkeys.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.kex_gex.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.kex_group1.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.packet.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.pkey.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.rsakey.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.server.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.sftp.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.sftp_attr.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.sftp_client.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.sftp_file.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.sftp_handle.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.sftp_server.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.sftp_si.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.transport.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE
-paramiko.util.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE" class="py-name" href="#" onclick="return doclink('link-64', 'OPEN_FAILED_UNKNOWN_CHANNEL_TYPE', 'link-64');">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt id="link-65" class="py-name" targets="Variable paramiko.auth_handler.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.auth_handler-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.channel.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.channel-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.client.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.client-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.common.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.common-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.dsskey.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.dsskey-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.hostkeys.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.hostkeys-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.kex_gex.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.kex_gex-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.kex_group1.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.kex_group1-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.packet.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.packet-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.pkey.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.pkey-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.rsakey.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.rsakey-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.server.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.server-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.sftp.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.sftp-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.sftp_attr.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.sftp_attr-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.sftp_client.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.sftp_client-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.sftp_file.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.sftp_file-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.sftp_handle.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.sftp_handle-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.sftp_server.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.sftp_server-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.sftp_si.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.sftp_si-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.transport.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.transport-module.html#OPEN_FAILED_RESOURCE_SHORTAGE,Variable paramiko.util.OPEN_FAILED_RESOURCE_SHORTAGE=paramiko.util-module.html#OPEN_FAILED_RESOURCE_SHORTAGE"><a title="paramiko.auth_handler.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.channel.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.client.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.common.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.dsskey.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.hostkeys.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.kex_gex.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.kex_group1.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.packet.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.pkey.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.rsakey.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.server.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.sftp.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.sftp_attr.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.sftp_client.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.sftp_file.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.sftp_handle.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.sftp_server.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.sftp_si.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.transport.OPEN_FAILED_RESOURCE_SHORTAGE
-paramiko.util.OPEN_FAILED_RESOURCE_SHORTAGE" class="py-name" href="#" onclick="return doclink('link-65', 'OPEN_FAILED_RESOURCE_SHORTAGE', 'link-65');">OPEN_FAILED_RESOURCE_SHORTAGE</a></tt><tt class="py-op">)</tt> <tt class="py-op">=</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-number">5</tt><tt class="py-op">)</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"><tt id="link-66" class="py-name" targets="Variable paramiko.auth_handler.CONNECTION_FAILED_CODE=paramiko.auth_handler-module.html#CONNECTION_FAILED_CODE,Variable paramiko.channel.CONNECTION_FAILED_CODE=paramiko.channel-module.html#CONNECTION_FAILED_CODE,Variable paramiko.client.CONNECTION_FAILED_CODE=paramiko.client-module.html#CONNECTION_FAILED_CODE,Variable paramiko.common.CONNECTION_FAILED_CODE=paramiko.common-module.html#CONNECTION_FAILED_CODE,Variable paramiko.dsskey.CONNECTION_FAILED_CODE=paramiko.dsskey-module.html#CONNECTION_FAILED_CODE,Variable paramiko.hostkeys.CONNECTION_FAILED_CODE=paramiko.hostkeys-module.html#CONNECTION_FAILED_CODE,Variable paramiko.kex_gex.CONNECTION_FAILED_CODE=paramiko.kex_gex-module.html#CONNECTION_FAILED_CODE,Variable paramiko.kex_group1.CONNECTION_FAILED_CODE=paramiko.kex_group1-module.html#CONNECTION_FAILED_CODE,Variable paramiko.packet.CONNECTION_FAILED_CODE=paramiko.packet-module.html#CONNECTION_FAILED_CODE,Variable paramiko.pkey.CONNECTION_FAILED_CODE=paramiko.pkey-module.html#CONNECTION_FAILED_CODE,Variable paramiko.rsakey.CONNECTION_FAILED_CODE=paramiko.rsakey-module.html#CONNECTION_FAILED_CODE,Variable paramiko.server.CONNECTION_FAILED_CODE=paramiko.server-module.html#CONNECTION_FAILED_CODE,Variable paramiko.sftp.CONNECTION_FAILED_CODE=paramiko.sftp-module.html#CONNECTION_FAILED_CODE,Variable paramiko.sftp_attr.CONNECTION_FAILED_CODE=paramiko.sftp_attr-module.html#CONNECTION_FAILED_CODE,Variable paramiko.sftp_client.CONNECTION_FAILED_CODE=paramiko.sftp_client-module.html#CONNECTION_FAILED_CODE,Variable paramiko.sftp_file.CONNECTION_FAILED_CODE=paramiko.sftp_file-module.html#CONNECTION_FAILED_CODE,Variable paramiko.sftp_handle.CONNECTION_FAILED_CODE=paramiko.sftp_handle-module.html#CONNECTION_FAILED_CODE,Variable paramiko.sftp_server.CONNECTION_FAILED_CODE=paramiko.sftp_server-module.html#CONNECTION_FAILED_CODE,Variable paramiko.sftp_si.CONNECTION_FAILED_CODE=paramiko.sftp_si-module.html#CONNECTION_FAILED_CODE,Variable paramiko.transport.CONNECTION_FAILED_CODE=paramiko.transport-module.html#CONNECTION_FAILED_CODE,Variable paramiko.util.CONNECTION_FAILED_CODE=paramiko.util-module.html#CONNECTION_FAILED_CODE"><a title="paramiko.auth_handler.CONNECTION_FAILED_CODE
-paramiko.channel.CONNECTION_FAILED_CODE
-paramiko.client.CONNECTION_FAILED_CODE
-paramiko.common.CONNECTION_FAILED_CODE
-paramiko.dsskey.CONNECTION_FAILED_CODE
-paramiko.hostkeys.CONNECTION_FAILED_CODE
-paramiko.kex_gex.CONNECTION_FAILED_CODE
-paramiko.kex_group1.CONNECTION_FAILED_CODE
-paramiko.packet.CONNECTION_FAILED_CODE
-paramiko.pkey.CONNECTION_FAILED_CODE
-paramiko.rsakey.CONNECTION_FAILED_CODE
-paramiko.server.CONNECTION_FAILED_CODE
-paramiko.sftp.CONNECTION_FAILED_CODE
-paramiko.sftp_attr.CONNECTION_FAILED_CODE
-paramiko.sftp_client.CONNECTION_FAILED_CODE
-paramiko.sftp_file.CONNECTION_FAILED_CODE
-paramiko.sftp_handle.CONNECTION_FAILED_CODE
-paramiko.sftp_server.CONNECTION_FAILED_CODE
-paramiko.sftp_si.CONNECTION_FAILED_CODE
-paramiko.transport.CONNECTION_FAILED_CODE
-paramiko.util.CONNECTION_FAILED_CODE" class="py-name" href="#" onclick="return doclink('link-66', 'CONNECTION_FAILED_CODE', 'link-66');">CONNECTION_FAILED_CODE</a></tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-number">1</tt><tt class="py-op">:</tt> <tt class="py-string">'Administratively prohibited'</tt><tt class="py-op">,</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-number">2</tt><tt class="py-op">:</tt> <tt class="py-string">'Connect failed'</tt><tt class="py-op">,</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-number">3</tt><tt class="py-op">:</tt> <tt class="py-string">'Unknown channel type'</tt><tt class="py-op">,</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-number">4</tt><tt class="py-op">:</tt> <tt class="py-string">'Resource shortage'</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"><tt class="py-op">}</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"><tt id="link-67" class="py-name" targets="Variable paramiko.auth_handler.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.auth_handler-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.channel.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.channel-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.client.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.client-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.common.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.common-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.dsskey.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.dsskey-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.hostkeys.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.hostkeys-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.kex_gex.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.kex_gex-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.kex_group1.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.kex_group1-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.packet.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.packet-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.pkey.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.pkey-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.rsakey.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.rsakey-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.server.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.server-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.sftp.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.sftp-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.sftp_attr.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.sftp_attr-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.sftp_client.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.sftp_client-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.sftp_file.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.sftp_file-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.sftp_handle.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.sftp_handle-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.sftp_server.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.sftp_server-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.sftp_si.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.sftp_si-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.transport.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.transport-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE,Variable paramiko.util.DISCONNECT_SERVICE_NOT_AVAILABLE=paramiko.util-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE"><a title="paramiko.auth_handler.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.channel.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.client.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.common.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.dsskey.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.hostkeys.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.kex_gex.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.kex_group1.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.packet.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.pkey.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.rsakey.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.server.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.sftp.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.sftp_attr.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.sftp_client.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.sftp_file.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.sftp_handle.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.sftp_server.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.sftp_si.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.transport.DISCONNECT_SERVICE_NOT_AVAILABLE
-paramiko.util.DISCONNECT_SERVICE_NOT_AVAILABLE" class="py-name" href="#" onclick="return doclink('link-67', 'DISCONNECT_SERVICE_NOT_AVAILABLE', 'link-67');">DISCONNECT_SERVICE_NOT_AVAILABLE</a></tt><tt class="py-op">,</tt> <tt id="link-68" class="py-name" targets="Variable paramiko.auth_handler.DISCONNECT_AUTH_CANCELLED_BY_USER=paramiko.auth_handler-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER,Variable paramiko.channel.DISCONNECT_AUTH_CANCELLED_BY_USER=paramiko.channel-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER,Variable paramiko.client.DISCONNECT_AUTH_CANCELLED_BY_USER=paramiko.client-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER,Variable paramiko.common.DISCONNECT_AUTH_CANCELLED_BY_USER=paramiko.common-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER,Variable paramiko.dsskey.DISCONNECT_AUTH_CANCELLED_BY_USER=paramiko.dsskey-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER,Variable paramiko.hostkeys.DISCONNECT_AUTH_CANCELLED_BY_USER=paramiko.hostkeys-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER,Variable paramiko.kex_gex.DISCONNECT_AUTH_CANCELLED_BY_USER=paramiko.kex_gex-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER,Variable paramiko.kex_group1.DISCONNECT_AUTH_CANCELLED_BY_USER=paramiko.kex_group1-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER,Variable paramiko.packet.DISCONNECT_AUTH_CANCELLED_BY_USER=paramiko.packet-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER,Variable paramiko.pkey.DISCONNECT_AUTH_CANCELLED_BY_USER=paramiko.pkey-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER,Variable paramiko.rsakey.DISCONNECT_AUTH_CANCELLED_BY_USER=paramiko.rsakey-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER,Variable paramiko.server.DISCONNECT_AUTH_CANCELLED_BY_USER=paramiko.server-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER,Variable paramiko.sftp.DISCONNECT_AUTH_CANCELLED_BY_USER=paramiko.sftp-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER,Variable paramiko.sftp_attr.DISCONNECT_AUTH_CANCELLED_BY_USER=paramiko.sftp_attr-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER,Variable paramiko.sftp_client.DISCONNECT_AUTH_CANCELLED_BY_USER=paramiko.sftp_client-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER,Variable paramiko.sftp_file.DISCONNECT_AUTH_CANCELLED_BY_USER=paramiko.sftp_file-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER,Variable paramiko.sftp_handle.DISCONNECT_AUTH_CANCELLED_BY_USER=paramiko.sftp_handle-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER,Variable paramiko.sftp_server.DISCONNECT_AUTH_CANCELLED_BY_USER=paramiko.sftp_server-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER,Variable paramiko.sftp_si.DISCONNECT_AUTH_CANCELLED_BY_USER=paramiko.sftp_si-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER,Variable paramiko.transport.DISCONNECT_AUTH_CANCELLED_BY_USER=paramiko.transport-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER,Variable paramiko.util.DISCONNECT_AUTH_CANCELLED_BY_USER=paramiko.util-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER"><a title="paramiko.auth_handler.DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.channel.DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.client.DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.common.DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.dsskey.DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.hostkeys.DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.kex_gex.DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.kex_group1.DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.packet.DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.pkey.DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.rsakey.DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.server.DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.sftp.DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.sftp_attr.DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.sftp_client.DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.sftp_file.DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.sftp_handle.DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.sftp_server.DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.sftp_si.DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.transport.DISCONNECT_AUTH_CANCELLED_BY_USER
-paramiko.util.DISCONNECT_AUTH_CANCELLED_BY_USER" class="py-name" href="#" onclick="return doclink('link-68', 'DISCONNECT_AUTH_CANCELLED_BY_USER', 'link-68');">DISCONNECT_AUTH_CANCELLED_BY_USER</a></tt><tt class="py-op">,</tt> \ </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt id="link-69" class="py-name" targets="Variable paramiko.auth_handler.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.auth_handler-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.channel.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.channel-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.client.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.client-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.common.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.common-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.dsskey.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.dsskey-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.hostkeys.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.hostkeys-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.kex_gex.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.kex_gex-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.kex_group1.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.kex_group1-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.packet.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.packet-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.pkey.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.pkey-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.rsakey.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.rsakey-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.server.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.server-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.sftp.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.sftp-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.sftp_attr.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.sftp_attr-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.sftp_client.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.sftp_client-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.sftp_file.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.sftp_file-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.sftp_handle.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.sftp_handle-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.sftp_server.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.sftp_server-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.sftp_si.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.sftp_si-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.transport.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.transport-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE,Variable paramiko.util.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE=paramiko.util-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE"><a title="paramiko.auth_handler.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.channel.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.client.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.common.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.dsskey.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.hostkeys.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.kex_gex.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.kex_group1.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.packet.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.pkey.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.rsakey.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.server.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.sftp.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.sftp_attr.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.sftp_client.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.sftp_file.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.sftp_handle.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.sftp_server.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.sftp_si.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.transport.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE
-paramiko.util.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE" class="py-name" href="#" onclick="return doclink('link-69', 'DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE', 'link-69');">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</a></tt> <tt class="py-op">=</tt> <tt class="py-number">7</tt><tt class="py-op">,</tt> <tt class="py-number">13</tt><tt class="py-op">,</tt> <tt class="py-number">14</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">Crypto</tt> <tt class="py-keyword">import</tt> <tt class="py-name">Random</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"><tt class="py-comment"># keep a crypto-strong PRNG nearby</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"><tt id="link-70" class="py-name" targets="Variable paramiko.auth_handler.rng=paramiko.auth_handler-module.html#rng,Variable paramiko.channel.rng=paramiko.channel-module.html#rng,Variable paramiko.client.rng=paramiko.client-module.html#rng,Variable paramiko.common.rng=paramiko.common-module.html#rng,Variable paramiko.dsskey.rng=paramiko.dsskey-module.html#rng,Variable paramiko.hostkeys.rng=paramiko.hostkeys-module.html#rng,Variable paramiko.kex_gex.rng=paramiko.kex_gex-module.html#rng,Variable paramiko.kex_group1.rng=paramiko.kex_group1-module.html#rng,Variable paramiko.packet.rng=paramiko.packet-module.html#rng,Variable paramiko.pkey.rng=paramiko.pkey-module.html#rng,Variable paramiko.rsakey.rng=paramiko.rsakey-module.html#rng,Variable paramiko.server.rng=paramiko.server-module.html#rng,Variable paramiko.sftp.rng=paramiko.sftp-module.html#rng,Variable paramiko.sftp_attr.rng=paramiko.sftp_attr-module.html#rng,Variable paramiko.sftp_client.rng=paramiko.sftp_client-module.html#rng,Variable paramiko.sftp_file.rng=paramiko.sftp_file-module.html#rng,Variable paramiko.sftp_handle.rng=paramiko.sftp_handle-module.html#rng,Variable paramiko.sftp_server.rng=paramiko.sftp_server-module.html#rng,Variable paramiko.sftp_si.rng=paramiko.sftp_si-module.html#rng,Variable paramiko.transport.rng=paramiko.transport-module.html#rng,Variable paramiko.util.rng=paramiko.util-module.html#rng"><a title="paramiko.auth_handler.rng
-paramiko.channel.rng
-paramiko.client.rng
-paramiko.common.rng
-paramiko.dsskey.rng
-paramiko.hostkeys.rng
-paramiko.kex_gex.rng
-paramiko.kex_group1.rng
-paramiko.packet.rng
-paramiko.pkey.rng
-paramiko.rsakey.rng
-paramiko.server.rng
-paramiko.sftp.rng
-paramiko.sftp_attr.rng
-paramiko.sftp_client.rng
-paramiko.sftp_file.rng
-paramiko.sftp_handle.rng
-paramiko.sftp_server.rng
-paramiko.sftp_si.rng
-paramiko.transport.rng
-paramiko.util.rng" class="py-name" href="#" onclick="return doclink('link-70', 'rng', 'link-70');">rng</a></tt> <tt class="py-op">=</tt> <tt class="py-name">Random</tt><tt class="py-op">.</tt><tt id="link-71" class="py-name" targets="Class Method paramiko.util.Counter.new()=paramiko.util.Counter-class.html#new"><a title="paramiko.util.Counter.new" class="py-name" href="#" onclick="return doclink('link-71', 'new', 'link-71');">new</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"><tt class="py-keyword">if</tt> <tt class="py-name">sys</tt><tt class="py-op">.</tt><tt class="py-name">version_info</tt> <tt class="py-op">&lt;</tt> <tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">,</tt> <tt class="py-number">3</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">logging</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-keyword">except</tt><tt class="py-op">:</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt id="link-72" class="py-name" targets="Module paramiko.logging22=paramiko.logging22-module.html"><a title="paramiko.logging22" class="py-name" href="#" onclick="return doclink('link-72', 'logging22', 'link-72');">logging22</a></tt> <tt class="py-keyword">as</tt> <tt class="py-name">logging</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">select</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt id="link-73" class="py-name" targets="Variable paramiko.auth_handler.PY22=paramiko.auth_handler-module.html#PY22,Variable paramiko.channel.PY22=paramiko.channel-module.html#PY22,Variable paramiko.client.PY22=paramiko.client-module.html#PY22,Variable paramiko.common.PY22=paramiko.common-module.html#PY22,Variable paramiko.dsskey.PY22=paramiko.dsskey-module.html#PY22,Variable paramiko.hostkeys.PY22=paramiko.hostkeys-module.html#PY22,Variable paramiko.kex_gex.PY22=paramiko.kex_gex-module.html#PY22,Variable paramiko.kex_group1.PY22=paramiko.kex_group1-module.html#PY22,Variable paramiko.packet.PY22=paramiko.packet-module.html#PY22,Variable paramiko.pkey.PY22=paramiko.pkey-module.html#PY22,Variable paramiko.rsakey.PY22=paramiko.rsakey-module.html#PY22,Variable paramiko.server.PY22=paramiko.server-module.html#PY22,Variable paramiko.sftp.PY22=paramiko.sftp-module.html#PY22,Variable paramiko.sftp_attr.PY22=paramiko.sftp_attr-module.html#PY22,Variable paramiko.sftp_client.PY22=paramiko.sftp_client-module.html#PY22,Variable paramiko.sftp_file.PY22=paramiko.sftp_file-module.html#PY22,Variable paramiko.sftp_handle.PY22=paramiko.sftp_handle-module.html#PY22,Variable paramiko.sftp_server.PY22=paramiko.sftp_server-module.html#PY22,Variable paramiko.sftp_si.PY22=paramiko.sftp_si-module.html#PY22,Variable paramiko.transport.PY22=paramiko.transport-module.html#PY22,Variable paramiko.util.PY22=paramiko.util-module.html#PY22"><a title="paramiko.auth_handler.PY22
-paramiko.channel.PY22
-paramiko.client.PY22
-paramiko.common.PY22
-paramiko.dsskey.PY22
-paramiko.hostkeys.PY22
-paramiko.kex_gex.PY22
-paramiko.kex_group1.PY22
-paramiko.packet.PY22
-paramiko.pkey.PY22
-paramiko.rsakey.PY22
-paramiko.server.PY22
-paramiko.sftp.PY22
-paramiko.sftp_attr.PY22
-paramiko.sftp_client.PY22
-paramiko.sftp_file.PY22
-paramiko.sftp_handle.PY22
-paramiko.sftp_server.PY22
-paramiko.sftp_si.PY22
-paramiko.transport.PY22
-paramiko.util.PY22" class="py-name" href="#" onclick="return doclink('link-73', 'PY22', 'link-73');">PY22</a></tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">socket</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">hasattr</tt><tt class="py-op">(</tt><tt class="py-name">socket</tt><tt class="py-op">,</tt> <tt class="py-string">'timeout'</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="timeout"></a><div id="timeout-def"><a name="L114"></a><tt class="py-lineno">114</tt> <a class="py-toggle" href="#" id="timeout-toggle" onclick="return toggle('timeout');">-</a><tt class="py-line"> <tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.common.timeout-class.html">timeout</a><tt class="py-op">(</tt><tt class="py-base-class">socket</tt><tt class="py-op">.</tt><tt class="py-base-class">error</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> <tt class="py-keyword">pass</tt> </tt>
-</div><a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">timeout</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-keyword">del</tt> <tt class="py-name">timeout</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"><tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">logging</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt id="link-74" class="py-name"><a title="paramiko.auth_handler.PY22
-paramiko.channel.PY22
-paramiko.client.PY22
-paramiko.common.PY22
-paramiko.dsskey.PY22
-paramiko.hostkeys.PY22
-paramiko.kex_gex.PY22
-paramiko.kex_group1.PY22
-paramiko.packet.PY22
-paramiko.pkey.PY22
-paramiko.rsakey.PY22
-paramiko.server.PY22
-paramiko.sftp.PY22
-paramiko.sftp_attr.PY22
-paramiko.sftp_client.PY22
-paramiko.sftp_file.PY22
-paramiko.sftp_handle.PY22
-paramiko.sftp_server.PY22
-paramiko.sftp_si.PY22
-paramiko.transport.PY22
-paramiko.util.PY22" class="py-name" href="#" onclick="return doclink('link-74', 'PY22', 'link-73');">PY22</a></tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"><tt id="link-75" class="py-name" targets="Variable paramiko.auth_handler.DEBUG=paramiko.auth_handler-module.html#DEBUG,Variable paramiko.channel.DEBUG=paramiko.channel-module.html#DEBUG,Variable paramiko.client.DEBUG=paramiko.client-module.html#DEBUG,Variable paramiko.common.DEBUG=paramiko.common-module.html#DEBUG,Variable paramiko.dsskey.DEBUG=paramiko.dsskey-module.html#DEBUG,Variable paramiko.hostkeys.DEBUG=paramiko.hostkeys-module.html#DEBUG,Variable paramiko.kex_gex.DEBUG=paramiko.kex_gex-module.html#DEBUG,Variable paramiko.kex_group1.DEBUG=paramiko.kex_group1-module.html#DEBUG,Variable paramiko.logging22.DEBUG=paramiko.logging22-module.html#DEBUG,Variable paramiko.packet.DEBUG=paramiko.packet-module.html#DEBUG,Variable paramiko.pkey.DEBUG=paramiko.pkey-module.html#DEBUG,Variable paramiko.rsakey.DEBUG=paramiko.rsakey-module.html#DEBUG,Variable paramiko.server.DEBUG=paramiko.server-module.html#DEBUG,Variable paramiko.sftp.DEBUG=paramiko.sftp-module.html#DEBUG,Variable paramiko.sftp_attr.DEBUG=paramiko.sftp_attr-module.html#DEBUG,Variable paramiko.sftp_client.DEBUG=paramiko.sftp_client-module.html#DEBUG,Variable paramiko.sftp_file.DEBUG=paramiko.sftp_file-module.html#DEBUG,Variable paramiko.sftp_handle.DEBUG=paramiko.sftp_handle-module.html#DEBUG,Variable paramiko.sftp_server.DEBUG=paramiko.sftp_server-module.html#DEBUG,Variable paramiko.sftp_si.DEBUG=paramiko.sftp_si-module.html#DEBUG,Variable paramiko.transport.DEBUG=paramiko.transport-module.html#DEBUG,Variable paramiko.util.DEBUG=paramiko.util-module.html#DEBUG"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-75', 'DEBUG', 'link-75');">DEBUG</a></tt> <tt class="py-op">=</tt> <tt class="py-name">logging</tt><tt class="py-op">.</tt><tt id="link-76" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-76', 'DEBUG', 'link-75');">DEBUG</a></tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"><tt id="link-77" class="py-name" targets="Variable paramiko.auth_handler.INFO=paramiko.auth_handler-module.html#INFO,Variable paramiko.channel.INFO=paramiko.channel-module.html#INFO,Variable paramiko.client.INFO=paramiko.client-module.html#INFO,Variable paramiko.common.INFO=paramiko.common-module.html#INFO,Variable paramiko.dsskey.INFO=paramiko.dsskey-module.html#INFO,Variable paramiko.hostkeys.INFO=paramiko.hostkeys-module.html#INFO,Variable paramiko.kex_gex.INFO=paramiko.kex_gex-module.html#INFO,Variable paramiko.kex_group1.INFO=paramiko.kex_group1-module.html#INFO,Variable paramiko.logging22.INFO=paramiko.logging22-module.html#INFO,Variable paramiko.packet.INFO=paramiko.packet-module.html#INFO,Variable paramiko.pkey.INFO=paramiko.pkey-module.html#INFO,Variable paramiko.rsakey.INFO=paramiko.rsakey-module.html#INFO,Variable paramiko.server.INFO=paramiko.server-module.html#INFO,Variable paramiko.sftp.INFO=paramiko.sftp-module.html#INFO,Variable paramiko.sftp_attr.INFO=paramiko.sftp_attr-module.html#INFO,Variable paramiko.sftp_client.INFO=paramiko.sftp_client-module.html#INFO,Variable paramiko.sftp_file.INFO=paramiko.sftp_file-module.html#INFO,Variable paramiko.sftp_handle.INFO=paramiko.sftp_handle-module.html#INFO,Variable paramiko.sftp_server.INFO=paramiko.sftp_server-module.html#INFO,Variable paramiko.sftp_si.INFO=paramiko.sftp_si-module.html#INFO,Variable paramiko.transport.INFO=paramiko.transport-module.html#INFO,Variable paramiko.util.INFO=paramiko.util-module.html#INFO"><a title="paramiko.auth_handler.INFO
-paramiko.channel.INFO
-paramiko.client.INFO
-paramiko.common.INFO
-paramiko.dsskey.INFO
-paramiko.hostkeys.INFO
-paramiko.kex_gex.INFO
-paramiko.kex_group1.INFO
-paramiko.logging22.INFO
-paramiko.packet.INFO
-paramiko.pkey.INFO
-paramiko.rsakey.INFO
-paramiko.server.INFO
-paramiko.sftp.INFO
-paramiko.sftp_attr.INFO
-paramiko.sftp_client.INFO
-paramiko.sftp_file.INFO
-paramiko.sftp_handle.INFO
-paramiko.sftp_server.INFO
-paramiko.sftp_si.INFO
-paramiko.transport.INFO
-paramiko.util.INFO" class="py-name" href="#" onclick="return doclink('link-77', 'INFO', 'link-77');">INFO</a></tt> <tt class="py-op">=</tt> <tt class="py-name">logging</tt><tt class="py-op">.</tt><tt id="link-78" class="py-name"><a title="paramiko.auth_handler.INFO
-paramiko.channel.INFO
-paramiko.client.INFO
-paramiko.common.INFO
-paramiko.dsskey.INFO
-paramiko.hostkeys.INFO
-paramiko.kex_gex.INFO
-paramiko.kex_group1.INFO
-paramiko.logging22.INFO
-paramiko.packet.INFO
-paramiko.pkey.INFO
-paramiko.rsakey.INFO
-paramiko.server.INFO
-paramiko.sftp.INFO
-paramiko.sftp_attr.INFO
-paramiko.sftp_client.INFO
-paramiko.sftp_file.INFO
-paramiko.sftp_handle.INFO
-paramiko.sftp_server.INFO
-paramiko.sftp_si.INFO
-paramiko.transport.INFO
-paramiko.util.INFO" class="py-name" href="#" onclick="return doclink('link-78', 'INFO', 'link-77');">INFO</a></tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"><tt id="link-79" class="py-name" targets="Variable paramiko.auth_handler.WARNING=paramiko.auth_handler-module.html#WARNING,Variable paramiko.channel.WARNING=paramiko.channel-module.html#WARNING,Variable paramiko.client.WARNING=paramiko.client-module.html#WARNING,Variable paramiko.common.WARNING=paramiko.common-module.html#WARNING,Variable paramiko.dsskey.WARNING=paramiko.dsskey-module.html#WARNING,Variable paramiko.hostkeys.WARNING=paramiko.hostkeys-module.html#WARNING,Variable paramiko.kex_gex.WARNING=paramiko.kex_gex-module.html#WARNING,Variable paramiko.kex_group1.WARNING=paramiko.kex_group1-module.html#WARNING,Variable paramiko.logging22.WARNING=paramiko.logging22-module.html#WARNING,Variable paramiko.packet.WARNING=paramiko.packet-module.html#WARNING,Variable paramiko.pkey.WARNING=paramiko.pkey-module.html#WARNING,Variable paramiko.rsakey.WARNING=paramiko.rsakey-module.html#WARNING,Variable paramiko.server.WARNING=paramiko.server-module.html#WARNING,Variable paramiko.sftp.WARNING=paramiko.sftp-module.html#WARNING,Variable paramiko.sftp_attr.WARNING=paramiko.sftp_attr-module.html#WARNING,Variable paramiko.sftp_client.WARNING=paramiko.sftp_client-module.html#WARNING,Variable paramiko.sftp_file.WARNING=paramiko.sftp_file-module.html#WARNING,Variable paramiko.sftp_handle.WARNING=paramiko.sftp_handle-module.html#WARNING,Variable paramiko.sftp_server.WARNING=paramiko.sftp_server-module.html#WARNING,Variable paramiko.sftp_si.WARNING=paramiko.sftp_si-module.html#WARNING,Variable paramiko.transport.WARNING=paramiko.transport-module.html#WARNING,Variable paramiko.util.WARNING=paramiko.util-module.html#WARNING"><a title="paramiko.auth_handler.WARNING
-paramiko.channel.WARNING
-paramiko.client.WARNING
-paramiko.common.WARNING
-paramiko.dsskey.WARNING
-paramiko.hostkeys.WARNING
-paramiko.kex_gex.WARNING
-paramiko.kex_group1.WARNING
-paramiko.logging22.WARNING
-paramiko.packet.WARNING
-paramiko.pkey.WARNING
-paramiko.rsakey.WARNING
-paramiko.server.WARNING
-paramiko.sftp.WARNING
-paramiko.sftp_attr.WARNING
-paramiko.sftp_client.WARNING
-paramiko.sftp_file.WARNING
-paramiko.sftp_handle.WARNING
-paramiko.sftp_server.WARNING
-paramiko.sftp_si.WARNING
-paramiko.transport.WARNING
-paramiko.util.WARNING" class="py-name" href="#" onclick="return doclink('link-79', 'WARNING', 'link-79');">WARNING</a></tt> <tt class="py-op">=</tt> <tt class="py-name">logging</tt><tt class="py-op">.</tt><tt id="link-80" class="py-name"><a title="paramiko.auth_handler.WARNING
-paramiko.channel.WARNING
-paramiko.client.WARNING
-paramiko.common.WARNING
-paramiko.dsskey.WARNING
-paramiko.hostkeys.WARNING
-paramiko.kex_gex.WARNING
-paramiko.kex_group1.WARNING
-paramiko.logging22.WARNING
-paramiko.packet.WARNING
-paramiko.pkey.WARNING
-paramiko.rsakey.WARNING
-paramiko.server.WARNING
-paramiko.sftp.WARNING
-paramiko.sftp_attr.WARNING
-paramiko.sftp_client.WARNING
-paramiko.sftp_file.WARNING
-paramiko.sftp_handle.WARNING
-paramiko.sftp_server.WARNING
-paramiko.sftp_si.WARNING
-paramiko.transport.WARNING
-paramiko.util.WARNING" class="py-name" href="#" onclick="return doclink('link-80', 'WARNING', 'link-79');">WARNING</a></tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"><tt id="link-81" class="py-name" targets="Variable paramiko.auth_handler.ERROR=paramiko.auth_handler-module.html#ERROR,Variable paramiko.channel.ERROR=paramiko.channel-module.html#ERROR,Variable paramiko.client.ERROR=paramiko.client-module.html#ERROR,Variable paramiko.common.ERROR=paramiko.common-module.html#ERROR,Variable paramiko.dsskey.ERROR=paramiko.dsskey-module.html#ERROR,Variable paramiko.hostkeys.ERROR=paramiko.hostkeys-module.html#ERROR,Variable paramiko.kex_gex.ERROR=paramiko.kex_gex-module.html#ERROR,Variable paramiko.kex_group1.ERROR=paramiko.kex_group1-module.html#ERROR,Variable paramiko.logging22.ERROR=paramiko.logging22-module.html#ERROR,Variable paramiko.packet.ERROR=paramiko.packet-module.html#ERROR,Variable paramiko.pkey.ERROR=paramiko.pkey-module.html#ERROR,Variable paramiko.rsakey.ERROR=paramiko.rsakey-module.html#ERROR,Variable paramiko.server.ERROR=paramiko.server-module.html#ERROR,Variable paramiko.sftp.ERROR=paramiko.sftp-module.html#ERROR,Variable paramiko.sftp_attr.ERROR=paramiko.sftp_attr-module.html#ERROR,Variable paramiko.sftp_client.ERROR=paramiko.sftp_client-module.html#ERROR,Variable paramiko.sftp_file.ERROR=paramiko.sftp_file-module.html#ERROR,Variable paramiko.sftp_handle.ERROR=paramiko.sftp_handle-module.html#ERROR,Variable paramiko.sftp_server.ERROR=paramiko.sftp_server-module.html#ERROR,Variable paramiko.sftp_si.ERROR=paramiko.sftp_si-module.html#ERROR,Variable paramiko.transport.ERROR=paramiko.transport-module.html#ERROR,Variable paramiko.util.ERROR=paramiko.util-module.html#ERROR"><a title="paramiko.auth_handler.ERROR
-paramiko.channel.ERROR
-paramiko.client.ERROR
-paramiko.common.ERROR
-paramiko.dsskey.ERROR
-paramiko.hostkeys.ERROR
-paramiko.kex_gex.ERROR
-paramiko.kex_group1.ERROR
-paramiko.logging22.ERROR
-paramiko.packet.ERROR
-paramiko.pkey.ERROR
-paramiko.rsakey.ERROR
-paramiko.server.ERROR
-paramiko.sftp.ERROR
-paramiko.sftp_attr.ERROR
-paramiko.sftp_client.ERROR
-paramiko.sftp_file.ERROR
-paramiko.sftp_handle.ERROR
-paramiko.sftp_server.ERROR
-paramiko.sftp_si.ERROR
-paramiko.transport.ERROR
-paramiko.util.ERROR" class="py-name" href="#" onclick="return doclink('link-81', 'ERROR', 'link-81');">ERROR</a></tt> <tt class="py-op">=</tt> <tt class="py-name">logging</tt><tt class="py-op">.</tt><tt id="link-82" class="py-name"><a title="paramiko.auth_handler.ERROR
-paramiko.channel.ERROR
-paramiko.client.ERROR
-paramiko.common.ERROR
-paramiko.dsskey.ERROR
-paramiko.hostkeys.ERROR
-paramiko.kex_gex.ERROR
-paramiko.kex_group1.ERROR
-paramiko.logging22.ERROR
-paramiko.packet.ERROR
-paramiko.pkey.ERROR
-paramiko.rsakey.ERROR
-paramiko.server.ERROR
-paramiko.sftp.ERROR
-paramiko.sftp_attr.ERROR
-paramiko.sftp_client.ERROR
-paramiko.sftp_file.ERROR
-paramiko.sftp_handle.ERROR
-paramiko.sftp_server.ERROR
-paramiko.sftp_si.ERROR
-paramiko.transport.ERROR
-paramiko.util.ERROR" class="py-name" href="#" onclick="return doclink('link-82', 'ERROR', 'link-81');">ERROR</a></tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"><tt id="link-83" class="py-name" targets="Variable paramiko.auth_handler.CRITICAL=paramiko.auth_handler-module.html#CRITICAL,Variable paramiko.channel.CRITICAL=paramiko.channel-module.html#CRITICAL,Variable paramiko.client.CRITICAL=paramiko.client-module.html#CRITICAL,Variable paramiko.common.CRITICAL=paramiko.common-module.html#CRITICAL,Variable paramiko.dsskey.CRITICAL=paramiko.dsskey-module.html#CRITICAL,Variable paramiko.hostkeys.CRITICAL=paramiko.hostkeys-module.html#CRITICAL,Variable paramiko.kex_gex.CRITICAL=paramiko.kex_gex-module.html#CRITICAL,Variable paramiko.kex_group1.CRITICAL=paramiko.kex_group1-module.html#CRITICAL,Variable paramiko.logging22.CRITICAL=paramiko.logging22-module.html#CRITICAL,Variable paramiko.packet.CRITICAL=paramiko.packet-module.html#CRITICAL,Variable paramiko.pkey.CRITICAL=paramiko.pkey-module.html#CRITICAL,Variable paramiko.rsakey.CRITICAL=paramiko.rsakey-module.html#CRITICAL,Variable paramiko.server.CRITICAL=paramiko.server-module.html#CRITICAL,Variable paramiko.sftp.CRITICAL=paramiko.sftp-module.html#CRITICAL,Variable paramiko.sftp_attr.CRITICAL=paramiko.sftp_attr-module.html#CRITICAL,Variable paramiko.sftp_client.CRITICAL=paramiko.sftp_client-module.html#CRITICAL,Variable paramiko.sftp_file.CRITICAL=paramiko.sftp_file-module.html#CRITICAL,Variable paramiko.sftp_handle.CRITICAL=paramiko.sftp_handle-module.html#CRITICAL,Variable paramiko.sftp_server.CRITICAL=paramiko.sftp_server-module.html#CRITICAL,Variable paramiko.sftp_si.CRITICAL=paramiko.sftp_si-module.html#CRITICAL,Variable paramiko.transport.CRITICAL=paramiko.transport-module.html#CRITICAL,Variable paramiko.util.CRITICAL=paramiko.util-module.html#CRITICAL"><a title="paramiko.auth_handler.CRITICAL
-paramiko.channel.CRITICAL
-paramiko.client.CRITICAL
-paramiko.common.CRITICAL
-paramiko.dsskey.CRITICAL
-paramiko.hostkeys.CRITICAL
-paramiko.kex_gex.CRITICAL
-paramiko.kex_group1.CRITICAL
-paramiko.logging22.CRITICAL
-paramiko.packet.CRITICAL
-paramiko.pkey.CRITICAL
-paramiko.rsakey.CRITICAL
-paramiko.server.CRITICAL
-paramiko.sftp.CRITICAL
-paramiko.sftp_attr.CRITICAL
-paramiko.sftp_client.CRITICAL
-paramiko.sftp_file.CRITICAL
-paramiko.sftp_handle.CRITICAL
-paramiko.sftp_server.CRITICAL
-paramiko.sftp_si.CRITICAL
-paramiko.transport.CRITICAL
-paramiko.util.CRITICAL" class="py-name" href="#" onclick="return doclink('link-83', 'CRITICAL', 'link-83');">CRITICAL</a></tt> <tt class="py-op">=</tt> <tt class="py-name">logging</tt><tt class="py-op">.</tt><tt id="link-84" class="py-name"><a title="paramiko.auth_handler.CRITICAL
-paramiko.channel.CRITICAL
-paramiko.client.CRITICAL
-paramiko.common.CRITICAL
-paramiko.dsskey.CRITICAL
-paramiko.hostkeys.CRITICAL
-paramiko.kex_gex.CRITICAL
-paramiko.kex_group1.CRITICAL
-paramiko.logging22.CRITICAL
-paramiko.packet.CRITICAL
-paramiko.pkey.CRITICAL
-paramiko.rsakey.CRITICAL
-paramiko.server.CRITICAL
-paramiko.sftp.CRITICAL
-paramiko.sftp_attr.CRITICAL
-paramiko.sftp_client.CRITICAL
-paramiko.sftp_file.CRITICAL
-paramiko.sftp_handle.CRITICAL
-paramiko.sftp_server.CRITICAL
-paramiko.sftp_si.CRITICAL
-paramiko.transport.CRITICAL
-paramiko.util.CRITICAL" class="py-name" href="#" onclick="return doclink('link-84', 'CRITICAL', 'link-83');">CRITICAL</a></tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:08 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.compress-module.html b/docs/paramiko.compress-module.html
deleted file mode 100644
index 0a003a7..0000000
--- a/docs/paramiko.compress-module.html
+++ /dev/null
@@ -1,143 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.compress</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;compress
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.compress-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module compress</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.compress-pysrc.html">source&nbsp;code</a></span></p>
-<p>Compression implementations for a Transport.</p>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Classes</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.compress.ZlibCompressor-class.html" class="summary-name">ZlibCompressor</a>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.compress.ZlibDecompressor-class.html" class="summary-name">ZlibDecompressor</a>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'paramiko'"><code class="variable-quote">'</code><code class="variable-string">paramiko</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:02 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.compress-pysrc.html b/docs/paramiko.compress-pysrc.html
deleted file mode 100644
index f19033f..0000000
--- a/docs/paramiko.compress-pysrc.html
+++ /dev/null
@@ -1,148 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.compress</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;compress
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.compress-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.compress-module.html" onclick="show_private();">Module paramiko.compress</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2003-2007 Robey Pointer &lt;robeypointer@gmail.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno">10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno">11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno">12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno">13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno">14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno">15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno">16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno">17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno">18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno">19</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L20"></a><tt class="py-lineno">20</tt> <tt class="py-line"><tt class="py-docstring">Compression implementations for a Transport.</tt> </tt>
-<a name="L21"></a><tt class="py-lineno">21</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L22"></a><tt class="py-lineno">22</tt> <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno">23</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">zlib</tt> </tt>
-<a name="L24"></a><tt class="py-lineno">24</tt> <tt class="py-line"> </tt>
-<a name="L25"></a><tt class="py-lineno">25</tt> <tt class="py-line"> </tt>
-<a name="ZlibCompressor"></a><div id="ZlibCompressor-def"><a name="L26"></a><tt class="py-lineno">26</tt> <a class="py-toggle" href="#" id="ZlibCompressor-toggle" onclick="return toggle('ZlibCompressor');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.compress.ZlibCompressor-class.html">ZlibCompressor</a> <tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ZlibCompressor-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="ZlibCompressor-expanded"><a name="ZlibCompressor.__init__"></a><div id="ZlibCompressor.__init__-def"><a name="L27"></a><tt class="py-lineno">27</tt> <a class="py-toggle" href="#" id="ZlibCompressor.__init__-toggle" onclick="return toggle('ZlibCompressor.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.compress.ZlibCompressor-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ZlibCompressor.__init__-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="ZlibCompressor.__init__-expanded"><a name="L28"></a><tt class="py-lineno">28</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">z</tt> <tt class="py-op">=</tt> <tt class="py-name">zlib</tt><tt class="py-op">.</tt><tt class="py-name">compressobj</tt><tt class="py-op">(</tt><tt class="py-number">9</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L29"></a><tt class="py-lineno">29</tt> <tt class="py-line"> </tt>
-<a name="ZlibCompressor.__call__"></a><div id="ZlibCompressor.__call__-def"><a name="L30"></a><tt class="py-lineno">30</tt> <a class="py-toggle" href="#" id="ZlibCompressor.__call__-toggle" onclick="return toggle('ZlibCompressor.__call__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.compress.ZlibCompressor-class.html#__call__">__call__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">data</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ZlibCompressor.__call__-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="ZlibCompressor.__call__-expanded"><a name="L31"></a><tt class="py-lineno">31</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">z</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Module paramiko.compress=paramiko.compress-module.html"><a title="paramiko.compress" class="py-name" href="#" onclick="return doclink('link-0', 'compress', 'link-0');">compress</a></tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">z</tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method paramiko.BufferedFile.flush()=paramiko.BufferedFile-class.html#flush"><a title="paramiko.BufferedFile.flush" class="py-name" href="#" onclick="return doclink('link-1', 'flush', 'link-1');">flush</a></tt><tt class="py-op">(</tt><tt class="py-name">zlib</tt><tt class="py-op">.</tt><tt class="py-name">Z_FULL_FLUSH</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L32"></a><tt class="py-lineno">32</tt> <tt class="py-line"> </tt>
-<a name="L33"></a><tt class="py-lineno">33</tt> <tt class="py-line"> </tt>
-<a name="ZlibDecompressor"></a><div id="ZlibDecompressor-def"><a name="L34"></a><tt class="py-lineno">34</tt> <a class="py-toggle" href="#" id="ZlibDecompressor-toggle" onclick="return toggle('ZlibDecompressor');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.compress.ZlibDecompressor-class.html">ZlibDecompressor</a> <tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ZlibDecompressor-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="ZlibDecompressor-expanded"><a name="ZlibDecompressor.__init__"></a><div id="ZlibDecompressor.__init__-def"><a name="L35"></a><tt class="py-lineno">35</tt> <a class="py-toggle" href="#" id="ZlibDecompressor.__init__-toggle" onclick="return toggle('ZlibDecompressor.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.compress.ZlibDecompressor-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ZlibDecompressor.__init__-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="ZlibDecompressor.__init__-expanded"><a name="L36"></a><tt class="py-lineno">36</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">z</tt> <tt class="py-op">=</tt> <tt class="py-name">zlib</tt><tt class="py-op">.</tt><tt class="py-name">decompressobj</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L37"></a><tt class="py-lineno">37</tt> <tt class="py-line"> </tt>
-<a name="ZlibDecompressor.__call__"></a><div id="ZlibDecompressor.__call__-def"><a name="L38"></a><tt class="py-lineno">38</tt> <a class="py-toggle" href="#" id="ZlibDecompressor.__call__-toggle" onclick="return toggle('ZlibDecompressor.__call__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.compress.ZlibDecompressor-class.html#__call__">__call__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">data</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ZlibDecompressor.__call__-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="ZlibDecompressor.__call__-expanded"><a name="L39"></a><tt class="py-lineno">39</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">z</tt><tt class="py-op">.</tt><tt class="py-name">decompress</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L40"></a><tt class="py-lineno">40</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:07 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.compress.ZlibCompressor-class.html b/docs/paramiko.compress.ZlibCompressor-class.html
deleted file mode 100644
index b735db6..0000000
--- a/docs/paramiko.compress.ZlibCompressor-class.html
+++ /dev/null
@@ -1,222 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.compress.ZlibCompressor</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- <a href="paramiko.compress-module.html" onclick="show_private();">Module&nbsp;compress</a> ::
- Class&nbsp;ZlibCompressor
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.compress.ZlibCompressor-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class ZlibCompressor</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.compress-pysrc.html#ZlibCompressor">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- <strong class="uidshort">ZlibCompressor</strong>
-</pre>
-
-<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.compress.ZlibCompressor-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- x.__init__(...) initializes x; see x.__class__.__doc__ for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.compress-pysrc.html#ZlibCompressor.__init__">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__call__"></a><span class="summary-sig-name">__call__</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">data</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.compress-pysrc.html#ZlibCompressor.__call__">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.compress-pysrc.html#ZlibCompressor.__init__">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see x.__class__.__doc__ for
- signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:04 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.compress.ZlibDecompressor-class.html b/docs/paramiko.compress.ZlibDecompressor-class.html
deleted file mode 100644
index 48ff726..0000000
--- a/docs/paramiko.compress.ZlibDecompressor-class.html
+++ /dev/null
@@ -1,222 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.compress.ZlibDecompressor</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- <a href="paramiko.compress-module.html" onclick="show_private();">Module&nbsp;compress</a> ::
- Class&nbsp;ZlibDecompressor
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.compress.ZlibDecompressor-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class ZlibDecompressor</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.compress-pysrc.html#ZlibDecompressor">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- <strong class="uidshort">ZlibDecompressor</strong>
-</pre>
-
-<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.compress.ZlibDecompressor-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- x.__init__(...) initializes x; see x.__class__.__doc__ for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.compress-pysrc.html#ZlibDecompressor.__init__">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__call__"></a><span class="summary-sig-name">__call__</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">data</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.compress-pysrc.html#ZlibDecompressor.__call__">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.compress-pysrc.html#ZlibDecompressor.__init__">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see x.__class__.__doc__ for
- signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:04 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.config-module.html b/docs/paramiko.config-module.html
deleted file mode 100644
index 51fef48..0000000
--- a/docs/paramiko.config-module.html
+++ /dev/null
@@ -1,121 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.config</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;config
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.config-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module config</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.config-pysrc.html">source&nbsp;code</a></span></p>
-<p><a href="paramiko.SSHConfig-class.html"
- class="link">SSHConfig</a>.</p>
-
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'paramiko'"><code class="variable-quote">'</code><code class="variable-string">paramiko</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:02 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.config-pysrc.html b/docs/paramiko.config-pysrc.html
deleted file mode 100644
index c773999..0000000
--- a/docs/paramiko.config-pysrc.html
+++ /dev/null
@@ -1,219 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.config</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;config
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.config-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.config-module.html" onclick="show_private();">Module paramiko.config</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2006-2007 Robey Pointer &lt;robeypointer@gmail.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring">L{SSHConfig}.</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">fnmatch</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"> </tt>
-<a name="SSHConfig"></a><div id="SSHConfig-def"><a name="L26"></a><tt class="py-lineno"> 26</tt> <a class="py-toggle" href="#" id="SSHConfig-toggle" onclick="return toggle('SSHConfig');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.config.SSHConfig-class.html">SSHConfig</a> <tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SSHConfig-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="SSHConfig-expanded"><a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"><tt class="py-docstring"> Representation of config information as stored in the format used by</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"><tt class="py-docstring"> OpenSSH. Queries can be made via L{lookup}. The format is described in</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"><tt class="py-docstring"> OpenSSH's C{ssh_config} man page. This class is provided primarily as a</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"><tt class="py-docstring"> convenience to posix users (since the OpenSSH format is a de-facto</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"><tt class="py-docstring"> standard on posix) but should work fine on Windows too.</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.6</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> </tt>
-<a name="SSHConfig.__init__"></a><div id="SSHConfig.__init__-def"><a name="L37"></a><tt class="py-lineno"> 37</tt> <a class="py-toggle" href="#" id="SSHConfig.__init__-toggle" onclick="return toggle('SSHConfig.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.config.SSHConfig-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SSHConfig.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SSHConfig.__init__-expanded"><a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"><tt class="py-docstring"> Create a new OpenSSH config object.</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_config</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-op">{</tt> <tt class="py-string">'host'</tt><tt class="py-op">:</tt> <tt class="py-string">'*'</tt> <tt class="py-op">}</tt> <tt class="py-op">]</tt> </tt>
-</div><a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> </tt>
-<a name="SSHConfig.parse"></a><div id="SSHConfig.parse-def"><a name="L43"></a><tt class="py-lineno"> 43</tt> <a class="py-toggle" href="#" id="SSHConfig.parse-toggle" onclick="return toggle('SSHConfig.parse');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.config.SSHConfig-class.html#parse">parse</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">file_obj</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SSHConfig.parse-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SSHConfig.parse-expanded"><a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"><tt class="py-docstring"> Read an OpenSSH config from the given file object.</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"><tt class="py-docstring"> @param file_obj: a file-like object to read the config file from</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"><tt class="py-docstring"> @type file_obj: file</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-name">configs</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_config</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">]</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">line</tt> <tt class="py-keyword">in</tt> <tt class="py-name">file_obj</tt><tt class="py-op">:</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-name">line</tt> <tt class="py-op">=</tt> <tt class="py-name">line</tt><tt class="py-op">.</tt><tt class="py-name">rstrip</tt><tt class="py-op">(</tt><tt class="py-string">'\n'</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">lstrip</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">line</tt> <tt class="py-op">==</tt> <tt class="py-string">''</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">'#'</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">'='</tt> <tt class="py-keyword">in</tt> <tt class="py-name">line</tt><tt class="py-op">:</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-name">key</tt><tt class="py-op">,</tt> <tt class="py-name">value</tt> <tt class="py-op">=</tt> <tt class="py-name">line</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">'='</tt><tt class="py-op">,</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-name">key</tt> <tt class="py-op">=</tt> <tt class="py-name">key</tt><tt class="py-op">.</tt><tt class="py-name">strip</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">lower</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-comment"># find first whitespace, and split there</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-op">(</tt><tt class="py-name">i</tt> <tt class="py-op">&lt;</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">line</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">isspace</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">Exception</tt><tt class="py-op">(</tt><tt class="py-string">'Unparsable line: %r'</tt> <tt class="py-op">%</tt> <tt class="py-name">line</tt><tt class="py-op">)</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-name">key</tt> <tt class="py-op">=</tt> <tt class="py-name">line</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">lower</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-name">value</tt> <tt class="py-op">=</tt> <tt class="py-name">line</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">:</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">lstrip</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">key</tt> <tt class="py-op">==</tt> <tt class="py-string">'host'</tt><tt class="py-op">:</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-keyword">del</tt> <tt class="py-name">configs</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-op">]</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-comment"># the value may be multiple hosts, space-delimited</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">host</tt> <tt class="py-keyword">in</tt> <tt class="py-name">value</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-comment"># do we have a pre-existing host config to append to?</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-name">matches</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-name">c</tt> <tt class="py-keyword">for</tt> <tt class="py-name">c</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_config</tt> <tt class="py-keyword">if</tt> <tt class="py-name">c</tt><tt class="py-op">[</tt><tt class="py-string">'host'</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">host</tt><tt class="py-op">]</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">matches</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-name">configs</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">matches</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt id="link-0" class="py-name" targets="Module paramiko.config=paramiko.config-module.html"><a title="paramiko.config" class="py-name" href="#" onclick="return doclink('link-0', 'config', 'link-0');">config</a></tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> <tt class="py-string">'host'</tt><tt class="py-op">:</tt> <tt class="py-name">host</tt> <tt class="py-op">}</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_config</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt id="link-1" class="py-name"><a title="paramiko.config" class="py-name" href="#" onclick="return doclink('link-1', 'config', 'link-0');">config</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-name">configs</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt id="link-2" class="py-name"><a title="paramiko.config" class="py-name" href="#" onclick="return doclink('link-2', 'config', 'link-0');">config</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt id="link-3" class="py-name"><a title="paramiko.config" class="py-name" href="#" onclick="return doclink('link-3', 'config', 'link-0');">config</a></tt> <tt class="py-keyword">in</tt> <tt class="py-name">configs</tt><tt class="py-op">:</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt id="link-4" class="py-name"><a title="paramiko.config" class="py-name" href="#" onclick="return doclink('link-4', 'config', 'link-0');">config</a></tt><tt class="py-op">[</tt><tt class="py-name">key</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">value</tt> </tt>
-</div><a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> </tt>
-<a name="SSHConfig.lookup"></a><div id="SSHConfig.lookup-def"><a name="L84"></a><tt class="py-lineno"> 84</tt> <a class="py-toggle" href="#" id="SSHConfig.lookup-toggle" onclick="return toggle('SSHConfig.lookup');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.config.SSHConfig-class.html#lookup">lookup</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">hostname</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SSHConfig.lookup-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SSHConfig.lookup-expanded"><a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"><tt class="py-docstring"> Return a dict of config options for a given hostname.</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"><tt class="py-docstring"> The host-matching rules of OpenSSH's C{ssh_config} man page are used,</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"><tt class="py-docstring"> which means that all configuration options from matching host</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"><tt class="py-docstring"> specifications are merged, with more specific hostmasks taking</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"><tt class="py-docstring"> precedence. In other words, if C{"Port"} is set under C{"Host *"}</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"><tt class="py-docstring"> and also C{"Host *.example.com"}, and the lookup is for</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"><tt class="py-docstring"> C{"ssh.example.com"}, then the port entry for C{"Host *.example.com"}</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"><tt class="py-docstring"> will win out.</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"><tt class="py-docstring"> The keys in the returned dict are all normalized to lowercase (look for</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"><tt class="py-docstring"> C{"port"}, not C{"Port"}. No other processing is done to the keys or</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"><tt class="py-docstring"> values.</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"><tt class="py-docstring"> @param hostname: the hostname to lookup</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"><tt class="py-docstring"> @type hostname: str</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-name">matches</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-name">x</tt> <tt class="py-keyword">for</tt> <tt class="py-name">x</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_config</tt> <tt class="py-keyword">if</tt> <tt class="py-name">fnmatch</tt><tt class="py-op">.</tt><tt class="py-name">fnmatch</tt><tt class="py-op">(</tt><tt class="py-name">hostname</tt><tt class="py-op">,</tt> <tt class="py-name">x</tt><tt class="py-op">[</tt><tt class="py-string">'host'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">]</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-comment"># sort in order of shortest match (usually '*') to longest</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-name">matches</tt><tt class="py-op">.</tt><tt class="py-name">sort</tt><tt class="py-op">(</tt><tt class="py-keyword">lambda</tt> <tt class="py-name">x</tt><tt class="py-op">,</tt><tt class="py-name">y</tt><tt class="py-op">:</tt> <tt class="py-name">cmp</tt><tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">[</tt><tt class="py-string">'host'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">y</tt><tt class="py-op">[</tt><tt class="py-string">'host'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-name">ret</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">m</tt> <tt class="py-keyword">in</tt> <tt class="py-name">matches</tt><tt class="py-op">:</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt class="py-name">ret</tt><tt class="py-op">.</tt><tt class="py-name">update</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-keyword">del</tt> <tt class="py-name">ret</tt><tt class="py-op">[</tt><tt class="py-string">'host'</tt><tt class="py-op">]</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">ret</tt> </tt>
-</div></div><a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:08 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.dsskey-module.html b/docs/paramiko.dsskey-module.html
deleted file mode 100644
index 537c36d..0000000
--- a/docs/paramiko.dsskey-module.html
+++ /dev/null
@@ -1,531 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.dsskey</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;dsskey
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.dsskey-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module dsskey</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.dsskey-pysrc.html">source&nbsp;code</a></span></p>
-<p><a href="paramiko.DSSKey-class.html" class="link">DSSKey</a></p>
-
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_FAILED"></a><span class="summary-name">AUTH_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_PARTIALLY_SUCCESSFUL"></a><span class="summary-name">AUTH_PARTIALLY_SUCCESSFUL</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_SUCCESSFUL"></a><span class="summary-name">AUTH_SUCCESSFUL</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.dsskey-module.html#CONNECTION_FAILED_CODE" class="summary-name">CONNECTION_FAILED_CODE</a> = <code title="{1: 'Administratively prohibited',
- 2: 'Connect failed',
- 3: 'Unknown channel type',
- 4: 'Resource shortage'}"><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">:</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CRITICAL"></a><span class="summary-name">CRITICAL</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DEBUG"></a><span class="summary-name">DEBUG</span> = <code title="10">10</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_AUTH_CANCELLED_BY_USER"></a><span class="summary-name">DISCONNECT_AUTH_CANCELLED_BY_USER</span> = <code title="13">13</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE"></a><span class="summary-name">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</span> = <code title="14">14</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_SERVICE_NOT_AVAILABLE"></a><span class="summary-name">DISCONNECT_SERVICE_NOT_AVAILABLE</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="ERROR"></a><span class="summary-name">ERROR</span> = <code title="40">40</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="INFO"></a><span class="summary-name">INFO</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_CLOSE"></a><span class="summary-name">MSG_CHANNEL_CLOSE</span> = <code title="97">97</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_DATA"></a><span class="summary-name">MSG_CHANNEL_DATA</span> = <code title="94">94</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EOF"></a><span class="summary-name">MSG_CHANNEL_EOF</span> = <code title="96">96</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EXTENDED_DATA"></a><span class="summary-name">MSG_CHANNEL_EXTENDED_DATA</span> = <code title="95">95</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_FAILURE"></a><span class="summary-name">MSG_CHANNEL_FAILURE</span> = <code title="100">100</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN"></a><span class="summary-name">MSG_CHANNEL_OPEN</span> = <code title="90">90</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_FAILURE"></a><span class="summary-name">MSG_CHANNEL_OPEN_FAILURE</span> = <code title="92">92</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_OPEN_SUCCESS</span> = <code title="91">91</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_REQUEST"></a><span class="summary-name">MSG_CHANNEL_REQUEST</span> = <code title="98">98</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_SUCCESS</span> = <code title="99">99</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_WINDOW_ADJUST"></a><span class="summary-name">MSG_CHANNEL_WINDOW_ADJUST</span> = <code title="93">93</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DEBUG"></a><span class="summary-name">MSG_DEBUG</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DISCONNECT"></a><span class="summary-name">MSG_DISCONNECT</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_GLOBAL_REQUEST"></a><span class="summary-name">MSG_GLOBAL_REQUEST</span> = <code title="80">80</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_IGNORE"></a><span class="summary-name">MSG_IGNORE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_KEXINIT"></a><span class="summary-name">MSG_KEXINIT</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.dsskey-module.html#MSG_NAMES" class="summary-name">MSG_NAMES</a> = <code title="{1: 'disconnect',
- 2: 'ignore',
- 3: 'unimplemented',
- 4: 'debug',
- 5: 'service-request',
- 6: 'service-accept',
- 20: 'kexinit',
- 21: 'newkeys',
-..."><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">, </code>3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_NEWKEYS"></a><span class="summary-name">MSG_NEWKEYS</span> = <code title="21">21</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_FAILURE"></a><span class="summary-name">MSG_REQUEST_FAILURE</span> = <code title="82">82</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_SUCCESS"></a><span class="summary-name">MSG_REQUEST_SUCCESS</span> = <code title="81">81</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_ACCEPT"></a><span class="summary-name">MSG_SERVICE_ACCEPT</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_REQUEST"></a><span class="summary-name">MSG_SERVICE_REQUEST</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_UNIMPLEMENTED"></a><span class="summary-name">MSG_UNIMPLEMENTED</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_BANNER"></a><span class="summary-name">MSG_USERAUTH_BANNER</span> = <code title="53">53</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_FAILURE"></a><span class="summary-name">MSG_USERAUTH_FAILURE</span> = <code title="51">51</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_REQUEST"></a><span class="summary-name">MSG_USERAUTH_INFO_REQUEST</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_RESPONSE"></a><span class="summary-name">MSG_USERAUTH_INFO_RESPONSE</span> = <code title="61">61</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_PK_OK"></a><span class="summary-name">MSG_USERAUTH_PK_OK</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_REQUEST"></a><span class="summary-name">MSG_USERAUTH_REQUEST</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_SUCCESS"></a><span class="summary-name">MSG_USERAUTH_SUCCESS</span> = <code title="52">52</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED"></a><span class="summary-name">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_CONNECT_FAILED"></a><span class="summary-name">OPEN_FAILED_CONNECT_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_RESOURCE_SHORTAGE"></a><span class="summary-name">OPEN_FAILED_RESOURCE_SHORTAGE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_UNKNOWN_CHANNEL_TYPE"></a><span class="summary-name">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_SUCCEEDED"></a><span class="summary-name">OPEN_SUCCEEDED</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="PY22"></a><span class="summary-name">PY22</span> = <code title="False">False</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="WARNING"></a><span class="summary-name">WARNING</span> = <code title="30">30</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'paramiko'"><code class="variable-quote">'</code><code class="variable-string">paramiko</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="rng"></a><span class="summary-name">rng</span> = <code title="Random.new()">Random.new()</code>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES DETAILS ==================== -->
-<a name="section-VariablesDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables Details</span></td>
-</tr>
-</table>
-<a name="CONNECTION_FAILED_CODE"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">CONNECTION_FAILED_CODE</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Connect failed</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Unknown channel type</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Resource shortage</code><code class="variable-quote">'</code><code class="variable-group">}</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="MSG_NAMES"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">MSG_NAMES</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">debug</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 5<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-request</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 6<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-accept</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 20<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">kexinit</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 21<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">newkeys</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:02 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.dsskey-pysrc.html b/docs/paramiko.dsskey-pysrc.html
deleted file mode 100644
index 6e96318..0000000
--- a/docs/paramiko.dsskey-pysrc.html
+++ /dev/null
@@ -1,356 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.dsskey</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;dsskey
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.dsskey-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.dsskey-module.html" onclick="show_private();">Module paramiko.dsskey</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2003-2007 Robey Pointer &lt;robeypointer@gmail.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring">L{DSSKey}</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">Crypto</tt><tt class="py-op">.</tt><tt class="py-name">PublicKey</tt> <tt class="py-keyword">import</tt> <tt class="py-name">DSA</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">Crypto</tt><tt class="py-op">.</tt><tt class="py-name">Hash</tt> <tt class="py-keyword">import</tt> <tt class="py-name">SHA</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package paramiko=paramiko-module.html"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-0', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Module paramiko.common=paramiko.common-module.html"><a title="paramiko.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt> <tt class="py-keyword">import</tt> <tt class="py-op">*</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-2" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-2', 'paramiko', 'link-0');">paramiko</a></tt> <tt class="py-keyword">import</tt> <tt id="link-3" class="py-name" targets="Module paramiko.util=paramiko.util-module.html"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-3', 'util', 'link-3');">util</a></tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-4" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-4', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Module paramiko.ssh_exception=paramiko.ssh_exception-module.html"><a title="paramiko.ssh_exception" class="py-name" href="#" onclick="return doclink('link-5', 'ssh_exception', 'link-5');">ssh_exception</a></tt> <tt class="py-keyword">import</tt> <tt id="link-6" class="py-name" targets="Class paramiko.SSHException=paramiko.SSHException-class.html"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-6', 'SSHException', 'link-6');">SSHException</a></tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-7" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-7', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Module paramiko.message=paramiko.message-module.html"><a title="paramiko.message" class="py-name" href="#" onclick="return doclink('link-8', 'message', 'link-8');">message</a></tt> <tt class="py-keyword">import</tt> <tt id="link-9" class="py-name" targets="Class paramiko.Message=paramiko.Message-class.html"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-9', 'Message', 'link-9');">Message</a></tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-10" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-10', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-11" class="py-name" targets="Module paramiko.ber=paramiko.ber-module.html"><a title="paramiko.ber" class="py-name" href="#" onclick="return doclink('link-11', 'ber', 'link-11');">ber</a></tt> <tt class="py-keyword">import</tt> <tt id="link-12" class="py-name" targets="Class paramiko.ber.BER=paramiko.ber.BER-class.html"><a title="paramiko.ber.BER" class="py-name" href="#" onclick="return doclink('link-12', 'BER', 'link-12');">BER</a></tt><tt class="py-op">,</tt> <tt id="link-13" class="py-name" targets="Class paramiko.ber.BERException=paramiko.ber.BERException-class.html"><a title="paramiko.ber.BERException" class="py-name" href="#" onclick="return doclink('link-13', 'BERException', 'link-13');">BERException</a></tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-14" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-14', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-15" class="py-name" targets="Module paramiko.pkey=paramiko.pkey-module.html"><a title="paramiko.pkey" class="py-name" href="#" onclick="return doclink('link-15', 'pkey', 'link-15');">pkey</a></tt> <tt class="py-keyword">import</tt> <tt id="link-16" class="py-name" targets="Class paramiko.PKey=paramiko.PKey-class.html"><a title="paramiko.PKey" class="py-name" href="#" onclick="return doclink('link-16', 'PKey', 'link-16');">PKey</a></tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> </tt>
-<a name="DSSKey"></a><div id="DSSKey-def"><a name="L34"></a><tt class="py-lineno"> 34</tt> <a class="py-toggle" href="#" id="DSSKey-toggle" onclick="return toggle('DSSKey');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.dsskey.DSSKey-class.html">DSSKey</a> <tt class="py-op">(</tt><tt class="py-base-class">PKey</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DSSKey-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="DSSKey-expanded"><a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"><tt class="py-docstring"> Representation of a DSS key which can be used to sign an verify SSH2</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"><tt class="py-docstring"> data.</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> </tt>
-<a name="DSSKey.__init__"></a><div id="DSSKey.__init__-def"><a name="L40"></a><tt class="py-lineno"> 40</tt> <a class="py-toggle" href="#" id="DSSKey.__init__-toggle" onclick="return toggle('DSSKey.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.dsskey.DSSKey-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">msg</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">data</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">filename</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">password</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">vals</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">file_obj</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DSSKey.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="DSSKey.__init__-expanded"><a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">p</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">q</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">g</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">y</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">x</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">file_obj</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_from_private_key</tt><tt class="py-op">(</tt><tt class="py-name">file_obj</tt><tt class="py-op">,</tt> <tt class="py-name">password</tt><tt class="py-op">)</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">filename</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_from_private_key_file</tt><tt class="py-op">(</tt><tt class="py-name">filename</tt><tt class="py-op">,</tt> <tt class="py-name">password</tt><tt class="py-op">)</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">msg</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">data</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-name">msg</tt> <tt class="py-op">=</tt> <tt id="link-17" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-17', 'Message', 'link-9');">Message</a></tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">vals</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">p</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">q</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">g</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">y</tt> <tt class="py-op">=</tt> <tt class="py-name">vals</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">msg</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-18" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-18', 'SSHException', 'link-6');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Key object may not be empty'</tt><tt class="py-op">)</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name" targets="Method paramiko.Message.get_string()=paramiko.Message-class.html#get_string"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-19', 'get_string', 'link-19');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-string">'ssh-dss'</tt><tt class="py-op">:</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-20" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-20', 'SSHException', 'link-6');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Invalid key'</tt><tt class="py-op">)</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">p</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name" targets="Method paramiko.Message.get_mpint()=paramiko.Message-class.html#get_mpint"><a title="paramiko.Message.get_mpint" class="py-name" href="#" onclick="return doclink('link-21', 'get_mpint', 'link-21');">get_mpint</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">q</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="paramiko.Message.get_mpint" class="py-name" href="#" onclick="return doclink('link-22', 'get_mpint', 'link-21');">get_mpint</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">g</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="paramiko.Message.get_mpint" class="py-name" href="#" onclick="return doclink('link-23', 'get_mpint', 'link-21');">get_mpint</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">y</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name"><a title="paramiko.Message.get_mpint" class="py-name" href="#" onclick="return doclink('link-24', 'get_mpint', 'link-21');">get_mpint</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt id="link-25" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-25', 'util', 'link-3');">util</a></tt><tt class="py-op">.</tt><tt id="link-26" class="py-name" targets="Function paramiko.util.bit_length()=paramiko.util-module.html#bit_length"><a title="paramiko.util.bit_length" class="py-name" href="#" onclick="return doclink('link-26', 'bit_length', 'link-26');">bit_length</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">p</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> </tt>
-<a name="DSSKey.__str__"></a><div id="DSSKey.__str__-def"><a name="L67"></a><tt class="py-lineno"> 67</tt> <a class="py-toggle" href="#" id="DSSKey.__str__-toggle" onclick="return toggle('DSSKey.__str__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.dsskey.DSSKey-class.html#__str__">__str__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DSSKey.__str__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="DSSKey.__str__-expanded"><a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-27" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-27', 'Message', 'link-9');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name" targets="Method paramiko.Message.add_string()=paramiko.Message-class.html#add_string"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-28', 'add_string', 'link-28');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-string">'ssh-dss'</tt><tt class="py-op">)</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name" targets="Method paramiko.Message.add_mpint()=paramiko.Message-class.html#add_mpint"><a title="paramiko.Message.add_mpint" class="py-name" href="#" onclick="return doclink('link-29', 'add_mpint', 'link-29');">add_mpint</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">p</tt><tt class="py-op">)</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name"><a title="paramiko.Message.add_mpint" class="py-name" href="#" onclick="return doclink('link-30', 'add_mpint', 'link-29');">add_mpint</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">q</tt><tt class="py-op">)</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name"><a title="paramiko.Message.add_mpint" class="py-name" href="#" onclick="return doclink('link-31', 'add_mpint', 'link-29');">add_mpint</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">g</tt><tt class="py-op">)</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name"><a title="paramiko.Message.add_mpint" class="py-name" href="#" onclick="return doclink('link-32', 'add_mpint', 'link-29');">add_mpint</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">y</tt><tt class="py-op">)</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> </tt>
-<a name="DSSKey.__hash__"></a><div id="DSSKey.__hash__-def"><a name="L76"></a><tt class="py-lineno"> 76</tt> <a class="py-toggle" href="#" id="DSSKey.__hash__-toggle" onclick="return toggle('DSSKey.__hash__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.dsskey.DSSKey-class.html#__hash__">__hash__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DSSKey.__hash__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="DSSKey.__hash__-expanded"><a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-name">h</tt> <tt class="py-op">=</tt> <tt class="py-name">hash</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name" targets="Method paramiko.AgentKey.get_name()=paramiko.AgentKey-class.html#get_name,Method paramiko.Channel.get_name()=paramiko.Channel-class.html#get_name,Method paramiko.DSSKey.get_name()=paramiko.DSSKey-class.html#get_name,Method paramiko.PKey.get_name()=paramiko.PKey-class.html#get_name,Method paramiko.RSAKey.get_name()=paramiko.RSAKey-class.html#get_name"><a title="paramiko.AgentKey.get_name
-paramiko.Channel.get_name
-paramiko.DSSKey.get_name
-paramiko.PKey.get_name
-paramiko.RSAKey.get_name" class="py-name" href="#" onclick="return doclink('link-33', 'get_name', 'link-33');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-name">h</tt> <tt class="py-op">=</tt> <tt class="py-name">h</tt> <tt class="py-op">*</tt> <tt class="py-number">37</tt> <tt class="py-op">+</tt> <tt class="py-name">hash</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">p</tt><tt class="py-op">)</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-name">h</tt> <tt class="py-op">=</tt> <tt class="py-name">h</tt> <tt class="py-op">*</tt> <tt class="py-number">37</tt> <tt class="py-op">+</tt> <tt class="py-name">hash</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">q</tt><tt class="py-op">)</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-name">h</tt> <tt class="py-op">=</tt> <tt class="py-name">h</tt> <tt class="py-op">*</tt> <tt class="py-number">37</tt> <tt class="py-op">+</tt> <tt class="py-name">hash</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">g</tt><tt class="py-op">)</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-name">h</tt> <tt class="py-op">=</tt> <tt class="py-name">h</tt> <tt class="py-op">*</tt> <tt class="py-number">37</tt> <tt class="py-op">+</tt> <tt class="py-name">hash</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">y</tt><tt class="py-op">)</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-comment"># h might be a long by now...</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">hash</tt><tt class="py-op">(</tt><tt class="py-name">h</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> </tt>
-<a name="DSSKey.get_name"></a><div id="DSSKey.get_name-def"><a name="L85"></a><tt class="py-lineno"> 85</tt> <a class="py-toggle" href="#" id="DSSKey.get_name-toggle" onclick="return toggle('DSSKey.get_name');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.dsskey.DSSKey-class.html#get_name">get_name</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DSSKey.get_name-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="DSSKey.get_name-expanded"><a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">'ssh-dss'</tt> </tt>
-</div><a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> </tt>
-<a name="DSSKey.get_bits"></a><div id="DSSKey.get_bits-def"><a name="L88"></a><tt class="py-lineno"> 88</tt> <a class="py-toggle" href="#" id="DSSKey.get_bits-toggle" onclick="return toggle('DSSKey.get_bits');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.dsskey.DSSKey-class.html#get_bits">get_bits</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DSSKey.get_bits-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="DSSKey.get_bits-expanded"><a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">size</tt> </tt>
-</div><a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> </tt>
-<a name="DSSKey.can_sign"></a><div id="DSSKey.can_sign-def"><a name="L91"></a><tt class="py-lineno"> 91</tt> <a class="py-toggle" href="#" id="DSSKey.can_sign-toggle" onclick="return toggle('DSSKey.can_sign');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.dsskey.DSSKey-class.html#can_sign">can_sign</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DSSKey.can_sign-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="DSSKey.can_sign-expanded"><a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">x</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> </tt>
-<a name="DSSKey.sign_ssh_data"></a><div id="DSSKey.sign_ssh_data-def"><a name="L94"></a><tt class="py-lineno"> 94</tt> <a class="py-toggle" href="#" id="DSSKey.sign_ssh_data-toggle" onclick="return toggle('DSSKey.sign_ssh_data');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.dsskey.DSSKey-class.html#sign_ssh_data">sign_ssh_data</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">rng</tt><tt class="py-op">,</tt> <tt class="py-param">data</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DSSKey.sign_ssh_data-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="DSSKey.sign_ssh_data-expanded"><a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-name">digest</tt> <tt class="py-op">=</tt> <tt class="py-name">SHA</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name" targets="Class Method paramiko.util.Counter.new()=paramiko.util.Counter-class.html#new"><a title="paramiko.util.Counter.new" class="py-name" href="#" onclick="return doclink('link-34', 'new', 'link-34');">new</a></tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">digest</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-name">dss</tt> <tt class="py-op">=</tt> <tt class="py-name">DSA</tt><tt class="py-op">.</tt><tt class="py-name">construct</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">long</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">y</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">long</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">g</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">long</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">p</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">long</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">q</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">long</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">x</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-comment"># generate a suitable k</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-name">qsize</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt id="link-35" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-35', 'util', 'link-3');">util</a></tt><tt class="py-op">.</tt><tt id="link-36" class="py-name" targets="Function paramiko.util.deflate_long()=paramiko.util-module.html#deflate_long"><a title="paramiko.util.deflate_long" class="py-name" href="#" onclick="return doclink('link-36', 'deflate_long', 'link-36');">deflate_long</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">q</tt><tt class="py-op">,</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-name">k</tt> <tt class="py-op">=</tt> <tt id="link-37" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-37', 'util', 'link-3');">util</a></tt><tt class="py-op">.</tt><tt id="link-38" class="py-name" targets="Function paramiko.util.inflate_long()=paramiko.util-module.html#inflate_long"><a title="paramiko.util.inflate_long" class="py-name" href="#" onclick="return doclink('link-38', 'inflate_long', 'link-38');">inflate_long</a></tt><tt class="py-op">(</tt><tt id="link-39" class="py-name" targets="Variable paramiko.auth_handler.rng=paramiko.auth_handler-module.html#rng,Variable paramiko.channel.rng=paramiko.channel-module.html#rng,Variable paramiko.client.rng=paramiko.client-module.html#rng,Variable paramiko.common.rng=paramiko.common-module.html#rng,Variable paramiko.dsskey.rng=paramiko.dsskey-module.html#rng,Variable paramiko.hostkeys.rng=paramiko.hostkeys-module.html#rng,Variable paramiko.kex_gex.rng=paramiko.kex_gex-module.html#rng,Variable paramiko.kex_group1.rng=paramiko.kex_group1-module.html#rng,Variable paramiko.packet.rng=paramiko.packet-module.html#rng,Variable paramiko.pkey.rng=paramiko.pkey-module.html#rng,Variable paramiko.rsakey.rng=paramiko.rsakey-module.html#rng,Variable paramiko.server.rng=paramiko.server-module.html#rng,Variable paramiko.sftp.rng=paramiko.sftp-module.html#rng,Variable paramiko.sftp_attr.rng=paramiko.sftp_attr-module.html#rng,Variable paramiko.sftp_client.rng=paramiko.sftp_client-module.html#rng,Variable paramiko.sftp_file.rng=paramiko.sftp_file-module.html#rng,Variable paramiko.sftp_handle.rng=paramiko.sftp_handle-module.html#rng,Variable paramiko.sftp_server.rng=paramiko.sftp_server-module.html#rng,Variable paramiko.sftp_si.rng=paramiko.sftp_si-module.html#rng,Variable paramiko.transport.rng=paramiko.transport-module.html#rng,Variable paramiko.util.rng=paramiko.util-module.html#rng"><a title="paramiko.auth_handler.rng
-paramiko.channel.rng
-paramiko.client.rng
-paramiko.common.rng
-paramiko.dsskey.rng
-paramiko.hostkeys.rng
-paramiko.kex_gex.rng
-paramiko.kex_group1.rng
-paramiko.packet.rng
-paramiko.pkey.rng
-paramiko.rsakey.rng
-paramiko.server.rng
-paramiko.sftp.rng
-paramiko.sftp_attr.rng
-paramiko.sftp_client.rng
-paramiko.sftp_file.rng
-paramiko.sftp_handle.rng
-paramiko.sftp_server.rng
-paramiko.sftp_si.rng
-paramiko.transport.rng
-paramiko.util.rng" class="py-name" href="#" onclick="return doclink('link-39', 'rng', 'link-39');">rng</a></tt><tt class="py-op">.</tt><tt id="link-40" class="py-name" targets="Method paramiko.BufferedFile.read()=paramiko.BufferedFile-class.html#read,Method paramiko.SFTPHandle.read()=paramiko.SFTPHandle-class.html#read,Method paramiko.buffered_pipe.BufferedPipe.read()=paramiko.buffered_pipe.BufferedPipe-class.html#read"><a title="paramiko.BufferedFile.read
-paramiko.SFTPHandle.read
-paramiko.buffered_pipe.BufferedPipe.read" class="py-name" href="#" onclick="return doclink('link-40', 'read', 'link-40');">read</a></tt><tt class="py-op">(</tt><tt class="py-name">qsize</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">k</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">k</tt> <tt class="py-op">&lt;</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">q</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-name">r</tt><tt class="py-op">,</tt> <tt class="py-name">s</tt> <tt class="py-op">=</tt> <tt class="py-name">dss</tt><tt class="py-op">.</tt><tt class="py-name">sign</tt><tt class="py-op">(</tt><tt id="link-41" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-41', 'util', 'link-3');">util</a></tt><tt class="py-op">.</tt><tt id="link-42" class="py-name"><a title="paramiko.util.inflate_long" class="py-name" href="#" onclick="return doclink('link-42', 'inflate_long', 'link-38');">inflate_long</a></tt><tt class="py-op">(</tt><tt class="py-name">digest</tt><tt class="py-op">,</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">k</tt><tt class="py-op">)</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-43" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-43', 'Message', 'link-9');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-44" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-44', 'add_string', 'link-28');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-string">'ssh-dss'</tt><tt class="py-op">)</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-comment"># apparently, in rare cases, r or s may be shorter than 20 bytes!</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-name">rstr</tt> <tt class="py-op">=</tt> <tt id="link-45" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-45', 'util', 'link-3');">util</a></tt><tt class="py-op">.</tt><tt id="link-46" class="py-name"><a title="paramiko.util.deflate_long" class="py-name" href="#" onclick="return doclink('link-46', 'deflate_long', 'link-36');">deflate_long</a></tt><tt class="py-op">(</tt><tt class="py-name">r</tt><tt class="py-op">,</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt class="py-name">sstr</tt> <tt class="py-op">=</tt> <tt id="link-47" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-47', 'util', 'link-3');">util</a></tt><tt class="py-op">.</tt><tt id="link-48" class="py-name"><a title="paramiko.util.deflate_long" class="py-name" href="#" onclick="return doclink('link-48', 'deflate_long', 'link-36');">deflate_long</a></tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">,</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">rstr</tt><tt class="py-op">)</tt> <tt class="py-op">&lt;</tt> <tt class="py-number">20</tt><tt class="py-op">:</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-name">rstr</tt> <tt class="py-op">=</tt> <tt class="py-string">'\x00'</tt> <tt class="py-op">*</tt> <tt class="py-op">(</tt><tt class="py-number">20</tt> <tt class="py-op">-</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">rstr</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-name">rstr</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">sstr</tt><tt class="py-op">)</tt> <tt class="py-op">&lt;</tt> <tt class="py-number">20</tt><tt class="py-op">:</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-name">sstr</tt> <tt class="py-op">=</tt> <tt class="py-string">'\x00'</tt> <tt class="py-op">*</tt> <tt class="py-op">(</tt><tt class="py-number">20</tt> <tt class="py-op">-</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">sstr</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-name">sstr</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-49" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-49', 'add_string', 'link-28');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">rstr</tt> <tt class="py-op">+</tt> <tt class="py-name">sstr</tt><tt class="py-op">)</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">m</tt> </tt>
-</div><a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> </tt>
-<a name="DSSKey.verify_ssh_sig"></a><div id="DSSKey.verify_ssh_sig-def"><a name="L116"></a><tt class="py-lineno">116</tt> <a class="py-toggle" href="#" id="DSSKey.verify_ssh_sig-toggle" onclick="return toggle('DSSKey.verify_ssh_sig');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.dsskey.DSSKey-class.html#verify_ssh_sig">verify_ssh_sig</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">data</tt><tt class="py-op">,</tt> <tt class="py-param">msg</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DSSKey.verify_ssh_sig-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="DSSKey.verify_ssh_sig-expanded"><a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">40</tt><tt class="py-op">:</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-comment"># spies.com bug: signature has no header</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-name">sig</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">)</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-name">kind</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-50" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-50', 'get_string', 'link-19');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">kind</tt> <tt class="py-op">!=</tt> <tt class="py-string">'ssh-dss'</tt><tt class="py-op">:</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-number">0</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-name">sig</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-51" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-51', 'get_string', 'link-19');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-comment"># pull out (r, s) which are NOT encoded as mpints</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-name">sigR</tt> <tt class="py-op">=</tt> <tt id="link-52" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-52', 'util', 'link-3');">util</a></tt><tt class="py-op">.</tt><tt id="link-53" class="py-name"><a title="paramiko.util.inflate_long" class="py-name" href="#" onclick="return doclink('link-53', 'inflate_long', 'link-38');">inflate_long</a></tt><tt class="py-op">(</tt><tt class="py-name">sig</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-number">20</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-name">sigS</tt> <tt class="py-op">=</tt> <tt id="link-54" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-54', 'util', 'link-3');">util</a></tt><tt class="py-op">.</tt><tt id="link-55" class="py-name"><a title="paramiko.util.inflate_long" class="py-name" href="#" onclick="return doclink('link-55', 'inflate_long', 'link-38');">inflate_long</a></tt><tt class="py-op">(</tt><tt class="py-name">sig</tt><tt class="py-op">[</tt><tt class="py-number">20</tt><tt class="py-op">:</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-name">sigM</tt> <tt class="py-op">=</tt> <tt id="link-56" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-56', 'util', 'link-3');">util</a></tt><tt class="py-op">.</tt><tt id="link-57" class="py-name"><a title="paramiko.util.inflate_long" class="py-name" href="#" onclick="return doclink('link-57', 'inflate_long', 'link-38');">inflate_long</a></tt><tt class="py-op">(</tt><tt class="py-name">SHA</tt><tt class="py-op">.</tt><tt id="link-58" class="py-name"><a title="paramiko.util.Counter.new" class="py-name" href="#" onclick="return doclink('link-58', 'new', 'link-34');">new</a></tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">digest</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-name">dss</tt> <tt class="py-op">=</tt> <tt class="py-name">DSA</tt><tt class="py-op">.</tt><tt class="py-name">construct</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">long</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">y</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">long</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">g</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">long</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">p</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">long</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">q</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">dss</tt><tt class="py-op">.</tt><tt class="py-name">verify</tt><tt class="py-op">(</tt><tt class="py-name">sigM</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt><tt class="py-name">sigR</tt><tt class="py-op">,</tt> <tt class="py-name">sigS</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> </tt>
-<a name="DSSKey._encode_key"></a><div id="DSSKey._encode_key-def"><a name="L134"></a><tt class="py-lineno">134</tt> <a class="py-toggle" href="#" id="DSSKey._encode_key-toggle" onclick="return toggle('DSSKey._encode_key');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.dsskey.DSSKey-class.html#_encode_key">_encode_key</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DSSKey._encode_key-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="DSSKey._encode_key-expanded"><a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">x</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-59" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-59', 'SSHException', 'link-6');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Not enough key information'</tt><tt class="py-op">)</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-name">keylist</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">p</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">q</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">g</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">y</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">x</tt> <tt class="py-op">]</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-name">b</tt> <tt class="py-op">=</tt> <tt id="link-60" class="py-name"><a title="paramiko.ber.BER" class="py-name" href="#" onclick="return doclink('link-60', 'BER', 'link-12');">BER</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-name">b</tt><tt class="py-op">.</tt><tt id="link-61" class="py-name" targets="Method paramiko.ber.BER.encode()=paramiko.ber.BER-class.html#encode"><a title="paramiko.ber.BER.encode" class="py-name" href="#" onclick="return doclink('link-61', 'encode', 'link-61');">encode</a></tt><tt class="py-op">(</tt><tt class="py-name">keylist</tt><tt class="py-op">)</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt id="link-62" class="py-name"><a title="paramiko.ber.BERException" class="py-name" href="#" onclick="return doclink('link-62', 'BERException', 'link-13');">BERException</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-63" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-63', 'SSHException', 'link-6');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Unable to create ber encoding of key'</tt><tt class="py-op">)</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">b</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> </tt>
-<a name="DSSKey.write_private_key_file"></a><div id="DSSKey.write_private_key_file-def"><a name="L145"></a><tt class="py-lineno">145</tt> <a class="py-toggle" href="#" id="DSSKey.write_private_key_file-toggle" onclick="return toggle('DSSKey.write_private_key_file');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.dsskey.DSSKey-class.html#write_private_key_file">write_private_key_file</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">filename</tt><tt class="py-op">,</tt> <tt class="py-param">password</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DSSKey.write_private_key_file-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="DSSKey.write_private_key_file-expanded"><a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_write_private_key_file</tt><tt class="py-op">(</tt><tt class="py-string">'DSA'</tt><tt class="py-op">,</tt> <tt class="py-name">filename</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_encode_key</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">password</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> </tt>
-<a name="DSSKey.write_private_key"></a><div id="DSSKey.write_private_key-def"><a name="L148"></a><tt class="py-lineno">148</tt> <a class="py-toggle" href="#" id="DSSKey.write_private_key-toggle" onclick="return toggle('DSSKey.write_private_key');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.dsskey.DSSKey-class.html#write_private_key">write_private_key</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">file_obj</tt><tt class="py-op">,</tt> <tt class="py-param">password</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DSSKey.write_private_key-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="DSSKey.write_private_key-expanded"><a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_write_private_key</tt><tt class="py-op">(</tt><tt class="py-string">'DSA'</tt><tt class="py-op">,</tt> <tt class="py-name">file_obj</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_encode_key</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">password</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> </tt>
-<a name="DSSKey.generate"></a><div id="DSSKey.generate-def"><a name="L151"></a><tt class="py-lineno">151</tt> <a class="py-toggle" href="#" id="DSSKey.generate-toggle" onclick="return toggle('DSSKey.generate');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.dsskey.DSSKey-class.html#generate">generate</a><tt class="py-op">(</tt><tt class="py-param">bits</tt><tt class="py-op">=</tt><tt class="py-number">1024</tt><tt class="py-op">,</tt> <tt class="py-param">progress_func</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DSSKey.generate-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="DSSKey.generate-expanded"><a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"><tt class="py-docstring"> Generate a new private DSS key. This factory function can be used to</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"><tt class="py-docstring"> generate a new host key or authentication key.</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"><tt class="py-docstring"> @param bits: number of bits the generated key should be.</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"><tt class="py-docstring"> @type bits: int</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"><tt class="py-docstring"> @param progress_func: an optional function to call at key points in</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"><tt class="py-docstring"> key generation (used by C{pyCrypto.PublicKey}).</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"><tt class="py-docstring"> @type progress_func: function</tt> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"><tt class="py-docstring"> @return: new private key</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: L{DSSKey}</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> <tt class="py-name">dsa</tt> <tt class="py-op">=</tt> <tt class="py-name">DSA</tt><tt class="py-op">.</tt><tt id="link-64" class="py-name" targets="Static Method paramiko.DSSKey.generate()=paramiko.DSSKey-class.html#generate,Static Method paramiko.RSAKey.generate()=paramiko.RSAKey-class.html#generate"><a title="paramiko.DSSKey.generate
-paramiko.RSAKey.generate" class="py-name" href="#" onclick="return doclink('link-64', 'generate', 'link-64');">generate</a></tt><tt class="py-op">(</tt><tt class="py-name">bits</tt><tt class="py-op">,</tt> <tt id="link-65" class="py-name"><a title="paramiko.auth_handler.rng
-paramiko.channel.rng
-paramiko.client.rng
-paramiko.common.rng
-paramiko.dsskey.rng
-paramiko.hostkeys.rng
-paramiko.kex_gex.rng
-paramiko.kex_group1.rng
-paramiko.packet.rng
-paramiko.pkey.rng
-paramiko.rsakey.rng
-paramiko.server.rng
-paramiko.sftp.rng
-paramiko.sftp_attr.rng
-paramiko.sftp_client.rng
-paramiko.sftp_file.rng
-paramiko.sftp_handle.rng
-paramiko.sftp_server.rng
-paramiko.sftp_si.rng
-paramiko.transport.rng
-paramiko.util.rng" class="py-name" href="#" onclick="return doclink('link-65', 'rng', 'link-39');">rng</a></tt><tt class="py-op">.</tt><tt id="link-66" class="py-name"><a title="paramiko.BufferedFile.read
-paramiko.SFTPHandle.read
-paramiko.buffered_pipe.BufferedPipe.read" class="py-name" href="#" onclick="return doclink('link-66', 'read', 'link-40');">read</a></tt><tt class="py-op">,</tt> <tt class="py-name">progress_func</tt><tt class="py-op">)</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> <tt class="py-name">key</tt> <tt class="py-op">=</tt> <tt id="link-67" class="py-name" targets="Class paramiko.DSSKey=paramiko.DSSKey-class.html"><a title="paramiko.DSSKey" class="py-name" href="#" onclick="return doclink('link-67', 'DSSKey', 'link-67');">DSSKey</a></tt><tt class="py-op">(</tt><tt class="py-name">vals</tt><tt class="py-op">=</tt><tt class="py-op">(</tt><tt class="py-name">dsa</tt><tt class="py-op">.</tt><tt class="py-name">p</tt><tt class="py-op">,</tt> <tt class="py-name">dsa</tt><tt class="py-op">.</tt><tt class="py-name">q</tt><tt class="py-op">,</tt> <tt class="py-name">dsa</tt><tt class="py-op">.</tt><tt class="py-name">g</tt><tt class="py-op">,</tt> <tt class="py-name">dsa</tt><tt class="py-op">.</tt><tt class="py-name">y</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> <tt class="py-name">key</tt><tt class="py-op">.</tt><tt class="py-name">x</tt> <tt class="py-op">=</tt> <tt class="py-name">dsa</tt><tt class="py-op">.</tt><tt class="py-name">x</tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">key</tt> </tt>
-</div><a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt id="link-68" class="py-name"><a title="paramiko.DSSKey.generate
-paramiko.RSAKey.generate" class="py-name" href="#" onclick="return doclink('link-68', 'generate', 'link-64');">generate</a></tt> <tt class="py-op">=</tt> <tt class="py-name">staticmethod</tt><tt class="py-op">(</tt><tt id="link-69" class="py-name"><a title="paramiko.DSSKey.generate
-paramiko.RSAKey.generate" class="py-name" href="#" onclick="return doclink('link-69', 'generate', 'link-64');">generate</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> <tt class="py-comment">### internals...</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> </tt>
-<a name="DSSKey._from_private_key_file"></a><div id="DSSKey._from_private_key_file-def"><a name="L174"></a><tt class="py-lineno">174</tt> <a class="py-toggle" href="#" id="DSSKey._from_private_key_file-toggle" onclick="return toggle('DSSKey._from_private_key_file');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.dsskey.DSSKey-class.html#_from_private_key_file">_from_private_key_file</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">filename</tt><tt class="py-op">,</tt> <tt class="py-param">password</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DSSKey._from_private_key_file-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="DSSKey._from_private_key_file-expanded"><a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_read_private_key_file</tt><tt class="py-op">(</tt><tt class="py-string">'DSA'</tt><tt class="py-op">,</tt> <tt class="py-name">filename</tt><tt class="py-op">,</tt> <tt class="py-name">password</tt><tt class="py-op">)</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_decode_key</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> </tt>
-<a name="DSSKey._from_private_key"></a><div id="DSSKey._from_private_key-def"><a name="L178"></a><tt class="py-lineno">178</tt> <a class="py-toggle" href="#" id="DSSKey._from_private_key-toggle" onclick="return toggle('DSSKey._from_private_key');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.dsskey.DSSKey-class.html#_from_private_key">_from_private_key</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">file_obj</tt><tt class="py-op">,</tt> <tt class="py-param">password</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DSSKey._from_private_key-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="DSSKey._from_private_key-expanded"><a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_read_private_key</tt><tt class="py-op">(</tt><tt class="py-string">'DSA'</tt><tt class="py-op">,</tt> <tt class="py-name">file_obj</tt><tt class="py-op">,</tt> <tt class="py-name">password</tt><tt class="py-op">)</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_decode_key</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> </tt>
-<a name="DSSKey._decode_key"></a><div id="DSSKey._decode_key-def"><a name="L182"></a><tt class="py-lineno">182</tt> <a class="py-toggle" href="#" id="DSSKey._decode_key-toggle" onclick="return toggle('DSSKey._decode_key');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.dsskey.DSSKey-class.html#_decode_key">_decode_key</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">data</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="DSSKey._decode_key-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="DSSKey._decode_key-expanded"><a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> <tt class="py-comment"># private key file contains:</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-comment"># DSAPrivateKey = { version = 0, p, q, g, y, x }</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> <tt class="py-name">keylist</tt> <tt class="py-op">=</tt> <tt id="link-70" class="py-name"><a title="paramiko.ber.BER" class="py-name" href="#" onclick="return doclink('link-70', 'BER', 'link-12');">BER</a></tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-71" class="py-name" targets="Method paramiko.ber.BER.decode()=paramiko.ber.BER-class.html#decode"><a title="paramiko.ber.BER.decode" class="py-name" href="#" onclick="return doclink('link-71', 'decode', 'link-71');">decode</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt id="link-72" class="py-name"><a title="paramiko.ber.BERException" class="py-name" href="#" onclick="return doclink('link-72', 'BERException', 'link-13');">BERException</a></tt><tt class="py-op">,</tt> <tt class="py-name">x</tt><tt class="py-op">:</tt> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-73" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-73', 'SSHException', 'link-6');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Unable to parse key file: '</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">keylist</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">keylist</tt><tt class="py-op">)</tt> <tt class="py-op">&lt;</tt> <tt class="py-number">6</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">keylist</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">!=</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-74" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-74', 'SSHException', 'link-6');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'not a valid DSA private key file (bad ber encoding)'</tt><tt class="py-op">)</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">p</tt> <tt class="py-op">=</tt> <tt class="py-name">keylist</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">q</tt> <tt class="py-op">=</tt> <tt class="py-name">keylist</tt><tt class="py-op">[</tt><tt class="py-number">2</tt><tt class="py-op">]</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">g</tt> <tt class="py-op">=</tt> <tt class="py-name">keylist</tt><tt class="py-op">[</tt><tt class="py-number">3</tt><tt class="py-op">]</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">y</tt> <tt class="py-op">=</tt> <tt class="py-name">keylist</tt><tt class="py-op">[</tt><tt class="py-number">4</tt><tt class="py-op">]</tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">x</tt> <tt class="py-op">=</tt> <tt class="py-name">keylist</tt><tt class="py-op">[</tt><tt class="py-number">5</tt><tt class="py-op">]</tt> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt id="link-75" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-75', 'util', 'link-3');">util</a></tt><tt class="py-op">.</tt><tt id="link-76" class="py-name"><a title="paramiko.util.bit_length" class="py-name" href="#" onclick="return doclink('link-76', 'bit_length', 'link-26');">bit_length</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">p</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:07 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.file-module.html b/docs/paramiko.file-module.html
deleted file mode 100644
index a0722b0..0000000
--- a/docs/paramiko.file-module.html
+++ /dev/null
@@ -1,120 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.file</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;file
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.file-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module file</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.file-pysrc.html">source&nbsp;code</a></span></p>
-<p>BufferedFile.</p>
-
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'paramiko'"><code class="variable-quote">'</code><code class="variable-string">paramiko</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:02 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.file-pysrc.html b/docs/paramiko.file-pysrc.html
deleted file mode 100644
index 7798427..0000000
--- a/docs/paramiko.file-pysrc.html
+++ /dev/null
@@ -1,579 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.file</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;file
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.file-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.file-module.html" onclick="show_private();">Module paramiko.file</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2003-2007 Robey Pointer &lt;robeypointer@gmail.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring">BufferedFile.</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">cStringIO</tt> <tt class="py-keyword">import</tt> <tt class="py-name">StringIO</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"> </tt>
-<a name="BufferedFile"></a><div id="BufferedFile-def"><a name="L26"></a><tt class="py-lineno"> 26</tt> <a class="py-toggle" href="#" id="BufferedFile-toggle" onclick="return toggle('BufferedFile');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.file.BufferedFile-class.html">BufferedFile</a> <tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BufferedFile-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="BufferedFile-expanded"><a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"><tt class="py-docstring"> Reusable base class to implement python-style file buffering around a</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"><tt class="py-docstring"> simpler stream.</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> <tt id="link-0" class="py-name" targets="Variable paramiko.BufferedFile._DEFAULT_BUFSIZE=paramiko.BufferedFile-class.html#_DEFAULT_BUFSIZE"><a title="paramiko.BufferedFile._DEFAULT_BUFSIZE" class="py-name" href="#" onclick="return doclink('link-0', '_DEFAULT_BUFSIZE', 'link-0');">_DEFAULT_BUFSIZE</a></tt> <tt class="py-op">=</tt> <tt class="py-number">8192</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> <tt id="link-1" class="py-name" targets="Variable paramiko.BufferedFile.SEEK_SET=paramiko.BufferedFile-class.html#SEEK_SET"><a title="paramiko.BufferedFile.SEEK_SET" class="py-name" href="#" onclick="return doclink('link-1', 'SEEK_SET', 'link-1');">SEEK_SET</a></tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> <tt id="link-2" class="py-name" targets="Variable paramiko.BufferedFile.SEEK_CUR=paramiko.BufferedFile-class.html#SEEK_CUR"><a title="paramiko.BufferedFile.SEEK_CUR" class="py-name" href="#" onclick="return doclink('link-2', 'SEEK_CUR', 'link-2');">SEEK_CUR</a></tt> <tt class="py-op">=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> <tt id="link-3" class="py-name" targets="Variable paramiko.BufferedFile.SEEK_END=paramiko.BufferedFile-class.html#SEEK_END"><a title="paramiko.BufferedFile.SEEK_END" class="py-name" href="#" onclick="return doclink('link-3', 'SEEK_END', 'link-3');">SEEK_END</a></tt> <tt class="py-op">=</tt> <tt class="py-number">2</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> <tt id="link-4" class="py-name" targets="Variable paramiko.BufferedFile.FLAG_READ=paramiko.BufferedFile-class.html#FLAG_READ"><a title="paramiko.BufferedFile.FLAG_READ" class="py-name" href="#" onclick="return doclink('link-4', 'FLAG_READ', 'link-4');">FLAG_READ</a></tt> <tt class="py-op">=</tt> <tt class="py-number">0x1</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> <tt id="link-5" class="py-name" targets="Variable paramiko.BufferedFile.FLAG_WRITE=paramiko.BufferedFile-class.html#FLAG_WRITE"><a title="paramiko.BufferedFile.FLAG_WRITE" class="py-name" href="#" onclick="return doclink('link-5', 'FLAG_WRITE', 'link-5');">FLAG_WRITE</a></tt> <tt class="py-op">=</tt> <tt class="py-number">0x2</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt id="link-6" class="py-name" targets="Variable paramiko.BufferedFile.FLAG_APPEND=paramiko.BufferedFile-class.html#FLAG_APPEND"><a title="paramiko.BufferedFile.FLAG_APPEND" class="py-name" href="#" onclick="return doclink('link-6', 'FLAG_APPEND', 'link-6');">FLAG_APPEND</a></tt> <tt class="py-op">=</tt> <tt class="py-number">0x4</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt id="link-7" class="py-name" targets="Variable paramiko.BufferedFile.FLAG_BINARY=paramiko.BufferedFile-class.html#FLAG_BINARY"><a title="paramiko.BufferedFile.FLAG_BINARY" class="py-name" href="#" onclick="return doclink('link-7', 'FLAG_BINARY', 'link-7');">FLAG_BINARY</a></tt> <tt class="py-op">=</tt> <tt class="py-number">0x10</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt id="link-8" class="py-name" targets="Variable paramiko.BufferedFile.FLAG_BUFFERED=paramiko.BufferedFile-class.html#FLAG_BUFFERED"><a title="paramiko.BufferedFile.FLAG_BUFFERED" class="py-name" href="#" onclick="return doclink('link-8', 'FLAG_BUFFERED', 'link-8');">FLAG_BUFFERED</a></tt> <tt class="py-op">=</tt> <tt class="py-number">0x20</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt id="link-9" class="py-name" targets="Variable paramiko.BufferedFile.FLAG_LINE_BUFFERED=paramiko.BufferedFile-class.html#FLAG_LINE_BUFFERED"><a title="paramiko.BufferedFile.FLAG_LINE_BUFFERED" class="py-name" href="#" onclick="return doclink('link-9', 'FLAG_LINE_BUFFERED', 'link-9');">FLAG_LINE_BUFFERED</a></tt> <tt class="py-op">=</tt> <tt class="py-number">0x40</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt id="link-10" class="py-name" targets="Variable paramiko.BufferedFile.FLAG_UNIVERSAL_NEWLINE=paramiko.BufferedFile-class.html#FLAG_UNIVERSAL_NEWLINE"><a title="paramiko.BufferedFile.FLAG_UNIVERSAL_NEWLINE" class="py-name" href="#" onclick="return doclink('link-10', 'FLAG_UNIVERSAL_NEWLINE', 'link-10');">FLAG_UNIVERSAL_NEWLINE</a></tt> <tt class="py-op">=</tt> <tt class="py-number">0x80</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> </tt>
-<a name="BufferedFile.__init__"></a><div id="BufferedFile.__init__-def"><a name="L46"></a><tt class="py-lineno"> 46</tt> <a class="py-toggle" href="#" id="BufferedFile.__init__-toggle" onclick="return toggle('BufferedFile.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.file.BufferedFile-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BufferedFile.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BufferedFile.__init__-expanded"><a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">newlines</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_bufsize</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name"><a title="paramiko.BufferedFile._DEFAULT_BUFSIZE" class="py-name" href="#" onclick="return doclink('link-11', '_DEFAULT_BUFSIZE', 'link-0');">_DEFAULT_BUFSIZE</a></tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_wbuffer</tt> <tt class="py-op">=</tt> <tt class="py-name">StringIO</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_rbuffer</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_at_trailing_cr</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_closed</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-comment"># pos - position within the file, according to the user</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-comment"># realpos - position according the OS</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-comment"># (these may be different because we buffer for line reading)</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pos</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_realpos</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-comment"># size only matters for seekable files</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_size</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-</div><a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> </tt>
-<a name="BufferedFile.__del__"></a><div id="BufferedFile.__del__-def"><a name="L61"></a><tt class="py-lineno"> 61</tt> <a class="py-toggle" href="#" id="BufferedFile.__del__-toggle" onclick="return toggle('BufferedFile.__del__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.file.BufferedFile-class.html#__del__">__del__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BufferedFile.__del__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BufferedFile.__del__-expanded"><a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name" targets="Method paramiko.Agent.close()=paramiko.Agent-class.html#close,Method paramiko.BufferedFile.close()=paramiko.BufferedFile-class.html#close,Method paramiko.Channel.close()=paramiko.Channel-class.html#close,Method paramiko.SFTPClient.close()=paramiko.SFTPClient-class.html#close,Method paramiko.SFTPFile.close()=paramiko.SFTPFile-class.html#close,Method paramiko.SFTPHandle.close()=paramiko.SFTPHandle-class.html#close,Method paramiko.SSHClient.close()=paramiko.SSHClient-class.html#close,Method paramiko.Transport.close()=paramiko.Transport-class.html#close,Method paramiko.buffered_pipe.BufferedPipe.close()=paramiko.buffered_pipe.BufferedPipe-class.html#close,Method paramiko.pipe.PosixPipe.close()=paramiko.pipe.PosixPipe-class.html#close,Method paramiko.pipe.WindowsPipe.close()=paramiko.pipe.WindowsPipe-class.html#close,Method paramiko.win_pageant.PageantConnection.close()=paramiko.win_pageant.PageantConnection-class.html#close"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-12', 'close', 'link-12');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> </tt>
-<a name="BufferedFile.__iter__"></a><div id="BufferedFile.__iter__-def"><a name="L64"></a><tt class="py-lineno"> 64</tt> <a class="py-toggle" href="#" id="BufferedFile.__iter__-toggle" onclick="return toggle('BufferedFile.__iter__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.file.BufferedFile-class.html#__iter__">__iter__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BufferedFile.__iter__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BufferedFile.__iter__-expanded"><a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"><tt class="py-docstring"> Returns an iterator that can be used to iterate over the lines in this</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"><tt class="py-docstring"> file. This iterator happens to return the file itself, since a file is</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"><tt class="py-docstring"> its own iterator.</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"><tt class="py-docstring"> @raise ValueError: if the file is closed.</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"><tt class="py-docstring"> @return: an interator.</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: iterator</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_closed</tt><tt class="py-op">:</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">ValueError</tt><tt class="py-op">(</tt><tt class="py-string">'I/O operation on closed file'</tt><tt class="py-op">)</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt> </tt>
-</div><a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> </tt>
-<a name="BufferedFile.close"></a><div id="BufferedFile.close-def"><a name="L79"></a><tt class="py-lineno"> 79</tt> <a class="py-toggle" href="#" id="BufferedFile.close-toggle" onclick="return toggle('BufferedFile.close');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.file.BufferedFile-class.html#close">close</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BufferedFile.close-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BufferedFile.close-expanded"><a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"><tt class="py-docstring"> Close the file. Future read and write operations will fail.</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name" targets="Method paramiko.BufferedFile.flush()=paramiko.BufferedFile-class.html#flush"><a title="paramiko.BufferedFile.flush" class="py-name" href="#" onclick="return doclink('link-13', 'flush', 'link-13');">flush</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_closed</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-</div><a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> </tt>
-<a name="BufferedFile.flush"></a><div id="BufferedFile.flush-def"><a name="L86"></a><tt class="py-lineno"> 86</tt> <a class="py-toggle" href="#" id="BufferedFile.flush-toggle" onclick="return toggle('BufferedFile.flush');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.file.BufferedFile-class.html#flush">flush</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BufferedFile.flush-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BufferedFile.flush-expanded"><a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"><tt class="py-docstring"> Write out any data in the write buffer. This may do nothing if write</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"><tt class="py-docstring"> buffering is not turned on.</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_write_all</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_wbuffer</tt><tt class="py-op">.</tt><tt class="py-name">getvalue</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_wbuffer</tt> <tt class="py-op">=</tt> <tt class="py-name">StringIO</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-</div><a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> </tt>
-<a name="BufferedFile.next"></a><div id="BufferedFile.next-def"><a name="L95"></a><tt class="py-lineno"> 95</tt> <a class="py-toggle" href="#" id="BufferedFile.next-toggle" onclick="return toggle('BufferedFile.next');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.file.BufferedFile-class.html#next">next</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BufferedFile.next-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BufferedFile.next-expanded"><a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"><tt class="py-docstring"> Returns the next line from the input, or raises L{StopIteration} when</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"><tt class="py-docstring"> EOF is hit. Unlike python file objects, it's okay to mix calls to</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"><tt class="py-docstring"> C{next} and L{readline}.</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"><tt class="py-docstring"> @raise StopIteration: when the end of the file is reached.</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"><tt class="py-docstring"> @return: a line read from the file.</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: str</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-name">line</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name" targets="Method paramiko.BufferedFile.readline()=paramiko.BufferedFile-class.html#readline"><a title="paramiko.BufferedFile.readline" class="py-name" href="#" onclick="return doclink('link-14', 'readline', 'link-14');">readline</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">line</tt><tt class="py-op">:</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">StopIteration</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">line</tt> </tt>
-</div><a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> </tt>
-<a name="BufferedFile.read"></a><div id="BufferedFile.read-def"><a name="L111"></a><tt class="py-lineno">111</tt> <a class="py-toggle" href="#" id="BufferedFile.read-toggle" onclick="return toggle('BufferedFile.read');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.file.BufferedFile-class.html#read">read</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">size</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BufferedFile.read-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BufferedFile.read-expanded"><a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"><tt class="py-docstring"> Read at most C{size} bytes from the file (less if we hit the end of the</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"><tt class="py-docstring"> file first). If the C{size} argument is negative or omitted, read all</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"><tt class="py-docstring"> the remaining data in the file.</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"><tt class="py-docstring"> @param size: maximum number of bytes to read</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"><tt class="py-docstring"> @type size: int</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"><tt class="py-docstring"> @return: data read from the file, or an empty string if EOF was</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"><tt class="py-docstring"> encountered immediately</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: str</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_closed</tt><tt class="py-op">:</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">IOError</tt><tt class="py-op">(</tt><tt class="py-string">'File is closed'</tt><tt class="py-op">)</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">&amp;</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name"><a title="paramiko.BufferedFile.FLAG_READ" class="py-name" href="#" onclick="return doclink('link-15', 'FLAG_READ', 'link-4');">FLAG_READ</a></tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">IOError</tt><tt class="py-op">(</tt><tt class="py-string">'File is not open for reading'</tt><tt class="py-op">)</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">size</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">size</tt> <tt class="py-op">&lt;</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-comment"># go for broke</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_rbuffer</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_rbuffer</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pos</tt> <tt class="py-op">+=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">result</tt><tt class="py-op">)</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-name">new_data</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_read</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="paramiko.BufferedFile._DEFAULT_BUFSIZE" class="py-name" href="#" onclick="return doclink('link-16', '_DEFAULT_BUFSIZE', 'link-0');">_DEFAULT_BUFSIZE</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">EOFError</tt><tt class="py-op">:</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-name">new_data</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">new_data</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">new_data</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">+=</tt> <tt class="py-name">new_data</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_realpos</tt> <tt class="py-op">+=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">new_data</tt><tt class="py-op">)</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pos</tt> <tt class="py-op">+=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">new_data</tt><tt class="py-op">)</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">result</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">&lt;=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_rbuffer</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_rbuffer</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-name">size</tt><tt class="py-op">]</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_rbuffer</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_rbuffer</tt><tt class="py-op">[</tt><tt class="py-name">size</tt><tt class="py-op">:</tt><tt class="py-op">]</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pos</tt> <tt class="py-op">+=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">result</tt><tt class="py-op">)</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">result</tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_rbuffer</tt><tt class="py-op">)</tt> <tt class="py-op">&lt;</tt> <tt class="py-name">size</tt><tt class="py-op">:</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt class="py-name">read_size</tt> <tt class="py-op">=</tt> <tt class="py-name">size</tt> <tt class="py-op">-</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_rbuffer</tt><tt class="py-op">)</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">&amp;</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="paramiko.BufferedFile.FLAG_BUFFERED" class="py-name" href="#" onclick="return doclink('link-17', 'FLAG_BUFFERED', 'link-8');">FLAG_BUFFERED</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> <tt class="py-name">read_size</tt> <tt class="py-op">=</tt> <tt class="py-name">max</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_bufsize</tt><tt class="py-op">,</tt> <tt class="py-name">read_size</tt><tt class="py-op">)</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-name">new_data</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_read</tt><tt class="py-op">(</tt><tt class="py-name">read_size</tt><tt class="py-op">)</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">EOFError</tt><tt class="py-op">:</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> <tt class="py-name">new_data</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">new_data</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">new_data</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_rbuffer</tt> <tt class="py-op">+=</tt> <tt class="py-name">new_data</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_realpos</tt> <tt class="py-op">+=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">new_data</tt><tt class="py-op">)</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> <tt class="py-name">result</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_rbuffer</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-name">size</tt><tt class="py-op">]</tt> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_rbuffer</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_rbuffer</tt><tt class="py-op">[</tt><tt class="py-name">size</tt><tt class="py-op">:</tt><tt class="py-op">]</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pos</tt> <tt class="py-op">+=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">result</tt><tt class="py-op">)</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">result</tt> </tt>
-</div><a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> </tt>
-<a name="BufferedFile.readline"></a><div id="BufferedFile.readline-def"><a name="L165"></a><tt class="py-lineno">165</tt> <a class="py-toggle" href="#" id="BufferedFile.readline-toggle" onclick="return toggle('BufferedFile.readline');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.file.BufferedFile-class.html#readline">readline</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">size</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BufferedFile.readline-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BufferedFile.readline-expanded"><a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"><tt class="py-docstring"> Read one entire line from the file. A trailing newline character is</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"><tt class="py-docstring"> kept in the string (but may be absent when a file ends with an</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"><tt class="py-docstring"> incomplete line). If the size argument is present and non-negative, it</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"><tt class="py-docstring"> is a maximum byte count (including the trailing newline) and an</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"><tt class="py-docstring"> incomplete line may be returned. An empty string is returned only when</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"><tt class="py-docstring"> EOF is encountered immediately.</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"><tt class="py-docstring"> @note: Unlike stdio's C{fgets()}, the returned string contains null</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"><tt class="py-docstring"> characters (C{'\\0'}) if they occurred in the input.</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"><tt class="py-docstring"> @param size: maximum length of returned string.</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"><tt class="py-docstring"> @type size: int</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"><tt class="py-docstring"> @return: next line of the file, or an empty string if the end of the</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"><tt class="py-docstring"> file has been reached.</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: str</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> <tt class="py-comment"># it's almost silly how complex this function is.</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_closed</tt><tt class="py-op">:</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">IOError</tt><tt class="py-op">(</tt><tt class="py-string">'File is closed'</tt><tt class="py-op">)</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">&amp;</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="paramiko.BufferedFile.FLAG_READ" class="py-name" href="#" onclick="return doclink('link-18', 'FLAG_READ', 'link-4');">FLAG_READ</a></tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">IOError</tt><tt class="py-op">(</tt><tt class="py-string">'File not open for reading'</tt><tt class="py-op">)</tt> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"> <tt class="py-name">line</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_rbuffer</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_at_trailing_cr</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">&amp;</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name"><a title="paramiko.BufferedFile.FLAG_UNIVERSAL_NEWLINE" class="py-name" href="#" onclick="return doclink('link-19', 'FLAG_UNIVERSAL_NEWLINE', 'link-10');">FLAG_UNIVERSAL_NEWLINE</a></tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"> <tt class="py-comment"># edge case: the newline may be '\r\n' and we may have read</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"> <tt class="py-comment"># only the first '\r' last time.</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">line</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">'\n'</tt><tt class="py-op">:</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> <tt class="py-name">line</tt> <tt class="py-op">=</tt> <tt class="py-name">line</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">:</tt><tt class="py-op">]</tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_record_newline</tt><tt class="py-op">(</tt><tt class="py-string">'\r\n'</tt><tt class="py-op">)</tt> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_record_newline</tt><tt class="py-op">(</tt><tt class="py-string">'\r'</tt><tt class="py-op">)</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_at_trailing_cr</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"> <tt class="py-comment"># check size before looking for a linefeed, in case we already have</tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> <tt class="py-comment"># enough.</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">size</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">size</tt> <tt class="py-op">&gt;=</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;=</tt> <tt class="py-name">size</tt><tt class="py-op">:</tt> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"> <tt class="py-comment"># truncate line and return</tt> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_rbuffer</tt> <tt class="py-op">=</tt> <tt class="py-name">line</tt><tt class="py-op">[</tt><tt class="py-name">size</tt><tt class="py-op">:</tt><tt class="py-op">]</tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"> <tt class="py-name">line</tt> <tt class="py-op">=</tt> <tt class="py-name">line</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-name">size</tt><tt class="py-op">]</tt> </tt>
-<a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pos</tt> <tt class="py-op">+=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">line</tt> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"> <tt class="py-name">n</tt> <tt class="py-op">=</tt> <tt class="py-name">size</tt> <tt class="py-op">-</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"> <tt class="py-name">n</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_bufsize</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-string">'\n'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">line</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">&amp;</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name"><a title="paramiko.BufferedFile.FLAG_UNIVERSAL_NEWLINE" class="py-name" href="#" onclick="return doclink('link-20', 'FLAG_UNIVERSAL_NEWLINE', 'link-10');">FLAG_UNIVERSAL_NEWLINE</a></tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-string">'\r'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">line</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"> <tt class="py-name">new_data</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_read</tt><tt class="py-op">(</tt><tt class="py-name">n</tt><tt class="py-op">)</tt> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">EOFError</tt><tt class="py-op">:</tt> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"> <tt class="py-name">new_data</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">new_data</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">new_data</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_rbuffer</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pos</tt> <tt class="py-op">+=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> </tt>
-<a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">line</tt> </tt>
-<a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"> <tt class="py-name">line</tt> <tt class="py-op">+=</tt> <tt class="py-name">new_data</tt> </tt>
-<a name="L222"></a><tt class="py-lineno">222</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_realpos</tt> <tt class="py-op">+=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">new_data</tt><tt class="py-op">)</tt> </tt>
-<a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"> <tt class="py-comment"># find the newline</tt> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"> <tt class="py-name">pos</tt> <tt class="py-op">=</tt> <tt class="py-name">line</tt><tt class="py-op">.</tt><tt class="py-name">find</tt><tt class="py-op">(</tt><tt class="py-string">'\n'</tt><tt class="py-op">)</tt> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">&amp;</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name"><a title="paramiko.BufferedFile.FLAG_UNIVERSAL_NEWLINE" class="py-name" href="#" onclick="return doclink('link-21', 'FLAG_UNIVERSAL_NEWLINE', 'link-10');">FLAG_UNIVERSAL_NEWLINE</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"> <tt class="py-name">rpos</tt> <tt class="py-op">=</tt> <tt class="py-name">line</tt><tt class="py-op">.</tt><tt class="py-name">find</tt><tt class="py-op">(</tt><tt class="py-string">'\r'</tt><tt class="py-op">)</tt> </tt>
-<a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">rpos</tt> <tt class="py-op">&gt;=</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">rpos</tt> <tt class="py-op">&lt;</tt> <tt class="py-name">pos</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">pos</tt> <tt class="py-op">&lt;</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"> <tt class="py-name">pos</tt> <tt class="py-op">=</tt> <tt class="py-name">rpos</tt> </tt>
-<a name="L229"></a><tt class="py-lineno">229</tt> <tt class="py-line"> <tt class="py-name">xpos</tt> <tt class="py-op">=</tt> <tt class="py-name">pos</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt> </tt>
-<a name="L230"></a><tt class="py-lineno">230</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">[</tt><tt class="py-name">pos</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">'\r'</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">xpos</tt> <tt class="py-op">&lt;</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">[</tt><tt class="py-name">xpos</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">'\n'</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"> <tt class="py-name">xpos</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_rbuffer</tt> <tt class="py-op">=</tt> <tt class="py-name">line</tt><tt class="py-op">[</tt><tt class="py-name">xpos</tt><tt class="py-op">:</tt><tt class="py-op">]</tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"> <tt class="py-name">lf</tt> <tt class="py-op">=</tt> <tt class="py-name">line</tt><tt class="py-op">[</tt><tt class="py-name">pos</tt><tt class="py-op">:</tt><tt class="py-name">xpos</tt><tt class="py-op">]</tt> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"> <tt class="py-name">line</tt> <tt class="py-op">=</tt> <tt class="py-name">line</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-name">pos</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">'\n'</tt> </tt>
-<a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_rbuffer</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">lf</tt> <tt class="py-op">==</tt> <tt class="py-string">'\r'</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"> <tt class="py-comment"># we could read the line up to a '\r' and there could still be a</tt> </tt>
-<a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"> <tt class="py-comment"># '\n' following that we read next time. note that and eat it.</tt> </tt>
-<a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_at_trailing_cr</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L239"></a><tt class="py-lineno">239</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_record_newline</tt><tt class="py-op">(</tt><tt class="py-name">lf</tt><tt class="py-op">)</tt> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pos</tt> <tt class="py-op">+=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> </tt>
-<a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">line</tt> </tt>
-</div><a name="L243"></a><tt class="py-lineno">243</tt> <tt class="py-line"> </tt>
-<a name="BufferedFile.readlines"></a><div id="BufferedFile.readlines-def"><a name="L244"></a><tt class="py-lineno">244</tt> <a class="py-toggle" href="#" id="BufferedFile.readlines-toggle" onclick="return toggle('BufferedFile.readlines');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.file.BufferedFile-class.html#readlines">readlines</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">sizehint</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BufferedFile.readlines-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BufferedFile.readlines-expanded"><a name="L245"></a><tt class="py-lineno">245</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"><tt class="py-docstring"> Read all remaining lines using L{readline} and return them as a list.</tt> </tt>
-<a name="L247"></a><tt class="py-lineno">247</tt> <tt class="py-line"><tt class="py-docstring"> If the optional C{sizehint} argument is present, instead of reading up</tt> </tt>
-<a name="L248"></a><tt class="py-lineno">248</tt> <tt class="py-line"><tt class="py-docstring"> to EOF, whole lines totalling approximately sizehint bytes (possibly</tt> </tt>
-<a name="L249"></a><tt class="py-lineno">249</tt> <tt class="py-line"><tt class="py-docstring"> after rounding up to an internal buffer size) are read.</tt> </tt>
-<a name="L250"></a><tt class="py-lineno">250</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L251"></a><tt class="py-lineno">251</tt> <tt class="py-line"><tt class="py-docstring"> @param sizehint: desired maximum number of bytes to read.</tt> </tt>
-<a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"><tt class="py-docstring"> @type sizehint: int</tt> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt> <tt class="py-line"><tt class="py-docstring"> @return: list of lines read from the file.</tt> </tt>
-<a name="L254"></a><tt class="py-lineno">254</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: list</tt> </tt>
-<a name="L255"></a><tt class="py-lineno">255</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L256"></a><tt class="py-lineno">256</tt> <tt class="py-line"> <tt class="py-name">lines</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L257"></a><tt class="py-lineno">257</tt> <tt class="py-line"> <tt class="py-name">bytes</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L258"></a><tt class="py-lineno">258</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L259"></a><tt class="py-lineno">259</tt> <tt class="py-line"> <tt class="py-name">line</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="paramiko.BufferedFile.readline" class="py-name" href="#" onclick="return doclink('link-22', 'readline', 'link-14');">readline</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L262"></a><tt class="py-lineno">262</tt> <tt class="py-line"> <tt class="py-name">lines</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> </tt>
-<a name="L263"></a><tt class="py-lineno">263</tt> <tt class="py-line"> <tt class="py-name">bytes</tt> <tt class="py-op">+=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> </tt>
-<a name="L264"></a><tt class="py-lineno">264</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">sizehint</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">bytes</tt> <tt class="py-op">&gt;=</tt> <tt class="py-name">sizehint</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L266"></a><tt class="py-lineno">266</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">lines</tt> </tt>
-</div><a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"> </tt>
-<a name="BufferedFile.seek"></a><div id="BufferedFile.seek-def"><a name="L268"></a><tt class="py-lineno">268</tt> <a class="py-toggle" href="#" id="BufferedFile.seek-toggle" onclick="return toggle('BufferedFile.seek');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.file.BufferedFile-class.html#seek">seek</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">offset</tt><tt class="py-op">,</tt> <tt class="py-param">whence</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BufferedFile.seek-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BufferedFile.seek-expanded"><a name="L269"></a><tt class="py-lineno">269</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L270"></a><tt class="py-lineno">270</tt> <tt class="py-line"><tt class="py-docstring"> Set the file's current position, like stdio's C{fseek}. Not all file</tt> </tt>
-<a name="L271"></a><tt class="py-lineno">271</tt> <tt class="py-line"><tt class="py-docstring"> objects support seeking.</tt> </tt>
-<a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L273"></a><tt class="py-lineno">273</tt> <tt class="py-line"><tt class="py-docstring"> @note: If a file is opened in append mode (C{'a'} or C{'a+'}), any seek</tt> </tt>
-<a name="L274"></a><tt class="py-lineno">274</tt> <tt class="py-line"><tt class="py-docstring"> operations will be undone at the next write (as the file position</tt> </tt>
-<a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"><tt class="py-docstring"> will move back to the end of the file).</tt> </tt>
-<a name="L276"></a><tt class="py-lineno">276</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L277"></a><tt class="py-lineno">277</tt> <tt class="py-line"><tt class="py-docstring"> @param offset: position to move to within the file, relative to</tt> </tt>
-<a name="L278"></a><tt class="py-lineno">278</tt> <tt class="py-line"><tt class="py-docstring"> C{whence}.</tt> </tt>
-<a name="L279"></a><tt class="py-lineno">279</tt> <tt class="py-line"><tt class="py-docstring"> @type offset: int</tt> </tt>
-<a name="L280"></a><tt class="py-lineno">280</tt> <tt class="py-line"><tt class="py-docstring"> @param whence: type of movement: 0 = absolute; 1 = relative to the</tt> </tt>
-<a name="L281"></a><tt class="py-lineno">281</tt> <tt class="py-line"><tt class="py-docstring"> current position; 2 = relative to the end of the file.</tt> </tt>
-<a name="L282"></a><tt class="py-lineno">282</tt> <tt class="py-line"><tt class="py-docstring"> @type whence: int</tt> </tt>
-<a name="L283"></a><tt class="py-lineno">283</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L284"></a><tt class="py-lineno">284</tt> <tt class="py-line"><tt class="py-docstring"> @raise IOError: if the file doesn't support random access.</tt> </tt>
-<a name="L285"></a><tt class="py-lineno">285</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L286"></a><tt class="py-lineno">286</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">IOError</tt><tt class="py-op">(</tt><tt class="py-string">'File does not support seeking.'</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L287"></a><tt class="py-lineno">287</tt> <tt class="py-line"> </tt>
-<a name="BufferedFile.tell"></a><div id="BufferedFile.tell-def"><a name="L288"></a><tt class="py-lineno">288</tt> <a class="py-toggle" href="#" id="BufferedFile.tell-toggle" onclick="return toggle('BufferedFile.tell');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.file.BufferedFile-class.html#tell">tell</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BufferedFile.tell-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BufferedFile.tell-expanded"><a name="L289"></a><tt class="py-lineno">289</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L290"></a><tt class="py-lineno">290</tt> <tt class="py-line"><tt class="py-docstring"> Return the file's current position. This may not be accurate or</tt> </tt>
-<a name="L291"></a><tt class="py-lineno">291</tt> <tt class="py-line"><tt class="py-docstring"> useful if the underlying file doesn't support random access, or was</tt> </tt>
-<a name="L292"></a><tt class="py-lineno">292</tt> <tt class="py-line"><tt class="py-docstring"> opened in append mode.</tt> </tt>
-<a name="L293"></a><tt class="py-lineno">293</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L294"></a><tt class="py-lineno">294</tt> <tt class="py-line"><tt class="py-docstring"> @return: file position (in bytes).</tt> </tt>
-<a name="L295"></a><tt class="py-lineno">295</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: int</tt> </tt>
-<a name="L296"></a><tt class="py-lineno">296</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L297"></a><tt class="py-lineno">297</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pos</tt> </tt>
-</div><a name="L298"></a><tt class="py-lineno">298</tt> <tt class="py-line"> </tt>
-<a name="BufferedFile.write"></a><div id="BufferedFile.write-def"><a name="L299"></a><tt class="py-lineno">299</tt> <a class="py-toggle" href="#" id="BufferedFile.write-toggle" onclick="return toggle('BufferedFile.write');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.file.BufferedFile-class.html#write">write</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">data</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BufferedFile.write-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BufferedFile.write-expanded"><a name="L300"></a><tt class="py-lineno">300</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L301"></a><tt class="py-lineno">301</tt> <tt class="py-line"><tt class="py-docstring"> Write data to the file. If write buffering is on (C{bufsize} was</tt> </tt>
-<a name="L302"></a><tt class="py-lineno">302</tt> <tt class="py-line"><tt class="py-docstring"> specified and non-zero), some or all of the data may not actually be</tt> </tt>
-<a name="L303"></a><tt class="py-lineno">303</tt> <tt class="py-line"><tt class="py-docstring"> written yet. (Use L{flush} or L{close} to force buffered data to be</tt> </tt>
-<a name="L304"></a><tt class="py-lineno">304</tt> <tt class="py-line"><tt class="py-docstring"> written out.)</tt> </tt>
-<a name="L305"></a><tt class="py-lineno">305</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L306"></a><tt class="py-lineno">306</tt> <tt class="py-line"><tt class="py-docstring"> @param data: data to write.</tt> </tt>
-<a name="L307"></a><tt class="py-lineno">307</tt> <tt class="py-line"><tt class="py-docstring"> @type data: str</tt> </tt>
-<a name="L308"></a><tt class="py-lineno">308</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L309"></a><tt class="py-lineno">309</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_closed</tt><tt class="py-op">:</tt> </tt>
-<a name="L310"></a><tt class="py-lineno">310</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">IOError</tt><tt class="py-op">(</tt><tt class="py-string">'File is closed'</tt><tt class="py-op">)</tt> </tt>
-<a name="L311"></a><tt class="py-lineno">311</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">&amp;</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="paramiko.BufferedFile.FLAG_WRITE" class="py-name" href="#" onclick="return doclink('link-23', 'FLAG_WRITE', 'link-5');">FLAG_WRITE</a></tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L312"></a><tt class="py-lineno">312</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">IOError</tt><tt class="py-op">(</tt><tt class="py-string">'File not open for writing'</tt><tt class="py-op">)</tt> </tt>
-<a name="L313"></a><tt class="py-lineno">313</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">&amp;</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name"><a title="paramiko.BufferedFile.FLAG_BUFFERED" class="py-name" href="#" onclick="return doclink('link-24', 'FLAG_BUFFERED', 'link-8');">FLAG_BUFFERED</a></tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L314"></a><tt class="py-lineno">314</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_write_all</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L315"></a><tt class="py-lineno">315</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L316"></a><tt class="py-lineno">316</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_wbuffer</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name" targets="Method paramiko.BufferedFile.write()=paramiko.BufferedFile-class.html#write,Method paramiko.SFTPHandle.write()=paramiko.SFTPHandle-class.html#write"><a title="paramiko.BufferedFile.write
-paramiko.SFTPHandle.write" class="py-name" href="#" onclick="return doclink('link-25', 'write', 'link-25');">write</a></tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L317"></a><tt class="py-lineno">317</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">&amp;</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name"><a title="paramiko.BufferedFile.FLAG_LINE_BUFFERED" class="py-name" href="#" onclick="return doclink('link-26', 'FLAG_LINE_BUFFERED', 'link-9');">FLAG_LINE_BUFFERED</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L318"></a><tt class="py-lineno">318</tt> <tt class="py-line"> <tt class="py-comment"># only scan the new data for linefeed, to avoid wasting time.</tt> </tt>
-<a name="L319"></a><tt class="py-lineno">319</tt> <tt class="py-line"> <tt class="py-name">last_newline_pos</tt> <tt class="py-op">=</tt> <tt class="py-name">data</tt><tt class="py-op">.</tt><tt class="py-name">rfind</tt><tt class="py-op">(</tt><tt class="py-string">'\n'</tt><tt class="py-op">)</tt> </tt>
-<a name="L320"></a><tt class="py-lineno">320</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">last_newline_pos</tt> <tt class="py-op">&gt;=</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L321"></a><tt class="py-lineno">321</tt> <tt class="py-line"> <tt class="py-name">wbuf</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_wbuffer</tt><tt class="py-op">.</tt><tt class="py-name">getvalue</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L322"></a><tt class="py-lineno">322</tt> <tt class="py-line"> <tt class="py-name">last_newline_pos</tt> <tt class="py-op">+=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">wbuf</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L323"></a><tt class="py-lineno">323</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_write_all</tt><tt class="py-op">(</tt><tt class="py-name">wbuf</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-name">last_newline_pos</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L324"></a><tt class="py-lineno">324</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_wbuffer</tt> <tt class="py-op">=</tt> <tt class="py-name">StringIO</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L325"></a><tt class="py-lineno">325</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_wbuffer</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name"><a title="paramiko.BufferedFile.write
-paramiko.SFTPHandle.write" class="py-name" href="#" onclick="return doclink('link-27', 'write', 'link-25');">write</a></tt><tt class="py-op">(</tt><tt class="py-name">wbuf</tt><tt class="py-op">[</tt><tt class="py-name">last_newline_pos</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L326"></a><tt class="py-lineno">326</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L327"></a><tt class="py-lineno">327</tt> <tt class="py-line"> <tt class="py-comment"># even if we're line buffering, if the buffer has grown past the</tt> </tt>
-<a name="L328"></a><tt class="py-lineno">328</tt> <tt class="py-line"> <tt class="py-comment"># buffer size, force a flush.</tt> </tt>
-<a name="L329"></a><tt class="py-lineno">329</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_wbuffer</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name" targets="Method paramiko.BufferedFile.tell()=paramiko.BufferedFile-class.html#tell"><a title="paramiko.BufferedFile.tell" class="py-name" href="#" onclick="return doclink('link-28', 'tell', 'link-28');">tell</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_bufsize</tt><tt class="py-op">:</tt> </tt>
-<a name="L330"></a><tt class="py-lineno">330</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name"><a title="paramiko.BufferedFile.flush" class="py-name" href="#" onclick="return doclink('link-29', 'flush', 'link-13');">flush</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L331"></a><tt class="py-lineno">331</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-</div><a name="L332"></a><tt class="py-lineno">332</tt> <tt class="py-line"> </tt>
-<a name="BufferedFile.writelines"></a><div id="BufferedFile.writelines-def"><a name="L333"></a><tt class="py-lineno">333</tt> <a class="py-toggle" href="#" id="BufferedFile.writelines-toggle" onclick="return toggle('BufferedFile.writelines');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.file.BufferedFile-class.html#writelines">writelines</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">sequence</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BufferedFile.writelines-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BufferedFile.writelines-expanded"><a name="L334"></a><tt class="py-lineno">334</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L335"></a><tt class="py-lineno">335</tt> <tt class="py-line"><tt class="py-docstring"> Write a sequence of strings to the file. The sequence can be any</tt> </tt>
-<a name="L336"></a><tt class="py-lineno">336</tt> <tt class="py-line"><tt class="py-docstring"> iterable object producing strings, typically a list of strings. (The</tt> </tt>
-<a name="L337"></a><tt class="py-lineno">337</tt> <tt class="py-line"><tt class="py-docstring"> name is intended to match L{readlines}; C{writelines} does not add line</tt> </tt>
-<a name="L338"></a><tt class="py-lineno">338</tt> <tt class="py-line"><tt class="py-docstring"> separators.)</tt> </tt>
-<a name="L339"></a><tt class="py-lineno">339</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L340"></a><tt class="py-lineno">340</tt> <tt class="py-line"><tt class="py-docstring"> @param sequence: an iterable sequence of strings.</tt> </tt>
-<a name="L341"></a><tt class="py-lineno">341</tt> <tt class="py-line"><tt class="py-docstring"> @type sequence: sequence</tt> </tt>
-<a name="L342"></a><tt class="py-lineno">342</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L343"></a><tt class="py-lineno">343</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">line</tt> <tt class="py-keyword">in</tt> <tt class="py-name">sequence</tt><tt class="py-op">:</tt> </tt>
-<a name="L344"></a><tt class="py-lineno">344</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name"><a title="paramiko.BufferedFile.write
-paramiko.SFTPHandle.write" class="py-name" href="#" onclick="return doclink('link-30', 'write', 'link-25');">write</a></tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> </tt>
-<a name="L345"></a><tt class="py-lineno">345</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-</div><a name="L346"></a><tt class="py-lineno">346</tt> <tt class="py-line"> </tt>
-<a name="BufferedFile.xreadlines"></a><div id="BufferedFile.xreadlines-def"><a name="L347"></a><tt class="py-lineno">347</tt> <a class="py-toggle" href="#" id="BufferedFile.xreadlines-toggle" onclick="return toggle('BufferedFile.xreadlines');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.file.BufferedFile-class.html#xreadlines">xreadlines</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BufferedFile.xreadlines-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BufferedFile.xreadlines-expanded"><a name="L348"></a><tt class="py-lineno">348</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L349"></a><tt class="py-lineno">349</tt> <tt class="py-line"><tt class="py-docstring"> Identical to C{iter(f)}. This is a deprecated file interface that</tt> </tt>
-<a name="L350"></a><tt class="py-lineno">350</tt> <tt class="py-line"><tt class="py-docstring"> predates python iterator support.</tt> </tt>
-<a name="L351"></a><tt class="py-lineno">351</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L352"></a><tt class="py-lineno">352</tt> <tt class="py-line"><tt class="py-docstring"> @return: an iterator.</tt> </tt>
-<a name="L353"></a><tt class="py-lineno">353</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: iterator</tt> </tt>
-<a name="L354"></a><tt class="py-lineno">354</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L355"></a><tt class="py-lineno">355</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt> </tt>
-</div><a name="L356"></a><tt class="py-lineno">356</tt> <tt class="py-line"> </tt>
-<a name="L357"></a><tt class="py-lineno">357</tt> <tt class="py-line"> </tt>
-<a name="L358"></a><tt class="py-lineno">358</tt> <tt class="py-line"> <tt class="py-comment">### overrides...</tt> </tt>
-<a name="L359"></a><tt class="py-lineno">359</tt> <tt class="py-line"> </tt>
-<a name="L360"></a><tt class="py-lineno">360</tt> <tt class="py-line"> </tt>
-<a name="BufferedFile._read"></a><div id="BufferedFile._read-def"><a name="L361"></a><tt class="py-lineno">361</tt> <a class="py-toggle" href="#" id="BufferedFile._read-toggle" onclick="return toggle('BufferedFile._read');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.file.BufferedFile-class.html#_read">_read</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">size</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BufferedFile._read-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BufferedFile._read-expanded"><a name="L362"></a><tt class="py-lineno">362</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L363"></a><tt class="py-lineno">363</tt> <tt class="py-line"><tt class="py-docstring"> I{(subclass override)}</tt> </tt>
-<a name="L364"></a><tt class="py-lineno">364</tt> <tt class="py-line"><tt class="py-docstring"> Read data from the stream. Return C{None} or raise C{EOFError} to</tt> </tt>
-<a name="L365"></a><tt class="py-lineno">365</tt> <tt class="py-line"><tt class="py-docstring"> indicate EOF.</tt> </tt>
-<a name="L366"></a><tt class="py-lineno">366</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L367"></a><tt class="py-lineno">367</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">EOFError</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L368"></a><tt class="py-lineno">368</tt> <tt class="py-line"> </tt>
-<a name="BufferedFile._write"></a><div id="BufferedFile._write-def"><a name="L369"></a><tt class="py-lineno">369</tt> <a class="py-toggle" href="#" id="BufferedFile._write-toggle" onclick="return toggle('BufferedFile._write');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.file.BufferedFile-class.html#_write">_write</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">data</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BufferedFile._write-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BufferedFile._write-expanded"><a name="L370"></a><tt class="py-lineno">370</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L371"></a><tt class="py-lineno">371</tt> <tt class="py-line"><tt class="py-docstring"> I{(subclass override)}</tt> </tt>
-<a name="L372"></a><tt class="py-lineno">372</tt> <tt class="py-line"><tt class="py-docstring"> Write data into the stream.</tt> </tt>
-<a name="L373"></a><tt class="py-lineno">373</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L374"></a><tt class="py-lineno">374</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">IOError</tt><tt class="py-op">(</tt><tt class="py-string">'write not implemented'</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L375"></a><tt class="py-lineno">375</tt> <tt class="py-line"> </tt>
-<a name="BufferedFile._get_size"></a><div id="BufferedFile._get_size-def"><a name="L376"></a><tt class="py-lineno">376</tt> <a class="py-toggle" href="#" id="BufferedFile._get_size-toggle" onclick="return toggle('BufferedFile._get_size');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.file.BufferedFile-class.html#_get_size">_get_size</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BufferedFile._get_size-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BufferedFile._get_size-expanded"><a name="L377"></a><tt class="py-lineno">377</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L378"></a><tt class="py-lineno">378</tt> <tt class="py-line"><tt class="py-docstring"> I{(subclass override)}</tt> </tt>
-<a name="L379"></a><tt class="py-lineno">379</tt> <tt class="py-line"><tt class="py-docstring"> Return the size of the file. This is called from within L{_set_mode}</tt> </tt>
-<a name="L380"></a><tt class="py-lineno">380</tt> <tt class="py-line"><tt class="py-docstring"> if the file is opened in append mode, so the file position can be</tt> </tt>
-<a name="L381"></a><tt class="py-lineno">381</tt> <tt class="py-line"><tt class="py-docstring"> tracked and L{seek} and L{tell} will work correctly. If the file is</tt> </tt>
-<a name="L382"></a><tt class="py-lineno">382</tt> <tt class="py-line"><tt class="py-docstring"> a stream that can't be randomly accessed, you don't need to override</tt> </tt>
-<a name="L383"></a><tt class="py-lineno">383</tt> <tt class="py-line"><tt class="py-docstring"> this method,</tt> </tt>
-<a name="L384"></a><tt class="py-lineno">384</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L385"></a><tt class="py-lineno">385</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-number">0</tt> </tt>
-</div><a name="L386"></a><tt class="py-lineno">386</tt> <tt class="py-line"> </tt>
-<a name="L387"></a><tt class="py-lineno">387</tt> <tt class="py-line"> </tt>
-<a name="L388"></a><tt class="py-lineno">388</tt> <tt class="py-line"> <tt class="py-comment">### internals...</tt> </tt>
-<a name="L389"></a><tt class="py-lineno">389</tt> <tt class="py-line"> </tt>
-<a name="L390"></a><tt class="py-lineno">390</tt> <tt class="py-line"> </tt>
-<a name="BufferedFile._set_mode"></a><div id="BufferedFile._set_mode-def"><a name="L391"></a><tt class="py-lineno">391</tt> <a class="py-toggle" href="#" id="BufferedFile._set_mode-toggle" onclick="return toggle('BufferedFile._set_mode');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.file.BufferedFile-class.html#_set_mode">_set_mode</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">mode</tt><tt class="py-op">=</tt><tt class="py-string">'r'</tt><tt class="py-op">,</tt> <tt class="py-param">bufsize</tt><tt class="py-op">=</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BufferedFile._set_mode-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BufferedFile._set_mode-expanded"><a name="L392"></a><tt class="py-lineno">392</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L393"></a><tt class="py-lineno">393</tt> <tt class="py-line"><tt class="py-docstring"> Subclasses call this method to initialize the BufferedFile.</tt> </tt>
-<a name="L394"></a><tt class="py-lineno">394</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L395"></a><tt class="py-lineno">395</tt> <tt class="py-line"> <tt class="py-comment"># set bufsize in any event, because it's used for readline().</tt> </tt>
-<a name="L396"></a><tt class="py-lineno">396</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_bufsize</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name"><a title="paramiko.BufferedFile._DEFAULT_BUFSIZE" class="py-name" href="#" onclick="return doclink('link-31', '_DEFAULT_BUFSIZE', 'link-0');">_DEFAULT_BUFSIZE</a></tt> </tt>
-<a name="L397"></a><tt class="py-lineno">397</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">bufsize</tt> <tt class="py-op">&lt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L398"></a><tt class="py-lineno">398</tt> <tt class="py-line"> <tt class="py-comment"># do no buffering by default, because otherwise writes will get</tt> </tt>
-<a name="L399"></a><tt class="py-lineno">399</tt> <tt class="py-line"> <tt class="py-comment"># buffered in a way that will probably confuse people.</tt> </tt>
-<a name="L400"></a><tt class="py-lineno">400</tt> <tt class="py-line"> <tt class="py-name">bufsize</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L401"></a><tt class="py-lineno">401</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">bufsize</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L402"></a><tt class="py-lineno">402</tt> <tt class="py-line"> <tt class="py-comment"># apparently, line buffering only affects writes. reads are only</tt> </tt>
-<a name="L403"></a><tt class="py-lineno">403</tt> <tt class="py-line"> <tt class="py-comment"># buffered if you call readline (directly or indirectly: iterating</tt> </tt>
-<a name="L404"></a><tt class="py-lineno">404</tt> <tt class="py-line"> <tt class="py-comment"># over a file will indirectly call readline).</tt> </tt>
-<a name="L405"></a><tt class="py-lineno">405</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">|=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name"><a title="paramiko.BufferedFile.FLAG_BUFFERED" class="py-name" href="#" onclick="return doclink('link-32', 'FLAG_BUFFERED', 'link-8');">FLAG_BUFFERED</a></tt> <tt class="py-op">|</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name"><a title="paramiko.BufferedFile.FLAG_LINE_BUFFERED" class="py-name" href="#" onclick="return doclink('link-33', 'FLAG_LINE_BUFFERED', 'link-9');">FLAG_LINE_BUFFERED</a></tt> </tt>
-<a name="L406"></a><tt class="py-lineno">406</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">bufsize</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L407"></a><tt class="py-lineno">407</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_bufsize</tt> <tt class="py-op">=</tt> <tt class="py-name">bufsize</tt> </tt>
-<a name="L408"></a><tt class="py-lineno">408</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">|=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="paramiko.BufferedFile.FLAG_BUFFERED" class="py-name" href="#" onclick="return doclink('link-34', 'FLAG_BUFFERED', 'link-8');">FLAG_BUFFERED</a></tt> </tt>
-<a name="L409"></a><tt class="py-lineno">409</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">&amp;=</tt> <tt class="py-op">~</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name"><a title="paramiko.BufferedFile.FLAG_LINE_BUFFERED" class="py-name" href="#" onclick="return doclink('link-35', 'FLAG_LINE_BUFFERED', 'link-9');">FLAG_LINE_BUFFERED</a></tt> </tt>
-<a name="L410"></a><tt class="py-lineno">410</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">bufsize</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L411"></a><tt class="py-lineno">411</tt> <tt class="py-line"> <tt class="py-comment"># unbuffered</tt> </tt>
-<a name="L412"></a><tt class="py-lineno">412</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">&amp;=</tt> <tt class="py-op">~</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="paramiko.BufferedFile.FLAG_BUFFERED" class="py-name" href="#" onclick="return doclink('link-36', 'FLAG_BUFFERED', 'link-8');">FLAG_BUFFERED</a></tt> <tt class="py-op">|</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name"><a title="paramiko.BufferedFile.FLAG_LINE_BUFFERED" class="py-name" href="#" onclick="return doclink('link-37', 'FLAG_LINE_BUFFERED', 'link-9');">FLAG_LINE_BUFFERED</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L413"></a><tt class="py-lineno">413</tt> <tt class="py-line"> </tt>
-<a name="L414"></a><tt class="py-lineno">414</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-string">'r'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">mode</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-string">'+'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">mode</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L415"></a><tt class="py-lineno">415</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">|=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="paramiko.BufferedFile.FLAG_READ" class="py-name" href="#" onclick="return doclink('link-38', 'FLAG_READ', 'link-4');">FLAG_READ</a></tt> </tt>
-<a name="L416"></a><tt class="py-lineno">416</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-string">'w'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">mode</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-string">'+'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">mode</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L417"></a><tt class="py-lineno">417</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">|=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="paramiko.BufferedFile.FLAG_WRITE" class="py-name" href="#" onclick="return doclink('link-39', 'FLAG_WRITE', 'link-5');">FLAG_WRITE</a></tt> </tt>
-<a name="L418"></a><tt class="py-lineno">418</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-string">'a'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">mode</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L419"></a><tt class="py-lineno">419</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">|=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name"><a title="paramiko.BufferedFile.FLAG_WRITE" class="py-name" href="#" onclick="return doclink('link-40', 'FLAG_WRITE', 'link-5');">FLAG_WRITE</a></tt> <tt class="py-op">|</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name"><a title="paramiko.BufferedFile.FLAG_APPEND" class="py-name" href="#" onclick="return doclink('link-41', 'FLAG_APPEND', 'link-6');">FLAG_APPEND</a></tt> </tt>
-<a name="L420"></a><tt class="py-lineno">420</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_size</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_get_size</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L421"></a><tt class="py-lineno">421</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pos</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_realpos</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_size</tt> </tt>
-<a name="L422"></a><tt class="py-lineno">422</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-string">'b'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">mode</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L423"></a><tt class="py-lineno">423</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">|=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-42" class="py-name"><a title="paramiko.BufferedFile.FLAG_BINARY" class="py-name" href="#" onclick="return doclink('link-42', 'FLAG_BINARY', 'link-7');">FLAG_BINARY</a></tt> </tt>
-<a name="L424"></a><tt class="py-lineno">424</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-string">'U'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">mode</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L425"></a><tt class="py-lineno">425</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">|=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-43" class="py-name"><a title="paramiko.BufferedFile.FLAG_UNIVERSAL_NEWLINE" class="py-name" href="#" onclick="return doclink('link-43', 'FLAG_UNIVERSAL_NEWLINE', 'link-10');">FLAG_UNIVERSAL_NEWLINE</a></tt> </tt>
-<a name="L426"></a><tt class="py-lineno">426</tt> <tt class="py-line"> <tt class="py-comment"># built-in file objects have this attribute to store which kinds of</tt> </tt>
-<a name="L427"></a><tt class="py-lineno">427</tt> <tt class="py-line"> <tt class="py-comment"># line terminations they've seen:</tt> </tt>
-<a name="L428"></a><tt class="py-lineno">428</tt> <tt class="py-line"> <tt class="py-comment"># &lt;http://www.python.org/doc/current/lib/built-in-funcs.html&gt;</tt> </tt>
-<a name="L429"></a><tt class="py-lineno">429</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">newlines</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L430"></a><tt class="py-lineno">430</tt> <tt class="py-line"> </tt>
-<a name="BufferedFile._write_all"></a><div id="BufferedFile._write_all-def"><a name="L431"></a><tt class="py-lineno">431</tt> <a class="py-toggle" href="#" id="BufferedFile._write_all-toggle" onclick="return toggle('BufferedFile._write_all');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.file.BufferedFile-class.html#_write_all">_write_all</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">data</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BufferedFile._write_all-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BufferedFile._write_all-expanded"><a name="L432"></a><tt class="py-lineno">432</tt> <tt class="py-line"> <tt class="py-comment"># the underlying stream may be something that does partial writes (like</tt> </tt>
-<a name="L433"></a><tt class="py-lineno">433</tt> <tt class="py-line"> <tt class="py-comment"># a socket).</tt> </tt>
-<a name="L434"></a><tt class="py-lineno">434</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L435"></a><tt class="py-lineno">435</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_write</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L436"></a><tt class="py-lineno">436</tt> <tt class="py-line"> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-name">data</tt><tt class="py-op">[</tt><tt class="py-name">count</tt><tt class="py-op">:</tt><tt class="py-op">]</tt> </tt>
-<a name="L437"></a><tt class="py-lineno">437</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">&amp;</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-44" class="py-name"><a title="paramiko.BufferedFile.FLAG_APPEND" class="py-name" href="#" onclick="return doclink('link-44', 'FLAG_APPEND', 'link-6');">FLAG_APPEND</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L438"></a><tt class="py-lineno">438</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_size</tt> <tt class="py-op">+=</tt> <tt class="py-name">count</tt> </tt>
-<a name="L439"></a><tt class="py-lineno">439</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pos</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_realpos</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_size</tt> </tt>
-<a name="L440"></a><tt class="py-lineno">440</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L441"></a><tt class="py-lineno">441</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pos</tt> <tt class="py-op">+=</tt> <tt class="py-name">count</tt> </tt>
-<a name="L442"></a><tt class="py-lineno">442</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_realpos</tt> <tt class="py-op">+=</tt> <tt class="py-name">count</tt> </tt>
-<a name="L443"></a><tt class="py-lineno">443</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L444"></a><tt class="py-lineno">444</tt> <tt class="py-line"> </tt>
-<a name="BufferedFile._record_newline"></a><div id="BufferedFile._record_newline-def"><a name="L445"></a><tt class="py-lineno">445</tt> <a class="py-toggle" href="#" id="BufferedFile._record_newline-toggle" onclick="return toggle('BufferedFile._record_newline');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.file.BufferedFile-class.html#_record_newline">_record_newline</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">newline</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BufferedFile._record_newline-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BufferedFile._record_newline-expanded"><a name="L446"></a><tt class="py-lineno">446</tt> <tt class="py-line"> <tt class="py-comment"># silliness about tracking what kinds of newlines we've seen.</tt> </tt>
-<a name="L447"></a><tt class="py-lineno">447</tt> <tt class="py-line"> <tt class="py-comment"># i don't understand why it can be None, a string, or a tuple, instead</tt> </tt>
-<a name="L448"></a><tt class="py-lineno">448</tt> <tt class="py-line"> <tt class="py-comment"># of just always being a tuple, but we'll emulate that behavior anyway.</tt> </tt>
-<a name="L449"></a><tt class="py-lineno">449</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">&amp;</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-45" class="py-name"><a title="paramiko.BufferedFile.FLAG_UNIVERSAL_NEWLINE" class="py-name" href="#" onclick="return doclink('link-45', 'FLAG_UNIVERSAL_NEWLINE', 'link-10');">FLAG_UNIVERSAL_NEWLINE</a></tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L450"></a><tt class="py-lineno">450</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L451"></a><tt class="py-lineno">451</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">newlines</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L452"></a><tt class="py-lineno">452</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">newlines</tt> <tt class="py-op">=</tt> <tt class="py-name">newline</tt> </tt>
-<a name="L453"></a><tt class="py-lineno">453</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-op">(</tt><tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">newlines</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">str</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">newlines</tt> <tt class="py-op">!=</tt> <tt class="py-name">newline</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L454"></a><tt class="py-lineno">454</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">newlines</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">newlines</tt><tt class="py-op">,</tt> <tt class="py-name">newline</tt><tt class="py-op">)</tt> </tt>
-<a name="L455"></a><tt class="py-lineno">455</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">newline</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">newlines</tt><tt class="py-op">:</tt> </tt>
-<a name="L456"></a><tt class="py-lineno">456</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">newlines</tt> <tt class="py-op">+=</tt> <tt class="py-op">(</tt><tt class="py-name">newline</tt><tt class="py-op">,</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L457"></a><tt class="py-lineno">457</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:07 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.hostkeys-module.html b/docs/paramiko.hostkeys-module.html
deleted file mode 100644
index 3477a7b..0000000
--- a/docs/paramiko.hostkeys-module.html
+++ /dev/null
@@ -1,549 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.hostkeys</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;hostkeys
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.hostkeys-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module hostkeys</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.hostkeys-pysrc.html">source&nbsp;code</a></span></p>
-<p><a href="paramiko.HostKeys-class.html" class="link">HostKeys</a></p>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Classes</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.hostkeys.HostKeyEntry-class.html" class="summary-name">HostKeyEntry</a><br />
- Representation of a line in an OpenSSH-style &quot;known
- hosts&quot; file.
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_FAILED"></a><span class="summary-name">AUTH_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_PARTIALLY_SUCCESSFUL"></a><span class="summary-name">AUTH_PARTIALLY_SUCCESSFUL</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_SUCCESSFUL"></a><span class="summary-name">AUTH_SUCCESSFUL</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.hostkeys-module.html#CONNECTION_FAILED_CODE" class="summary-name">CONNECTION_FAILED_CODE</a> = <code title="{1: 'Administratively prohibited',
- 2: 'Connect failed',
- 3: 'Unknown channel type',
- 4: 'Resource shortage'}"><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">:</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CRITICAL"></a><span class="summary-name">CRITICAL</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DEBUG"></a><span class="summary-name">DEBUG</span> = <code title="10">10</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_AUTH_CANCELLED_BY_USER"></a><span class="summary-name">DISCONNECT_AUTH_CANCELLED_BY_USER</span> = <code title="13">13</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE"></a><span class="summary-name">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</span> = <code title="14">14</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_SERVICE_NOT_AVAILABLE"></a><span class="summary-name">DISCONNECT_SERVICE_NOT_AVAILABLE</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="ERROR"></a><span class="summary-name">ERROR</span> = <code title="40">40</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="INFO"></a><span class="summary-name">INFO</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_CLOSE"></a><span class="summary-name">MSG_CHANNEL_CLOSE</span> = <code title="97">97</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_DATA"></a><span class="summary-name">MSG_CHANNEL_DATA</span> = <code title="94">94</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EOF"></a><span class="summary-name">MSG_CHANNEL_EOF</span> = <code title="96">96</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EXTENDED_DATA"></a><span class="summary-name">MSG_CHANNEL_EXTENDED_DATA</span> = <code title="95">95</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_FAILURE"></a><span class="summary-name">MSG_CHANNEL_FAILURE</span> = <code title="100">100</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN"></a><span class="summary-name">MSG_CHANNEL_OPEN</span> = <code title="90">90</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_FAILURE"></a><span class="summary-name">MSG_CHANNEL_OPEN_FAILURE</span> = <code title="92">92</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_OPEN_SUCCESS</span> = <code title="91">91</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_REQUEST"></a><span class="summary-name">MSG_CHANNEL_REQUEST</span> = <code title="98">98</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_SUCCESS</span> = <code title="99">99</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_WINDOW_ADJUST"></a><span class="summary-name">MSG_CHANNEL_WINDOW_ADJUST</span> = <code title="93">93</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DEBUG"></a><span class="summary-name">MSG_DEBUG</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DISCONNECT"></a><span class="summary-name">MSG_DISCONNECT</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_GLOBAL_REQUEST"></a><span class="summary-name">MSG_GLOBAL_REQUEST</span> = <code title="80">80</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_IGNORE"></a><span class="summary-name">MSG_IGNORE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_KEXINIT"></a><span class="summary-name">MSG_KEXINIT</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.hostkeys-module.html#MSG_NAMES" class="summary-name">MSG_NAMES</a> = <code title="{1: 'disconnect',
- 2: 'ignore',
- 3: 'unimplemented',
- 4: 'debug',
- 5: 'service-request',
- 6: 'service-accept',
- 20: 'kexinit',
- 21: 'newkeys',
-..."><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">, </code>3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_NEWKEYS"></a><span class="summary-name">MSG_NEWKEYS</span> = <code title="21">21</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_FAILURE"></a><span class="summary-name">MSG_REQUEST_FAILURE</span> = <code title="82">82</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_SUCCESS"></a><span class="summary-name">MSG_REQUEST_SUCCESS</span> = <code title="81">81</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_ACCEPT"></a><span class="summary-name">MSG_SERVICE_ACCEPT</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_REQUEST"></a><span class="summary-name">MSG_SERVICE_REQUEST</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_UNIMPLEMENTED"></a><span class="summary-name">MSG_UNIMPLEMENTED</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_BANNER"></a><span class="summary-name">MSG_USERAUTH_BANNER</span> = <code title="53">53</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_FAILURE"></a><span class="summary-name">MSG_USERAUTH_FAILURE</span> = <code title="51">51</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_REQUEST"></a><span class="summary-name">MSG_USERAUTH_INFO_REQUEST</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_RESPONSE"></a><span class="summary-name">MSG_USERAUTH_INFO_RESPONSE</span> = <code title="61">61</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_PK_OK"></a><span class="summary-name">MSG_USERAUTH_PK_OK</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_REQUEST"></a><span class="summary-name">MSG_USERAUTH_REQUEST</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_SUCCESS"></a><span class="summary-name">MSG_USERAUTH_SUCCESS</span> = <code title="52">52</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED"></a><span class="summary-name">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_CONNECT_FAILED"></a><span class="summary-name">OPEN_FAILED_CONNECT_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_RESOURCE_SHORTAGE"></a><span class="summary-name">OPEN_FAILED_RESOURCE_SHORTAGE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_UNKNOWN_CHANNEL_TYPE"></a><span class="summary-name">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_SUCCEEDED"></a><span class="summary-name">OPEN_SUCCEEDED</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="PY22"></a><span class="summary-name">PY22</span> = <code title="False">False</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="WARNING"></a><span class="summary-name">WARNING</span> = <code title="30">30</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'paramiko'"><code class="variable-quote">'</code><code class="variable-string">paramiko</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="rng"></a><span class="summary-name">rng</span> = <code title="Random.new()">Random.new()</code>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES DETAILS ==================== -->
-<a name="section-VariablesDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables Details</span></td>
-</tr>
-</table>
-<a name="CONNECTION_FAILED_CODE"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">CONNECTION_FAILED_CODE</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Connect failed</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Unknown channel type</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Resource shortage</code><code class="variable-quote">'</code><code class="variable-group">}</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="MSG_NAMES"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">MSG_NAMES</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">debug</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 5<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-request</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 6<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-accept</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 20<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">kexinit</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 21<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">newkeys</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:02 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.hostkeys-pysrc.html b/docs/paramiko.hostkeys-pysrc.html
deleted file mode 100644
index c4175b1..0000000
--- a/docs/paramiko.hostkeys-pysrc.html
+++ /dev/null
@@ -1,501 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.hostkeys</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;hostkeys
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.hostkeys-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.hostkeys-module.html" onclick="show_private();">Module paramiko.hostkeys</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2006-2007 Robey Pointer &lt;robeypointer@gmail.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring">L{HostKeys}</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">base64</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">Crypto</tt><tt class="py-op">.</tt><tt class="py-name">Hash</tt> <tt class="py-keyword">import</tt> <tt class="py-name">SHA</tt><tt class="py-op">,</tt> <tt class="py-name">HMAC</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">UserDict</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package paramiko=paramiko-module.html"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-0', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Module paramiko.common=paramiko.common-module.html"><a title="paramiko.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt> <tt class="py-keyword">import</tt> <tt class="py-op">*</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-2" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-2', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Module paramiko.dsskey=paramiko.dsskey-module.html"><a title="paramiko.dsskey" class="py-name" href="#" onclick="return doclink('link-3', 'dsskey', 'link-3');">dsskey</a></tt> <tt class="py-keyword">import</tt> <tt id="link-4" class="py-name" targets="Class paramiko.DSSKey=paramiko.DSSKey-class.html"><a title="paramiko.DSSKey" class="py-name" href="#" onclick="return doclink('link-4', 'DSSKey', 'link-4');">DSSKey</a></tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-5" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-5', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-6" class="py-name" targets="Module paramiko.rsakey=paramiko.rsakey-module.html"><a title="paramiko.rsakey" class="py-name" href="#" onclick="return doclink('link-6', 'rsakey', 'link-6');">rsakey</a></tt> <tt class="py-keyword">import</tt> <tt id="link-7" class="py-name" targets="Class paramiko.RSAKey=paramiko.RSAKey-class.html"><a title="paramiko.RSAKey" class="py-name" href="#" onclick="return doclink('link-7', 'RSAKey', 'link-7');">RSAKey</a></tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> </tt>
-<a name="HostKeyEntry"></a><div id="HostKeyEntry-def"><a name="L32"></a><tt class="py-lineno"> 32</tt> <a class="py-toggle" href="#" id="HostKeyEntry-toggle" onclick="return toggle('HostKeyEntry');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.hostkeys.HostKeyEntry-class.html">HostKeyEntry</a><tt class="py-op">:</tt> </tt>
-</div><div id="HostKeyEntry-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="HostKeyEntry-expanded"><a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"><tt class="py-docstring"> Representation of a line in an OpenSSH-style "known hosts" file.</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> </tt>
-<a name="HostKeyEntry.__init__"></a><div id="HostKeyEntry.__init__-def"><a name="L37"></a><tt class="py-lineno"> 37</tt> <a class="py-toggle" href="#" id="HostKeyEntry.__init__-toggle" onclick="return toggle('HostKeyEntry.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.hostkeys.HostKeyEntry-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">hostnames</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">key</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HostKeyEntry.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="HostKeyEntry.__init__-expanded"><a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">valid</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">hostnames</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">key</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">hostnames</tt> <tt class="py-op">=</tt> <tt class="py-name">hostnames</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">key</tt> <tt class="py-op">=</tt> <tt class="py-name">key</tt> </tt>
-</div><a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> </tt>
-<a name="HostKeyEntry.from_line"></a><div id="HostKeyEntry.from_line-def"><a name="L42"></a><tt class="py-lineno"> 42</tt> <a class="py-toggle" href="#" id="HostKeyEntry.from_line-toggle" onclick="return toggle('HostKeyEntry.from_line');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.hostkeys.HostKeyEntry-class.html#from_line">from_line</a><tt class="py-op">(</tt><tt class="py-param">cls</tt><tt class="py-op">,</tt> <tt class="py-param">line</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HostKeyEntry.from_line-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="HostKeyEntry.from_line-expanded"><a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"><tt class="py-docstring"> Parses the given line of text to find the names for the host,</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"><tt class="py-docstring"> the type of key, and the key data. The line is expected to be in the</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"><tt class="py-docstring"> format used by the openssh known_hosts file.</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"><tt class="py-docstring"> Lines are expected to not have leading or trailing whitespace.</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"><tt class="py-docstring"> We don't bother to check for comments or empty lines. All of</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"><tt class="py-docstring"> that should be taken care of before sending the line to us.</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"><tt class="py-docstring"> @param line: a line from an OpenSSH known_hosts file</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"><tt class="py-docstring"> @type line: str</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-name">fields</tt> <tt class="py-op">=</tt> <tt class="py-name">line</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">' '</tt><tt class="py-op">)</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">fields</tt><tt class="py-op">)</tt> <tt class="py-op">&lt;</tt> <tt class="py-number">3</tt><tt class="py-op">:</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-comment"># Bad number of fields</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-name">fields</tt> <tt class="py-op">=</tt> <tt class="py-name">fields</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-number">3</tt><tt class="py-op">]</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-name">names</tt><tt class="py-op">,</tt> <tt class="py-name">keytype</tt><tt class="py-op">,</tt> <tt class="py-name">key</tt> <tt class="py-op">=</tt> <tt class="py-name">fields</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-name">names</tt> <tt class="py-op">=</tt> <tt class="py-name">names</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">','</tt><tt class="py-op">)</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-comment"># Decide what kind of key we're looking at and create an object</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-comment"># to hold it accordingly.</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">keytype</tt> <tt class="py-op">==</tt> <tt class="py-string">'ssh-rsa'</tt><tt class="py-op">:</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-name">key</tt> <tt class="py-op">=</tt> <tt id="link-8" class="py-name"><a title="paramiko.RSAKey" class="py-name" href="#" onclick="return doclink('link-8', 'RSAKey', 'link-7');">RSAKey</a></tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">=</tt><tt class="py-name">base64</tt><tt class="py-op">.</tt><tt class="py-name">decodestring</tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">keytype</tt> <tt class="py-op">==</tt> <tt class="py-string">'ssh-dss'</tt><tt class="py-op">:</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">key</tt> <tt class="py-op">=</tt> <tt id="link-9" class="py-name"><a title="paramiko.DSSKey" class="py-name" href="#" onclick="return doclink('link-9', 'DSSKey', 'link-4');">DSSKey</a></tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">=</tt><tt class="py-name">base64</tt><tt class="py-op">.</tt><tt class="py-name">decodestring</tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">cls</tt><tt class="py-op">(</tt><tt class="py-name">names</tt><tt class="py-op">,</tt> <tt class="py-name">key</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt id="link-10" class="py-name" targets="Class Method paramiko.hostkeys.HostKeyEntry.from_line()=paramiko.hostkeys.HostKeyEntry-class.html#from_line"><a title="paramiko.hostkeys.HostKeyEntry.from_line" class="py-name" href="#" onclick="return doclink('link-10', 'from_line', 'link-10');">from_line</a></tt> <tt class="py-op">=</tt> <tt class="py-name">classmethod</tt><tt class="py-op">(</tt><tt id="link-11" class="py-name"><a title="paramiko.hostkeys.HostKeyEntry.from_line" class="py-name" href="#" onclick="return doclink('link-11', 'from_line', 'link-10');">from_line</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> </tt>
-<a name="HostKeyEntry.to_line"></a><div id="HostKeyEntry.to_line-def"><a name="L76"></a><tt class="py-lineno"> 76</tt> <a class="py-toggle" href="#" id="HostKeyEntry.to_line-toggle" onclick="return toggle('HostKeyEntry.to_line');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.hostkeys.HostKeyEntry-class.html#to_line">to_line</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HostKeyEntry.to_line-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="HostKeyEntry.to_line-expanded"><a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"><tt class="py-docstring"> Returns a string in OpenSSH known_hosts file format, or None if</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"><tt class="py-docstring"> the object is not in a valid state. A trailing newline is</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"><tt class="py-docstring"> included.</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">valid</tt><tt class="py-op">:</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">'%s %s %s\n'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-string">','</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">hostnames</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">key</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name" targets="Method paramiko.AgentKey.get_name()=paramiko.AgentKey-class.html#get_name,Method paramiko.Channel.get_name()=paramiko.Channel-class.html#get_name,Method paramiko.DSSKey.get_name()=paramiko.DSSKey-class.html#get_name,Method paramiko.PKey.get_name()=paramiko.PKey-class.html#get_name,Method paramiko.RSAKey.get_name()=paramiko.RSAKey-class.html#get_name"><a title="paramiko.AgentKey.get_name
-paramiko.Channel.get_name
-paramiko.DSSKey.get_name
-paramiko.PKey.get_name
-paramiko.RSAKey.get_name" class="py-name" href="#" onclick="return doclink('link-12', 'get_name', 'link-12');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">key</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name" targets="Method paramiko.PKey.get_base64()=paramiko.PKey-class.html#get_base64"><a title="paramiko.PKey.get_base64" class="py-name" href="#" onclick="return doclink('link-13', 'get_base64', 'link-13');">get_base64</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> </tt>
-<a name="HostKeyEntry.__repr__"></a><div id="HostKeyEntry.__repr__-def"><a name="L87"></a><tt class="py-lineno"> 87</tt> <a class="py-toggle" href="#" id="HostKeyEntry.__repr__-toggle" onclick="return toggle('HostKeyEntry.__repr__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.hostkeys.HostKeyEntry-class.html#__repr__">__repr__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HostKeyEntry.__repr__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="HostKeyEntry.__repr__-expanded"><a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">'&lt;HostKeyEntry %r: %r&gt;'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">hostnames</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">key</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> </tt>
-<a name="HostKeys"></a><div id="HostKeys-def"><a name="L91"></a><tt class="py-lineno"> 91</tt> <a class="py-toggle" href="#" id="HostKeys-toggle" onclick="return toggle('HostKeys');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.hostkeys.HostKeys-class.html">HostKeys</a> <tt class="py-op">(</tt><tt class="py-base-class">UserDict</tt><tt class="py-op">.</tt><tt class="py-base-class">DictMixin</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HostKeys-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="HostKeys-expanded"><a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"><tt class="py-docstring"> Representation of an openssh-style "known hosts" file. Host keys can be</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"><tt class="py-docstring"> read from one or more files, and then individual hosts can be looked up to</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"><tt class="py-docstring"> verify server keys during SSH negotiation.</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"><tt class="py-docstring"> A HostKeys object can be treated like a dict; any dict lookup is equivalent</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"><tt class="py-docstring"> to calling L{lookup}.</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.5.3</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> </tt>
-<a name="HostKeys.__init__"></a><div id="HostKeys.__init__-def"><a name="L103"></a><tt class="py-lineno">103</tt> <a class="py-toggle" href="#" id="HostKeys.__init__-toggle" onclick="return toggle('HostKeys.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.hostkeys.HostKeys-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">filename</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HostKeys.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="HostKeys.__init__-expanded"><a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"><tt class="py-docstring"> Create a new HostKeys object, optionally loading keys from an openssh</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"><tt class="py-docstring"> style host-key file.</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"><tt class="py-docstring"> @param filename: filename to load host keys from, or C{None}</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"><tt class="py-docstring"> @type filename: str</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt class="py-comment"># emulate a dict of { hostname: { keytype: PKey } }</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_entries</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">filename</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name" targets="Method paramiko.HostKeys.load()=paramiko.HostKeys-class.html#load"><a title="paramiko.HostKeys.load" class="py-name" href="#" onclick="return doclink('link-14', 'load', 'link-14');">load</a></tt><tt class="py-op">(</tt><tt class="py-name">filename</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> </tt>
-<a name="HostKeys.add"></a><div id="HostKeys.add-def"><a name="L116"></a><tt class="py-lineno">116</tt> <a class="py-toggle" href="#" id="HostKeys.add-toggle" onclick="return toggle('HostKeys.add');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.hostkeys.HostKeys-class.html#add">add</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">hostname</tt><tt class="py-op">,</tt> <tt class="py-param">keytype</tt><tt class="py-op">,</tt> <tt class="py-param">key</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HostKeys.add-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="HostKeys.add-expanded"><a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"><tt class="py-docstring"> Add a host key entry to the table. Any existing entry for a</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"><tt class="py-docstring"> C{(hostname, keytype)} pair will be replaced.</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"><tt class="py-docstring"> @param hostname: the hostname (or IP) to add</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"><tt class="py-docstring"> @type hostname: str</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"><tt class="py-docstring"> @param keytype: key type (C{"ssh-rsa"} or C{"ssh-dss"})</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"><tt class="py-docstring"> @type keytype: str</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"><tt class="py-docstring"> @param key: the key to add</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"><tt class="py-docstring"> @type key: L{PKey}</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">e</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_entries</tt><tt class="py-op">:</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">hostname</tt> <tt class="py-keyword">in</tt> <tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">hostnames</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">key</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name"><a title="paramiko.AgentKey.get_name
-paramiko.Channel.get_name
-paramiko.DSSKey.get_name
-paramiko.PKey.get_name
-paramiko.RSAKey.get_name" class="py-name" href="#" onclick="return doclink('link-15', 'get_name', 'link-12');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">keytype</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">key</tt> <tt class="py-op">=</tt> <tt class="py-name">key</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_entries</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt id="link-16" class="py-name" targets="Class paramiko.hostkeys.HostKeyEntry=paramiko.hostkeys.HostKeyEntry-class.html"><a title="paramiko.hostkeys.HostKeyEntry" class="py-name" href="#" onclick="return doclink('link-16', 'HostKeyEntry', 'link-16');">HostKeyEntry</a></tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-name">hostname</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">key</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> </tt>
-<a name="HostKeys.load"></a><div id="HostKeys.load-def"><a name="L134"></a><tt class="py-lineno">134</tt> <a class="py-toggle" href="#" id="HostKeys.load-toggle" onclick="return toggle('HostKeys.load');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.hostkeys.HostKeys-class.html#load">load</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">filename</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HostKeys.load-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="HostKeys.load-expanded"><a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"><tt class="py-docstring"> Read a file of known SSH host keys, in the format used by openssh.</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"><tt class="py-docstring"> This type of file unfortunately doesn't exist on Windows, but on</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"><tt class="py-docstring"> posix, it will usually be stored in</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"><tt class="py-docstring"> C{os.path.expanduser("~/.ssh/known_hosts")}.</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"><tt class="py-docstring"> If this method is called multiple times, the host keys are merged,</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"><tt class="py-docstring"> not cleared. So multiple calls to C{load} will just call L{add},</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"><tt class="py-docstring"> replacing any existing entries and adding new ones.</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"><tt class="py-docstring"> @param filename: name of the file to read host keys from</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"><tt class="py-docstring"> @type filename: str</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"><tt class="py-docstring"> @raise IOError: if there was an error reading the file</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt class="py-name">f</tt> <tt class="py-op">=</tt> <tt id="link-17" class="py-name" targets="Method paramiko.SFTPServerInterface.open()=paramiko.SFTPServerInterface-class.html#open"><a title="paramiko.SFTPServerInterface.open" class="py-name" href="#" onclick="return doclink('link-17', 'open', 'link-17');">open</a></tt><tt class="py-op">(</tt><tt class="py-name">filename</tt><tt class="py-op">,</tt> <tt class="py-string">'r'</tt><tt class="py-op">)</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">line</tt> <tt class="py-keyword">in</tt> <tt class="py-name">f</tt><tt class="py-op">:</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> <tt class="py-name">line</tt> <tt class="py-op">=</tt> <tt class="py-name">line</tt><tt class="py-op">.</tt><tt class="py-name">strip</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">'#'</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> <tt class="py-name">e</tt> <tt class="py-op">=</tt> <tt id="link-18" class="py-name"><a title="paramiko.hostkeys.HostKeyEntry" class="py-name" href="#" onclick="return doclink('link-18', 'HostKeyEntry', 'link-16');">HostKeyEntry</a></tt><tt class="py-op">.</tt><tt id="link-19" class="py-name"><a title="paramiko.hostkeys.HostKeyEntry.from_line" class="py-name" href="#" onclick="return doclink('link-19', 'from_line', 'link-10');">from_line</a></tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">e</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_entries</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">)</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> <tt class="py-name">f</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name" targets="Method paramiko.Agent.close()=paramiko.Agent-class.html#close,Method paramiko.BufferedFile.close()=paramiko.BufferedFile-class.html#close,Method paramiko.Channel.close()=paramiko.Channel-class.html#close,Method paramiko.SFTPClient.close()=paramiko.SFTPClient-class.html#close,Method paramiko.SFTPFile.close()=paramiko.SFTPFile-class.html#close,Method paramiko.SFTPHandle.close()=paramiko.SFTPHandle-class.html#close,Method paramiko.SSHClient.close()=paramiko.SSHClient-class.html#close,Method paramiko.Transport.close()=paramiko.Transport-class.html#close,Method paramiko.buffered_pipe.BufferedPipe.close()=paramiko.buffered_pipe.BufferedPipe-class.html#close,Method paramiko.pipe.PosixPipe.close()=paramiko.pipe.PosixPipe-class.html#close,Method paramiko.pipe.WindowsPipe.close()=paramiko.pipe.WindowsPipe-class.html#close,Method paramiko.win_pageant.PageantConnection.close()=paramiko.win_pageant.PageantConnection-class.html#close"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-20', 'close', 'link-20');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> </tt>
-<a name="HostKeys.save"></a><div id="HostKeys.save-def"><a name="L160"></a><tt class="py-lineno">160</tt> <a class="py-toggle" href="#" id="HostKeys.save-toggle" onclick="return toggle('HostKeys.save');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.hostkeys.HostKeys-class.html#save">save</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">filename</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HostKeys.save-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="HostKeys.save-expanded"><a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"><tt class="py-docstring"> Save host keys into a file, in the format used by openssh. The order of</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"><tt class="py-docstring"> keys in the file will be preserved when possible (if these keys were</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"><tt class="py-docstring"> loaded from a file originally). The single exception is that combined</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"><tt class="py-docstring"> lines will be split into individual key lines, which is arguably a bug.</tt> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"><tt class="py-docstring"> @param filename: name of the file to write</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"><tt class="py-docstring"> @type filename: str</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"><tt class="py-docstring"> @raise IOError: if there was an error writing the file</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.6.1</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-name">f</tt> <tt class="py-op">=</tt> <tt id="link-21" class="py-name"><a title="paramiko.SFTPServerInterface.open" class="py-name" href="#" onclick="return doclink('link-21', 'open', 'link-17');">open</a></tt><tt class="py-op">(</tt><tt class="py-name">filename</tt><tt class="py-op">,</tt> <tt class="py-string">'w'</tt><tt class="py-op">)</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">e</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_entries</tt><tt class="py-op">:</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> <tt class="py-name">line</tt> <tt class="py-op">=</tt> <tt class="py-name">e</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name" targets="Method paramiko.hostkeys.HostKeyEntry.to_line()=paramiko.hostkeys.HostKeyEntry-class.html#to_line"><a title="paramiko.hostkeys.HostKeyEntry.to_line" class="py-name" href="#" onclick="return doclink('link-22', 'to_line', 'link-22');">to_line</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">line</tt><tt class="py-op">:</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt class="py-name">f</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name" targets="Method paramiko.BufferedFile.write()=paramiko.BufferedFile-class.html#write,Method paramiko.SFTPHandle.write()=paramiko.SFTPHandle-class.html#write"><a title="paramiko.BufferedFile.write
-paramiko.SFTPHandle.write" class="py-name" href="#" onclick="return doclink('link-23', 'write', 'link-23');">write</a></tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-name">f</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-24', 'close', 'link-20');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> </tt>
-<a name="HostKeys.lookup"></a><div id="HostKeys.lookup-def"><a name="L181"></a><tt class="py-lineno">181</tt> <a class="py-toggle" href="#" id="HostKeys.lookup-toggle" onclick="return toggle('HostKeys.lookup');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.hostkeys.HostKeys-class.html#lookup">lookup</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">hostname</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HostKeys.lookup-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="HostKeys.lookup-expanded"><a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"><tt class="py-docstring"> Find a hostkey entry for a given hostname or IP. If no entry is found,</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"><tt class="py-docstring"> C{None} is returned. Otherwise a dictionary of keytype to key is</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"><tt class="py-docstring"> returned. The keytype will be either C{"ssh-rsa"} or C{"ssh-dss"}.</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"><tt class="py-docstring"> @param hostname: the hostname (or IP) to lookup</tt> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"><tt class="py-docstring"> @type hostname: str</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"><tt class="py-docstring"> @return: keys associated with this host (or C{None})</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: dict(str, L{PKey})</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"> <tt class="py-keyword">class</tt> <tt class="py-def-name">SubDict</tt> <tt class="py-op">(</tt><tt class="py-base-class">UserDict</tt><tt class="py-op">.</tt><tt class="py-base-class">DictMixin</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"> <tt class="py-keyword">def</tt> <tt class="py-def-name">__init__</tt><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">hostname</tt><tt class="py-op">,</tt> <tt class="py-param">entries</tt><tt class="py-op">,</tt> <tt class="py-param">hostkeys</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_hostname</tt> <tt class="py-op">=</tt> <tt class="py-name">hostname</tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_entries</tt> <tt class="py-op">=</tt> <tt class="py-name">entries</tt> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_hostkeys</tt> <tt class="py-op">=</tt> <tt id="link-25" class="py-name" targets="Module paramiko.hostkeys=paramiko.hostkeys-module.html"><a title="paramiko.hostkeys" class="py-name" href="#" onclick="return doclink('link-25', 'hostkeys', 'link-25');">hostkeys</a></tt> </tt>
-</div><a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"> <tt class="py-keyword">def</tt> <tt class="py-def-name">__getitem__</tt><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">key</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">e</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_entries</tt><tt class="py-op">:</tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">key</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name"><a title="paramiko.AgentKey.get_name
-paramiko.Channel.get_name
-paramiko.DSSKey.get_name
-paramiko.PKey.get_name
-paramiko.RSAKey.get_name" class="py-name" href="#" onclick="return doclink('link-26', 'get_name', 'link-12');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">key</tt><tt class="py-op">:</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">key</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">KeyError</tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"> <tt class="py-keyword">def</tt> <tt class="py-def-name">__setitem__</tt><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">key</tt><tt class="py-op">,</tt> <tt class="py-param">val</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">e</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_entries</tt><tt class="py-op">:</tt> </tt>
-<a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">key</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">key</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name"><a title="paramiko.AgentKey.get_name
-paramiko.Channel.get_name
-paramiko.DSSKey.get_name
-paramiko.PKey.get_name
-paramiko.RSAKey.get_name" class="py-name" href="#" onclick="return doclink('link-27', 'get_name', 'link-12');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">key</tt><tt class="py-op">:</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"> <tt class="py-comment"># replace</tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"> <tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">key</tt> <tt class="py-op">=</tt> <tt class="py-name">val</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"> <tt class="py-comment"># add a new one</tt> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"> <tt class="py-name">e</tt> <tt class="py-op">=</tt> <tt id="link-28" class="py-name"><a title="paramiko.hostkeys.HostKeyEntry" class="py-name" href="#" onclick="return doclink('link-28', 'HostKeyEntry', 'link-16');">HostKeyEntry</a></tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-name">hostname</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">val</tt><tt class="py-op">)</tt> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_entries</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">)</tt> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_hostkeys</tt><tt class="py-op">.</tt><tt class="py-name">_entries</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"> <tt class="py-keyword">def</tt> <tt class="py-def-name">keys</tt><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-op">[</tt><tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">key</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name"><a title="paramiko.AgentKey.get_name
-paramiko.Channel.get_name
-paramiko.DSSKey.get_name
-paramiko.PKey.get_name
-paramiko.RSAKey.get_name" class="py-name" href="#" onclick="return doclink('link-29', 'get_name', 'link-12');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-keyword">for</tt> <tt class="py-name">e</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_entries</tt> <tt class="py-keyword">if</tt> <tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">key</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">]</tt> </tt>
-</div></div><a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"> </tt>
-<a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"> <tt class="py-name">entries</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L222"></a><tt class="py-lineno">222</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">e</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_entries</tt><tt class="py-op">:</tt> </tt>
-<a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">h</tt> <tt class="py-keyword">in</tt> <tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">hostnames</tt><tt class="py-op">:</tt> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">h</tt><tt class="py-op">.</tt><tt class="py-name">startswith</tt><tt class="py-op">(</tt><tt class="py-string">'|1|'</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name" targets="Static Method paramiko.HostKeys.hash_host()=paramiko.HostKeys-class.html#hash_host"><a title="paramiko.HostKeys.hash_host" class="py-name" href="#" onclick="return doclink('link-30', 'hash_host', 'link-30');">hash_host</a></tt><tt class="py-op">(</tt><tt class="py-name">hostname</tt><tt class="py-op">,</tt> <tt class="py-name">h</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">h</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">h</tt> <tt class="py-op">==</tt> <tt class="py-name">hostname</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"> <tt class="py-name">entries</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">)</tt> </tt>
-<a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">entries</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">SubDict</tt><tt class="py-op">(</tt><tt class="py-name">hostname</tt><tt class="py-op">,</tt> <tt class="py-name">entries</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L229"></a><tt class="py-lineno">229</tt> <tt class="py-line"> </tt>
-<a name="HostKeys.check"></a><div id="HostKeys.check-def"><a name="L230"></a><tt class="py-lineno">230</tt> <a class="py-toggle" href="#" id="HostKeys.check-toggle" onclick="return toggle('HostKeys.check');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.hostkeys.HostKeys-class.html#check">check</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">hostname</tt><tt class="py-op">,</tt> <tt class="py-param">key</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HostKeys.check-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="HostKeys.check-expanded"><a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"><tt class="py-docstring"> Return True if the given key is associated with the given hostname</tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"><tt class="py-docstring"> in this dictionary.</tt> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"><tt class="py-docstring"> @param hostname: hostname (or IP) of the SSH server</tt> </tt>
-<a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"><tt class="py-docstring"> @type hostname: str</tt> </tt>
-<a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"><tt class="py-docstring"> @param key: the key to check</tt> </tt>
-<a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"><tt class="py-docstring"> @type key: L{PKey}</tt> </tt>
-<a name="L239"></a><tt class="py-lineno">239</tt> <tt class="py-line"><tt class="py-docstring"> @return: C{True} if the key is associated with the hostname; C{False}</tt> </tt>
-<a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"><tt class="py-docstring"> if not</tt> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: bool</tt> </tt>
-<a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L243"></a><tt class="py-lineno">243</tt> <tt class="py-line"> <tt class="py-name">k</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name" targets="Method paramiko.HostKeys.lookup()=paramiko.HostKeys-class.html#lookup,Method paramiko.SSHConfig.lookup()=paramiko.SSHConfig-class.html#lookup"><a title="paramiko.HostKeys.lookup
-paramiko.SSHConfig.lookup" class="py-name" href="#" onclick="return doclink('link-31', 'lookup', 'link-31');">lookup</a></tt><tt class="py-op">(</tt><tt class="py-name">hostname</tt><tt class="py-op">)</tt> </tt>
-<a name="L244"></a><tt class="py-lineno">244</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">k</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L245"></a><tt class="py-lineno">245</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">False</tt> </tt>
-<a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"> <tt class="py-name">host_key</tt> <tt class="py-op">=</tt> <tt class="py-name">k</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name" targets="Method paramiko.SFTPClient.get()=paramiko.SFTPClient-class.html#get,Method paramiko.transport.ChannelMap.get()=paramiko.transport.ChannelMap-class.html#get"><a title="paramiko.SFTPClient.get
-paramiko.transport.ChannelMap.get" class="py-name" href="#" onclick="return doclink('link-32', 'get', 'link-32');">get</a></tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name"><a title="paramiko.AgentKey.get_name
-paramiko.Channel.get_name
-paramiko.DSSKey.get_name
-paramiko.PKey.get_name
-paramiko.RSAKey.get_name" class="py-name" href="#" onclick="return doclink('link-33', 'get_name', 'link-12');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> </tt>
-<a name="L247"></a><tt class="py-lineno">247</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">host_key</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L248"></a><tt class="py-lineno">248</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">False</tt> </tt>
-<a name="L249"></a><tt class="py-lineno">249</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">host_key</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L250"></a><tt class="py-lineno">250</tt> <tt class="py-line"> </tt>
-<a name="HostKeys.clear"></a><div id="HostKeys.clear-def"><a name="L251"></a><tt class="py-lineno">251</tt> <a class="py-toggle" href="#" id="HostKeys.clear-toggle" onclick="return toggle('HostKeys.clear');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.hostkeys.HostKeys-class.html#clear">clear</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HostKeys.clear-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="HostKeys.clear-expanded"><a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt> <tt class="py-line"><tt class="py-docstring"> Remove all host keys from the dictionary.</tt> </tt>
-<a name="L254"></a><tt class="py-lineno">254</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L255"></a><tt class="py-lineno">255</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_entries</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-</div><a name="L256"></a><tt class="py-lineno">256</tt> <tt class="py-line"> </tt>
-<a name="HostKeys.__getitem__"></a><div id="HostKeys.__getitem__-def"><a name="L257"></a><tt class="py-lineno">257</tt> <a class="py-toggle" href="#" id="HostKeys.__getitem__-toggle" onclick="return toggle('HostKeys.__getitem__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.hostkeys.HostKeys-class.html#__getitem__">__getitem__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">key</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HostKeys.__getitem__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="HostKeys.__getitem__-expanded"><a name="L258"></a><tt class="py-lineno">258</tt> <tt class="py-line"> <tt class="py-name">ret</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="paramiko.HostKeys.lookup
-paramiko.SSHConfig.lookup" class="py-name" href="#" onclick="return doclink('link-34', 'lookup', 'link-31');">lookup</a></tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">)</tt> </tt>
-<a name="L259"></a><tt class="py-lineno">259</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ret</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">KeyError</tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">)</tt> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">ret</tt> </tt>
-</div><a name="L262"></a><tt class="py-lineno">262</tt> <tt class="py-line"> </tt>
-<a name="HostKeys.__setitem__"></a><div id="HostKeys.__setitem__-def"><a name="L263"></a><tt class="py-lineno">263</tt> <a class="py-toggle" href="#" id="HostKeys.__setitem__-toggle" onclick="return toggle('HostKeys.__setitem__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.hostkeys.HostKeys-class.html#__setitem__">__setitem__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">hostname</tt><tt class="py-op">,</tt> <tt class="py-param">entry</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HostKeys.__setitem__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="HostKeys.__setitem__-expanded"><a name="L264"></a><tt class="py-lineno">264</tt> <tt class="py-line"> <tt class="py-comment"># don't use this please.</tt> </tt>
-<a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">entry</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L266"></a><tt class="py-lineno">266</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_entries</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt id="link-35" class="py-name"><a title="paramiko.hostkeys.HostKeyEntry" class="py-name" href="#" onclick="return doclink('link-35', 'HostKeyEntry', 'link-16');">HostKeyEntry</a></tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-name">hostname</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L268"></a><tt class="py-lineno">268</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key_type</tt> <tt class="py-keyword">in</tt> <tt class="py-name">entry</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name" targets="Method paramiko.HostKeys.keys()=paramiko.HostKeys-class.html#keys"><a title="paramiko.HostKeys.keys" class="py-name" href="#" onclick="return doclink('link-36', 'keys', 'link-36');">keys</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L269"></a><tt class="py-lineno">269</tt> <tt class="py-line"> <tt class="py-name">found</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L270"></a><tt class="py-lineno">270</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">e</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_entries</tt><tt class="py-op">:</tt> </tt>
-<a name="L271"></a><tt class="py-lineno">271</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">hostname</tt> <tt class="py-keyword">in</tt> <tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">hostnames</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">key</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name"><a title="paramiko.AgentKey.get_name
-paramiko.Channel.get_name
-paramiko.DSSKey.get_name
-paramiko.PKey.get_name
-paramiko.RSAKey.get_name" class="py-name" href="#" onclick="return doclink('link-37', 'get_name', 'link-12');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">key_type</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"> <tt class="py-comment"># replace</tt> </tt>
-<a name="L273"></a><tt class="py-lineno">273</tt> <tt class="py-line"> <tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">key</tt> <tt class="py-op">=</tt> <tt class="py-name">entry</tt><tt class="py-op">[</tt><tt class="py-name">key_type</tt><tt class="py-op">]</tt> </tt>
-<a name="L274"></a><tt class="py-lineno">274</tt> <tt class="py-line"> <tt class="py-name">found</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">found</tt><tt class="py-op">:</tt> </tt>
-<a name="L276"></a><tt class="py-lineno">276</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_entries</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt id="link-38" class="py-name"><a title="paramiko.hostkeys.HostKeyEntry" class="py-name" href="#" onclick="return doclink('link-38', 'HostKeyEntry', 'link-16');">HostKeyEntry</a></tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-name">hostname</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">entry</tt><tt class="py-op">[</tt><tt class="py-name">key_type</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L277"></a><tt class="py-lineno">277</tt> <tt class="py-line"> </tt>
-<a name="HostKeys.keys"></a><div id="HostKeys.keys-def"><a name="L278"></a><tt class="py-lineno">278</tt> <a class="py-toggle" href="#" id="HostKeys.keys-toggle" onclick="return toggle('HostKeys.keys');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.hostkeys.HostKeys-class.html#keys">keys</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HostKeys.keys-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="HostKeys.keys-expanded"><a name="L279"></a><tt class="py-lineno">279</tt> <tt class="py-line"> <tt class="py-comment"># python 2.4 sets would be nice here.</tt> </tt>
-<a name="L280"></a><tt class="py-lineno">280</tt> <tt class="py-line"> <tt class="py-name">ret</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L281"></a><tt class="py-lineno">281</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">e</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_entries</tt><tt class="py-op">:</tt> </tt>
-<a name="L282"></a><tt class="py-lineno">282</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">h</tt> <tt class="py-keyword">in</tt> <tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">hostnames</tt><tt class="py-op">:</tt> </tt>
-<a name="L283"></a><tt class="py-lineno">283</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">h</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">ret</tt><tt class="py-op">:</tt> </tt>
-<a name="L284"></a><tt class="py-lineno">284</tt> <tt class="py-line"> <tt class="py-name">ret</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">h</tt><tt class="py-op">)</tt> </tt>
-<a name="L285"></a><tt class="py-lineno">285</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">ret</tt> </tt>
-</div><a name="L286"></a><tt class="py-lineno">286</tt> <tt class="py-line"> </tt>
-<a name="HostKeys.values"></a><div id="HostKeys.values-def"><a name="L287"></a><tt class="py-lineno">287</tt> <a class="py-toggle" href="#" id="HostKeys.values-toggle" onclick="return toggle('HostKeys.values');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.hostkeys.HostKeys-class.html#values">values</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HostKeys.values-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="HostKeys.values-expanded"><a name="L288"></a><tt class="py-lineno">288</tt> <tt class="py-line"> <tt class="py-name">ret</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L289"></a><tt class="py-lineno">289</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">k</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="paramiko.HostKeys.keys" class="py-name" href="#" onclick="return doclink('link-39', 'keys', 'link-36');">keys</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L290"></a><tt class="py-lineno">290</tt> <tt class="py-line"> <tt class="py-name">ret</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name"><a title="paramiko.HostKeys.lookup
-paramiko.SSHConfig.lookup" class="py-name" href="#" onclick="return doclink('link-40', 'lookup', 'link-31');">lookup</a></tt><tt class="py-op">(</tt><tt class="py-name">k</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L291"></a><tt class="py-lineno">291</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">ret</tt> </tt>
-</div><a name="L292"></a><tt class="py-lineno">292</tt> <tt class="py-line"> </tt>
-<a name="HostKeys.hash_host"></a><div id="HostKeys.hash_host-def"><a name="L293"></a><tt class="py-lineno">293</tt> <a class="py-toggle" href="#" id="HostKeys.hash_host-toggle" onclick="return toggle('HostKeys.hash_host');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.hostkeys.HostKeys-class.html#hash_host">hash_host</a><tt class="py-op">(</tt><tt class="py-param">hostname</tt><tt class="py-op">,</tt> <tt class="py-param">salt</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="HostKeys.hash_host-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="HostKeys.hash_host-expanded"><a name="L294"></a><tt class="py-lineno">294</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L295"></a><tt class="py-lineno">295</tt> <tt class="py-line"><tt class="py-docstring"> Return a "hashed" form of the hostname, as used by openssh when storing</tt> </tt>
-<a name="L296"></a><tt class="py-lineno">296</tt> <tt class="py-line"><tt class="py-docstring"> hashed hostnames in the known_hosts file.</tt> </tt>
-<a name="L297"></a><tt class="py-lineno">297</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L298"></a><tt class="py-lineno">298</tt> <tt class="py-line"><tt class="py-docstring"> @param hostname: the hostname to hash</tt> </tt>
-<a name="L299"></a><tt class="py-lineno">299</tt> <tt class="py-line"><tt class="py-docstring"> @type hostname: str</tt> </tt>
-<a name="L300"></a><tt class="py-lineno">300</tt> <tt class="py-line"><tt class="py-docstring"> @param salt: optional salt to use when hashing (must be 20 bytes long)</tt> </tt>
-<a name="L301"></a><tt class="py-lineno">301</tt> <tt class="py-line"><tt class="py-docstring"> @type salt: str</tt> </tt>
-<a name="L302"></a><tt class="py-lineno">302</tt> <tt class="py-line"><tt class="py-docstring"> @return: the hashed hostname</tt> </tt>
-<a name="L303"></a><tt class="py-lineno">303</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: str</tt> </tt>
-<a name="L304"></a><tt class="py-lineno">304</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L305"></a><tt class="py-lineno">305</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">salt</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L306"></a><tt class="py-lineno">306</tt> <tt class="py-line"> <tt class="py-name">salt</tt> <tt class="py-op">=</tt> <tt id="link-41" class="py-name" targets="Variable paramiko.auth_handler.rng=paramiko.auth_handler-module.html#rng,Variable paramiko.channel.rng=paramiko.channel-module.html#rng,Variable paramiko.client.rng=paramiko.client-module.html#rng,Variable paramiko.common.rng=paramiko.common-module.html#rng,Variable paramiko.dsskey.rng=paramiko.dsskey-module.html#rng,Variable paramiko.hostkeys.rng=paramiko.hostkeys-module.html#rng,Variable paramiko.kex_gex.rng=paramiko.kex_gex-module.html#rng,Variable paramiko.kex_group1.rng=paramiko.kex_group1-module.html#rng,Variable paramiko.packet.rng=paramiko.packet-module.html#rng,Variable paramiko.pkey.rng=paramiko.pkey-module.html#rng,Variable paramiko.rsakey.rng=paramiko.rsakey-module.html#rng,Variable paramiko.server.rng=paramiko.server-module.html#rng,Variable paramiko.sftp.rng=paramiko.sftp-module.html#rng,Variable paramiko.sftp_attr.rng=paramiko.sftp_attr-module.html#rng,Variable paramiko.sftp_client.rng=paramiko.sftp_client-module.html#rng,Variable paramiko.sftp_file.rng=paramiko.sftp_file-module.html#rng,Variable paramiko.sftp_handle.rng=paramiko.sftp_handle-module.html#rng,Variable paramiko.sftp_server.rng=paramiko.sftp_server-module.html#rng,Variable paramiko.sftp_si.rng=paramiko.sftp_si-module.html#rng,Variable paramiko.transport.rng=paramiko.transport-module.html#rng,Variable paramiko.util.rng=paramiko.util-module.html#rng"><a title="paramiko.auth_handler.rng
-paramiko.channel.rng
-paramiko.client.rng
-paramiko.common.rng
-paramiko.dsskey.rng
-paramiko.hostkeys.rng
-paramiko.kex_gex.rng
-paramiko.kex_group1.rng
-paramiko.packet.rng
-paramiko.pkey.rng
-paramiko.rsakey.rng
-paramiko.server.rng
-paramiko.sftp.rng
-paramiko.sftp_attr.rng
-paramiko.sftp_client.rng
-paramiko.sftp_file.rng
-paramiko.sftp_handle.rng
-paramiko.sftp_server.rng
-paramiko.sftp_si.rng
-paramiko.transport.rng
-paramiko.util.rng" class="py-name" href="#" onclick="return doclink('link-41', 'rng', 'link-41');">rng</a></tt><tt class="py-op">.</tt><tt id="link-42" class="py-name" targets="Method paramiko.BufferedFile.read()=paramiko.BufferedFile-class.html#read,Method paramiko.SFTPHandle.read()=paramiko.SFTPHandle-class.html#read,Method paramiko.buffered_pipe.BufferedPipe.read()=paramiko.buffered_pipe.BufferedPipe-class.html#read"><a title="paramiko.BufferedFile.read
-paramiko.SFTPHandle.read
-paramiko.buffered_pipe.BufferedPipe.read" class="py-name" href="#" onclick="return doclink('link-42', 'read', 'link-42');">read</a></tt><tt class="py-op">(</tt><tt class="py-name">SHA</tt><tt class="py-op">.</tt><tt class="py-name">digest_size</tt><tt class="py-op">)</tt> </tt>
-<a name="L307"></a><tt class="py-lineno">307</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L308"></a><tt class="py-lineno">308</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">salt</tt><tt class="py-op">.</tt><tt class="py-name">startswith</tt><tt class="py-op">(</tt><tt class="py-string">'|1|'</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L309"></a><tt class="py-lineno">309</tt> <tt class="py-line"> <tt class="py-name">salt</tt> <tt class="py-op">=</tt> <tt class="py-name">salt</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">'|'</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">2</tt><tt class="py-op">]</tt> </tt>
-<a name="L310"></a><tt class="py-lineno">310</tt> <tt class="py-line"> <tt class="py-name">salt</tt> <tt class="py-op">=</tt> <tt class="py-name">base64</tt><tt class="py-op">.</tt><tt class="py-name">decodestring</tt><tt class="py-op">(</tt><tt class="py-name">salt</tt><tt class="py-op">)</tt> </tt>
-<a name="L311"></a><tt class="py-lineno">311</tt> <tt class="py-line"> <tt class="py-keyword">assert</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">salt</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">SHA</tt><tt class="py-op">.</tt><tt class="py-name">digest_size</tt> </tt>
-<a name="L312"></a><tt class="py-lineno">312</tt> <tt class="py-line"> <tt class="py-name">hmac</tt> <tt class="py-op">=</tt> <tt class="py-name">HMAC</tt><tt class="py-op">.</tt><tt class="py-name">HMAC</tt><tt class="py-op">(</tt><tt class="py-name">salt</tt><tt class="py-op">,</tt> <tt class="py-name">hostname</tt><tt class="py-op">,</tt> <tt class="py-name">SHA</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">digest</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L313"></a><tt class="py-lineno">313</tt> <tt class="py-line"> <tt class="py-name">hostkey</tt> <tt class="py-op">=</tt> <tt class="py-string">'|1|%s|%s'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">base64</tt><tt class="py-op">.</tt><tt class="py-name">encodestring</tt><tt class="py-op">(</tt><tt class="py-name">salt</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">base64</tt><tt class="py-op">.</tt><tt class="py-name">encodestring</tt><tt class="py-op">(</tt><tt class="py-name">hmac</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L314"></a><tt class="py-lineno">314</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">hostkey</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">'\n'</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L315"></a><tt class="py-lineno">315</tt> <tt class="py-line"> <tt id="link-43" class="py-name"><a title="paramiko.HostKeys.hash_host" class="py-name" href="#" onclick="return doclink('link-43', 'hash_host', 'link-30');">hash_host</a></tt> <tt class="py-op">=</tt> <tt class="py-name">staticmethod</tt><tt class="py-op">(</tt><tt id="link-44" class="py-name"><a title="paramiko.HostKeys.hash_host" class="py-name" href="#" onclick="return doclink('link-44', 'hash_host', 'link-30');">hash_host</a></tt><tt class="py-op">)</tt> </tt>
-</div><a name="L316"></a><tt class="py-lineno">316</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:04 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.hostkeys.HostKeyEntry-class.html b/docs/paramiko.hostkeys.HostKeyEntry-class.html
deleted file mode 100644
index 584888c..0000000
--- a/docs/paramiko.hostkeys.HostKeyEntry-class.html
+++ /dev/null
@@ -1,255 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.hostkeys.HostKeyEntry</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- <a href="paramiko.hostkeys-module.html" onclick="show_private();">Module&nbsp;hostkeys</a> ::
- Class&nbsp;HostKeyEntry
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.hostkeys.HostKeyEntry-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class HostKeyEntry</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.hostkeys-pysrc.html#HostKeyEntry">source&nbsp;code</a></span></p>
-<p>Representation of a line in an OpenSSH-style &quot;known hosts&quot;
- file.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">hostnames</span>=<span class="summary-sig-default">None</span>,
- <span class="summary-sig-arg">key</span>=<span class="summary-sig-default">None</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.hostkeys-pysrc.html#HostKeyEntry.__init__">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.hostkeys.HostKeyEntry-class.html#to_line" class="summary-sig-name">to_line</a>(<span class="summary-sig-arg">self</span>)</span><br />
- Returns a string in OpenSSH known_hosts file format, or None if the
- object is not in a valid state.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.hostkeys-pysrc.html#HostKeyEntry.to_line">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__repr__"></a><span class="summary-sig-name">__repr__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.hostkeys-pysrc.html#HostKeyEntry.__repr__">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS METHODS ==================== -->
-<a name="section-ClassMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Class Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.hostkeys.HostKeyEntry-class.html#from_line" class="summary-sig-name">from_line</a>(<span class="summary-sig-arg">cls</span>,
- <span class="summary-sig-arg">line</span>)</span><br />
- Parses the given line of text to find the names for the host, the
- type of key, and the key data.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.hostkeys-pysrc.html#HostKeyEntry.from_line">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="from_line"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">from_line</span>(<span class="sig-arg">cls</span>,
- <span class="sig-arg">line</span>)</span>
- <br /><em class="fname">Class Method</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.hostkeys-pysrc.html#HostKeyEntry.from_line">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Parses the given line of text to find the names for the host, the type
- of key, and the key data. The line is expected to be in the format used
- by the openssh known_hosts file.</p>
- <p>Lines are expected to not have leading or trailing whitespace. We
- don't bother to check for comments or empty lines. All of that should be
- taken care of before sending the line to us.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>line</code></strong> (str) - a line from an OpenSSH known_hosts file</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="to_line"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">to_line</span>(<span class="sig-arg">self</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.hostkeys-pysrc.html#HostKeyEntry.to_line">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Returns a string in OpenSSH known_hosts file format, or None if the
- object is not in a valid state. A trailing newline is included.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:04 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.kex_gex-module.html b/docs/paramiko.kex_gex-module.html
deleted file mode 100644
index 345acc1..0000000
--- a/docs/paramiko.kex_gex-module.html
+++ /dev/null
@@ -1,550 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.kex_gex</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;kex_gex
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.kex_gex-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module kex_gex</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.kex_gex-pysrc.html">source&nbsp;code</a></span></p>
-<p>Variant on <a href="paramiko.kex_group1.KexGroup1-class.html"
- class="link">KexGroup1</a> where the prime &quot;p&quot; and generator
- &quot;g&quot; are provided by the server. A bit more work is required on
- the client side, and a <b>lot</b> more on the server side.</p>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Classes</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.kex_gex.KexGex-class.html" class="summary-name">KexGex</a>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_FAILED"></a><span class="summary-name">AUTH_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_PARTIALLY_SUCCESSFUL"></a><span class="summary-name">AUTH_PARTIALLY_SUCCESSFUL</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_SUCCESSFUL"></a><span class="summary-name">AUTH_SUCCESSFUL</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.kex_gex-module.html#CONNECTION_FAILED_CODE" class="summary-name">CONNECTION_FAILED_CODE</a> = <code title="{1: 'Administratively prohibited',
- 2: 'Connect failed',
- 3: 'Unknown channel type',
- 4: 'Resource shortage'}"><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">:</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CRITICAL"></a><span class="summary-name">CRITICAL</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DEBUG"></a><span class="summary-name">DEBUG</span> = <code title="10">10</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_AUTH_CANCELLED_BY_USER"></a><span class="summary-name">DISCONNECT_AUTH_CANCELLED_BY_USER</span> = <code title="13">13</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE"></a><span class="summary-name">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</span> = <code title="14">14</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_SERVICE_NOT_AVAILABLE"></a><span class="summary-name">DISCONNECT_SERVICE_NOT_AVAILABLE</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="ERROR"></a><span class="summary-name">ERROR</span> = <code title="40">40</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="INFO"></a><span class="summary-name">INFO</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_CLOSE"></a><span class="summary-name">MSG_CHANNEL_CLOSE</span> = <code title="97">97</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_DATA"></a><span class="summary-name">MSG_CHANNEL_DATA</span> = <code title="94">94</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EOF"></a><span class="summary-name">MSG_CHANNEL_EOF</span> = <code title="96">96</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EXTENDED_DATA"></a><span class="summary-name">MSG_CHANNEL_EXTENDED_DATA</span> = <code title="95">95</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_FAILURE"></a><span class="summary-name">MSG_CHANNEL_FAILURE</span> = <code title="100">100</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN"></a><span class="summary-name">MSG_CHANNEL_OPEN</span> = <code title="90">90</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_FAILURE"></a><span class="summary-name">MSG_CHANNEL_OPEN_FAILURE</span> = <code title="92">92</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_OPEN_SUCCESS</span> = <code title="91">91</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_REQUEST"></a><span class="summary-name">MSG_CHANNEL_REQUEST</span> = <code title="98">98</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_SUCCESS</span> = <code title="99">99</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_WINDOW_ADJUST"></a><span class="summary-name">MSG_CHANNEL_WINDOW_ADJUST</span> = <code title="93">93</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DEBUG"></a><span class="summary-name">MSG_DEBUG</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DISCONNECT"></a><span class="summary-name">MSG_DISCONNECT</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_GLOBAL_REQUEST"></a><span class="summary-name">MSG_GLOBAL_REQUEST</span> = <code title="80">80</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_IGNORE"></a><span class="summary-name">MSG_IGNORE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_KEXINIT"></a><span class="summary-name">MSG_KEXINIT</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.kex_gex-module.html#MSG_NAMES" class="summary-name">MSG_NAMES</a> = <code title="{1: 'disconnect',
- 2: 'ignore',
- 3: 'unimplemented',
- 4: 'debug',
- 5: 'service-request',
- 6: 'service-accept',
- 20: 'kexinit',
- 21: 'newkeys',
-..."><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">, </code>3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_NEWKEYS"></a><span class="summary-name">MSG_NEWKEYS</span> = <code title="21">21</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_FAILURE"></a><span class="summary-name">MSG_REQUEST_FAILURE</span> = <code title="82">82</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_SUCCESS"></a><span class="summary-name">MSG_REQUEST_SUCCESS</span> = <code title="81">81</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_ACCEPT"></a><span class="summary-name">MSG_SERVICE_ACCEPT</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_REQUEST"></a><span class="summary-name">MSG_SERVICE_REQUEST</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_UNIMPLEMENTED"></a><span class="summary-name">MSG_UNIMPLEMENTED</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_BANNER"></a><span class="summary-name">MSG_USERAUTH_BANNER</span> = <code title="53">53</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_FAILURE"></a><span class="summary-name">MSG_USERAUTH_FAILURE</span> = <code title="51">51</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_REQUEST"></a><span class="summary-name">MSG_USERAUTH_INFO_REQUEST</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_RESPONSE"></a><span class="summary-name">MSG_USERAUTH_INFO_RESPONSE</span> = <code title="61">61</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_PK_OK"></a><span class="summary-name">MSG_USERAUTH_PK_OK</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_REQUEST"></a><span class="summary-name">MSG_USERAUTH_REQUEST</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_SUCCESS"></a><span class="summary-name">MSG_USERAUTH_SUCCESS</span> = <code title="52">52</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED"></a><span class="summary-name">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_CONNECT_FAILED"></a><span class="summary-name">OPEN_FAILED_CONNECT_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_RESOURCE_SHORTAGE"></a><span class="summary-name">OPEN_FAILED_RESOURCE_SHORTAGE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_UNKNOWN_CHANNEL_TYPE"></a><span class="summary-name">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_SUCCEEDED"></a><span class="summary-name">OPEN_SUCCEEDED</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="PY22"></a><span class="summary-name">PY22</span> = <code title="False">False</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="WARNING"></a><span class="summary-name">WARNING</span> = <code title="30">30</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'paramiko'"><code class="variable-quote">'</code><code class="variable-string">paramiko</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="rng"></a><span class="summary-name">rng</span> = <code title="Random.new()">Random.new()</code>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES DETAILS ==================== -->
-<a name="section-VariablesDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables Details</span></td>
-</tr>
-</table>
-<a name="CONNECTION_FAILED_CODE"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">CONNECTION_FAILED_CODE</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Connect failed</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Unknown channel type</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Resource shortage</code><code class="variable-quote">'</code><code class="variable-group">}</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="MSG_NAMES"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">MSG_NAMES</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">debug</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 5<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-request</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 6<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-accept</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 20<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">kexinit</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 21<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">newkeys</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:02 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.kex_gex-pysrc.html b/docs/paramiko.kex_gex-pysrc.html
deleted file mode 100644
index 82f065e..0000000
--- a/docs/paramiko.kex_gex-pysrc.html
+++ /dev/null
@@ -1,463 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.kex_gex</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;kex_gex
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.kex_gex-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.kex_gex-module.html" onclick="show_private();">Module paramiko.kex_gex</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2003-2007 Robey Pointer &lt;robeypointer@gmail.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring">Variant on L{KexGroup1 &lt;paramiko.kex_group1.KexGroup1&gt;} where the prime "p" and</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">generator "g" are provided by the server. A bit more work is required on the</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-docstring">client side, and a B{lot} more on the server side.</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">Crypto</tt><tt class="py-op">.</tt><tt class="py-name">Hash</tt> <tt class="py-keyword">import</tt> <tt class="py-name">SHA</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">Crypto</tt><tt class="py-op">.</tt><tt class="py-name">Util</tt> <tt class="py-keyword">import</tt> <tt class="py-name">number</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package paramiko=paramiko-module.html"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-0', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Module paramiko.common=paramiko.common-module.html"><a title="paramiko.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt> <tt class="py-keyword">import</tt> <tt class="py-op">*</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-2" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-2', 'paramiko', 'link-0');">paramiko</a></tt> <tt class="py-keyword">import</tt> <tt id="link-3" class="py-name" targets="Module paramiko.util=paramiko.util-module.html"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-3', 'util', 'link-3');">util</a></tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-4" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-4', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Module paramiko.message=paramiko.message-module.html"><a title="paramiko.message" class="py-name" href="#" onclick="return doclink('link-5', 'message', 'link-5');">message</a></tt> <tt class="py-keyword">import</tt> <tt id="link-6" class="py-name" targets="Class paramiko.Message=paramiko.Message-class.html"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-6', 'Message', 'link-6');">Message</a></tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-7" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-7', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Module paramiko.ssh_exception=paramiko.ssh_exception-module.html"><a title="paramiko.ssh_exception" class="py-name" href="#" onclick="return doclink('link-8', 'ssh_exception', 'link-8');">ssh_exception</a></tt> <tt class="py-keyword">import</tt> <tt id="link-9" class="py-name" targets="Class paramiko.SSHException=paramiko.SSHException-class.html"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-9', 'SSHException', 'link-9');">SSHException</a></tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"><tt id="link-10" class="py-name" targets="Variable paramiko.kex_gex._MSG_KEXDH_GEX_REQUEST_OLD=paramiko.kex_gex-module.html#_MSG_KEXDH_GEX_REQUEST_OLD"><a title="paramiko.kex_gex._MSG_KEXDH_GEX_REQUEST_OLD" class="py-name" href="#" onclick="return doclink('link-10', '_MSG_KEXDH_GEX_REQUEST_OLD', 'link-10');">_MSG_KEXDH_GEX_REQUEST_OLD</a></tt><tt class="py-op">,</tt> <tt id="link-11" class="py-name" targets="Variable paramiko.kex_gex._MSG_KEXDH_GEX_GROUP=paramiko.kex_gex-module.html#_MSG_KEXDH_GEX_GROUP"><a title="paramiko.kex_gex._MSG_KEXDH_GEX_GROUP" class="py-name" href="#" onclick="return doclink('link-11', '_MSG_KEXDH_GEX_GROUP', 'link-11');">_MSG_KEXDH_GEX_GROUP</a></tt><tt class="py-op">,</tt> <tt id="link-12" class="py-name" targets="Variable paramiko.kex_gex._MSG_KEXDH_GEX_INIT=paramiko.kex_gex-module.html#_MSG_KEXDH_GEX_INIT"><a title="paramiko.kex_gex._MSG_KEXDH_GEX_INIT" class="py-name" href="#" onclick="return doclink('link-12', '_MSG_KEXDH_GEX_INIT', 'link-12');">_MSG_KEXDH_GEX_INIT</a></tt><tt class="py-op">,</tt> \ </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> <tt id="link-13" class="py-name" targets="Variable paramiko.kex_gex._MSG_KEXDH_GEX_REPLY=paramiko.kex_gex-module.html#_MSG_KEXDH_GEX_REPLY"><a title="paramiko.kex_gex._MSG_KEXDH_GEX_REPLY" class="py-name" href="#" onclick="return doclink('link-13', '_MSG_KEXDH_GEX_REPLY', 'link-13');">_MSG_KEXDH_GEX_REPLY</a></tt><tt class="py-op">,</tt> <tt id="link-14" class="py-name" targets="Variable paramiko.kex_gex._MSG_KEXDH_GEX_REQUEST=paramiko.kex_gex-module.html#_MSG_KEXDH_GEX_REQUEST"><a title="paramiko.kex_gex._MSG_KEXDH_GEX_REQUEST" class="py-name" href="#" onclick="return doclink('link-14', '_MSG_KEXDH_GEX_REQUEST', 'link-14');">_MSG_KEXDH_GEX_REQUEST</a></tt> <tt class="py-op">=</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">30</tt><tt class="py-op">,</tt> <tt class="py-number">35</tt><tt class="py-op">)</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> </tt>
-<a name="KexGex"></a><div id="KexGex-def"><a name="L38"></a><tt class="py-lineno"> 38</tt> <a class="py-toggle" href="#" id="KexGex-toggle" onclick="return toggle('KexGex');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.kex_gex.KexGex-class.html">KexGex</a> <tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="KexGex-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="KexGex-expanded"><a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt id="link-15" class="py-name" targets="Variable paramiko.kex_gex.KexGex.name=paramiko.kex_gex.KexGex-class.html#name,Variable paramiko.kex_group1.KexGroup1.name=paramiko.kex_group1.KexGroup1-class.html#name"><a title="paramiko.kex_gex.KexGex.name
-paramiko.kex_group1.KexGroup1.name" class="py-name" href="#" onclick="return doclink('link-15', 'name', 'link-15');">name</a></tt> <tt class="py-op">=</tt> <tt class="py-string">'diffie-hellman-group-exchange-sha1'</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt id="link-16" class="py-name" targets="Variable paramiko.kex_gex.KexGex.min_bits=paramiko.kex_gex.KexGex-class.html#min_bits"><a title="paramiko.kex_gex.KexGex.min_bits" class="py-name" href="#" onclick="return doclink('link-16', 'min_bits', 'link-16');">min_bits</a></tt> <tt class="py-op">=</tt> <tt class="py-number">1024</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt id="link-17" class="py-name" targets="Variable paramiko.kex_gex.KexGex.max_bits=paramiko.kex_gex.KexGex-class.html#max_bits"><a title="paramiko.kex_gex.KexGex.max_bits" class="py-name" href="#" onclick="return doclink('link-17', 'max_bits', 'link-17');">max_bits</a></tt> <tt class="py-op">=</tt> <tt class="py-number">8192</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt id="link-18" class="py-name" targets="Variable paramiko.kex_gex.KexGex.preferred_bits=paramiko.kex_gex.KexGex-class.html#preferred_bits"><a title="paramiko.kex_gex.KexGex.preferred_bits" class="py-name" href="#" onclick="return doclink('link-18', 'preferred_bits', 'link-18');">preferred_bits</a></tt> <tt class="py-op">=</tt> <tt class="py-number">2048</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> </tt>
-<a name="KexGex.__init__"></a><div id="KexGex.__init__-def"><a name="L45"></a><tt class="py-lineno"> 45</tt> <a class="py-toggle" href="#" id="KexGex.__init__-toggle" onclick="return toggle('KexGex.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.kex_gex.KexGex-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">transport</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="KexGex.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="KexGex.__init__-expanded"><a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name" targets="Module paramiko.transport=paramiko.transport-module.html"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-19', 'transport', 'link-19');">transport</a></tt> <tt class="py-op">=</tt> <tt id="link-20" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-20', 'transport', 'link-19');">transport</a></tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">p</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">q</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">g</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">x</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">e</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">f</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">old_style</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-</div><a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> </tt>
-<a name="KexGex.start_kex"></a><div id="KexGex.start_kex-def"><a name="L55"></a><tt class="py-lineno"> 55</tt> <a class="py-toggle" href="#" id="KexGex.start_kex-toggle" onclick="return toggle('KexGex.start_kex');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.kex_gex.KexGex-class.html#start_kex">start_kex</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">_test_old_style</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="KexGex.start_kex-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="KexGex.start_kex-expanded"><a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-21', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">server_mode</tt><tt class="py-op">:</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-22', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_expect_packet</tt><tt class="py-op">(</tt><tt id="link-23" class="py-name"><a title="paramiko.kex_gex._MSG_KEXDH_GEX_REQUEST" class="py-name" href="#" onclick="return doclink('link-23', '_MSG_KEXDH_GEX_REQUEST', 'link-14');">_MSG_KEXDH_GEX_REQUEST</a></tt><tt class="py-op">,</tt> <tt id="link-24" class="py-name"><a title="paramiko.kex_gex._MSG_KEXDH_GEX_REQUEST_OLD" class="py-name" href="#" onclick="return doclink('link-24', '_MSG_KEXDH_GEX_REQUEST_OLD', 'link-10');">_MSG_KEXDH_GEX_REQUEST_OLD</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-comment"># request a bit range: we accept (min_bits) to (max_bits), but prefer</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-comment"># (preferred_bits). according to the spec, we shouldn't pull the</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-comment"># minimum up above 1024.</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-25" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-25', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">_test_old_style</tt><tt class="py-op">:</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-comment"># only used for unit tests: we shouldn't ever send this</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name" targets="Method paramiko.Message.add_byte()=paramiko.Message-class.html#add_byte"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-26', 'add_byte', 'link-26');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-27" class="py-name"><a title="paramiko.kex_gex._MSG_KEXDH_GEX_REQUEST_OLD" class="py-name" href="#" onclick="return doclink('link-27', '_MSG_KEXDH_GEX_REQUEST_OLD', 'link-10');">_MSG_KEXDH_GEX_REQUEST_OLD</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name" targets="Method paramiko.Message.add_int()=paramiko.Message-class.html#add_int"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-28', 'add_int', 'link-28');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name"><a title="paramiko.kex_gex.KexGex.preferred_bits" class="py-name" href="#" onclick="return doclink('link-29', 'preferred_bits', 'link-18');">preferred_bits</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">old_style</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-30', 'add_byte', 'link-26');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-31" class="py-name"><a title="paramiko.kex_gex._MSG_KEXDH_GEX_REQUEST" class="py-name" href="#" onclick="return doclink('link-31', '_MSG_KEXDH_GEX_REQUEST', 'link-14');">_MSG_KEXDH_GEX_REQUEST</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-32', 'add_int', 'link-28');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name"><a title="paramiko.kex_gex.KexGex.min_bits" class="py-name" href="#" onclick="return doclink('link-33', 'min_bits', 'link-16');">min_bits</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-34', 'add_int', 'link-28');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name"><a title="paramiko.kex_gex.KexGex.preferred_bits" class="py-name" href="#" onclick="return doclink('link-35', 'preferred_bits', 'link-18');">preferred_bits</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-36', 'add_int', 'link-28');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name"><a title="paramiko.kex_gex.KexGex.max_bits" class="py-name" href="#" onclick="return doclink('link-37', 'max_bits', 'link-17');">max_bits</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-38', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-39', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_expect_packet</tt><tt class="py-op">(</tt><tt id="link-40" class="py-name"><a title="paramiko.kex_gex._MSG_KEXDH_GEX_GROUP" class="py-name" href="#" onclick="return doclink('link-40', '_MSG_KEXDH_GEX_GROUP', 'link-11');">_MSG_KEXDH_GEX_GROUP</a></tt><tt class="py-op">)</tt> </tt>
-</div><a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> </tt>
-<a name="KexGex.parse_next"></a><div id="KexGex.parse_next-def"><a name="L76"></a><tt class="py-lineno"> 76</tt> <a class="py-toggle" href="#" id="KexGex.parse_next-toggle" onclick="return toggle('KexGex.parse_next');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.kex_gex.KexGex-class.html#parse_next">parse_next</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">ptype</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="KexGex.parse_next-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="KexGex.parse_next-expanded"><a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ptype</tt> <tt class="py-op">==</tt> <tt id="link-41" class="py-name"><a title="paramiko.kex_gex._MSG_KEXDH_GEX_REQUEST" class="py-name" href="#" onclick="return doclink('link-41', '_MSG_KEXDH_GEX_REQUEST', 'link-14');">_MSG_KEXDH_GEX_REQUEST</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_parse_kexdh_gex_request</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">ptype</tt> <tt class="py-op">==</tt> <tt id="link-42" class="py-name"><a title="paramiko.kex_gex._MSG_KEXDH_GEX_GROUP" class="py-name" href="#" onclick="return doclink('link-42', '_MSG_KEXDH_GEX_GROUP', 'link-11');">_MSG_KEXDH_GEX_GROUP</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_parse_kexdh_gex_group</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">ptype</tt> <tt class="py-op">==</tt> <tt id="link-43" class="py-name"><a title="paramiko.kex_gex._MSG_KEXDH_GEX_INIT" class="py-name" href="#" onclick="return doclink('link-43', '_MSG_KEXDH_GEX_INIT', 'link-12');">_MSG_KEXDH_GEX_INIT</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_parse_kexdh_gex_init</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">ptype</tt> <tt class="py-op">==</tt> <tt id="link-44" class="py-name"><a title="paramiko.kex_gex._MSG_KEXDH_GEX_REPLY" class="py-name" href="#" onclick="return doclink('link-44', '_MSG_KEXDH_GEX_REPLY', 'link-13');">_MSG_KEXDH_GEX_REPLY</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_parse_kexdh_gex_reply</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">ptype</tt> <tt class="py-op">==</tt> <tt id="link-45" class="py-name"><a title="paramiko.kex_gex._MSG_KEXDH_GEX_REQUEST_OLD" class="py-name" href="#" onclick="return doclink('link-45', '_MSG_KEXDH_GEX_REQUEST_OLD', 'link-10');">_MSG_KEXDH_GEX_REQUEST_OLD</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_parse_kexdh_gex_request_old</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-46" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-46', 'SSHException', 'link-9');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'KexGex asked to handle packet type %d'</tt> <tt class="py-op">%</tt> <tt class="py-name">ptype</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-comment">### internals...</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> </tt>
-<a name="KexGex._generate_x"></a><div id="KexGex._generate_x-def"><a name="L93"></a><tt class="py-lineno"> 93</tt> <a class="py-toggle" href="#" id="KexGex._generate_x-toggle" onclick="return toggle('KexGex._generate_x');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.kex_gex.KexGex-class.html#_generate_x">_generate_x</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="KexGex._generate_x-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="KexGex._generate_x-expanded"><a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-comment"># generate an "x" (1 &lt; x &lt; (p-1)/2).</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-name">q</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">p</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-op">//</tt> <tt class="py-number">2</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-name">qnorm</tt> <tt class="py-op">=</tt> <tt id="link-47" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-47', 'util', 'link-3');">util</a></tt><tt class="py-op">.</tt><tt id="link-48" class="py-name" targets="Function paramiko.util.deflate_long()=paramiko.util-module.html#deflate_long"><a title="paramiko.util.deflate_long" class="py-name" href="#" onclick="return doclink('link-48', 'deflate_long', 'link-48');">deflate_long</a></tt><tt class="py-op">(</tt><tt class="py-name">q</tt><tt class="py-op">,</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-name">qhbyte</tt> <tt class="py-op">=</tt> <tt class="py-name">ord</tt><tt class="py-op">(</tt><tt class="py-name">qnorm</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-name">bytes</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">qnorm</tt><tt class="py-op">)</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-name">qmask</tt> <tt class="py-op">=</tt> <tt class="py-number">0xff</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-keyword">not</tt> <tt class="py-op">(</tt><tt class="py-name">qhbyte</tt> <tt class="py-op">&amp;</tt> <tt class="py-number">0x80</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-name">qhbyte</tt> <tt class="py-op">&lt;&lt;=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt class="py-name">qmask</tt> <tt class="py-op">&gt;&gt;=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-name">x_bytes</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-49" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-49', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt id="link-50" class="py-name" targets="Variable paramiko.auth_handler.rng=paramiko.auth_handler-module.html#rng,Variable paramiko.channel.rng=paramiko.channel-module.html#rng,Variable paramiko.client.rng=paramiko.client-module.html#rng,Variable paramiko.common.rng=paramiko.common-module.html#rng,Variable paramiko.dsskey.rng=paramiko.dsskey-module.html#rng,Variable paramiko.hostkeys.rng=paramiko.hostkeys-module.html#rng,Variable paramiko.kex_gex.rng=paramiko.kex_gex-module.html#rng,Variable paramiko.kex_group1.rng=paramiko.kex_group1-module.html#rng,Variable paramiko.packet.rng=paramiko.packet-module.html#rng,Variable paramiko.pkey.rng=paramiko.pkey-module.html#rng,Variable paramiko.rsakey.rng=paramiko.rsakey-module.html#rng,Variable paramiko.server.rng=paramiko.server-module.html#rng,Variable paramiko.sftp.rng=paramiko.sftp-module.html#rng,Variable paramiko.sftp_attr.rng=paramiko.sftp_attr-module.html#rng,Variable paramiko.sftp_client.rng=paramiko.sftp_client-module.html#rng,Variable paramiko.sftp_file.rng=paramiko.sftp_file-module.html#rng,Variable paramiko.sftp_handle.rng=paramiko.sftp_handle-module.html#rng,Variable paramiko.sftp_server.rng=paramiko.sftp_server-module.html#rng,Variable paramiko.sftp_si.rng=paramiko.sftp_si-module.html#rng,Variable paramiko.transport.rng=paramiko.transport-module.html#rng,Variable paramiko.util.rng=paramiko.util-module.html#rng"><a title="paramiko.auth_handler.rng
-paramiko.channel.rng
-paramiko.client.rng
-paramiko.common.rng
-paramiko.dsskey.rng
-paramiko.hostkeys.rng
-paramiko.kex_gex.rng
-paramiko.kex_group1.rng
-paramiko.packet.rng
-paramiko.pkey.rng
-paramiko.rsakey.rng
-paramiko.server.rng
-paramiko.sftp.rng
-paramiko.sftp_attr.rng
-paramiko.sftp_client.rng
-paramiko.sftp_file.rng
-paramiko.sftp_handle.rng
-paramiko.sftp_server.rng
-paramiko.sftp_si.rng
-paramiko.transport.rng
-paramiko.util.rng" class="py-name" href="#" onclick="return doclink('link-50', 'rng', 'link-50');">rng</a></tt><tt class="py-op">.</tt><tt id="link-51" class="py-name" targets="Method paramiko.BufferedFile.read()=paramiko.BufferedFile-class.html#read,Method paramiko.SFTPHandle.read()=paramiko.SFTPHandle-class.html#read,Method paramiko.buffered_pipe.BufferedPipe.read()=paramiko.buffered_pipe.BufferedPipe-class.html#read"><a title="paramiko.BufferedFile.read
-paramiko.SFTPHandle.read
-paramiko.buffered_pipe.BufferedPipe.read" class="py-name" href="#" onclick="return doclink('link-51', 'read', 'link-51');">read</a></tt><tt class="py-op">(</tt><tt class="py-name">bytes</tt><tt class="py-op">)</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-name">x_bytes</tt> <tt class="py-op">=</tt> <tt class="py-name">chr</tt><tt class="py-op">(</tt><tt class="py-name">ord</tt><tt class="py-op">(</tt><tt class="py-name">x_bytes</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">&amp;</tt> <tt class="py-name">qmask</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-name">x_bytes</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">:</tt><tt class="py-op">]</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-name">x</tt> <tt class="py-op">=</tt> <tt id="link-52" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-52', 'util', 'link-3');">util</a></tt><tt class="py-op">.</tt><tt id="link-53" class="py-name" targets="Function paramiko.util.inflate_long()=paramiko.util-module.html#inflate_long"><a title="paramiko.util.inflate_long" class="py-name" href="#" onclick="return doclink('link-53', 'inflate_long', 'link-53');">inflate_long</a></tt><tt class="py-op">(</tt><tt class="py-name">x_bytes</tt><tt class="py-op">,</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">x</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">x</tt> <tt class="py-op">&lt;</tt> <tt class="py-name">q</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">x</tt> <tt class="py-op">=</tt> <tt class="py-name">x</tt> </tt>
-</div><a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> </tt>
-<a name="KexGex._parse_kexdh_gex_request"></a><div id="KexGex._parse_kexdh_gex_request-def"><a name="L111"></a><tt class="py-lineno">111</tt> <a class="py-toggle" href="#" id="KexGex._parse_kexdh_gex_request-toggle" onclick="return toggle('KexGex._parse_kexdh_gex_request');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.kex_gex.KexGex-class.html#_parse_kexdh_gex_request">_parse_kexdh_gex_request</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="KexGex._parse_kexdh_gex_request-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="KexGex._parse_kexdh_gex_request-expanded"><a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-name">minbits</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-54" class="py-name" targets="Method paramiko.Message.get_int()=paramiko.Message-class.html#get_int"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-54', 'get_int', 'link-54');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-name">preferredbits</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-55" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-55', 'get_int', 'link-54');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-name">maxbits</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-56" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-56', 'get_int', 'link-54');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-comment"># smoosh the user's preferred size into our own limits</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">preferredbits</tt> <tt class="py-op">&gt;</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-57" class="py-name"><a title="paramiko.kex_gex.KexGex.max_bits" class="py-name" href="#" onclick="return doclink('link-57', 'max_bits', 'link-17');">max_bits</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-name">preferredbits</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-58" class="py-name"><a title="paramiko.kex_gex.KexGex.max_bits" class="py-name" href="#" onclick="return doclink('link-58', 'max_bits', 'link-17');">max_bits</a></tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">preferredbits</tt> <tt class="py-op">&lt;</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-59" class="py-name"><a title="paramiko.kex_gex.KexGex.min_bits" class="py-name" href="#" onclick="return doclink('link-59', 'min_bits', 'link-16');">min_bits</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-name">preferredbits</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-60" class="py-name"><a title="paramiko.kex_gex.KexGex.min_bits" class="py-name" href="#" onclick="return doclink('link-60', 'min_bits', 'link-16');">min_bits</a></tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-comment"># fix min/max if they're inconsistent. technically, we could just pout</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-comment"># and hang up, but there's no harm in giving them the benefit of the</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-comment"># doubt and just picking a bitsize for them.</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">minbits</tt> <tt class="py-op">&gt;</tt> <tt class="py-name">preferredbits</tt><tt class="py-op">:</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-name">minbits</tt> <tt class="py-op">=</tt> <tt class="py-name">preferredbits</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">maxbits</tt> <tt class="py-op">&lt;</tt> <tt class="py-name">preferredbits</tt><tt class="py-op">:</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-name">maxbits</tt> <tt class="py-op">=</tt> <tt class="py-name">preferredbits</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-comment"># now save a copy</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-61" class="py-name"><a title="paramiko.kex_gex.KexGex.min_bits" class="py-name" href="#" onclick="return doclink('link-61', 'min_bits', 'link-16');">min_bits</a></tt> <tt class="py-op">=</tt> <tt class="py-name">minbits</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-62" class="py-name"><a title="paramiko.kex_gex.KexGex.preferred_bits" class="py-name" href="#" onclick="return doclink('link-62', 'preferred_bits', 'link-18');">preferred_bits</a></tt> <tt class="py-op">=</tt> <tt class="py-name">preferredbits</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-63" class="py-name"><a title="paramiko.kex_gex.KexGex.max_bits" class="py-name" href="#" onclick="return doclink('link-63', 'max_bits', 'link-17');">max_bits</a></tt> <tt class="py-op">=</tt> <tt class="py-name">maxbits</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-comment"># generate prime</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-name">pack</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-64" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-64', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_get_modulus_pack</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">pack</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-65" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-65', 'SSHException', 'link-9');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Can\'t do server-side gex with no modulus pack'</tt><tt class="py-op">)</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-66" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-66', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-67" class="py-name" targets="Variable paramiko.auth_handler.DEBUG=paramiko.auth_handler-module.html#DEBUG,Variable paramiko.channel.DEBUG=paramiko.channel-module.html#DEBUG,Variable paramiko.client.DEBUG=paramiko.client-module.html#DEBUG,Variable paramiko.common.DEBUG=paramiko.common-module.html#DEBUG,Variable paramiko.dsskey.DEBUG=paramiko.dsskey-module.html#DEBUG,Variable paramiko.hostkeys.DEBUG=paramiko.hostkeys-module.html#DEBUG,Variable paramiko.kex_gex.DEBUG=paramiko.kex_gex-module.html#DEBUG,Variable paramiko.kex_group1.DEBUG=paramiko.kex_group1-module.html#DEBUG,Variable paramiko.logging22.DEBUG=paramiko.logging22-module.html#DEBUG,Variable paramiko.packet.DEBUG=paramiko.packet-module.html#DEBUG,Variable paramiko.pkey.DEBUG=paramiko.pkey-module.html#DEBUG,Variable paramiko.rsakey.DEBUG=paramiko.rsakey-module.html#DEBUG,Variable paramiko.server.DEBUG=paramiko.server-module.html#DEBUG,Variable paramiko.sftp.DEBUG=paramiko.sftp-module.html#DEBUG,Variable paramiko.sftp_attr.DEBUG=paramiko.sftp_attr-module.html#DEBUG,Variable paramiko.sftp_client.DEBUG=paramiko.sftp_client-module.html#DEBUG,Variable paramiko.sftp_file.DEBUG=paramiko.sftp_file-module.html#DEBUG,Variable paramiko.sftp_handle.DEBUG=paramiko.sftp_handle-module.html#DEBUG,Variable paramiko.sftp_server.DEBUG=paramiko.sftp_server-module.html#DEBUG,Variable paramiko.sftp_si.DEBUG=paramiko.sftp_si-module.html#DEBUG,Variable paramiko.transport.DEBUG=paramiko.transport-module.html#DEBUG,Variable paramiko.util.DEBUG=paramiko.util-module.html#DEBUG"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-67', 'DEBUG', 'link-67');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Picking p (%d &lt;= %d &lt;= %d bits)'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">minbits</tt><tt class="py-op">,</tt> <tt class="py-name">preferredbits</tt><tt class="py-op">,</tt> <tt class="py-name">maxbits</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">g</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">p</tt> <tt class="py-op">=</tt> <tt class="py-name">pack</tt><tt class="py-op">.</tt><tt id="link-68" class="py-name" targets="Method paramiko.primes.ModulusPack.get_modulus()=paramiko.primes.ModulusPack-class.html#get_modulus"><a title="paramiko.primes.ModulusPack.get_modulus" class="py-name" href="#" onclick="return doclink('link-68', 'get_modulus', 'link-68');">get_modulus</a></tt><tt class="py-op">(</tt><tt class="py-name">minbits</tt><tt class="py-op">,</tt> <tt class="py-name">preferredbits</tt><tt class="py-op">,</tt> <tt class="py-name">maxbits</tt><tt class="py-op">)</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-69" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-69', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-70" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-70', 'add_byte', 'link-26');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-71" class="py-name"><a title="paramiko.kex_gex._MSG_KEXDH_GEX_GROUP" class="py-name" href="#" onclick="return doclink('link-71', '_MSG_KEXDH_GEX_GROUP', 'link-11');">_MSG_KEXDH_GEX_GROUP</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-72" class="py-name" targets="Method paramiko.Message.add_mpint()=paramiko.Message-class.html#add_mpint"><a title="paramiko.Message.add_mpint" class="py-name" href="#" onclick="return doclink('link-72', 'add_mpint', 'link-72');">add_mpint</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">p</tt><tt class="py-op">)</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-73" class="py-name"><a title="paramiko.Message.add_mpint" class="py-name" href="#" onclick="return doclink('link-73', 'add_mpint', 'link-72');">add_mpint</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">g</tt><tt class="py-op">)</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-74" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-74', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-75" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-75', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_expect_packet</tt><tt class="py-op">(</tt><tt id="link-76" class="py-name"><a title="paramiko.kex_gex._MSG_KEXDH_GEX_INIT" class="py-name" href="#" onclick="return doclink('link-76', '_MSG_KEXDH_GEX_INIT', 'link-12');">_MSG_KEXDH_GEX_INIT</a></tt><tt class="py-op">)</tt> </tt>
-</div><a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> </tt>
-<a name="KexGex._parse_kexdh_gex_request_old"></a><div id="KexGex._parse_kexdh_gex_request_old-def"><a name="L144"></a><tt class="py-lineno">144</tt> <a class="py-toggle" href="#" id="KexGex._parse_kexdh_gex_request_old-toggle" onclick="return toggle('KexGex._parse_kexdh_gex_request_old');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.kex_gex.KexGex-class.html#_parse_kexdh_gex_request_old">_parse_kexdh_gex_request_old</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="KexGex._parse_kexdh_gex_request_old-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="KexGex._parse_kexdh_gex_request_old-expanded"><a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-comment"># same as above, but without min_bits or max_bits (used by older clients like putty)</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-77" class="py-name"><a title="paramiko.kex_gex.KexGex.preferred_bits" class="py-name" href="#" onclick="return doclink('link-77', 'preferred_bits', 'link-18');">preferred_bits</a></tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-78" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-78', 'get_int', 'link-54');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> <tt class="py-comment"># smoosh the user's preferred size into our own limits</tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-79" class="py-name"><a title="paramiko.kex_gex.KexGex.preferred_bits" class="py-name" href="#" onclick="return doclink('link-79', 'preferred_bits', 'link-18');">preferred_bits</a></tt> <tt class="py-op">&gt;</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-80" class="py-name"><a title="paramiko.kex_gex.KexGex.max_bits" class="py-name" href="#" onclick="return doclink('link-80', 'max_bits', 'link-17');">max_bits</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-81" class="py-name"><a title="paramiko.kex_gex.KexGex.preferred_bits" class="py-name" href="#" onclick="return doclink('link-81', 'preferred_bits', 'link-18');">preferred_bits</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-82" class="py-name"><a title="paramiko.kex_gex.KexGex.max_bits" class="py-name" href="#" onclick="return doclink('link-82', 'max_bits', 'link-17');">max_bits</a></tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-83" class="py-name"><a title="paramiko.kex_gex.KexGex.preferred_bits" class="py-name" href="#" onclick="return doclink('link-83', 'preferred_bits', 'link-18');">preferred_bits</a></tt> <tt class="py-op">&lt;</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-84" class="py-name"><a title="paramiko.kex_gex.KexGex.min_bits" class="py-name" href="#" onclick="return doclink('link-84', 'min_bits', 'link-16');">min_bits</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-85" class="py-name"><a title="paramiko.kex_gex.KexGex.preferred_bits" class="py-name" href="#" onclick="return doclink('link-85', 'preferred_bits', 'link-18');">preferred_bits</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-86" class="py-name"><a title="paramiko.kex_gex.KexGex.min_bits" class="py-name" href="#" onclick="return doclink('link-86', 'min_bits', 'link-16');">min_bits</a></tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> <tt class="py-comment"># generate prime</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-name">pack</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-87" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-87', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_get_modulus_pack</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">pack</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-88" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-88', 'SSHException', 'link-9');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Can\'t do server-side gex with no modulus pack'</tt><tt class="py-op">)</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-89" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-89', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-90" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-90', 'DEBUG', 'link-67');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Picking p (~ %d bits)'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-91" class="py-name"><a title="paramiko.kex_gex.KexGex.preferred_bits" class="py-name" href="#" onclick="return doclink('link-91', 'preferred_bits', 'link-18');">preferred_bits</a></tt><tt class="py-op">,</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">g</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">p</tt> <tt class="py-op">=</tt> <tt class="py-name">pack</tt><tt class="py-op">.</tt><tt id="link-92" class="py-name"><a title="paramiko.primes.ModulusPack.get_modulus" class="py-name" href="#" onclick="return doclink('link-92', 'get_modulus', 'link-68');">get_modulus</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-93" class="py-name"><a title="paramiko.kex_gex.KexGex.min_bits" class="py-name" href="#" onclick="return doclink('link-93', 'min_bits', 'link-16');">min_bits</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-94" class="py-name"><a title="paramiko.kex_gex.KexGex.preferred_bits" class="py-name" href="#" onclick="return doclink('link-94', 'preferred_bits', 'link-18');">preferred_bits</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-95" class="py-name"><a title="paramiko.kex_gex.KexGex.max_bits" class="py-name" href="#" onclick="return doclink('link-95', 'max_bits', 'link-17');">max_bits</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-96" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-96', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-97" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-97', 'add_byte', 'link-26');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-98" class="py-name"><a title="paramiko.kex_gex._MSG_KEXDH_GEX_GROUP" class="py-name" href="#" onclick="return doclink('link-98', '_MSG_KEXDH_GEX_GROUP', 'link-11');">_MSG_KEXDH_GEX_GROUP</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-99" class="py-name"><a title="paramiko.Message.add_mpint" class="py-name" href="#" onclick="return doclink('link-99', 'add_mpint', 'link-72');">add_mpint</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">p</tt><tt class="py-op">)</tt> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-100" class="py-name"><a title="paramiko.Message.add_mpint" class="py-name" href="#" onclick="return doclink('link-100', 'add_mpint', 'link-72');">add_mpint</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">g</tt><tt class="py-op">)</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-101" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-101', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-102" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-102', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_expect_packet</tt><tt class="py-op">(</tt><tt id="link-103" class="py-name"><a title="paramiko.kex_gex._MSG_KEXDH_GEX_INIT" class="py-name" href="#" onclick="return doclink('link-103', '_MSG_KEXDH_GEX_INIT', 'link-12');">_MSG_KEXDH_GEX_INIT</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">old_style</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-</div><a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> </tt>
-<a name="KexGex._parse_kexdh_gex_group"></a><div id="KexGex._parse_kexdh_gex_group-def"><a name="L166"></a><tt class="py-lineno">166</tt> <a class="py-toggle" href="#" id="KexGex._parse_kexdh_gex_group-toggle" onclick="return toggle('KexGex._parse_kexdh_gex_group');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.kex_gex.KexGex-class.html#_parse_kexdh_gex_group">_parse_kexdh_gex_group</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="KexGex._parse_kexdh_gex_group-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="KexGex._parse_kexdh_gex_group-expanded"><a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">p</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-104" class="py-name" targets="Method paramiko.Message.get_mpint()=paramiko.Message-class.html#get_mpint"><a title="paramiko.Message.get_mpint" class="py-name" href="#" onclick="return doclink('link-104', 'get_mpint', 'link-104');">get_mpint</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">g</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-105" class="py-name"><a title="paramiko.Message.get_mpint" class="py-name" href="#" onclick="return doclink('link-105', 'get_mpint', 'link-104');">get_mpint</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> <tt class="py-comment"># reject if p's bit length &lt; 1024 or &gt; 8192</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"> <tt class="py-name">bitlen</tt> <tt class="py-op">=</tt> <tt id="link-106" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-106', 'util', 'link-3');">util</a></tt><tt class="py-op">.</tt><tt id="link-107" class="py-name" targets="Function paramiko.util.bit_length()=paramiko.util-module.html#bit_length"><a title="paramiko.util.bit_length" class="py-name" href="#" onclick="return doclink('link-107', 'bit_length', 'link-107');">bit_length</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">p</tt><tt class="py-op">)</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">bitlen</tt> <tt class="py-op">&lt;</tt> <tt class="py-number">1024</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">bitlen</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">8192</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-108" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-108', 'SSHException', 'link-9');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Server-generated gex p (don\'t ask) is out of range (%d bits)'</tt> <tt class="py-op">%</tt> <tt class="py-name">bitlen</tt><tt class="py-op">)</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-109" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-109', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-110" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-110', 'DEBUG', 'link-67');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Got server p (%d bits)'</tt> <tt class="py-op">%</tt> <tt class="py-name">bitlen</tt><tt class="py-op">)</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_generate_x</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt class="py-comment"># now compute e = g^x mod p</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">e</tt> <tt class="py-op">=</tt> <tt class="py-name">pow</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">g</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">x</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">p</tt><tt class="py-op">)</tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-111" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-111', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-112" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-112', 'add_byte', 'link-26');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-113" class="py-name"><a title="paramiko.kex_gex._MSG_KEXDH_GEX_INIT" class="py-name" href="#" onclick="return doclink('link-113', '_MSG_KEXDH_GEX_INIT', 'link-12');">_MSG_KEXDH_GEX_INIT</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-114" class="py-name"><a title="paramiko.Message.add_mpint" class="py-name" href="#" onclick="return doclink('link-114', 'add_mpint', 'link-72');">add_mpint</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">e</tt><tt class="py-op">)</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-115" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-115', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-116" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-116', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_expect_packet</tt><tt class="py-op">(</tt><tt id="link-117" class="py-name"><a title="paramiko.kex_gex._MSG_KEXDH_GEX_REPLY" class="py-name" href="#" onclick="return doclink('link-117', '_MSG_KEXDH_GEX_REPLY', 'link-13');">_MSG_KEXDH_GEX_REPLY</a></tt><tt class="py-op">)</tt> </tt>
-</div><a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> </tt>
-<a name="KexGex._parse_kexdh_gex_init"></a><div id="KexGex._parse_kexdh_gex_init-def"><a name="L183"></a><tt class="py-lineno">183</tt> <a class="py-toggle" href="#" id="KexGex._parse_kexdh_gex_init-toggle" onclick="return toggle('KexGex._parse_kexdh_gex_init');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.kex_gex.KexGex-class.html#_parse_kexdh_gex_init">_parse_kexdh_gex_init</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="KexGex._parse_kexdh_gex_init-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="KexGex._parse_kexdh_gex_init-expanded"><a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">e</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-118" class="py-name"><a title="paramiko.Message.get_mpint" class="py-name" href="#" onclick="return doclink('link-118', 'get_mpint', 'link-104');">get_mpint</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">e</tt> <tt class="py-op">&lt;</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">e</tt> <tt class="py-op">&gt;</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">p</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-119" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-119', 'SSHException', 'link-9');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Client kex "e" is out of range'</tt><tt class="py-op">)</tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_generate_x</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">f</tt> <tt class="py-op">=</tt> <tt class="py-name">pow</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">g</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">x</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">p</tt><tt class="py-op">)</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"> <tt class="py-name">K</tt> <tt class="py-op">=</tt> <tt class="py-name">pow</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">e</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">x</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">p</tt><tt class="py-op">)</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"> <tt class="py-name">key</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-120" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-120', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt id="link-121" class="py-name" targets="Method paramiko.Transport.get_server_key()=paramiko.Transport-class.html#get_server_key"><a title="paramiko.Transport.get_server_key" class="py-name" href="#" onclick="return doclink('link-121', 'get_server_key', 'link-121');">get_server_key</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"> <tt class="py-comment"># okay, build up the hash H of (V_C || V_S || I_C || I_S || K_S || min || n || max || p || g || e || f || K)</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"> <tt class="py-name">hm</tt> <tt class="py-op">=</tt> <tt id="link-122" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-122', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"> <tt class="py-name">hm</tt><tt class="py-op">.</tt><tt id="link-123" class="py-name" targets="Method paramiko.HostKeys.add()=paramiko.HostKeys-class.html#add,Method paramiko.Message.add()=paramiko.Message-class.html#add"><a title="paramiko.HostKeys.add
-paramiko.Message.add" class="py-name" href="#" onclick="return doclink('link-123', 'add', 'link-123');">add</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-124" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-124', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">remote_version</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-125" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-125', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">local_version</tt><tt class="py-op">,</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-126" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-126', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">remote_kex_init</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-127" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-127', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">local_kex_init</tt><tt class="py-op">,</tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"> <tt class="py-name">key</tt><tt class="py-op">)</tt> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">old_style</tt><tt class="py-op">:</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> <tt class="py-name">hm</tt><tt class="py-op">.</tt><tt id="link-128" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-128', 'add_int', 'link-28');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-129" class="py-name"><a title="paramiko.kex_gex.KexGex.min_bits" class="py-name" href="#" onclick="return doclink('link-129', 'min_bits', 'link-16');">min_bits</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"> <tt class="py-name">hm</tt><tt class="py-op">.</tt><tt id="link-130" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-130', 'add_int', 'link-28');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-131" class="py-name"><a title="paramiko.kex_gex.KexGex.preferred_bits" class="py-name" href="#" onclick="return doclink('link-131', 'preferred_bits', 'link-18');">preferred_bits</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">old_style</tt><tt class="py-op">:</tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> <tt class="py-name">hm</tt><tt class="py-op">.</tt><tt id="link-132" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-132', 'add_int', 'link-28');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-133" class="py-name"><a title="paramiko.kex_gex.KexGex.max_bits" class="py-name" href="#" onclick="return doclink('link-133', 'max_bits', 'link-17');">max_bits</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"> <tt class="py-name">hm</tt><tt class="py-op">.</tt><tt id="link-134" class="py-name"><a title="paramiko.Message.add_mpint" class="py-name" href="#" onclick="return doclink('link-134', 'add_mpint', 'link-72');">add_mpint</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">p</tt><tt class="py-op">)</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"> <tt class="py-name">hm</tt><tt class="py-op">.</tt><tt id="link-135" class="py-name"><a title="paramiko.Message.add_mpint" class="py-name" href="#" onclick="return doclink('link-135', 'add_mpint', 'link-72');">add_mpint</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">g</tt><tt class="py-op">)</tt> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"> <tt class="py-name">hm</tt><tt class="py-op">.</tt><tt id="link-136" class="py-name"><a title="paramiko.Message.add_mpint" class="py-name" href="#" onclick="return doclink('link-136', 'add_mpint', 'link-72');">add_mpint</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">e</tt><tt class="py-op">)</tt> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"> <tt class="py-name">hm</tt><tt class="py-op">.</tt><tt id="link-137" class="py-name"><a title="paramiko.Message.add_mpint" class="py-name" href="#" onclick="return doclink('link-137', 'add_mpint', 'link-72');">add_mpint</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">f</tt><tt class="py-op">)</tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"> <tt class="py-name">hm</tt><tt class="py-op">.</tt><tt id="link-138" class="py-name"><a title="paramiko.Message.add_mpint" class="py-name" href="#" onclick="return doclink('link-138', 'add_mpint', 'link-72');">add_mpint</a></tt><tt class="py-op">(</tt><tt class="py-name">K</tt><tt class="py-op">)</tt> </tt>
-<a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"> <tt class="py-name">H</tt> <tt class="py-op">=</tt> <tt class="py-name">SHA</tt><tt class="py-op">.</tt><tt id="link-139" class="py-name" targets="Class Method paramiko.util.Counter.new()=paramiko.util.Counter-class.html#new"><a title="paramiko.util.Counter.new" class="py-name" href="#" onclick="return doclink('link-139', 'new', 'link-139');">new</a></tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">hm</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">digest</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-140" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-140', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_set_K_H</tt><tt class="py-op">(</tt><tt class="py-name">K</tt><tt class="py-op">,</tt> <tt class="py-name">H</tt><tt class="py-op">)</tt> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"> <tt class="py-comment"># sign it</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"> <tt class="py-name">sig</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-141" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-141', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt id="link-142" class="py-name"><a title="paramiko.Transport.get_server_key" class="py-name" href="#" onclick="return doclink('link-142', 'get_server_key', 'link-121');">get_server_key</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-143" class="py-name" targets="Method paramiko.AgentKey.sign_ssh_data()=paramiko.AgentKey-class.html#sign_ssh_data,Method paramiko.DSSKey.sign_ssh_data()=paramiko.DSSKey-class.html#sign_ssh_data,Method paramiko.PKey.sign_ssh_data()=paramiko.PKey-class.html#sign_ssh_data,Method paramiko.RSAKey.sign_ssh_data()=paramiko.RSAKey-class.html#sign_ssh_data"><a title="paramiko.AgentKey.sign_ssh_data
-paramiko.DSSKey.sign_ssh_data
-paramiko.PKey.sign_ssh_data
-paramiko.RSAKey.sign_ssh_data" class="py-name" href="#" onclick="return doclink('link-143', 'sign_ssh_data', 'link-143');">sign_ssh_data</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-144" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-144', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt id="link-145" class="py-name"><a title="paramiko.auth_handler.rng
-paramiko.channel.rng
-paramiko.client.rng
-paramiko.common.rng
-paramiko.dsskey.rng
-paramiko.hostkeys.rng
-paramiko.kex_gex.rng
-paramiko.kex_group1.rng
-paramiko.packet.rng
-paramiko.pkey.rng
-paramiko.rsakey.rng
-paramiko.server.rng
-paramiko.sftp.rng
-paramiko.sftp_attr.rng
-paramiko.sftp_client.rng
-paramiko.sftp_file.rng
-paramiko.sftp_handle.rng
-paramiko.sftp_server.rng
-paramiko.sftp_si.rng
-paramiko.transport.rng
-paramiko.util.rng" class="py-name" href="#" onclick="return doclink('link-145', 'rng', 'link-50');">rng</a></tt><tt class="py-op">,</tt> <tt class="py-name">H</tt><tt class="py-op">)</tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"> <tt class="py-comment"># send reply</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-146" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-146', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-147" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-147', 'add_byte', 'link-26');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-148" class="py-name"><a title="paramiko.kex_gex._MSG_KEXDH_GEX_REPLY" class="py-name" href="#" onclick="return doclink('link-148', '_MSG_KEXDH_GEX_REPLY', 'link-13');">_MSG_KEXDH_GEX_REPLY</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-149" class="py-name" targets="Method paramiko.Message.add_string()=paramiko.Message-class.html#add_string"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-149', 'add_string', 'link-149');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">)</tt> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-150" class="py-name"><a title="paramiko.Message.add_mpint" class="py-name" href="#" onclick="return doclink('link-150', 'add_mpint', 'link-72');">add_mpint</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">f</tt><tt class="py-op">)</tt> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-151" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-151', 'add_string', 'link-149');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">sig</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-152" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-152', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-153" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-153', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_activate_outbound</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"> </tt>
-<a name="KexGex._parse_kexdh_gex_reply"></a><div id="KexGex._parse_kexdh_gex_reply-def"><a name="L219"></a><tt class="py-lineno">219</tt> <a class="py-toggle" href="#" id="KexGex._parse_kexdh_gex_reply-toggle" onclick="return toggle('KexGex._parse_kexdh_gex_reply');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.kex_gex.KexGex-class.html#_parse_kexdh_gex_reply">_parse_kexdh_gex_reply</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="KexGex._parse_kexdh_gex_reply-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="KexGex._parse_kexdh_gex_reply-expanded"><a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"> <tt class="py-name">host_key</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-154" class="py-name" targets="Method paramiko.Message.get_string()=paramiko.Message-class.html#get_string"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-154', 'get_string', 'link-154');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">f</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-155" class="py-name"><a title="paramiko.Message.get_mpint" class="py-name" href="#" onclick="return doclink('link-155', 'get_mpint', 'link-104');">get_mpint</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L222"></a><tt class="py-lineno">222</tt> <tt class="py-line"> <tt class="py-name">sig</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-156" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-156', 'get_string', 'link-154');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">f</tt> <tt class="py-op">&lt;</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">f</tt> <tt class="py-op">&gt;</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">p</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-157" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-157', 'SSHException', 'link-9');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Server kex "f" is out of range'</tt><tt class="py-op">)</tt> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"> <tt class="py-name">K</tt> <tt class="py-op">=</tt> <tt class="py-name">pow</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">f</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">x</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">p</tt><tt class="py-op">)</tt> </tt>
-<a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"> <tt class="py-comment"># okay, build up the hash H of (V_C || V_S || I_C || I_S || K_S || min || n || max || p || g || e || f || K)</tt> </tt>
-<a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"> <tt class="py-name">hm</tt> <tt class="py-op">=</tt> <tt id="link-158" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-158', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"> <tt class="py-name">hm</tt><tt class="py-op">.</tt><tt id="link-159" class="py-name"><a title="paramiko.HostKeys.add
-paramiko.Message.add" class="py-name" href="#" onclick="return doclink('link-159', 'add', 'link-123');">add</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-160" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-160', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">local_version</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-161" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-161', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">remote_version</tt><tt class="py-op">,</tt> </tt>
-<a name="L229"></a><tt class="py-lineno">229</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-162" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-162', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">local_kex_init</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-163" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-163', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">remote_kex_init</tt><tt class="py-op">,</tt> </tt>
-<a name="L230"></a><tt class="py-lineno">230</tt> <tt class="py-line"> <tt class="py-name">host_key</tt><tt class="py-op">)</tt> </tt>
-<a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">old_style</tt><tt class="py-op">:</tt> </tt>
-<a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"> <tt class="py-name">hm</tt><tt class="py-op">.</tt><tt id="link-164" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-164', 'add_int', 'link-28');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-165" class="py-name"><a title="paramiko.kex_gex.KexGex.min_bits" class="py-name" href="#" onclick="return doclink('link-165', 'min_bits', 'link-16');">min_bits</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"> <tt class="py-name">hm</tt><tt class="py-op">.</tt><tt id="link-166" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-166', 'add_int', 'link-28');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-167" class="py-name"><a title="paramiko.kex_gex.KexGex.preferred_bits" class="py-name" href="#" onclick="return doclink('link-167', 'preferred_bits', 'link-18');">preferred_bits</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">old_style</tt><tt class="py-op">:</tt> </tt>
-<a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"> <tt class="py-name">hm</tt><tt class="py-op">.</tt><tt id="link-168" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-168', 'add_int', 'link-28');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-169" class="py-name"><a title="paramiko.kex_gex.KexGex.max_bits" class="py-name" href="#" onclick="return doclink('link-169', 'max_bits', 'link-17');">max_bits</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"> <tt class="py-name">hm</tt><tt class="py-op">.</tt><tt id="link-170" class="py-name"><a title="paramiko.Message.add_mpint" class="py-name" href="#" onclick="return doclink('link-170', 'add_mpint', 'link-72');">add_mpint</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">p</tt><tt class="py-op">)</tt> </tt>
-<a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"> <tt class="py-name">hm</tt><tt class="py-op">.</tt><tt id="link-171" class="py-name"><a title="paramiko.Message.add_mpint" class="py-name" href="#" onclick="return doclink('link-171', 'add_mpint', 'link-72');">add_mpint</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">g</tt><tt class="py-op">)</tt> </tt>
-<a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"> <tt class="py-name">hm</tt><tt class="py-op">.</tt><tt id="link-172" class="py-name"><a title="paramiko.Message.add_mpint" class="py-name" href="#" onclick="return doclink('link-172', 'add_mpint', 'link-72');">add_mpint</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">e</tt><tt class="py-op">)</tt> </tt>
-<a name="L239"></a><tt class="py-lineno">239</tt> <tt class="py-line"> <tt class="py-name">hm</tt><tt class="py-op">.</tt><tt id="link-173" class="py-name"><a title="paramiko.Message.add_mpint" class="py-name" href="#" onclick="return doclink('link-173', 'add_mpint', 'link-72');">add_mpint</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">f</tt><tt class="py-op">)</tt> </tt>
-<a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"> <tt class="py-name">hm</tt><tt class="py-op">.</tt><tt id="link-174" class="py-name"><a title="paramiko.Message.add_mpint" class="py-name" href="#" onclick="return doclink('link-174', 'add_mpint', 'link-72');">add_mpint</a></tt><tt class="py-op">(</tt><tt class="py-name">K</tt><tt class="py-op">)</tt> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-175" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-175', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_set_K_H</tt><tt class="py-op">(</tt><tt class="py-name">K</tt><tt class="py-op">,</tt> <tt class="py-name">SHA</tt><tt class="py-op">.</tt><tt id="link-176" class="py-name"><a title="paramiko.util.Counter.new" class="py-name" href="#" onclick="return doclink('link-176', 'new', 'link-139');">new</a></tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">hm</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">digest</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-177" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-177', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_verify_key</tt><tt class="py-op">(</tt><tt class="py-name">host_key</tt><tt class="py-op">,</tt> <tt class="py-name">sig</tt><tt class="py-op">)</tt> </tt>
-<a name="L243"></a><tt class="py-lineno">243</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-178" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-178', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_activate_outbound</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L244"></a><tt class="py-lineno">244</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:04 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.kex_gex.KexGex-class.html b/docs/paramiko.kex_gex.KexGex-class.html
deleted file mode 100644
index ddfcb20..0000000
--- a/docs/paramiko.kex_gex.KexGex-class.html
+++ /dev/null
@@ -1,279 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.kex_gex.KexGex</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- <a href="paramiko.kex_gex-module.html" onclick="show_private();">Module&nbsp;kex_gex</a> ::
- Class&nbsp;KexGex
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.kex_gex.KexGex-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class KexGex</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.kex_gex-pysrc.html#KexGex">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- <strong class="uidshort">KexGex</strong>
-</pre>
-
-<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.kex_gex.KexGex-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">transport</span>)</span><br />
- x.__init__(...) initializes x; see x.__class__.__doc__ for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.kex_gex-pysrc.html#KexGex.__init__">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="start_kex"></a><span class="summary-sig-name">start_kex</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">_test_old_style</span>=<span class="summary-sig-default">False</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.kex_gex-pysrc.html#KexGex.start_kex">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="parse_next"></a><span class="summary-sig-name">parse_next</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">ptype</span>,
- <span class="summary-sig-arg">m</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.kex_gex-pysrc.html#KexGex.parse_next">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS VARIABLES ==================== -->
-<a name="section-ClassVariables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Class Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="name"></a><span class="summary-name">name</span> = <code title="'diffie-hellman-group-exchange-sha1'"><code class="variable-quote">'</code><code class="variable-string">diffie-hellman-group-exchange-sha1</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="min_bits"></a><span class="summary-name">min_bits</span> = <code title="1024">1024</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="max_bits"></a><span class="summary-name">max_bits</span> = <code title="8192">8192</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="preferred_bits"></a><span class="summary-name">preferred_bits</span> = <code title="2048">2048</code>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">transport</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.kex_gex-pysrc.html#KexGex.__init__">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see x.__class__.__doc__ for
- signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:04 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.kex_group1-module.html b/docs/paramiko.kex_group1-module.html
deleted file mode 100644
index 05186e7..0000000
--- a/docs/paramiko.kex_group1-module.html
+++ /dev/null
@@ -1,589 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.kex_group1</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;kex_group1
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.kex_group1-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module kex_group1</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.kex_group1-pysrc.html">source&nbsp;code</a></span></p>
-<p>Standard SSH key exchange (&quot;kex&quot; if you wanna sound cool).
- Diffie-Hellman of 1024 bit key halves, using a known &quot;p&quot; prime
- and &quot;g&quot; generator.</p>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Classes</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.kex_group1.KexGroup1-class.html" class="summary-name">KexGroup1</a>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.kex_group1-module.html#P" class="summary-name">P</a> = <code title="1797693134862315907708391567937874531978602960487560117064444236841971\
-8021615851936894783379586492554150218056548598050364644054819923910005\
-0792877003355816639229553136239076508735759914822574862575007425302077\
-4477125895509579377784244424266173347276292993876687092056060502708108\
-42907692932019128194467627007">1797693134862315907708391567937874531978602960487560117064<code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="G"></a><span class="summary-name">G</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_FAILED"></a><span class="summary-name">AUTH_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_PARTIALLY_SUCCESSFUL"></a><span class="summary-name">AUTH_PARTIALLY_SUCCESSFUL</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_SUCCESSFUL"></a><span class="summary-name">AUTH_SUCCESSFUL</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.kex_group1-module.html#CONNECTION_FAILED_CODE" class="summary-name">CONNECTION_FAILED_CODE</a> = <code title="{1: 'Administratively prohibited',
- 2: 'Connect failed',
- 3: 'Unknown channel type',
- 4: 'Resource shortage'}"><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">:</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CRITICAL"></a><span class="summary-name">CRITICAL</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DEBUG"></a><span class="summary-name">DEBUG</span> = <code title="10">10</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_AUTH_CANCELLED_BY_USER"></a><span class="summary-name">DISCONNECT_AUTH_CANCELLED_BY_USER</span> = <code title="13">13</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE"></a><span class="summary-name">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</span> = <code title="14">14</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_SERVICE_NOT_AVAILABLE"></a><span class="summary-name">DISCONNECT_SERVICE_NOT_AVAILABLE</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="ERROR"></a><span class="summary-name">ERROR</span> = <code title="40">40</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="INFO"></a><span class="summary-name">INFO</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_CLOSE"></a><span class="summary-name">MSG_CHANNEL_CLOSE</span> = <code title="97">97</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_DATA"></a><span class="summary-name">MSG_CHANNEL_DATA</span> = <code title="94">94</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EOF"></a><span class="summary-name">MSG_CHANNEL_EOF</span> = <code title="96">96</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EXTENDED_DATA"></a><span class="summary-name">MSG_CHANNEL_EXTENDED_DATA</span> = <code title="95">95</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_FAILURE"></a><span class="summary-name">MSG_CHANNEL_FAILURE</span> = <code title="100">100</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN"></a><span class="summary-name">MSG_CHANNEL_OPEN</span> = <code title="90">90</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_FAILURE"></a><span class="summary-name">MSG_CHANNEL_OPEN_FAILURE</span> = <code title="92">92</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_OPEN_SUCCESS</span> = <code title="91">91</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_REQUEST"></a><span class="summary-name">MSG_CHANNEL_REQUEST</span> = <code title="98">98</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_SUCCESS</span> = <code title="99">99</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_WINDOW_ADJUST"></a><span class="summary-name">MSG_CHANNEL_WINDOW_ADJUST</span> = <code title="93">93</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DEBUG"></a><span class="summary-name">MSG_DEBUG</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DISCONNECT"></a><span class="summary-name">MSG_DISCONNECT</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_GLOBAL_REQUEST"></a><span class="summary-name">MSG_GLOBAL_REQUEST</span> = <code title="80">80</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_IGNORE"></a><span class="summary-name">MSG_IGNORE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_KEXINIT"></a><span class="summary-name">MSG_KEXINIT</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.kex_group1-module.html#MSG_NAMES" class="summary-name">MSG_NAMES</a> = <code title="{1: 'disconnect',
- 2: 'ignore',
- 3: 'unimplemented',
- 4: 'debug',
- 5: 'service-request',
- 6: 'service-accept',
- 20: 'kexinit',
- 21: 'newkeys',
-..."><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">, </code>3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_NEWKEYS"></a><span class="summary-name">MSG_NEWKEYS</span> = <code title="21">21</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_FAILURE"></a><span class="summary-name">MSG_REQUEST_FAILURE</span> = <code title="82">82</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_SUCCESS"></a><span class="summary-name">MSG_REQUEST_SUCCESS</span> = <code title="81">81</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_ACCEPT"></a><span class="summary-name">MSG_SERVICE_ACCEPT</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_REQUEST"></a><span class="summary-name">MSG_SERVICE_REQUEST</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_UNIMPLEMENTED"></a><span class="summary-name">MSG_UNIMPLEMENTED</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_BANNER"></a><span class="summary-name">MSG_USERAUTH_BANNER</span> = <code title="53">53</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_FAILURE"></a><span class="summary-name">MSG_USERAUTH_FAILURE</span> = <code title="51">51</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_REQUEST"></a><span class="summary-name">MSG_USERAUTH_INFO_REQUEST</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_RESPONSE"></a><span class="summary-name">MSG_USERAUTH_INFO_RESPONSE</span> = <code title="61">61</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_PK_OK"></a><span class="summary-name">MSG_USERAUTH_PK_OK</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_REQUEST"></a><span class="summary-name">MSG_USERAUTH_REQUEST</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_SUCCESS"></a><span class="summary-name">MSG_USERAUTH_SUCCESS</span> = <code title="52">52</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED"></a><span class="summary-name">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_CONNECT_FAILED"></a><span class="summary-name">OPEN_FAILED_CONNECT_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_RESOURCE_SHORTAGE"></a><span class="summary-name">OPEN_FAILED_RESOURCE_SHORTAGE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_UNKNOWN_CHANNEL_TYPE"></a><span class="summary-name">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_SUCCEEDED"></a><span class="summary-name">OPEN_SUCCEEDED</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="PY22"></a><span class="summary-name">PY22</span> = <code title="False">False</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="WARNING"></a><span class="summary-name">WARNING</span> = <code title="30">30</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'paramiko'"><code class="variable-quote">'</code><code class="variable-string">paramiko</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="rng"></a><span class="summary-name">rng</span> = <code title="Random.new()">Random.new()</code>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES DETAILS ==================== -->
-<a name="section-VariablesDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables Details</span></td>
-</tr>
-</table>
-<a name="P"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">P</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-1797693134862315907708391567937874531978602960487560117064444236841971<span class="variable-linewrap"><img src="crarr.png" alt="\" /></span>
-8021615851936894783379586492554150218056548598050364644054819923910005<span class="variable-linewrap"><img src="crarr.png" alt="\" /></span>
-0792877003355816639229553136239076508735759914822574862575007425302077<span class="variable-linewrap"><img src="crarr.png" alt="\" /></span>
-4477125895509579377784244424266173347276292993876687092056060502708108<span class="variable-linewrap"><img src="crarr.png" alt="\" /></span>
-42907692932019128194467627007
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="CONNECTION_FAILED_CODE"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">CONNECTION_FAILED_CODE</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Connect failed</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Unknown channel type</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Resource shortage</code><code class="variable-quote">'</code><code class="variable-group">}</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="MSG_NAMES"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">MSG_NAMES</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">debug</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 5<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-request</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 6<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-accept</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 20<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">kexinit</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 21<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">newkeys</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:02 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.kex_group1-pysrc.html b/docs/paramiko.kex_group1-pysrc.html
deleted file mode 100644
index 1a3f340..0000000
--- a/docs/paramiko.kex_group1-pysrc.html
+++ /dev/null
@@ -1,292 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.kex_group1</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;kex_group1
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.kex_group1-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.kex_group1-module.html" onclick="show_private();">Module paramiko.kex_group1</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2003-2007 Robey Pointer &lt;robeypointer@gmail.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring">Standard SSH key exchange ("kex" if you wanna sound cool). Diffie-Hellman of</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">1024 bit key halves, using a known "p" prime and "g" generator.</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">Crypto</tt><tt class="py-op">.</tt><tt class="py-name">Hash</tt> <tt class="py-keyword">import</tt> <tt class="py-name">SHA</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package paramiko=paramiko-module.html"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-0', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Module paramiko.common=paramiko.common-module.html"><a title="paramiko.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt> <tt class="py-keyword">import</tt> <tt class="py-op">*</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-2" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-2', 'paramiko', 'link-0');">paramiko</a></tt> <tt class="py-keyword">import</tt> <tt id="link-3" class="py-name" targets="Module paramiko.util=paramiko.util-module.html"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-3', 'util', 'link-3');">util</a></tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-4" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-4', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Module paramiko.message=paramiko.message-module.html"><a title="paramiko.message" class="py-name" href="#" onclick="return doclink('link-5', 'message', 'link-5');">message</a></tt> <tt class="py-keyword">import</tt> <tt id="link-6" class="py-name" targets="Class paramiko.Message=paramiko.Message-class.html"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-6', 'Message', 'link-6');">Message</a></tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-7" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-7', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Module paramiko.ssh_exception=paramiko.ssh_exception-module.html"><a title="paramiko.ssh_exception" class="py-name" href="#" onclick="return doclink('link-8', 'ssh_exception', 'link-8');">ssh_exception</a></tt> <tt class="py-keyword">import</tt> <tt id="link-9" class="py-name" targets="Class paramiko.SSHException=paramiko.SSHException-class.html"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-9', 'SSHException', 'link-9');">SSHException</a></tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"><tt id="link-10" class="py-name" targets="Variable paramiko.kex_group1._MSG_KEXDH_INIT=paramiko.kex_group1-module.html#_MSG_KEXDH_INIT"><a title="paramiko.kex_group1._MSG_KEXDH_INIT" class="py-name" href="#" onclick="return doclink('link-10', '_MSG_KEXDH_INIT', 'link-10');">_MSG_KEXDH_INIT</a></tt><tt class="py-op">,</tt> <tt id="link-11" class="py-name" targets="Variable paramiko.kex_group1._MSG_KEXDH_REPLY=paramiko.kex_group1-module.html#_MSG_KEXDH_REPLY"><a title="paramiko.kex_group1._MSG_KEXDH_REPLY" class="py-name" href="#" onclick="return doclink('link-11', '_MSG_KEXDH_REPLY', 'link-11');">_MSG_KEXDH_REPLY</a></tt> <tt class="py-op">=</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">30</tt><tt class="py-op">,</tt> <tt class="py-number">32</tt><tt class="py-op">)</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"><tt class="py-comment"># draft-ietf-secsh-transport-09.txt, page 17</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"><tt id="link-12" class="py-name" targets="Variable paramiko.kex_group1.P=paramiko.kex_group1-module.html#P"><a title="paramiko.kex_group1.P" class="py-name" href="#" onclick="return doclink('link-12', 'P', 'link-12');">P</a></tt> <tt class="py-op">=</tt> <tt class="py-number">0xFFFFFFFFFFFFFFFFC90FDAA22168C234C4C6628B80DC1CD129024E088A67CC74020BBEA63B139B22514A08798E3404DDEF9519B3CD3A431B302B0A6DF25F14374FE1356D6D51C245E485B576625E7EC6F44C42E9A637ED6B0BFF5CB6F406B7EDEE386BFB5A899FA5AE9F24117C4B1FE649286651ECE65381FFFFFFFFFFFFFFFFL</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"><tt id="link-13" class="py-name" targets="Variable paramiko.kex_group1.G=paramiko.kex_group1-module.html#G"><a title="paramiko.kex_group1.G" class="py-name" href="#" onclick="return doclink('link-13', 'G', 'link-13');">G</a></tt> <tt class="py-op">=</tt> <tt class="py-number">2</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> </tt>
-<a name="KexGroup1"></a><div id="KexGroup1-def"><a name="L39"></a><tt class="py-lineno"> 39</tt> <a class="py-toggle" href="#" id="KexGroup1-toggle" onclick="return toggle('KexGroup1');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.kex_group1.KexGroup1-class.html">KexGroup1</a><tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="KexGroup1-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="KexGroup1-expanded"><a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt id="link-14" class="py-name" targets="Variable paramiko.kex_gex.KexGex.name=paramiko.kex_gex.KexGex-class.html#name,Variable paramiko.kex_group1.KexGroup1.name=paramiko.kex_group1.KexGroup1-class.html#name"><a title="paramiko.kex_gex.KexGex.name
-paramiko.kex_group1.KexGroup1.name" class="py-name" href="#" onclick="return doclink('link-14', 'name', 'link-14');">name</a></tt> <tt class="py-op">=</tt> <tt class="py-string">'diffie-hellman-group1-sha1'</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> </tt>
-<a name="KexGroup1.__init__"></a><div id="KexGroup1.__init__-def"><a name="L43"></a><tt class="py-lineno"> 43</tt> <a class="py-toggle" href="#" id="KexGroup1.__init__-toggle" onclick="return toggle('KexGroup1.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.kex_group1.KexGroup1-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">transport</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="KexGroup1.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="KexGroup1.__init__-expanded"><a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name" targets="Module paramiko.transport=paramiko.transport-module.html"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-15', 'transport', 'link-15');">transport</a></tt> <tt class="py-op">=</tt> <tt id="link-16" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-16', 'transport', 'link-15');">transport</a></tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">x</tt> <tt class="py-op">=</tt> <tt class="py-number">0L</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">e</tt> <tt class="py-op">=</tt> <tt class="py-number">0L</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">f</tt> <tt class="py-op">=</tt> <tt class="py-number">0L</tt> </tt>
-</div><a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> </tt>
-<a name="KexGroup1.start_kex"></a><div id="KexGroup1.start_kex-def"><a name="L49"></a><tt class="py-lineno"> 49</tt> <a class="py-toggle" href="#" id="KexGroup1.start_kex-toggle" onclick="return toggle('KexGroup1.start_kex');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.kex_group1.KexGroup1-class.html#start_kex">start_kex</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="KexGroup1.start_kex-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="KexGroup1.start_kex-expanded"><a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_generate_x</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-17', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">server_mode</tt><tt class="py-op">:</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-comment"># compute f = g^x mod p, but don't send it yet</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">f</tt> <tt class="py-op">=</tt> <tt class="py-name">pow</tt><tt class="py-op">(</tt><tt id="link-18" class="py-name"><a title="paramiko.kex_group1.G" class="py-name" href="#" onclick="return doclink('link-18', 'G', 'link-13');">G</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">x</tt><tt class="py-op">,</tt> <tt id="link-19" class="py-name"><a title="paramiko.kex_group1.P" class="py-name" href="#" onclick="return doclink('link-19', 'P', 'link-12');">P</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-20', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_expect_packet</tt><tt class="py-op">(</tt><tt id="link-21" class="py-name"><a title="paramiko.kex_group1._MSG_KEXDH_INIT" class="py-name" href="#" onclick="return doclink('link-21', '_MSG_KEXDH_INIT', 'link-10');">_MSG_KEXDH_INIT</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-comment"># compute e = g^x mod p (where g=2), and send it</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">e</tt> <tt class="py-op">=</tt> <tt class="py-name">pow</tt><tt class="py-op">(</tt><tt id="link-22" class="py-name"><a title="paramiko.kex_group1.G" class="py-name" href="#" onclick="return doclink('link-22', 'G', 'link-13');">G</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">x</tt><tt class="py-op">,</tt> <tt id="link-23" class="py-name"><a title="paramiko.kex_group1.P" class="py-name" href="#" onclick="return doclink('link-23', 'P', 'link-12');">P</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-24" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-24', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name" targets="Method paramiko.Message.add_byte()=paramiko.Message-class.html#add_byte"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-25', 'add_byte', 'link-25');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-26" class="py-name"><a title="paramiko.kex_group1._MSG_KEXDH_INIT" class="py-name" href="#" onclick="return doclink('link-26', '_MSG_KEXDH_INIT', 'link-10');">_MSG_KEXDH_INIT</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name" targets="Method paramiko.Message.add_mpint()=paramiko.Message-class.html#add_mpint"><a title="paramiko.Message.add_mpint" class="py-name" href="#" onclick="return doclink('link-27', 'add_mpint', 'link-27');">add_mpint</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">e</tt><tt class="py-op">)</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-28', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-29', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_expect_packet</tt><tt class="py-op">(</tt><tt id="link-30" class="py-name"><a title="paramiko.kex_group1._MSG_KEXDH_REPLY" class="py-name" href="#" onclick="return doclink('link-30', '_MSG_KEXDH_REPLY', 'link-11');">_MSG_KEXDH_REPLY</a></tt><tt class="py-op">)</tt> </tt>
-</div><a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> </tt>
-<a name="KexGroup1.parse_next"></a><div id="KexGroup1.parse_next-def"><a name="L64"></a><tt class="py-lineno"> 64</tt> <a class="py-toggle" href="#" id="KexGroup1.parse_next-toggle" onclick="return toggle('KexGroup1.parse_next');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.kex_group1.KexGroup1-class.html#parse_next">parse_next</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">ptype</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="KexGroup1.parse_next-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="KexGroup1.parse_next-expanded"><a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-31', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">server_mode</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">ptype</tt> <tt class="py-op">==</tt> <tt id="link-32" class="py-name"><a title="paramiko.kex_group1._MSG_KEXDH_INIT" class="py-name" href="#" onclick="return doclink('link-32', '_MSG_KEXDH_INIT', 'link-10');">_MSG_KEXDH_INIT</a></tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_parse_kexdh_init</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-33', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">server_mode</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">ptype</tt> <tt class="py-op">==</tt> <tt id="link-34" class="py-name"><a title="paramiko.kex_group1._MSG_KEXDH_REPLY" class="py-name" href="#" onclick="return doclink('link-34', '_MSG_KEXDH_REPLY', 'link-11');">_MSG_KEXDH_REPLY</a></tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_parse_kexdh_reply</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-35" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-35', 'SSHException', 'link-9');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'KexGroup1 asked to handle packet type %d'</tt> <tt class="py-op">%</tt> <tt class="py-name">ptype</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-comment">### internals...</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> </tt>
-<a name="KexGroup1._generate_x"></a><div id="KexGroup1._generate_x-def"><a name="L75"></a><tt class="py-lineno"> 75</tt> <a class="py-toggle" href="#" id="KexGroup1._generate_x-toggle" onclick="return toggle('KexGroup1._generate_x');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.kex_group1.KexGroup1-class.html#_generate_x">_generate_x</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="KexGroup1._generate_x-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="KexGroup1._generate_x-expanded"><a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-comment"># generate an "x" (1 &lt; x &lt; q), where q is (p-1)/2.</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-comment"># p is a 128-byte (1024-bit) number, where the first 64 bits are 1. </tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-comment"># therefore q can be approximated as a 2^1023. we drop the subset of</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-comment"># potential x where the first 63 bits are 1, because some of those will be</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-comment"># larger than q (but this is a tiny tiny subset of potential x).</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-name">x_bytes</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-36', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt id="link-37" class="py-name" targets="Variable paramiko.auth_handler.rng=paramiko.auth_handler-module.html#rng,Variable paramiko.channel.rng=paramiko.channel-module.html#rng,Variable paramiko.client.rng=paramiko.client-module.html#rng,Variable paramiko.common.rng=paramiko.common-module.html#rng,Variable paramiko.dsskey.rng=paramiko.dsskey-module.html#rng,Variable paramiko.hostkeys.rng=paramiko.hostkeys-module.html#rng,Variable paramiko.kex_gex.rng=paramiko.kex_gex-module.html#rng,Variable paramiko.kex_group1.rng=paramiko.kex_group1-module.html#rng,Variable paramiko.packet.rng=paramiko.packet-module.html#rng,Variable paramiko.pkey.rng=paramiko.pkey-module.html#rng,Variable paramiko.rsakey.rng=paramiko.rsakey-module.html#rng,Variable paramiko.server.rng=paramiko.server-module.html#rng,Variable paramiko.sftp.rng=paramiko.sftp-module.html#rng,Variable paramiko.sftp_attr.rng=paramiko.sftp_attr-module.html#rng,Variable paramiko.sftp_client.rng=paramiko.sftp_client-module.html#rng,Variable paramiko.sftp_file.rng=paramiko.sftp_file-module.html#rng,Variable paramiko.sftp_handle.rng=paramiko.sftp_handle-module.html#rng,Variable paramiko.sftp_server.rng=paramiko.sftp_server-module.html#rng,Variable paramiko.sftp_si.rng=paramiko.sftp_si-module.html#rng,Variable paramiko.transport.rng=paramiko.transport-module.html#rng,Variable paramiko.util.rng=paramiko.util-module.html#rng"><a title="paramiko.auth_handler.rng
-paramiko.channel.rng
-paramiko.client.rng
-paramiko.common.rng
-paramiko.dsskey.rng
-paramiko.hostkeys.rng
-paramiko.kex_gex.rng
-paramiko.kex_group1.rng
-paramiko.packet.rng
-paramiko.pkey.rng
-paramiko.rsakey.rng
-paramiko.server.rng
-paramiko.sftp.rng
-paramiko.sftp_attr.rng
-paramiko.sftp_client.rng
-paramiko.sftp_file.rng
-paramiko.sftp_handle.rng
-paramiko.sftp_server.rng
-paramiko.sftp_si.rng
-paramiko.transport.rng
-paramiko.util.rng" class="py-name" href="#" onclick="return doclink('link-37', 'rng', 'link-37');">rng</a></tt><tt class="py-op">.</tt><tt id="link-38" class="py-name" targets="Method paramiko.BufferedFile.read()=paramiko.BufferedFile-class.html#read,Method paramiko.SFTPHandle.read()=paramiko.SFTPHandle-class.html#read,Method paramiko.buffered_pipe.BufferedPipe.read()=paramiko.buffered_pipe.BufferedPipe-class.html#read"><a title="paramiko.BufferedFile.read
-paramiko.SFTPHandle.read
-paramiko.buffered_pipe.BufferedPipe.read" class="py-name" href="#" onclick="return doclink('link-38', 'read', 'link-38');">read</a></tt><tt class="py-op">(</tt><tt class="py-number">128</tt><tt class="py-op">)</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-name">x_bytes</tt> <tt class="py-op">=</tt> <tt class="py-name">chr</tt><tt class="py-op">(</tt><tt class="py-name">ord</tt><tt class="py-op">(</tt><tt class="py-name">x_bytes</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">&amp;</tt> <tt class="py-number">0x7f</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-name">x_bytes</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">:</tt><tt class="py-op">]</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">x_bytes</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-number">8</tt><tt class="py-op">]</tt> <tt class="py-op">!=</tt> <tt class="py-string">'\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF'</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> \ </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-op">(</tt><tt class="py-name">x_bytes</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-number">8</tt><tt class="py-op">]</tt> <tt class="py-op">!=</tt> <tt class="py-string">'\x00\x00\x00\x00\x00\x00\x00\x00'</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">x</tt> <tt class="py-op">=</tt> <tt id="link-39" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-39', 'util', 'link-3');">util</a></tt><tt class="py-op">.</tt><tt id="link-40" class="py-name" targets="Function paramiko.util.inflate_long()=paramiko.util-module.html#inflate_long"><a title="paramiko.util.inflate_long" class="py-name" href="#" onclick="return doclink('link-40', 'inflate_long', 'link-40');">inflate_long</a></tt><tt class="py-op">(</tt><tt class="py-name">x_bytes</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> </tt>
-<a name="KexGroup1._parse_kexdh_reply"></a><div id="KexGroup1._parse_kexdh_reply-def"><a name="L89"></a><tt class="py-lineno"> 89</tt> <a class="py-toggle" href="#" id="KexGroup1._parse_kexdh_reply-toggle" onclick="return toggle('KexGroup1._parse_kexdh_reply');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.kex_group1.KexGroup1-class.html#_parse_kexdh_reply">_parse_kexdh_reply</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="KexGroup1._parse_kexdh_reply-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="KexGroup1._parse_kexdh_reply-expanded"><a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-comment"># client mode</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-name">host_key</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name" targets="Method paramiko.Message.get_string()=paramiko.Message-class.html#get_string"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-41', 'get_string', 'link-41');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">f</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-42" class="py-name" targets="Method paramiko.Message.get_mpint()=paramiko.Message-class.html#get_mpint"><a title="paramiko.Message.get_mpint" class="py-name" href="#" onclick="return doclink('link-42', 'get_mpint', 'link-42');">get_mpint</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">f</tt> <tt class="py-op">&lt;</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">f</tt> <tt class="py-op">&gt;</tt> <tt id="link-43" class="py-name"><a title="paramiko.kex_group1.P" class="py-name" href="#" onclick="return doclink('link-43', 'P', 'link-12');">P</a></tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-44" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-44', 'SSHException', 'link-9');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Server kex "f" is out of range'</tt><tt class="py-op">)</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-name">sig</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-45" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-45', 'get_string', 'link-41');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-name">K</tt> <tt class="py-op">=</tt> <tt class="py-name">pow</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">f</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">x</tt><tt class="py-op">,</tt> <tt id="link-46" class="py-name"><a title="paramiko.kex_group1.P" class="py-name" href="#" onclick="return doclink('link-46', 'P', 'link-12');">P</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-comment"># okay, build up the hash H of (V_C || V_S || I_C || I_S || K_S || e || f || K)</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-name">hm</tt> <tt class="py-op">=</tt> <tt id="link-47" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-47', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-name">hm</tt><tt class="py-op">.</tt><tt id="link-48" class="py-name" targets="Method paramiko.HostKeys.add()=paramiko.HostKeys-class.html#add,Method paramiko.Message.add()=paramiko.Message-class.html#add"><a title="paramiko.HostKeys.add
-paramiko.Message.add" class="py-name" href="#" onclick="return doclink('link-48', 'add', 'link-48');">add</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-49" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-49', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">local_version</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-50" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-50', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">remote_version</tt><tt class="py-op">,</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-51" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-51', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">local_kex_init</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-52" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-52', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">remote_kex_init</tt><tt class="py-op">)</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-name">hm</tt><tt class="py-op">.</tt><tt id="link-53" class="py-name" targets="Method paramiko.Message.add_string()=paramiko.Message-class.html#add_string"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-53', 'add_string', 'link-53');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">host_key</tt><tt class="py-op">)</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt class="py-name">hm</tt><tt class="py-op">.</tt><tt id="link-54" class="py-name"><a title="paramiko.Message.add_mpint" class="py-name" href="#" onclick="return doclink('link-54', 'add_mpint', 'link-27');">add_mpint</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">e</tt><tt class="py-op">)</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-name">hm</tt><tt class="py-op">.</tt><tt id="link-55" class="py-name"><a title="paramiko.Message.add_mpint" class="py-name" href="#" onclick="return doclink('link-55', 'add_mpint', 'link-27');">add_mpint</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">f</tt><tt class="py-op">)</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-name">hm</tt><tt class="py-op">.</tt><tt id="link-56" class="py-name"><a title="paramiko.Message.add_mpint" class="py-name" href="#" onclick="return doclink('link-56', 'add_mpint', 'link-27');">add_mpint</a></tt><tt class="py-op">(</tt><tt class="py-name">K</tt><tt class="py-op">)</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-57" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-57', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_set_K_H</tt><tt class="py-op">(</tt><tt class="py-name">K</tt><tt class="py-op">,</tt> <tt class="py-name">SHA</tt><tt class="py-op">.</tt><tt id="link-58" class="py-name" targets="Class Method paramiko.util.Counter.new()=paramiko.util.Counter-class.html#new"><a title="paramiko.util.Counter.new" class="py-name" href="#" onclick="return doclink('link-58', 'new', 'link-58');">new</a></tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">hm</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">digest</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-59" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-59', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_verify_key</tt><tt class="py-op">(</tt><tt class="py-name">host_key</tt><tt class="py-op">,</tt> <tt class="py-name">sig</tt><tt class="py-op">)</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-60" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-60', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_activate_outbound</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> </tt>
-<a name="KexGroup1._parse_kexdh_init"></a><div id="KexGroup1._parse_kexdh_init-def"><a name="L109"></a><tt class="py-lineno">109</tt> <a class="py-toggle" href="#" id="KexGroup1._parse_kexdh_init-toggle" onclick="return toggle('KexGroup1._parse_kexdh_init');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.kex_group1.KexGroup1-class.html#_parse_kexdh_init">_parse_kexdh_init</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="KexGroup1._parse_kexdh_init-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="KexGroup1._parse_kexdh_init-expanded"><a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-comment"># server mode</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">e</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-61" class="py-name"><a title="paramiko.Message.get_mpint" class="py-name" href="#" onclick="return doclink('link-61', 'get_mpint', 'link-42');">get_mpint</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">e</tt> <tt class="py-op">&lt;</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">e</tt> <tt class="py-op">&gt;</tt> <tt id="link-62" class="py-name"><a title="paramiko.kex_group1.P" class="py-name" href="#" onclick="return doclink('link-62', 'P', 'link-12');">P</a></tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-63" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-63', 'SSHException', 'link-9');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Client kex "e" is out of range'</tt><tt class="py-op">)</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-name">K</tt> <tt class="py-op">=</tt> <tt class="py-name">pow</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">e</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">x</tt><tt class="py-op">,</tt> <tt id="link-64" class="py-name"><a title="paramiko.kex_group1.P" class="py-name" href="#" onclick="return doclink('link-64', 'P', 'link-12');">P</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-name">key</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-65" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-65', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt id="link-66" class="py-name" targets="Method paramiko.Transport.get_server_key()=paramiko.Transport-class.html#get_server_key"><a title="paramiko.Transport.get_server_key" class="py-name" href="#" onclick="return doclink('link-66', 'get_server_key', 'link-66');">get_server_key</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-comment"># okay, build up the hash H of (V_C || V_S || I_C || I_S || K_S || e || f || K)</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-name">hm</tt> <tt class="py-op">=</tt> <tt id="link-67" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-67', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-name">hm</tt><tt class="py-op">.</tt><tt id="link-68" class="py-name"><a title="paramiko.HostKeys.add
-paramiko.Message.add" class="py-name" href="#" onclick="return doclink('link-68', 'add', 'link-48');">add</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-69" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-69', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">remote_version</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-70" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-70', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">local_version</tt><tt class="py-op">,</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-71" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-71', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">remote_kex_init</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-72" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-72', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">local_kex_init</tt><tt class="py-op">)</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-name">hm</tt><tt class="py-op">.</tt><tt id="link-73" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-73', 'add_string', 'link-53');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">)</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-name">hm</tt><tt class="py-op">.</tt><tt id="link-74" class="py-name"><a title="paramiko.Message.add_mpint" class="py-name" href="#" onclick="return doclink('link-74', 'add_mpint', 'link-27');">add_mpint</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">e</tt><tt class="py-op">)</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-name">hm</tt><tt class="py-op">.</tt><tt id="link-75" class="py-name"><a title="paramiko.Message.add_mpint" class="py-name" href="#" onclick="return doclink('link-75', 'add_mpint', 'link-27');">add_mpint</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">f</tt><tt class="py-op">)</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-name">hm</tt><tt class="py-op">.</tt><tt id="link-76" class="py-name"><a title="paramiko.Message.add_mpint" class="py-name" href="#" onclick="return doclink('link-76', 'add_mpint', 'link-27');">add_mpint</a></tt><tt class="py-op">(</tt><tt class="py-name">K</tt><tt class="py-op">)</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-name">H</tt> <tt class="py-op">=</tt> <tt class="py-name">SHA</tt><tt class="py-op">.</tt><tt id="link-77" class="py-name"><a title="paramiko.util.Counter.new" class="py-name" href="#" onclick="return doclink('link-77', 'new', 'link-58');">new</a></tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">hm</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">digest</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-78" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-78', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_set_K_H</tt><tt class="py-op">(</tt><tt class="py-name">K</tt><tt class="py-op">,</tt> <tt class="py-name">H</tt><tt class="py-op">)</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-comment"># sign it</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-name">sig</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-79" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-79', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt id="link-80" class="py-name"><a title="paramiko.Transport.get_server_key" class="py-name" href="#" onclick="return doclink('link-80', 'get_server_key', 'link-66');">get_server_key</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-81" class="py-name" targets="Method paramiko.AgentKey.sign_ssh_data()=paramiko.AgentKey-class.html#sign_ssh_data,Method paramiko.DSSKey.sign_ssh_data()=paramiko.DSSKey-class.html#sign_ssh_data,Method paramiko.PKey.sign_ssh_data()=paramiko.PKey-class.html#sign_ssh_data,Method paramiko.RSAKey.sign_ssh_data()=paramiko.RSAKey-class.html#sign_ssh_data"><a title="paramiko.AgentKey.sign_ssh_data
-paramiko.DSSKey.sign_ssh_data
-paramiko.PKey.sign_ssh_data
-paramiko.RSAKey.sign_ssh_data" class="py-name" href="#" onclick="return doclink('link-81', 'sign_ssh_data', 'link-81');">sign_ssh_data</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-82" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-82', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt id="link-83" class="py-name"><a title="paramiko.auth_handler.rng
-paramiko.channel.rng
-paramiko.client.rng
-paramiko.common.rng
-paramiko.dsskey.rng
-paramiko.hostkeys.rng
-paramiko.kex_gex.rng
-paramiko.kex_group1.rng
-paramiko.packet.rng
-paramiko.pkey.rng
-paramiko.rsakey.rng
-paramiko.server.rng
-paramiko.sftp.rng
-paramiko.sftp_attr.rng
-paramiko.sftp_client.rng
-paramiko.sftp_file.rng
-paramiko.sftp_handle.rng
-paramiko.sftp_server.rng
-paramiko.sftp_si.rng
-paramiko.transport.rng
-paramiko.util.rng" class="py-name" href="#" onclick="return doclink('link-83', 'rng', 'link-37');">rng</a></tt><tt class="py-op">,</tt> <tt class="py-name">H</tt><tt class="py-op">)</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-comment"># send reply</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-84" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-84', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-85" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-85', 'add_byte', 'link-25');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-86" class="py-name"><a title="paramiko.kex_group1._MSG_KEXDH_REPLY" class="py-name" href="#" onclick="return doclink('link-86', '_MSG_KEXDH_REPLY', 'link-11');">_MSG_KEXDH_REPLY</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-87" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-87', 'add_string', 'link-53');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">)</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-88" class="py-name"><a title="paramiko.Message.add_mpint" class="py-name" href="#" onclick="return doclink('link-88', 'add_mpint', 'link-27');">add_mpint</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">f</tt><tt class="py-op">)</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-89" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-89', 'add_string', 'link-53');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">sig</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-90" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-90', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_send_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-91" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-91', 'transport', 'link-15');">transport</a></tt><tt class="py-op">.</tt><tt class="py-name">_activate_outbound</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:07 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.kex_group1.KexGroup1-class.html b/docs/paramiko.kex_group1.KexGroup1-class.html
deleted file mode 100644
index b440267..0000000
--- a/docs/paramiko.kex_group1.KexGroup1-class.html
+++ /dev/null
@@ -1,257 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.kex_group1.KexGroup1</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- <a href="paramiko.kex_group1-module.html" onclick="show_private();">Module&nbsp;kex_group1</a> ::
- Class&nbsp;KexGroup1
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.kex_group1.KexGroup1-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class KexGroup1</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.kex_group1-pysrc.html#KexGroup1">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- <strong class="uidshort">KexGroup1</strong>
-</pre>
-
-<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.kex_group1.KexGroup1-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">transport</span>)</span><br />
- x.__init__(...) initializes x; see x.__class__.__doc__ for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.kex_group1-pysrc.html#KexGroup1.__init__">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="start_kex"></a><span class="summary-sig-name">start_kex</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.kex_group1-pysrc.html#KexGroup1.start_kex">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="parse_next"></a><span class="summary-sig-name">parse_next</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">ptype</span>,
- <span class="summary-sig-arg">m</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.kex_group1-pysrc.html#KexGroup1.parse_next">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS VARIABLES ==================== -->
-<a name="section-ClassVariables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Class Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="name"></a><span class="summary-name">name</span> = <code title="'diffie-hellman-group1-sha1'"><code class="variable-quote">'</code><code class="variable-string">diffie-hellman-group1-sha1</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">transport</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.kex_group1-pysrc.html#KexGroup1.__init__">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see x.__class__.__doc__ for
- signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:04 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.logging22-module.html b/docs/paramiko.logging22-module.html
deleted file mode 100644
index 9a4ed69..0000000
--- a/docs/paramiko.logging22-module.html
+++ /dev/null
@@ -1,210 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.logging22</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;logging22
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.logging22-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module logging22</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.logging22-pysrc.html">source&nbsp;code</a></span></p>
-<p>Stub out logging on python &lt; 2.3.</p>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Classes</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.logging22.logger-class.html" class="summary-name">logger</a>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.logging22.StreamHandler-class.html" class="summary-name">StreamHandler</a>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.logging22.Formatter-class.html" class="summary-name">Formatter</a>
- </td>
- </tr>
-</table>
-<!-- ==================== FUNCTIONS ==================== -->
-<a name="section-Functions"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Functions</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="getLogger"></a><span class="summary-sig-name">getLogger</span>(<span class="summary-sig-arg">name</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.logging22-pysrc.html#getLogger">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DEBUG"></a><span class="summary-name">DEBUG</span> = <code title="10">10</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="INFO"></a><span class="summary-name">INFO</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="WARNING"></a><span class="summary-name">WARNING</span> = <code title="30">30</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="ERROR"></a><span class="summary-name">ERROR</span> = <code title="40">40</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CRITICAL"></a><span class="summary-name">CRITICAL</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:02 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.logging22-pysrc.html b/docs/paramiko.logging22-pysrc.html
deleted file mode 100644
index b4b8079..0000000
--- a/docs/paramiko.logging22-pysrc.html
+++ /dev/null
@@ -1,302 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.logging22</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;logging22
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.logging22-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.logging22-module.html">Module paramiko.logging22</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2003-2007 Robey Pointer &lt;robeypointer@gmail.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno">10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno">11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno">12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno">13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno">14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno">15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno">16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno">17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno">18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno">19</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L20"></a><tt class="py-lineno">20</tt> <tt class="py-line"><tt class="py-docstring">Stub out logging on python &lt; 2.3.</tt> </tt>
-<a name="L21"></a><tt class="py-lineno">21</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L22"></a><tt class="py-lineno">22</tt> <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno">23</tt> <tt class="py-line"> </tt>
-<a name="L24"></a><tt class="py-lineno">24</tt> <tt class="py-line"><tt id="link-0" class="py-name" targets="Variable paramiko.auth_handler.DEBUG=paramiko.auth_handler-module.html#DEBUG,Variable paramiko.channel.DEBUG=paramiko.channel-module.html#DEBUG,Variable paramiko.client.DEBUG=paramiko.client-module.html#DEBUG,Variable paramiko.common.DEBUG=paramiko.common-module.html#DEBUG,Variable paramiko.dsskey.DEBUG=paramiko.dsskey-module.html#DEBUG,Variable paramiko.hostkeys.DEBUG=paramiko.hostkeys-module.html#DEBUG,Variable paramiko.kex_gex.DEBUG=paramiko.kex_gex-module.html#DEBUG,Variable paramiko.kex_group1.DEBUG=paramiko.kex_group1-module.html#DEBUG,Variable paramiko.logging22.DEBUG=paramiko.logging22-module.html#DEBUG,Variable paramiko.packet.DEBUG=paramiko.packet-module.html#DEBUG,Variable paramiko.pkey.DEBUG=paramiko.pkey-module.html#DEBUG,Variable paramiko.rsakey.DEBUG=paramiko.rsakey-module.html#DEBUG,Variable paramiko.server.DEBUG=paramiko.server-module.html#DEBUG,Variable paramiko.sftp.DEBUG=paramiko.sftp-module.html#DEBUG,Variable paramiko.sftp_attr.DEBUG=paramiko.sftp_attr-module.html#DEBUG,Variable paramiko.sftp_client.DEBUG=paramiko.sftp_client-module.html#DEBUG,Variable paramiko.sftp_file.DEBUG=paramiko.sftp_file-module.html#DEBUG,Variable paramiko.sftp_handle.DEBUG=paramiko.sftp_handle-module.html#DEBUG,Variable paramiko.sftp_server.DEBUG=paramiko.sftp_server-module.html#DEBUG,Variable paramiko.sftp_si.DEBUG=paramiko.sftp_si-module.html#DEBUG,Variable paramiko.transport.DEBUG=paramiko.transport-module.html#DEBUG,Variable paramiko.util.DEBUG=paramiko.util-module.html#DEBUG"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-0', 'DEBUG', 'link-0');">DEBUG</a></tt> <tt class="py-op">=</tt> <tt class="py-number">10</tt> </tt>
-<a name="L25"></a><tt class="py-lineno">25</tt> <tt class="py-line"><tt id="link-1" class="py-name" targets="Variable paramiko.auth_handler.INFO=paramiko.auth_handler-module.html#INFO,Variable paramiko.channel.INFO=paramiko.channel-module.html#INFO,Variable paramiko.client.INFO=paramiko.client-module.html#INFO,Variable paramiko.common.INFO=paramiko.common-module.html#INFO,Variable paramiko.dsskey.INFO=paramiko.dsskey-module.html#INFO,Variable paramiko.hostkeys.INFO=paramiko.hostkeys-module.html#INFO,Variable paramiko.kex_gex.INFO=paramiko.kex_gex-module.html#INFO,Variable paramiko.kex_group1.INFO=paramiko.kex_group1-module.html#INFO,Variable paramiko.logging22.INFO=paramiko.logging22-module.html#INFO,Variable paramiko.packet.INFO=paramiko.packet-module.html#INFO,Variable paramiko.pkey.INFO=paramiko.pkey-module.html#INFO,Variable paramiko.rsakey.INFO=paramiko.rsakey-module.html#INFO,Variable paramiko.server.INFO=paramiko.server-module.html#INFO,Variable paramiko.sftp.INFO=paramiko.sftp-module.html#INFO,Variable paramiko.sftp_attr.INFO=paramiko.sftp_attr-module.html#INFO,Variable paramiko.sftp_client.INFO=paramiko.sftp_client-module.html#INFO,Variable paramiko.sftp_file.INFO=paramiko.sftp_file-module.html#INFO,Variable paramiko.sftp_handle.INFO=paramiko.sftp_handle-module.html#INFO,Variable paramiko.sftp_server.INFO=paramiko.sftp_server-module.html#INFO,Variable paramiko.sftp_si.INFO=paramiko.sftp_si-module.html#INFO,Variable paramiko.transport.INFO=paramiko.transport-module.html#INFO,Variable paramiko.util.INFO=paramiko.util-module.html#INFO"><a title="paramiko.auth_handler.INFO
-paramiko.channel.INFO
-paramiko.client.INFO
-paramiko.common.INFO
-paramiko.dsskey.INFO
-paramiko.hostkeys.INFO
-paramiko.kex_gex.INFO
-paramiko.kex_group1.INFO
-paramiko.logging22.INFO
-paramiko.packet.INFO
-paramiko.pkey.INFO
-paramiko.rsakey.INFO
-paramiko.server.INFO
-paramiko.sftp.INFO
-paramiko.sftp_attr.INFO
-paramiko.sftp_client.INFO
-paramiko.sftp_file.INFO
-paramiko.sftp_handle.INFO
-paramiko.sftp_server.INFO
-paramiko.sftp_si.INFO
-paramiko.transport.INFO
-paramiko.util.INFO" class="py-name" href="#" onclick="return doclink('link-1', 'INFO', 'link-1');">INFO</a></tt> <tt class="py-op">=</tt> <tt class="py-number">20</tt> </tt>
-<a name="L26"></a><tt class="py-lineno">26</tt> <tt class="py-line"><tt id="link-2" class="py-name" targets="Variable paramiko.auth_handler.WARNING=paramiko.auth_handler-module.html#WARNING,Variable paramiko.channel.WARNING=paramiko.channel-module.html#WARNING,Variable paramiko.client.WARNING=paramiko.client-module.html#WARNING,Variable paramiko.common.WARNING=paramiko.common-module.html#WARNING,Variable paramiko.dsskey.WARNING=paramiko.dsskey-module.html#WARNING,Variable paramiko.hostkeys.WARNING=paramiko.hostkeys-module.html#WARNING,Variable paramiko.kex_gex.WARNING=paramiko.kex_gex-module.html#WARNING,Variable paramiko.kex_group1.WARNING=paramiko.kex_group1-module.html#WARNING,Variable paramiko.logging22.WARNING=paramiko.logging22-module.html#WARNING,Variable paramiko.packet.WARNING=paramiko.packet-module.html#WARNING,Variable paramiko.pkey.WARNING=paramiko.pkey-module.html#WARNING,Variable paramiko.rsakey.WARNING=paramiko.rsakey-module.html#WARNING,Variable paramiko.server.WARNING=paramiko.server-module.html#WARNING,Variable paramiko.sftp.WARNING=paramiko.sftp-module.html#WARNING,Variable paramiko.sftp_attr.WARNING=paramiko.sftp_attr-module.html#WARNING,Variable paramiko.sftp_client.WARNING=paramiko.sftp_client-module.html#WARNING,Variable paramiko.sftp_file.WARNING=paramiko.sftp_file-module.html#WARNING,Variable paramiko.sftp_handle.WARNING=paramiko.sftp_handle-module.html#WARNING,Variable paramiko.sftp_server.WARNING=paramiko.sftp_server-module.html#WARNING,Variable paramiko.sftp_si.WARNING=paramiko.sftp_si-module.html#WARNING,Variable paramiko.transport.WARNING=paramiko.transport-module.html#WARNING,Variable paramiko.util.WARNING=paramiko.util-module.html#WARNING"><a title="paramiko.auth_handler.WARNING
-paramiko.channel.WARNING
-paramiko.client.WARNING
-paramiko.common.WARNING
-paramiko.dsskey.WARNING
-paramiko.hostkeys.WARNING
-paramiko.kex_gex.WARNING
-paramiko.kex_group1.WARNING
-paramiko.logging22.WARNING
-paramiko.packet.WARNING
-paramiko.pkey.WARNING
-paramiko.rsakey.WARNING
-paramiko.server.WARNING
-paramiko.sftp.WARNING
-paramiko.sftp_attr.WARNING
-paramiko.sftp_client.WARNING
-paramiko.sftp_file.WARNING
-paramiko.sftp_handle.WARNING
-paramiko.sftp_server.WARNING
-paramiko.sftp_si.WARNING
-paramiko.transport.WARNING
-paramiko.util.WARNING" class="py-name" href="#" onclick="return doclink('link-2', 'WARNING', 'link-2');">WARNING</a></tt> <tt class="py-op">=</tt> <tt class="py-number">30</tt> </tt>
-<a name="L27"></a><tt class="py-lineno">27</tt> <tt class="py-line"><tt id="link-3" class="py-name" targets="Variable paramiko.auth_handler.ERROR=paramiko.auth_handler-module.html#ERROR,Variable paramiko.channel.ERROR=paramiko.channel-module.html#ERROR,Variable paramiko.client.ERROR=paramiko.client-module.html#ERROR,Variable paramiko.common.ERROR=paramiko.common-module.html#ERROR,Variable paramiko.dsskey.ERROR=paramiko.dsskey-module.html#ERROR,Variable paramiko.hostkeys.ERROR=paramiko.hostkeys-module.html#ERROR,Variable paramiko.kex_gex.ERROR=paramiko.kex_gex-module.html#ERROR,Variable paramiko.kex_group1.ERROR=paramiko.kex_group1-module.html#ERROR,Variable paramiko.logging22.ERROR=paramiko.logging22-module.html#ERROR,Variable paramiko.packet.ERROR=paramiko.packet-module.html#ERROR,Variable paramiko.pkey.ERROR=paramiko.pkey-module.html#ERROR,Variable paramiko.rsakey.ERROR=paramiko.rsakey-module.html#ERROR,Variable paramiko.server.ERROR=paramiko.server-module.html#ERROR,Variable paramiko.sftp.ERROR=paramiko.sftp-module.html#ERROR,Variable paramiko.sftp_attr.ERROR=paramiko.sftp_attr-module.html#ERROR,Variable paramiko.sftp_client.ERROR=paramiko.sftp_client-module.html#ERROR,Variable paramiko.sftp_file.ERROR=paramiko.sftp_file-module.html#ERROR,Variable paramiko.sftp_handle.ERROR=paramiko.sftp_handle-module.html#ERROR,Variable paramiko.sftp_server.ERROR=paramiko.sftp_server-module.html#ERROR,Variable paramiko.sftp_si.ERROR=paramiko.sftp_si-module.html#ERROR,Variable paramiko.transport.ERROR=paramiko.transport-module.html#ERROR,Variable paramiko.util.ERROR=paramiko.util-module.html#ERROR"><a title="paramiko.auth_handler.ERROR
-paramiko.channel.ERROR
-paramiko.client.ERROR
-paramiko.common.ERROR
-paramiko.dsskey.ERROR
-paramiko.hostkeys.ERROR
-paramiko.kex_gex.ERROR
-paramiko.kex_group1.ERROR
-paramiko.logging22.ERROR
-paramiko.packet.ERROR
-paramiko.pkey.ERROR
-paramiko.rsakey.ERROR
-paramiko.server.ERROR
-paramiko.sftp.ERROR
-paramiko.sftp_attr.ERROR
-paramiko.sftp_client.ERROR
-paramiko.sftp_file.ERROR
-paramiko.sftp_handle.ERROR
-paramiko.sftp_server.ERROR
-paramiko.sftp_si.ERROR
-paramiko.transport.ERROR
-paramiko.util.ERROR" class="py-name" href="#" onclick="return doclink('link-3', 'ERROR', 'link-3');">ERROR</a></tt> <tt class="py-op">=</tt> <tt class="py-number">40</tt> </tt>
-<a name="L28"></a><tt class="py-lineno">28</tt> <tt class="py-line"><tt id="link-4" class="py-name" targets="Variable paramiko.auth_handler.CRITICAL=paramiko.auth_handler-module.html#CRITICAL,Variable paramiko.channel.CRITICAL=paramiko.channel-module.html#CRITICAL,Variable paramiko.client.CRITICAL=paramiko.client-module.html#CRITICAL,Variable paramiko.common.CRITICAL=paramiko.common-module.html#CRITICAL,Variable paramiko.dsskey.CRITICAL=paramiko.dsskey-module.html#CRITICAL,Variable paramiko.hostkeys.CRITICAL=paramiko.hostkeys-module.html#CRITICAL,Variable paramiko.kex_gex.CRITICAL=paramiko.kex_gex-module.html#CRITICAL,Variable paramiko.kex_group1.CRITICAL=paramiko.kex_group1-module.html#CRITICAL,Variable paramiko.logging22.CRITICAL=paramiko.logging22-module.html#CRITICAL,Variable paramiko.packet.CRITICAL=paramiko.packet-module.html#CRITICAL,Variable paramiko.pkey.CRITICAL=paramiko.pkey-module.html#CRITICAL,Variable paramiko.rsakey.CRITICAL=paramiko.rsakey-module.html#CRITICAL,Variable paramiko.server.CRITICAL=paramiko.server-module.html#CRITICAL,Variable paramiko.sftp.CRITICAL=paramiko.sftp-module.html#CRITICAL,Variable paramiko.sftp_attr.CRITICAL=paramiko.sftp_attr-module.html#CRITICAL,Variable paramiko.sftp_client.CRITICAL=paramiko.sftp_client-module.html#CRITICAL,Variable paramiko.sftp_file.CRITICAL=paramiko.sftp_file-module.html#CRITICAL,Variable paramiko.sftp_handle.CRITICAL=paramiko.sftp_handle-module.html#CRITICAL,Variable paramiko.sftp_server.CRITICAL=paramiko.sftp_server-module.html#CRITICAL,Variable paramiko.sftp_si.CRITICAL=paramiko.sftp_si-module.html#CRITICAL,Variable paramiko.transport.CRITICAL=paramiko.transport-module.html#CRITICAL,Variable paramiko.util.CRITICAL=paramiko.util-module.html#CRITICAL"><a title="paramiko.auth_handler.CRITICAL
-paramiko.channel.CRITICAL
-paramiko.client.CRITICAL
-paramiko.common.CRITICAL
-paramiko.dsskey.CRITICAL
-paramiko.hostkeys.CRITICAL
-paramiko.kex_gex.CRITICAL
-paramiko.kex_group1.CRITICAL
-paramiko.logging22.CRITICAL
-paramiko.packet.CRITICAL
-paramiko.pkey.CRITICAL
-paramiko.rsakey.CRITICAL
-paramiko.server.CRITICAL
-paramiko.sftp.CRITICAL
-paramiko.sftp_attr.CRITICAL
-paramiko.sftp_client.CRITICAL
-paramiko.sftp_file.CRITICAL
-paramiko.sftp_handle.CRITICAL
-paramiko.sftp_server.CRITICAL
-paramiko.sftp_si.CRITICAL
-paramiko.transport.CRITICAL
-paramiko.util.CRITICAL" class="py-name" href="#" onclick="return doclink('link-4', 'CRITICAL', 'link-4');">CRITICAL</a></tt> <tt class="py-op">=</tt> <tt class="py-number">50</tt> </tt>
-<a name="L29"></a><tt class="py-lineno">29</tt> <tt class="py-line"> </tt>
-<a name="L30"></a><tt class="py-lineno">30</tt> <tt class="py-line"> </tt>
-<a name="getLogger"></a><div id="getLogger-def"><a name="L31"></a><tt class="py-lineno">31</tt> <a class="py-toggle" href="#" id="getLogger-toggle" onclick="return toggle('getLogger');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.logging22-module.html#getLogger">getLogger</a><tt class="py-op">(</tt><tt class="py-param">name</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="getLogger-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="getLogger-expanded"><a name="L32"></a><tt class="py-lineno">32</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-5" class="py-name" targets="Variable paramiko.logging22._logger=paramiko.logging22-module.html#_logger"><a title="paramiko.logging22._logger" class="py-name" href="#" onclick="return doclink('link-5', '_logger', 'link-5');">_logger</a></tt> </tt>
-</div><a name="L33"></a><tt class="py-lineno">33</tt> <tt class="py-line"> </tt>
-<a name="L34"></a><tt class="py-lineno">34</tt> <tt class="py-line"> </tt>
-<a name="logger"></a><div id="logger-def"><a name="L35"></a><tt class="py-lineno">35</tt> <a class="py-toggle" href="#" id="logger-toggle" onclick="return toggle('logger');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.logging22.logger-class.html">logger</a> <tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="logger-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="logger-expanded"><a name="logger.__init__"></a><div id="logger.__init__-def"><a name="L36"></a><tt class="py-lineno">36</tt> <a class="py-toggle" href="#" id="logger.__init__-toggle" onclick="return toggle('logger.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.logging22.logger-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="logger.__init__-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="logger.__init__-expanded"><a name="L37"></a><tt class="py-lineno">37</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handlers</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-op">]</tt> </tt>
-<a name="L38"></a><tt class="py-lineno">38</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">level</tt> <tt class="py-op">=</tt> <tt id="link-6" class="py-name"><a title="paramiko.auth_handler.ERROR
-paramiko.channel.ERROR
-paramiko.client.ERROR
-paramiko.common.ERROR
-paramiko.dsskey.ERROR
-paramiko.hostkeys.ERROR
-paramiko.kex_gex.ERROR
-paramiko.kex_group1.ERROR
-paramiko.logging22.ERROR
-paramiko.packet.ERROR
-paramiko.pkey.ERROR
-paramiko.rsakey.ERROR
-paramiko.server.ERROR
-paramiko.sftp.ERROR
-paramiko.sftp_attr.ERROR
-paramiko.sftp_client.ERROR
-paramiko.sftp_file.ERROR
-paramiko.sftp_handle.ERROR
-paramiko.sftp_server.ERROR
-paramiko.sftp_si.ERROR
-paramiko.transport.ERROR
-paramiko.util.ERROR" class="py-name" href="#" onclick="return doclink('link-6', 'ERROR', 'link-3');">ERROR</a></tt> </tt>
-</div><a name="L39"></a><tt class="py-lineno">39</tt> <tt class="py-line"> </tt>
-<a name="logger.setLevel"></a><div id="logger.setLevel-def"><a name="L40"></a><tt class="py-lineno">40</tt> <a class="py-toggle" href="#" id="logger.setLevel-toggle" onclick="return toggle('logger.setLevel');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.logging22.logger-class.html#setLevel">setLevel</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">level</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="logger.setLevel-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="logger.setLevel-expanded"><a name="L41"></a><tt class="py-lineno">41</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">level</tt> <tt class="py-op">=</tt> <tt class="py-name">level</tt> </tt>
-</div><a name="L42"></a><tt class="py-lineno">42</tt> <tt class="py-line"> </tt>
-<a name="logger.addHandler"></a><div id="logger.addHandler-def"><a name="L43"></a><tt class="py-lineno">43</tt> <a class="py-toggle" href="#" id="logger.addHandler-toggle" onclick="return toggle('logger.addHandler');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.logging22.logger-class.html#addHandler">addHandler</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">h</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="logger.addHandler-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="logger.addHandler-expanded"><a name="L44"></a><tt class="py-lineno">44</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handlers</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">h</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L45"></a><tt class="py-lineno">45</tt> <tt class="py-line"> </tt>
-<a name="logger.addFilter"></a><div id="logger.addFilter-def"><a name="L46"></a><tt class="py-lineno">46</tt> <a class="py-toggle" href="#" id="logger.addFilter-toggle" onclick="return toggle('logger.addFilter');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.logging22.logger-class.html#addFilter">addFilter</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">filter</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="logger.addFilter-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="logger.addFilter-expanded"><a name="L47"></a><tt class="py-lineno">47</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-</div><a name="L48"></a><tt class="py-lineno">48</tt> <tt class="py-line"> </tt>
-<a name="logger.log"></a><div id="logger.log-def"><a name="L49"></a><tt class="py-lineno">49</tt> <a class="py-toggle" href="#" id="logger.log-toggle" onclick="return toggle('logger.log');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.logging22.logger-class.html#log">log</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">level</tt><tt class="py-op">,</tt> <tt class="py-param">text</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="logger.log-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="logger.log-expanded"><a name="L50"></a><tt class="py-lineno">50</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">level</tt> <tt class="py-op">&gt;=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">level</tt><tt class="py-op">:</tt> </tt>
-<a name="L51"></a><tt class="py-lineno">51</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">h</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handlers</tt><tt class="py-op">:</tt> </tt>
-<a name="L52"></a><tt class="py-lineno">52</tt> <tt class="py-line"> <tt class="py-name">h</tt><tt class="py-op">.</tt><tt class="py-name">f</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Method paramiko.BufferedFile.write()=paramiko.BufferedFile-class.html#write,Method paramiko.SFTPHandle.write()=paramiko.SFTPHandle-class.html#write"><a title="paramiko.BufferedFile.write
-paramiko.SFTPHandle.write" class="py-name" href="#" onclick="return doclink('link-7', 'write', 'link-7');">write</a></tt><tt class="py-op">(</tt><tt class="py-name">text</tt> <tt class="py-op">+</tt> <tt class="py-string">'\n'</tt><tt class="py-op">)</tt> </tt>
-<a name="L53"></a><tt class="py-lineno">53</tt> <tt class="py-line"> <tt class="py-name">h</tt><tt class="py-op">.</tt><tt class="py-name">f</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Method paramiko.BufferedFile.flush()=paramiko.BufferedFile-class.html#flush"><a title="paramiko.BufferedFile.flush" class="py-name" href="#" onclick="return doclink('link-8', 'flush', 'link-8');">flush</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L54"></a><tt class="py-lineno">54</tt> <tt class="py-line"> </tt>
-<a name="StreamHandler"></a><div id="StreamHandler-def"><a name="L55"></a><tt class="py-lineno">55</tt> <a class="py-toggle" href="#" id="StreamHandler-toggle" onclick="return toggle('StreamHandler');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.logging22.StreamHandler-class.html">StreamHandler</a> <tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="StreamHandler-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="StreamHandler-expanded"><a name="StreamHandler.__init__"></a><div id="StreamHandler.__init__-def"><a name="L56"></a><tt class="py-lineno">56</tt> <a class="py-toggle" href="#" id="StreamHandler.__init__-toggle" onclick="return toggle('StreamHandler.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.logging22.StreamHandler-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">f</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="StreamHandler.__init__-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="StreamHandler.__init__-expanded"><a name="L57"></a><tt class="py-lineno">57</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">f</tt> <tt class="py-op">=</tt> <tt class="py-name">f</tt> </tt>
-</div><a name="L58"></a><tt class="py-lineno">58</tt> <tt class="py-line"> </tt>
-<a name="StreamHandler.setFormatter"></a><div id="StreamHandler.setFormatter-def"><a name="L59"></a><tt class="py-lineno">59</tt> <a class="py-toggle" href="#" id="StreamHandler.setFormatter-toggle" onclick="return toggle('StreamHandler.setFormatter');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.logging22.StreamHandler-class.html#setFormatter">setFormatter</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">f</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="StreamHandler.setFormatter-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="StreamHandler.setFormatter-expanded"><a name="L60"></a><tt class="py-lineno">60</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-</div></div><a name="L61"></a><tt class="py-lineno">61</tt> <tt class="py-line"> </tt>
-<a name="Formatter"></a><div id="Formatter-def"><a name="L62"></a><tt class="py-lineno">62</tt> <a class="py-toggle" href="#" id="Formatter-toggle" onclick="return toggle('Formatter');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.logging22.Formatter-class.html">Formatter</a> <tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Formatter-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="Formatter-expanded"><a name="Formatter.__init__"></a><div id="Formatter.__init__-def"><a name="L63"></a><tt class="py-lineno">63</tt> <a class="py-toggle" href="#" id="Formatter.__init__-toggle" onclick="return toggle('Formatter.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.logging22.Formatter-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">x</tt><tt class="py-op">,</tt> <tt class="py-param">y</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Formatter.__init__-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="Formatter.__init__-expanded"><a name="L64"></a><tt class="py-lineno">64</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-</div></div><a name="L65"></a><tt class="py-lineno">65</tt> <tt class="py-line"> </tt>
-<a name="L66"></a><tt class="py-lineno">66</tt> <tt class="py-line"><tt id="link-9" class="py-name"><a title="paramiko.logging22._logger" class="py-name" href="#" onclick="return doclink('link-9', '_logger', 'link-5');">_logger</a></tt> <tt class="py-op">=</tt> <tt id="link-10" class="py-name" targets="Class paramiko.logging22.logger=paramiko.logging22.logger-class.html"><a title="paramiko.logging22.logger" class="py-name" href="#" onclick="return doclink('link-10', 'logger', 'link-10');">logger</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L67"></a><tt class="py-lineno">67</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:06 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.logging22.Formatter-class.html b/docs/paramiko.logging22.Formatter-class.html
deleted file mode 100644
index 4fcf2cc..0000000
--- a/docs/paramiko.logging22.Formatter-class.html
+++ /dev/null
@@ -1,209 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.logging22.Formatter</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- <a href="paramiko.logging22-module.html">Module&nbsp;logging22</a> ::
- Class&nbsp;Formatter
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.logging22.Formatter-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Formatter</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.logging22-pysrc.html#Formatter">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- <strong class="uidshort">Formatter</strong>
-</pre>
-
-<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.logging22.Formatter-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">x</span>,
- <span class="summary-sig-arg">y</span>)</span><br />
- x.__init__(...) initializes x; see x.__class__.__doc__ for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.logging22-pysrc.html#Formatter.__init__">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">x</span>,
- <span class="sig-arg">y</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.logging22-pysrc.html#Formatter.__init__">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see x.__class__.__doc__ for
- signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:04 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.logging22.StreamHandler-class.html b/docs/paramiko.logging22.StreamHandler-class.html
deleted file mode 100644
index ec646d7..0000000
--- a/docs/paramiko.logging22.StreamHandler-class.html
+++ /dev/null
@@ -1,224 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.logging22.StreamHandler</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- <a href="paramiko.logging22-module.html">Module&nbsp;logging22</a> ::
- Class&nbsp;StreamHandler
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.logging22.StreamHandler-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class StreamHandler</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.logging22-pysrc.html#StreamHandler">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- <strong class="uidshort">StreamHandler</strong>
-</pre>
-
-<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.logging22.StreamHandler-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">f</span>)</span><br />
- x.__init__(...) initializes x; see x.__class__.__doc__ for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.logging22-pysrc.html#StreamHandler.__init__">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="setFormatter"></a><span class="summary-sig-name">setFormatter</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">f</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.logging22-pysrc.html#StreamHandler.setFormatter">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">f</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.logging22-pysrc.html#StreamHandler.__init__">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see x.__class__.__doc__ for
- signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:04 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.logging22.logger-class.html b/docs/paramiko.logging22.logger-class.html
deleted file mode 100644
index 420aeee..0000000
--- a/docs/paramiko.logging22.logger-class.html
+++ /dev/null
@@ -1,274 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.logging22.logger</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- <a href="paramiko.logging22-module.html">Module&nbsp;logging22</a> ::
- Class&nbsp;logger
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.logging22.logger-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class logger</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.logging22-pysrc.html#logger">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- <strong class="uidshort">logger</strong>
-</pre>
-
-<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.logging22.logger-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- x.__init__(...) initializes x; see x.__class__.__doc__ for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.logging22-pysrc.html#logger.__init__">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="setLevel"></a><span class="summary-sig-name">setLevel</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">level</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.logging22-pysrc.html#logger.setLevel">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="addHandler"></a><span class="summary-sig-name">addHandler</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">h</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.logging22-pysrc.html#logger.addHandler">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="addFilter"></a><span class="summary-sig-name">addFilter</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">filter</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.logging22-pysrc.html#logger.addFilter">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="log"></a><span class="summary-sig-name">log</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">level</span>,
- <span class="summary-sig-arg">text</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.logging22-pysrc.html#logger.log">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.logging22-pysrc.html#logger.__init__">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see x.__class__.__doc__ for
- signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:04 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.message-module.html b/docs/paramiko.message-module.html
deleted file mode 100644
index 9f7103e..0000000
--- a/docs/paramiko.message-module.html
+++ /dev/null
@@ -1,120 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.message</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;message
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.message-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module message</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.message-pysrc.html">source&nbsp;code</a></span></p>
-<p>Implementation of an SSH2 &quot;message&quot;.</p>
-
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'paramiko'"><code class="variable-quote">'</code><code class="variable-string">paramiko</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:02 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.message-pysrc.html b/docs/paramiko.message-pysrc.html
deleted file mode 100644
index 723920e..0000000
--- a/docs/paramiko.message-pysrc.html
+++ /dev/null
@@ -1,423 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.message</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;message
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.message-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.message-module.html" onclick="show_private();">Module paramiko.message</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2003-2007 Robey Pointer &lt;robeypointer@gmail.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring">Implementation of an SSH2 "message".</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">struct</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">cStringIO</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package paramiko=paramiko-module.html"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-0', 'paramiko', 'link-0');">paramiko</a></tt> <tt class="py-keyword">import</tt> <tt id="link-1" class="py-name" targets="Module paramiko.util=paramiko.util-module.html"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-1', 'util', 'link-1');">util</a></tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> </tt>
-<a name="Message"></a><div id="Message-def"><a name="L29"></a><tt class="py-lineno"> 29</tt> <a class="py-toggle" href="#" id="Message-toggle" onclick="return toggle('Message');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.message.Message-class.html">Message</a> <tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Message-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="Message-expanded"><a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"><tt class="py-docstring"> An SSH2 I{Message} is a stream of bytes that encodes some combination of</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"><tt class="py-docstring"> strings, integers, bools, and infinite-precision integers (known in python</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"><tt class="py-docstring"> as I{long}s). This class builds or breaks down such a byte stream.</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"><tt class="py-docstring"> Normally you don't need to deal with anything this low-level, but it's</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"><tt class="py-docstring"> exposed for people implementing custom extensions, or features that</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"><tt class="py-docstring"> paramiko doesn't support yet.</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> </tt>
-<a name="Message.__init__"></a><div id="Message.__init__-def"><a name="L40"></a><tt class="py-lineno"> 40</tt> <a class="py-toggle" href="#" id="Message.__init__-toggle" onclick="return toggle('Message.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.message.Message-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">content</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Message.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Message.__init__-expanded"><a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"><tt class="py-docstring"> Create a new SSH2 Message.</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"><tt class="py-docstring"> @param content: the byte stream to use as the Message content (passed</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"><tt class="py-docstring"> in only when decomposing a Message).</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"><tt class="py-docstring"> @type content: string</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">content</tt> <tt class="py-op">!=</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Module paramiko.packet=paramiko.packet-module.html"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-2', 'packet', 'link-2');">packet</a></tt> <tt class="py-op">=</tt> <tt class="py-name">cStringIO</tt><tt class="py-op">.</tt><tt class="py-name">StringIO</tt><tt class="py-op">(</tt><tt class="py-name">content</tt><tt class="py-op">)</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-3', 'packet', 'link-2');">packet</a></tt> <tt class="py-op">=</tt> <tt class="py-name">cStringIO</tt><tt class="py-op">.</tt><tt class="py-name">StringIO</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> </tt>
-<a name="Message.__str__"></a><div id="Message.__str__-def"><a name="L53"></a><tt class="py-lineno"> 53</tt> <a class="py-toggle" href="#" id="Message.__str__-toggle" onclick="return toggle('Message.__str__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.message.Message-class.html#__str__">__str__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Message.__str__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Message.__str__-expanded"><a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"><tt class="py-docstring"> Return the byte stream content of this Message, as a string.</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"><tt class="py-docstring"> @return: the contents of this Message.</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: string</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-4', 'packet', 'link-2');">packet</a></tt><tt class="py-op">.</tt><tt class="py-name">getvalue</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> </tt>
-<a name="Message.__repr__"></a><div id="Message.__repr__-def"><a name="L62"></a><tt class="py-lineno"> 62</tt> <a class="py-toggle" href="#" id="Message.__repr__-toggle" onclick="return toggle('Message.__repr__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.message.Message-class.html#__repr__">__repr__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Message.__repr__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Message.__repr__-expanded"><a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"><tt class="py-docstring"> Returns a string representation of this object, for debugging.</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: string</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">'paramiko.Message('</tt> <tt class="py-op">+</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-5', 'packet', 'link-2');">packet</a></tt><tt class="py-op">.</tt><tt class="py-name">getvalue</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">')'</tt> </tt>
-</div><a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> </tt>
-<a name="Message.rewind"></a><div id="Message.rewind-def"><a name="L70"></a><tt class="py-lineno"> 70</tt> <a class="py-toggle" href="#" id="Message.rewind-toggle" onclick="return toggle('Message.rewind');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.message.Message-class.html#rewind">rewind</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Message.rewind-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Message.rewind-expanded"><a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"><tt class="py-docstring"> Rewind the message to the beginning as if no items had been parsed</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"><tt class="py-docstring"> out of it yet.</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-6', 'packet', 'link-2');">packet</a></tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Method paramiko.BufferedFile.seek()=paramiko.BufferedFile-class.html#seek,Method paramiko.SFTPFile.seek()=paramiko.SFTPFile-class.html#seek"><a title="paramiko.BufferedFile.seek
-paramiko.SFTPFile.seek" class="py-name" href="#" onclick="return doclink('link-7', 'seek', 'link-7');">seek</a></tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> </tt>
-<a name="Message.get_remainder"></a><div id="Message.get_remainder-def"><a name="L77"></a><tt class="py-lineno"> 77</tt> <a class="py-toggle" href="#" id="Message.get_remainder-toggle" onclick="return toggle('Message.get_remainder');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.message.Message-class.html#get_remainder">get_remainder</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Message.get_remainder-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Message.get_remainder-expanded"><a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"><tt class="py-docstring"> Return the bytes of this Message that haven't already been parsed and</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"><tt class="py-docstring"> returned.</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"><tt class="py-docstring"> @return: a string of the bytes not parsed yet.</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: string</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-name">position</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-8', 'packet', 'link-2');">packet</a></tt><tt class="py-op">.</tt><tt id="link-9" class="py-name" targets="Method paramiko.BufferedFile.tell()=paramiko.BufferedFile-class.html#tell"><a title="paramiko.BufferedFile.tell" class="py-name" href="#" onclick="return doclink('link-9', 'tell', 'link-9');">tell</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-name">remainder</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-10', 'packet', 'link-2');">packet</a></tt><tt class="py-op">.</tt><tt id="link-11" class="py-name" targets="Method paramiko.BufferedFile.read()=paramiko.BufferedFile-class.html#read,Method paramiko.SFTPHandle.read()=paramiko.SFTPHandle-class.html#read,Method paramiko.buffered_pipe.BufferedPipe.read()=paramiko.buffered_pipe.BufferedPipe-class.html#read"><a title="paramiko.BufferedFile.read
-paramiko.SFTPHandle.read
-paramiko.buffered_pipe.BufferedPipe.read" class="py-name" href="#" onclick="return doclink('link-11', 'read', 'link-11');">read</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-12', 'packet', 'link-2');">packet</a></tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="paramiko.BufferedFile.seek
-paramiko.SFTPFile.seek" class="py-name" href="#" onclick="return doclink('link-13', 'seek', 'link-7');">seek</a></tt><tt class="py-op">(</tt><tt class="py-name">position</tt><tt class="py-op">)</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">remainder</tt> </tt>
-</div><a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> </tt>
-<a name="Message.get_so_far"></a><div id="Message.get_so_far-def"><a name="L90"></a><tt class="py-lineno"> 90</tt> <a class="py-toggle" href="#" id="Message.get_so_far-toggle" onclick="return toggle('Message.get_so_far');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.message.Message-class.html#get_so_far">get_so_far</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Message.get_so_far-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Message.get_so_far-expanded"><a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"><tt class="py-docstring"> Returns the bytes of this Message that have been parsed and returned.</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"><tt class="py-docstring"> The string passed into a Message's constructor can be regenerated by</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"><tt class="py-docstring"> concatenating C{get_so_far} and L{get_remainder}.</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"><tt class="py-docstring"> @return: a string of the bytes parsed so far.</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: string</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-name">position</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-14', 'packet', 'link-2');">packet</a></tt><tt class="py-op">.</tt><tt id="link-15" class="py-name"><a title="paramiko.BufferedFile.tell" class="py-name" href="#" onclick="return doclink('link-15', 'tell', 'link-9');">tell</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name" targets="Method paramiko.Message.rewind()=paramiko.Message-class.html#rewind"><a title="paramiko.Message.rewind" class="py-name" href="#" onclick="return doclink('link-16', 'rewind', 'link-16');">rewind</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-17', 'packet', 'link-2');">packet</a></tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="paramiko.BufferedFile.read
-paramiko.SFTPHandle.read
-paramiko.buffered_pipe.BufferedPipe.read" class="py-name" href="#" onclick="return doclink('link-18', 'read', 'link-11');">read</a></tt><tt class="py-op">(</tt><tt class="py-name">position</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> </tt>
-<a name="Message.get_bytes"></a><div id="Message.get_bytes-def"><a name="L103"></a><tt class="py-lineno">103</tt> <a class="py-toggle" href="#" id="Message.get_bytes-toggle" onclick="return toggle('Message.get_bytes');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.message.Message-class.html#get_bytes">get_bytes</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">n</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Message.get_bytes-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Message.get_bytes-expanded"><a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"><tt class="py-docstring"> Return the next C{n} bytes of the Message, without decomposing into</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"><tt class="py-docstring"> an int, string, etc. Just the raw bytes are returned.</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"><tt class="py-docstring"> @return: a string of the next C{n} bytes of the Message, or a string</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"><tt class="py-docstring"> of C{n} zero bytes, if there aren't C{n} bytes remaining.</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: string</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-name">b</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-19', 'packet', 'link-2');">packet</a></tt><tt class="py-op">.</tt><tt id="link-20" class="py-name"><a title="paramiko.BufferedFile.read
-paramiko.SFTPHandle.read
-paramiko.buffered_pipe.BufferedPipe.read" class="py-name" href="#" onclick="return doclink('link-20', 'read', 'link-11');">read</a></tt><tt class="py-op">(</tt><tt class="py-name">n</tt><tt class="py-op">)</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">b</tt><tt class="py-op">)</tt> <tt class="py-op">&lt;</tt> <tt class="py-name">n</tt><tt class="py-op">:</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">b</tt> <tt class="py-op">+</tt> <tt class="py-string">'\x00'</tt> <tt class="py-op">*</tt> <tt class="py-op">(</tt><tt class="py-name">n</tt> <tt class="py-op">-</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">b</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">b</tt> </tt>
-</div><a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> </tt>
-<a name="Message.get_byte"></a><div id="Message.get_byte-def"><a name="L117"></a><tt class="py-lineno">117</tt> <a class="py-toggle" href="#" id="Message.get_byte-toggle" onclick="return toggle('Message.get_byte');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.message.Message-class.html#get_byte">get_byte</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Message.get_byte-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Message.get_byte-expanded"><a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"><tt class="py-docstring"> Return the next byte of the Message, without decomposing it. This</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"><tt class="py-docstring"> is equivalent to L{get_bytes(1)&lt;get_bytes&gt;}.</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"><tt class="py-docstring"> @return: the next byte of the Message, or C{'\000'} if there aren't</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"><tt class="py-docstring"> any bytes remaining.</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: string</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name" targets="Method paramiko.Message.get_bytes()=paramiko.Message-class.html#get_bytes"><a title="paramiko.Message.get_bytes" class="py-name" href="#" onclick="return doclink('link-21', 'get_bytes', 'link-21');">get_bytes</a></tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> </tt>
-<a name="Message.get_boolean"></a><div id="Message.get_boolean-def"><a name="L128"></a><tt class="py-lineno">128</tt> <a class="py-toggle" href="#" id="Message.get_boolean-toggle" onclick="return toggle('Message.get_boolean');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.message.Message-class.html#get_boolean">get_boolean</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Message.get_boolean-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Message.get_boolean-expanded"><a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"><tt class="py-docstring"> Fetch a boolean from the stream.</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"><tt class="py-docstring"> @return: C{True} or C{False} (from the Message).</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: bool</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-name">b</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="paramiko.Message.get_bytes" class="py-name" href="#" onclick="return doclink('link-22', 'get_bytes', 'link-21');">get_bytes</a></tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">b</tt> <tt class="py-op">!=</tt> <tt class="py-string">'\x00'</tt> </tt>
-</div><a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> </tt>
-<a name="Message.get_int"></a><div id="Message.get_int-def"><a name="L138"></a><tt class="py-lineno">138</tt> <a class="py-toggle" href="#" id="Message.get_int-toggle" onclick="return toggle('Message.get_int');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.message.Message-class.html#get_int">get_int</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Message.get_int-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Message.get_int-expanded"><a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"><tt class="py-docstring"> Fetch an int from the stream.</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"><tt class="py-docstring"> @return: a 32-bit unsigned integer.</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: int</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">struct</tt><tt class="py-op">.</tt><tt class="py-name">unpack</tt><tt class="py-op">(</tt><tt class="py-string">'&gt;I'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="paramiko.Message.get_bytes" class="py-name" href="#" onclick="return doclink('link-23', 'get_bytes', 'link-21');">get_bytes</a></tt><tt class="py-op">(</tt><tt class="py-number">4</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-</div><a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> </tt>
-<a name="Message.get_int64"></a><div id="Message.get_int64-def"><a name="L147"></a><tt class="py-lineno">147</tt> <a class="py-toggle" href="#" id="Message.get_int64-toggle" onclick="return toggle('Message.get_int64');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.message.Message-class.html#get_int64">get_int64</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Message.get_int64-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Message.get_int64-expanded"><a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"><tt class="py-docstring"> Fetch a 64-bit int from the stream.</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"><tt class="py-docstring"> @return: a 64-bit unsigned integer.</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: long</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">struct</tt><tt class="py-op">.</tt><tt class="py-name">unpack</tt><tt class="py-op">(</tt><tt class="py-string">'&gt;Q'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name"><a title="paramiko.Message.get_bytes" class="py-name" href="#" onclick="return doclink('link-24', 'get_bytes', 'link-21');">get_bytes</a></tt><tt class="py-op">(</tt><tt class="py-number">8</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-</div><a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> </tt>
-<a name="Message.get_mpint"></a><div id="Message.get_mpint-def"><a name="L156"></a><tt class="py-lineno">156</tt> <a class="py-toggle" href="#" id="Message.get_mpint-toggle" onclick="return toggle('Message.get_mpint');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.message.Message-class.html#get_mpint">get_mpint</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Message.get_mpint-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Message.get_mpint-expanded"><a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"><tt class="py-docstring"> Fetch a long int (mpint) from the stream.</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"><tt class="py-docstring"> @return: an arbitrary-length integer.</tt> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: long</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-25" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-25', 'util', 'link-1');">util</a></tt><tt class="py-op">.</tt><tt id="link-26" class="py-name" targets="Function paramiko.util.inflate_long()=paramiko.util-module.html#inflate_long"><a title="paramiko.util.inflate_long" class="py-name" href="#" onclick="return doclink('link-26', 'inflate_long', 'link-26');">inflate_long</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name" targets="Method paramiko.Message.get_string()=paramiko.Message-class.html#get_string"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-27', 'get_string', 'link-27');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> </tt>
-<a name="Message.get_string"></a><div id="Message.get_string-def"><a name="L165"></a><tt class="py-lineno">165</tt> <a class="py-toggle" href="#" id="Message.get_string-toggle" onclick="return toggle('Message.get_string');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.message.Message-class.html#get_string">get_string</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Message.get_string-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Message.get_string-expanded"><a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"><tt class="py-docstring"> Fetch a string from the stream. This could be a byte string and may</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"><tt class="py-docstring"> contain unprintable characters. (It's not unheard of for a string to</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"><tt class="py-docstring"> contain another byte-stream Message.)</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"><tt class="py-docstring"> @return: a string.</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: string</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="paramiko.Message.get_bytes" class="py-name" href="#" onclick="return doclink('link-28', 'get_bytes', 'link-21');">get_bytes</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name" targets="Method paramiko.Message.get_int()=paramiko.Message-class.html#get_int"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-29', 'get_int', 'link-29');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> </tt>
-<a name="Message.get_list"></a><div id="Message.get_list-def"><a name="L176"></a><tt class="py-lineno">176</tt> <a class="py-toggle" href="#" id="Message.get_list-toggle" onclick="return toggle('Message.get_list');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.message.Message-class.html#get_list">get_list</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Message.get_list-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Message.get_list-expanded"><a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"><tt class="py-docstring"> Fetch a list of strings from the stream. These are trivially encoded</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"><tt class="py-docstring"> as comma-separated values in a string.</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"><tt class="py-docstring"> @return: a list of strings.</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: list of strings</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-30', 'get_string', 'link-27');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">','</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> </tt>
-<a name="Message.add_bytes"></a><div id="Message.add_bytes-def"><a name="L186"></a><tt class="py-lineno">186</tt> <a class="py-toggle" href="#" id="Message.add_bytes-toggle" onclick="return toggle('Message.add_bytes');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.message.Message-class.html#add_bytes">add_bytes</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">b</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Message.add_bytes-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Message.add_bytes-expanded"><a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"><tt class="py-docstring"> Write bytes to the stream, without any formatting.</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"><tt class="py-docstring"> @param b: bytes to add</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"><tt class="py-docstring"> @type b: str</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-31', 'packet', 'link-2');">packet</a></tt><tt class="py-op">.</tt><tt id="link-32" class="py-name" targets="Method paramiko.BufferedFile.write()=paramiko.BufferedFile-class.html#write,Method paramiko.SFTPHandle.write()=paramiko.SFTPHandle-class.html#write"><a title="paramiko.BufferedFile.write
-paramiko.SFTPHandle.write" class="py-name" href="#" onclick="return doclink('link-32', 'write', 'link-32');">write</a></tt><tt class="py-op">(</tt><tt class="py-name">b</tt><tt class="py-op">)</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt> </tt>
-</div><a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"> </tt>
-<a name="Message.add_byte"></a><div id="Message.add_byte-def"><a name="L196"></a><tt class="py-lineno">196</tt> <a class="py-toggle" href="#" id="Message.add_byte-toggle" onclick="return toggle('Message.add_byte');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.message.Message-class.html#add_byte">add_byte</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">b</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Message.add_byte-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Message.add_byte-expanded"><a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"><tt class="py-docstring"> Write a single byte to the stream, without any formatting.</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"><tt class="py-docstring"> @param b: byte to add</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"><tt class="py-docstring"> @type b: str</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-33', 'packet', 'link-2');">packet</a></tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="paramiko.BufferedFile.write
-paramiko.SFTPHandle.write" class="py-name" href="#" onclick="return doclink('link-34', 'write', 'link-32');">write</a></tt><tt class="py-op">(</tt><tt class="py-name">b</tt><tt class="py-op">)</tt> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt> </tt>
-</div><a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"> </tt>
-<a name="Message.add_boolean"></a><div id="Message.add_boolean-def"><a name="L206"></a><tt class="py-lineno">206</tt> <a class="py-toggle" href="#" id="Message.add_boolean-toggle" onclick="return toggle('Message.add_boolean');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.message.Message-class.html#add_boolean">add_boolean</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">b</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Message.add_boolean-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Message.add_boolean-expanded"><a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"><tt class="py-docstring"> Add a boolean value to the stream.</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"><tt class="py-docstring"> @param b: boolean value to add</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"><tt class="py-docstring"> @type b: bool</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">b</tt><tt class="py-op">:</tt> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name" targets="Method paramiko.Message.add_byte()=paramiko.Message-class.html#add_byte"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-35', 'add_byte', 'link-35');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-string">'\x01'</tt><tt class="py-op">)</tt> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-36', 'add_byte', 'link-35');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-string">'\x00'</tt><tt class="py-op">)</tt> </tt>
-<a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt> </tt>
-</div><a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"> </tt>
-<a name="Message.add_int"></a><div id="Message.add_int-def"><a name="L219"></a><tt class="py-lineno">219</tt> <a class="py-toggle" href="#" id="Message.add_int-toggle" onclick="return toggle('Message.add_int');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.message.Message-class.html#add_int">add_int</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">n</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Message.add_int-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Message.add_int-expanded"><a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"><tt class="py-docstring"> Add an integer to the stream.</tt> </tt>
-<a name="L222"></a><tt class="py-lineno">222</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"><tt class="py-docstring"> @param n: integer to add</tt> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"><tt class="py-docstring"> @type n: int</tt> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-37', 'packet', 'link-2');">packet</a></tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="paramiko.BufferedFile.write
-paramiko.SFTPHandle.write" class="py-name" href="#" onclick="return doclink('link-38', 'write', 'link-32');">write</a></tt><tt class="py-op">(</tt><tt class="py-name">struct</tt><tt class="py-op">.</tt><tt class="py-name">pack</tt><tt class="py-op">(</tt><tt class="py-string">'&gt;I'</tt><tt class="py-op">,</tt> <tt class="py-name">n</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt> </tt>
-</div><a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"> </tt>
-<a name="Message.add_int64"></a><div id="Message.add_int64-def"><a name="L229"></a><tt class="py-lineno">229</tt> <a class="py-toggle" href="#" id="Message.add_int64-toggle" onclick="return toggle('Message.add_int64');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.message.Message-class.html#add_int64">add_int64</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">n</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Message.add_int64-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Message.add_int64-expanded"><a name="L230"></a><tt class="py-lineno">230</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"><tt class="py-docstring"> Add a 64-bit int to the stream.</tt> </tt>
-<a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"><tt class="py-docstring"> @param n: long int to add</tt> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"><tt class="py-docstring"> @type n: long</tt> </tt>
-<a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-39', 'packet', 'link-2');">packet</a></tt><tt class="py-op">.</tt><tt id="link-40" class="py-name"><a title="paramiko.BufferedFile.write
-paramiko.SFTPHandle.write" class="py-name" href="#" onclick="return doclink('link-40', 'write', 'link-32');">write</a></tt><tt class="py-op">(</tt><tt class="py-name">struct</tt><tt class="py-op">.</tt><tt class="py-name">pack</tt><tt class="py-op">(</tt><tt class="py-string">'&gt;Q'</tt><tt class="py-op">,</tt> <tt class="py-name">n</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt> </tt>
-</div><a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"> </tt>
-<a name="Message.add_mpint"></a><div id="Message.add_mpint-def"><a name="L239"></a><tt class="py-lineno">239</tt> <a class="py-toggle" href="#" id="Message.add_mpint-toggle" onclick="return toggle('Message.add_mpint');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.message.Message-class.html#add_mpint">add_mpint</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">z</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Message.add_mpint-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Message.add_mpint-expanded"><a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"><tt class="py-docstring"> Add a long int to the stream, encoded as an infinite-precision</tt> </tt>
-<a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"><tt class="py-docstring"> integer. This method only works on positive numbers.</tt> </tt>
-<a name="L243"></a><tt class="py-lineno">243</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L244"></a><tt class="py-lineno">244</tt> <tt class="py-line"><tt class="py-docstring"> @param z: long int to add</tt> </tt>
-<a name="L245"></a><tt class="py-lineno">245</tt> <tt class="py-line"><tt class="py-docstring"> @type z: long</tt> </tt>
-<a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L247"></a><tt class="py-lineno">247</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name" targets="Method paramiko.Message.add_string()=paramiko.Message-class.html#add_string"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-41', 'add_string', 'link-41');">add_string</a></tt><tt class="py-op">(</tt><tt id="link-42" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-42', 'util', 'link-1');">util</a></tt><tt class="py-op">.</tt><tt id="link-43" class="py-name" targets="Function paramiko.util.deflate_long()=paramiko.util-module.html#deflate_long"><a title="paramiko.util.deflate_long" class="py-name" href="#" onclick="return doclink('link-43', 'deflate_long', 'link-43');">deflate_long</a></tt><tt class="py-op">(</tt><tt class="py-name">z</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L248"></a><tt class="py-lineno">248</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt> </tt>
-</div><a name="L249"></a><tt class="py-lineno">249</tt> <tt class="py-line"> </tt>
-<a name="Message.add_string"></a><div id="Message.add_string-def"><a name="L250"></a><tt class="py-lineno">250</tt> <a class="py-toggle" href="#" id="Message.add_string-toggle" onclick="return toggle('Message.add_string');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.message.Message-class.html#add_string">add_string</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">s</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Message.add_string-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Message.add_string-expanded"><a name="L251"></a><tt class="py-lineno">251</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"><tt class="py-docstring"> Add a string to the stream.</tt> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L254"></a><tt class="py-lineno">254</tt> <tt class="py-line"><tt class="py-docstring"> @param s: string to add</tt> </tt>
-<a name="L255"></a><tt class="py-lineno">255</tt> <tt class="py-line"><tt class="py-docstring"> @type s: str</tt> </tt>
-<a name="L256"></a><tt class="py-lineno">256</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L257"></a><tt class="py-lineno">257</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-44" class="py-name" targets="Method paramiko.Message.add_int()=paramiko.Message-class.html#add_int"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-44', 'add_int', 'link-44');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L258"></a><tt class="py-lineno">258</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-45" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-45', 'packet', 'link-2');">packet</a></tt><tt class="py-op">.</tt><tt id="link-46" class="py-name"><a title="paramiko.BufferedFile.write
-paramiko.SFTPHandle.write" class="py-name" href="#" onclick="return doclink('link-46', 'write', 'link-32');">write</a></tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">)</tt> </tt>
-<a name="L259"></a><tt class="py-lineno">259</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt> </tt>
-</div><a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"> </tt>
-<a name="Message.add_list"></a><div id="Message.add_list-def"><a name="L261"></a><tt class="py-lineno">261</tt> <a class="py-toggle" href="#" id="Message.add_list-toggle" onclick="return toggle('Message.add_list');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.message.Message-class.html#add_list">add_list</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">l</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Message.add_list-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Message.add_list-expanded"><a name="L262"></a><tt class="py-lineno">262</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L263"></a><tt class="py-lineno">263</tt> <tt class="py-line"><tt class="py-docstring"> Add a list of strings to the stream. They are encoded identically to</tt> </tt>
-<a name="L264"></a><tt class="py-lineno">264</tt> <tt class="py-line"><tt class="py-docstring"> a single string of values separated by commas. (Yes, really, that's</tt> </tt>
-<a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"><tt class="py-docstring"> how SSH2 does it.)</tt> </tt>
-<a name="L266"></a><tt class="py-lineno">266</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"><tt class="py-docstring"> @param l: list of strings to add</tt> </tt>
-<a name="L268"></a><tt class="py-lineno">268</tt> <tt class="py-line"><tt class="py-docstring"> @type l: list(str)</tt> </tt>
-<a name="L269"></a><tt class="py-lineno">269</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L270"></a><tt class="py-lineno">270</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-47" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-47', 'add_string', 'link-41');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-string">','</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-name">l</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L271"></a><tt class="py-lineno">271</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt> </tt>
-</div><a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"> </tt>
-<a name="Message._add"></a><div id="Message._add-def"><a name="L273"></a><tt class="py-lineno">273</tt> <a class="py-toggle" href="#" id="Message._add-toggle" onclick="return toggle('Message._add');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.message.Message-class.html#_add">_add</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">i</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Message._add-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Message._add-expanded"><a name="L274"></a><tt class="py-lineno">274</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">str</tt><tt class="py-op">:</tt> </tt>
-<a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-48" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-48', 'add_string', 'link-41');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">)</tt> </tt>
-<a name="L276"></a><tt class="py-lineno">276</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">int</tt><tt class="py-op">:</tt> </tt>
-<a name="L277"></a><tt class="py-lineno">277</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-49" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-49', 'add_int', 'link-44');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">)</tt> </tt>
-<a name="L278"></a><tt class="py-lineno">278</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">long</tt><tt class="py-op">:</tt> </tt>
-<a name="L279"></a><tt class="py-lineno">279</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0xffffffffL</tt><tt class="py-op">:</tt> </tt>
-<a name="L280"></a><tt class="py-lineno">280</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-50" class="py-name" targets="Method paramiko.Message.add_mpint()=paramiko.Message-class.html#add_mpint"><a title="paramiko.Message.add_mpint" class="py-name" href="#" onclick="return doclink('link-50', 'add_mpint', 'link-50');">add_mpint</a></tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">)</tt> </tt>
-<a name="L281"></a><tt class="py-lineno">281</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L282"></a><tt class="py-lineno">282</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-51" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-51', 'add_int', 'link-44');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">)</tt> </tt>
-<a name="L283"></a><tt class="py-lineno">283</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">bool</tt><tt class="py-op">:</tt> </tt>
-<a name="L284"></a><tt class="py-lineno">284</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-52" class="py-name" targets="Method paramiko.Message.add_boolean()=paramiko.Message-class.html#add_boolean"><a title="paramiko.Message.add_boolean" class="py-name" href="#" onclick="return doclink('link-52', 'add_boolean', 'link-52');">add_boolean</a></tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">)</tt> </tt>
-<a name="L285"></a><tt class="py-lineno">285</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">list</tt><tt class="py-op">:</tt> </tt>
-<a name="L286"></a><tt class="py-lineno">286</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-53" class="py-name" targets="Method paramiko.Message.add_list()=paramiko.Message-class.html#add_list"><a title="paramiko.Message.add_list" class="py-name" href="#" onclick="return doclink('link-53', 'add_list', 'link-53');">add_list</a></tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">)</tt> </tt>
-<a name="L287"></a><tt class="py-lineno">287</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L288"></a><tt class="py-lineno">288</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">Exception</tt><tt class="py-op">(</tt><tt class="py-string">'Unknown type'</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L289"></a><tt class="py-lineno">289</tt> <tt class="py-line"> </tt>
-<a name="Message.add"></a><div id="Message.add-def"><a name="L290"></a><tt class="py-lineno">290</tt> <a class="py-toggle" href="#" id="Message.add-toggle" onclick="return toggle('Message.add');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.message.Message-class.html#add">add</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">seq</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Message.add-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Message.add-expanded"><a name="L291"></a><tt class="py-lineno">291</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L292"></a><tt class="py-lineno">292</tt> <tt class="py-line"><tt class="py-docstring"> Add a sequence of items to the stream. The values are encoded based</tt> </tt>
-<a name="L293"></a><tt class="py-lineno">293</tt> <tt class="py-line"><tt class="py-docstring"> on their type: str, int, bool, list, or long.</tt> </tt>
-<a name="L294"></a><tt class="py-lineno">294</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L295"></a><tt class="py-lineno">295</tt> <tt class="py-line"><tt class="py-docstring"> @param seq: the sequence of items</tt> </tt>
-<a name="L296"></a><tt class="py-lineno">296</tt> <tt class="py-line"><tt class="py-docstring"> @type seq: sequence</tt> </tt>
-<a name="L297"></a><tt class="py-lineno">297</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L298"></a><tt class="py-lineno">298</tt> <tt class="py-line"><tt class="py-docstring"> @bug: longs are encoded non-deterministically. Don't use this method.</tt> </tt>
-<a name="L299"></a><tt class="py-lineno">299</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L300"></a><tt class="py-lineno">300</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">item</tt> <tt class="py-keyword">in</tt> <tt class="py-name">seq</tt><tt class="py-op">:</tt> </tt>
-<a name="L301"></a><tt class="py-lineno">301</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_add</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L302"></a><tt class="py-lineno">302</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:08 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.packet-module.html b/docs/paramiko.packet-module.html
deleted file mode 100644
index ebe8825..0000000
--- a/docs/paramiko.packet-module.html
+++ /dev/null
@@ -1,581 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.packet</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;packet
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.packet-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module packet</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.packet-pysrc.html">source&nbsp;code</a></span></p>
-<p>Packetizer.</p>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Classes</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.packet.NeedRekeyException-class.html" class="summary-name">NeedRekeyException</a>
- </td>
- </tr>
-</table>
-<!-- ==================== FUNCTIONS ==================== -->
-<a name="section-Functions"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Functions</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="compute_hmac"></a><span class="summary-sig-name">compute_hmac</span>(<span class="summary-sig-arg">key</span>,
- <span class="summary-sig-arg">message</span>,
- <span class="summary-sig-arg">digest_class</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.packet-pysrc.html#compute_hmac">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="got_r_hmac"></a><span class="summary-name">got_r_hmac</span> = <code title="False">False</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_FAILED"></a><span class="summary-name">AUTH_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_PARTIALLY_SUCCESSFUL"></a><span class="summary-name">AUTH_PARTIALLY_SUCCESSFUL</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_SUCCESSFUL"></a><span class="summary-name">AUTH_SUCCESSFUL</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.packet-module.html#CONNECTION_FAILED_CODE" class="summary-name">CONNECTION_FAILED_CODE</a> = <code title="{1: 'Administratively prohibited',
- 2: 'Connect failed',
- 3: 'Unknown channel type',
- 4: 'Resource shortage'}"><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">:</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CRITICAL"></a><span class="summary-name">CRITICAL</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DEBUG"></a><span class="summary-name">DEBUG</span> = <code title="10">10</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_AUTH_CANCELLED_BY_USER"></a><span class="summary-name">DISCONNECT_AUTH_CANCELLED_BY_USER</span> = <code title="13">13</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE"></a><span class="summary-name">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</span> = <code title="14">14</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_SERVICE_NOT_AVAILABLE"></a><span class="summary-name">DISCONNECT_SERVICE_NOT_AVAILABLE</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="ERROR"></a><span class="summary-name">ERROR</span> = <code title="40">40</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="INFO"></a><span class="summary-name">INFO</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_CLOSE"></a><span class="summary-name">MSG_CHANNEL_CLOSE</span> = <code title="97">97</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_DATA"></a><span class="summary-name">MSG_CHANNEL_DATA</span> = <code title="94">94</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EOF"></a><span class="summary-name">MSG_CHANNEL_EOF</span> = <code title="96">96</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EXTENDED_DATA"></a><span class="summary-name">MSG_CHANNEL_EXTENDED_DATA</span> = <code title="95">95</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_FAILURE"></a><span class="summary-name">MSG_CHANNEL_FAILURE</span> = <code title="100">100</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN"></a><span class="summary-name">MSG_CHANNEL_OPEN</span> = <code title="90">90</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_FAILURE"></a><span class="summary-name">MSG_CHANNEL_OPEN_FAILURE</span> = <code title="92">92</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_OPEN_SUCCESS</span> = <code title="91">91</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_REQUEST"></a><span class="summary-name">MSG_CHANNEL_REQUEST</span> = <code title="98">98</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_SUCCESS</span> = <code title="99">99</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_WINDOW_ADJUST"></a><span class="summary-name">MSG_CHANNEL_WINDOW_ADJUST</span> = <code title="93">93</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DEBUG"></a><span class="summary-name">MSG_DEBUG</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DISCONNECT"></a><span class="summary-name">MSG_DISCONNECT</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_GLOBAL_REQUEST"></a><span class="summary-name">MSG_GLOBAL_REQUEST</span> = <code title="80">80</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_IGNORE"></a><span class="summary-name">MSG_IGNORE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_KEXINIT"></a><span class="summary-name">MSG_KEXINIT</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.packet-module.html#MSG_NAMES" class="summary-name">MSG_NAMES</a> = <code title="{1: 'disconnect',
- 2: 'ignore',
- 3: 'unimplemented',
- 4: 'debug',
- 5: 'service-request',
- 6: 'service-accept',
- 20: 'kexinit',
- 21: 'newkeys',
-..."><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">, </code>3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_NEWKEYS"></a><span class="summary-name">MSG_NEWKEYS</span> = <code title="21">21</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_FAILURE"></a><span class="summary-name">MSG_REQUEST_FAILURE</span> = <code title="82">82</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_SUCCESS"></a><span class="summary-name">MSG_REQUEST_SUCCESS</span> = <code title="81">81</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_ACCEPT"></a><span class="summary-name">MSG_SERVICE_ACCEPT</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_REQUEST"></a><span class="summary-name">MSG_SERVICE_REQUEST</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_UNIMPLEMENTED"></a><span class="summary-name">MSG_UNIMPLEMENTED</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_BANNER"></a><span class="summary-name">MSG_USERAUTH_BANNER</span> = <code title="53">53</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_FAILURE"></a><span class="summary-name">MSG_USERAUTH_FAILURE</span> = <code title="51">51</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_REQUEST"></a><span class="summary-name">MSG_USERAUTH_INFO_REQUEST</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_RESPONSE"></a><span class="summary-name">MSG_USERAUTH_INFO_RESPONSE</span> = <code title="61">61</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_PK_OK"></a><span class="summary-name">MSG_USERAUTH_PK_OK</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_REQUEST"></a><span class="summary-name">MSG_USERAUTH_REQUEST</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_SUCCESS"></a><span class="summary-name">MSG_USERAUTH_SUCCESS</span> = <code title="52">52</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED"></a><span class="summary-name">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_CONNECT_FAILED"></a><span class="summary-name">OPEN_FAILED_CONNECT_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_RESOURCE_SHORTAGE"></a><span class="summary-name">OPEN_FAILED_RESOURCE_SHORTAGE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_UNKNOWN_CHANNEL_TYPE"></a><span class="summary-name">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_SUCCEEDED"></a><span class="summary-name">OPEN_SUCCEEDED</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="PY22"></a><span class="summary-name">PY22</span> = <code title="False">False</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="WARNING"></a><span class="summary-name">WARNING</span> = <code title="30">30</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'paramiko'"><code class="variable-quote">'</code><code class="variable-string">paramiko</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="rng"></a><span class="summary-name">rng</span> = <code title="Random.new()">Random.new()</code>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES DETAILS ==================== -->
-<a name="section-VariablesDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables Details</span></td>
-</tr>
-</table>
-<a name="CONNECTION_FAILED_CODE"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">CONNECTION_FAILED_CODE</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Connect failed</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Unknown channel type</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Resource shortage</code><code class="variable-quote">'</code><code class="variable-group">}</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="MSG_NAMES"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">MSG_NAMES</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">debug</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 5<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-request</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 6<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-accept</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 20<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">kexinit</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 21<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">newkeys</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:02 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.packet-pysrc.html b/docs/paramiko.packet-pysrc.html
deleted file mode 100644
index 8341e2c..0000000
--- a/docs/paramiko.packet-pysrc.html
+++ /dev/null
@@ -1,920 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.packet</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;packet
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.packet-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.packet-module.html" onclick="show_private();">Module paramiko.packet</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2003-2007 Robey Pointer &lt;robeypointer@gmail.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring">Packetizer.</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">errno</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">select</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">socket</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">struct</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">threading</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package paramiko=paramiko-module.html"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-0', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Module paramiko.common=paramiko.common-module.html"><a title="paramiko.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt> <tt class="py-keyword">import</tt> <tt class="py-op">*</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-2" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-2', 'paramiko', 'link-0');">paramiko</a></tt> <tt class="py-keyword">import</tt> <tt id="link-3" class="py-name" targets="Module paramiko.util=paramiko.util-module.html"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-3', 'util', 'link-3');">util</a></tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-4" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-4', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Module paramiko.ssh_exception=paramiko.ssh_exception-module.html"><a title="paramiko.ssh_exception" class="py-name" href="#" onclick="return doclink('link-5', 'ssh_exception', 'link-5');">ssh_exception</a></tt> <tt class="py-keyword">import</tt> <tt id="link-6" class="py-name" targets="Class paramiko.SSHException=paramiko.SSHException-class.html"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-6', 'SSHException', 'link-6');">SSHException</a></tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-7" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-7', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Module paramiko.message=paramiko.message-module.html"><a title="paramiko.message" class="py-name" href="#" onclick="return doclink('link-8', 'message', 'link-8');">message</a></tt> <tt class="py-keyword">import</tt> <tt id="link-9" class="py-name" targets="Class paramiko.Message=paramiko.Message-class.html"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-9', 'Message', 'link-9');">Message</a></tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"><tt id="link-10" class="py-name" targets="Variable paramiko.packet.got_r_hmac=paramiko.packet-module.html#got_r_hmac"><a title="paramiko.packet.got_r_hmac" class="py-name" href="#" onclick="return doclink('link-10', 'got_r_hmac', 'link-10');">got_r_hmac</a></tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"><tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">r_hmac</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> <tt id="link-11" class="py-name"><a title="paramiko.packet.got_r_hmac" class="py-name" href="#" onclick="return doclink('link-11', 'got_r_hmac', 'link-10');">got_r_hmac</a></tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"><tt class="py-keyword">except</tt> <tt class="py-name">ImportError</tt><tt class="py-op">:</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="compute_hmac"></a><div id="compute_hmac-def"><a name="L42"></a><tt class="py-lineno"> 42</tt> <a class="py-toggle" href="#" id="compute_hmac-toggle" onclick="return toggle('compute_hmac');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.packet-module.html#compute_hmac">compute_hmac</a><tt class="py-op">(</tt><tt class="py-param">key</tt><tt class="py-op">,</tt> <tt class="py-param">message</tt><tt class="py-op">,</tt> <tt class="py-param">digest_class</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="compute_hmac-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="compute_hmac-expanded"><a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-12" class="py-name"><a title="paramiko.packet.got_r_hmac" class="py-name" href="#" onclick="return doclink('link-12', 'got_r_hmac', 'link-10');">got_r_hmac</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">r_hmac</tt><tt class="py-op">.</tt><tt class="py-name">HMAC</tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">,</tt> <tt id="link-13" class="py-name"><a title="paramiko.message" class="py-name" href="#" onclick="return doclink('link-13', 'message', 'link-8');">message</a></tt><tt class="py-op">,</tt> <tt class="py-name">digest_class</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">digest</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-keyword">from</tt> <tt class="py-name">Crypto</tt><tt class="py-op">.</tt><tt class="py-name">Hash</tt> <tt class="py-keyword">import</tt> <tt class="py-name">HMAC</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">HMAC</tt><tt class="py-op">.</tt><tt class="py-name">HMAC</tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">,</tt> <tt id="link-14" class="py-name"><a title="paramiko.message" class="py-name" href="#" onclick="return doclink('link-14', 'message', 'link-8');">message</a></tt><tt class="py-op">,</tt> <tt class="py-name">digest_class</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">digest</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> </tt>
-<a name="NeedRekeyException"></a><div id="NeedRekeyException-def"><a name="L49"></a><tt class="py-lineno"> 49</tt> <a class="py-toggle" href="#" id="NeedRekeyException-toggle" onclick="return toggle('NeedRekeyException');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.packet.NeedRekeyException-class.html">NeedRekeyException</a> <tt class="py-op">(</tt><tt class="py-base-class">Exception</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="NeedRekeyException-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="NeedRekeyException-expanded"><a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-</div><a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> </tt>
-<a name="Packetizer"></a><div id="Packetizer-def"><a name="L53"></a><tt class="py-lineno"> 53</tt> <a class="py-toggle" href="#" id="Packetizer-toggle" onclick="return toggle('Packetizer');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.packet.Packetizer-class.html">Packetizer</a> <tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Packetizer-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="Packetizer-expanded"><a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"><tt class="py-docstring"> Implementation of the base SSH packet protocol.</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-comment"># READ the secsh RFC's before raising these values. if anything,</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-comment"># they should probably be lower.</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-name">REKEY_PACKETS</tt> <tt class="py-op">=</tt> <tt class="py-name">pow</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">,</tt> <tt class="py-number">30</tt><tt class="py-op">)</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-name">REKEY_BYTES</tt> <tt class="py-op">=</tt> <tt class="py-name">pow</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">,</tt> <tt class="py-number">30</tt><tt class="py-op">)</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> </tt>
-<a name="Packetizer.__init__"></a><div id="Packetizer.__init__-def"><a name="L63"></a><tt class="py-lineno"> 63</tt> <a class="py-toggle" href="#" id="Packetizer.__init__-toggle" onclick="return toggle('Packetizer.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.packet.Packetizer-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">socket</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Packetizer.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Packetizer.__init__-expanded"><a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__socket</tt> <tt class="py-op">=</tt> <tt class="py-name">socket</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__logger</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__closed</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__dump_packets</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__need_rekey</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__init_count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__remainder</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-comment"># used for noticing when to re-key:</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__sent_bytes</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__sent_packets</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__received_bytes</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__received_packets</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__received_packets_overflow</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-comment"># current inbound/outbound ciphering:</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__block_size_out</tt> <tt class="py-op">=</tt> <tt class="py-number">8</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__block_size_in</tt> <tt class="py-op">=</tt> <tt class="py-number">8</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__mac_size_out</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__mac_size_in</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__block_engine_out</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__block_engine_in</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__mac_engine_out</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__mac_engine_in</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__mac_key_out</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__mac_key_in</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__compress_engine_out</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__compress_engine_in</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__sequence_number_out</tt> <tt class="py-op">=</tt> <tt class="py-number">0L</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__sequence_number_in</tt> <tt class="py-op">=</tt> <tt class="py-number">0L</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-comment"># lock around outbound writes (packet computation)</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__write_lock</tt> <tt class="py-op">=</tt> <tt class="py-name">threading</tt><tt class="py-op">.</tt><tt class="py-name">RLock</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-comment"># keepalives:</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__keepalive_interval</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__keepalive_last</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__keepalive_callback</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> </tt>
-<a name="Packetizer.set_log"></a><div id="Packetizer.set_log-def"><a name="L103"></a><tt class="py-lineno">103</tt> <a class="py-toggle" href="#" id="Packetizer.set_log-toggle" onclick="return toggle('Packetizer.set_log');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.packet.Packetizer-class.html#set_log">set_log</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">log</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Packetizer.set_log-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Packetizer.set_log-expanded"><a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"><tt class="py-docstring"> Set the python log object to use for logging.</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__logger</tt> <tt class="py-op">=</tt> <tt id="link-15" class="py-name" targets="Method paramiko.logging22.logger.log()=paramiko.logging22.logger-class.html#log"><a title="paramiko.logging22.logger.log" class="py-name" href="#" onclick="return doclink('link-15', 'log', 'link-15');">log</a></tt> </tt>
-</div><a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> </tt>
-<a name="Packetizer.set_outbound_cipher"></a><div id="Packetizer.set_outbound_cipher-def"><a name="L109"></a><tt class="py-lineno">109</tt> <a class="py-toggle" href="#" id="Packetizer.set_outbound_cipher-toggle" onclick="return toggle('Packetizer.set_outbound_cipher');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.packet.Packetizer-class.html#set_outbound_cipher">set_outbound_cipher</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">block_engine</tt><tt class="py-op">,</tt> <tt class="py-param">block_size</tt><tt class="py-op">,</tt> <tt class="py-param">mac_engine</tt><tt class="py-op">,</tt> <tt class="py-param">mac_size</tt><tt class="py-op">,</tt> <tt class="py-param">mac_key</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Packetizer.set_outbound_cipher-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Packetizer.set_outbound_cipher-expanded"><a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"><tt class="py-docstring"> Switch outbound data cipher.</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__block_engine_out</tt> <tt class="py-op">=</tt> <tt class="py-name">block_engine</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__block_size_out</tt> <tt class="py-op">=</tt> <tt class="py-name">block_size</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__mac_engine_out</tt> <tt class="py-op">=</tt> <tt class="py-name">mac_engine</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__mac_size_out</tt> <tt class="py-op">=</tt> <tt class="py-name">mac_size</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__mac_key_out</tt> <tt class="py-op">=</tt> <tt class="py-name">mac_key</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__sent_bytes</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__sent_packets</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-comment"># wait until the reset happens in both directions before clearing rekey flag</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__init_count</tt> <tt class="py-op">|=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__init_count</tt> <tt class="py-op">==</tt> <tt class="py-number">3</tt><tt class="py-op">:</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__init_count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__need_rekey</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-</div><a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> </tt>
-<a name="Packetizer.set_inbound_cipher"></a><div id="Packetizer.set_inbound_cipher-def"><a name="L126"></a><tt class="py-lineno">126</tt> <a class="py-toggle" href="#" id="Packetizer.set_inbound_cipher-toggle" onclick="return toggle('Packetizer.set_inbound_cipher');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.packet.Packetizer-class.html#set_inbound_cipher">set_inbound_cipher</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">block_engine</tt><tt class="py-op">,</tt> <tt class="py-param">block_size</tt><tt class="py-op">,</tt> <tt class="py-param">mac_engine</tt><tt class="py-op">,</tt> <tt class="py-param">mac_size</tt><tt class="py-op">,</tt> <tt class="py-param">mac_key</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Packetizer.set_inbound_cipher-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Packetizer.set_inbound_cipher-expanded"><a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"><tt class="py-docstring"> Switch inbound data cipher.</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__block_engine_in</tt> <tt class="py-op">=</tt> <tt class="py-name">block_engine</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__block_size_in</tt> <tt class="py-op">=</tt> <tt class="py-name">block_size</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__mac_engine_in</tt> <tt class="py-op">=</tt> <tt class="py-name">mac_engine</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__mac_size_in</tt> <tt class="py-op">=</tt> <tt class="py-name">mac_size</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__mac_key_in</tt> <tt class="py-op">=</tt> <tt class="py-name">mac_key</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__received_bytes</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__received_packets</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__received_packets_overflow</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-comment"># wait until the reset happens in both directions before clearing rekey flag</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__init_count</tt> <tt class="py-op">|=</tt> <tt class="py-number">2</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__init_count</tt> <tt class="py-op">==</tt> <tt class="py-number">3</tt><tt class="py-op">:</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__init_count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__need_rekey</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-</div><a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> </tt>
-<a name="Packetizer.set_outbound_compressor"></a><div id="Packetizer.set_outbound_compressor-def"><a name="L144"></a><tt class="py-lineno">144</tt> <a class="py-toggle" href="#" id="Packetizer.set_outbound_compressor-toggle" onclick="return toggle('Packetizer.set_outbound_compressor');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.packet.Packetizer-class.html#set_outbound_compressor">set_outbound_compressor</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">compressor</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Packetizer.set_outbound_compressor-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Packetizer.set_outbound_compressor-expanded"><a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__compress_engine_out</tt> <tt class="py-op">=</tt> <tt class="py-name">compressor</tt> </tt>
-</div><a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> </tt>
-<a name="Packetizer.set_inbound_compressor"></a><div id="Packetizer.set_inbound_compressor-def"><a name="L147"></a><tt class="py-lineno">147</tt> <a class="py-toggle" href="#" id="Packetizer.set_inbound_compressor-toggle" onclick="return toggle('Packetizer.set_inbound_compressor');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.packet.Packetizer-class.html#set_inbound_compressor">set_inbound_compressor</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">compressor</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Packetizer.set_inbound_compressor-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Packetizer.set_inbound_compressor-expanded"><a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__compress_engine_in</tt> <tt class="py-op">=</tt> <tt class="py-name">compressor</tt> </tt>
-</div><a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> </tt>
-<a name="Packetizer.close"></a><div id="Packetizer.close-def"><a name="L150"></a><tt class="py-lineno">150</tt> <a class="py-toggle" href="#" id="Packetizer.close-toggle" onclick="return toggle('Packetizer.close');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.packet.Packetizer-class.html#close">close</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Packetizer.close-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Packetizer.close-expanded"><a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__closed</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__socket</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name" targets="Method paramiko.Agent.close()=paramiko.Agent-class.html#close,Method paramiko.BufferedFile.close()=paramiko.BufferedFile-class.html#close,Method paramiko.Channel.close()=paramiko.Channel-class.html#close,Method paramiko.SFTPClient.close()=paramiko.SFTPClient-class.html#close,Method paramiko.SFTPFile.close()=paramiko.SFTPFile-class.html#close,Method paramiko.SFTPHandle.close()=paramiko.SFTPHandle-class.html#close,Method paramiko.SSHClient.close()=paramiko.SSHClient-class.html#close,Method paramiko.Transport.close()=paramiko.Transport-class.html#close,Method paramiko.buffered_pipe.BufferedPipe.close()=paramiko.buffered_pipe.BufferedPipe-class.html#close,Method paramiko.pipe.PosixPipe.close()=paramiko.pipe.PosixPipe-class.html#close,Method paramiko.pipe.WindowsPipe.close()=paramiko.pipe.WindowsPipe-class.html#close,Method paramiko.win_pageant.PageantConnection.close()=paramiko.win_pageant.PageantConnection-class.html#close"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-16', 'close', 'link-16');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> </tt>
-<a name="Packetizer.set_hexdump"></a><div id="Packetizer.set_hexdump-def"><a name="L154"></a><tt class="py-lineno">154</tt> <a class="py-toggle" href="#" id="Packetizer.set_hexdump-toggle" onclick="return toggle('Packetizer.set_hexdump');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.packet.Packetizer-class.html#set_hexdump">set_hexdump</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">hexdump</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Packetizer.set_hexdump-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Packetizer.set_hexdump-expanded"><a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__dump_packets</tt> <tt class="py-op">=</tt> <tt class="py-name">hexdump</tt> </tt>
-</div><a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> </tt>
-<a name="Packetizer.get_hexdump"></a><div id="Packetizer.get_hexdump-def"><a name="L157"></a><tt class="py-lineno">157</tt> <a class="py-toggle" href="#" id="Packetizer.get_hexdump-toggle" onclick="return toggle('Packetizer.get_hexdump');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.packet.Packetizer-class.html#get_hexdump">get_hexdump</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Packetizer.get_hexdump-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Packetizer.get_hexdump-expanded"><a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__dump_packets</tt> </tt>
-</div><a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> </tt>
-<a name="Packetizer.get_mac_size_in"></a><div id="Packetizer.get_mac_size_in-def"><a name="L160"></a><tt class="py-lineno">160</tt> <a class="py-toggle" href="#" id="Packetizer.get_mac_size_in-toggle" onclick="return toggle('Packetizer.get_mac_size_in');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.packet.Packetizer-class.html#get_mac_size_in">get_mac_size_in</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Packetizer.get_mac_size_in-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Packetizer.get_mac_size_in-expanded"><a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__mac_size_in</tt> </tt>
-</div><a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> </tt>
-<a name="Packetizer.get_mac_size_out"></a><div id="Packetizer.get_mac_size_out-def"><a name="L163"></a><tt class="py-lineno">163</tt> <a class="py-toggle" href="#" id="Packetizer.get_mac_size_out-toggle" onclick="return toggle('Packetizer.get_mac_size_out');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.packet.Packetizer-class.html#get_mac_size_out">get_mac_size_out</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Packetizer.get_mac_size_out-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Packetizer.get_mac_size_out-expanded"><a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__mac_size_out</tt> </tt>
-</div><a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> </tt>
-<a name="Packetizer.need_rekey"></a><div id="Packetizer.need_rekey-def"><a name="L166"></a><tt class="py-lineno">166</tt> <a class="py-toggle" href="#" id="Packetizer.need_rekey-toggle" onclick="return toggle('Packetizer.need_rekey');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.packet.Packetizer-class.html#need_rekey">need_rekey</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Packetizer.need_rekey-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Packetizer.need_rekey-expanded"><a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"><tt class="py-docstring"> Returns C{True} if a new set of keys needs to be negotiated. This</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"><tt class="py-docstring"> will be triggered during a packet read or write, so it should be</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"><tt class="py-docstring"> checked after every read or write, or at least after every few.</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"><tt class="py-docstring"> @return: C{True} if a new set of keys needs to be negotiated</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__need_rekey</tt> </tt>
-</div><a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> </tt>
-<a name="Packetizer.set_keepalive"></a><div id="Packetizer.set_keepalive-def"><a name="L176"></a><tt class="py-lineno">176</tt> <a class="py-toggle" href="#" id="Packetizer.set_keepalive-toggle" onclick="return toggle('Packetizer.set_keepalive');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.packet.Packetizer-class.html#set_keepalive">set_keepalive</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">interval</tt><tt class="py-op">,</tt> <tt class="py-param">callback</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Packetizer.set_keepalive-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Packetizer.set_keepalive-expanded"><a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"><tt class="py-docstring"> Turn on/off the callback keepalive. If C{interval} seconds pass with</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"><tt class="py-docstring"> no data read from or written to the socket, the callback will be</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"><tt class="py-docstring"> executed and the timer will be reset.</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__keepalive_interval</tt> <tt class="py-op">=</tt> <tt class="py-name">interval</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__keepalive_callback</tt> <tt class="py-op">=</tt> <tt class="py-name">callback</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__keepalive_last</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> </tt>
-<a name="Packetizer.read_all"></a><div id="Packetizer.read_all-def"><a name="L186"></a><tt class="py-lineno">186</tt> <a class="py-toggle" href="#" id="Packetizer.read_all-toggle" onclick="return toggle('Packetizer.read_all');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.packet.Packetizer-class.html#read_all">read_all</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">n</tt><tt class="py-op">,</tt> <tt class="py-param">check_rekey</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Packetizer.read_all-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Packetizer.read_all-expanded"><a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"><tt class="py-docstring"> Read as close to N bytes as possible, blocking as long as necessary.</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"><tt class="py-docstring"> @param n: number of bytes to read</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"><tt class="py-docstring"> @type n: int</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"><tt class="py-docstring"> @return: the data read</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: str</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"><tt class="py-docstring"> @raise EOFError: if the socket was closed before all the bytes could</tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"><tt class="py-docstring"> be read</tt> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"> <tt class="py-comment"># handle over-reading from reading the banner line</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__remainder</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__remainder</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-name">n</tt><tt class="py-op">]</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__remainder</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__remainder</tt><tt class="py-op">[</tt><tt class="py-name">n</tt><tt class="py-op">:</tt><tt class="py-op">]</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"> <tt class="py-name">n</tt> <tt class="py-op">-=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">out</tt><tt class="py-op">)</tt> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-17" class="py-name" targets="Variable paramiko.auth_handler.PY22=paramiko.auth_handler-module.html#PY22,Variable paramiko.channel.PY22=paramiko.channel-module.html#PY22,Variable paramiko.client.PY22=paramiko.client-module.html#PY22,Variable paramiko.common.PY22=paramiko.common-module.html#PY22,Variable paramiko.dsskey.PY22=paramiko.dsskey-module.html#PY22,Variable paramiko.hostkeys.PY22=paramiko.hostkeys-module.html#PY22,Variable paramiko.kex_gex.PY22=paramiko.kex_gex-module.html#PY22,Variable paramiko.kex_group1.PY22=paramiko.kex_group1-module.html#PY22,Variable paramiko.packet.PY22=paramiko.packet-module.html#PY22,Variable paramiko.pkey.PY22=paramiko.pkey-module.html#PY22,Variable paramiko.rsakey.PY22=paramiko.rsakey-module.html#PY22,Variable paramiko.server.PY22=paramiko.server-module.html#PY22,Variable paramiko.sftp.PY22=paramiko.sftp-module.html#PY22,Variable paramiko.sftp_attr.PY22=paramiko.sftp_attr-module.html#PY22,Variable paramiko.sftp_client.PY22=paramiko.sftp_client-module.html#PY22,Variable paramiko.sftp_file.PY22=paramiko.sftp_file-module.html#PY22,Variable paramiko.sftp_handle.PY22=paramiko.sftp_handle-module.html#PY22,Variable paramiko.sftp_server.PY22=paramiko.sftp_server-module.html#PY22,Variable paramiko.sftp_si.PY22=paramiko.sftp_si-module.html#PY22,Variable paramiko.transport.PY22=paramiko.transport-module.html#PY22,Variable paramiko.util.PY22=paramiko.util-module.html#PY22"><a title="paramiko.auth_handler.PY22
-paramiko.channel.PY22
-paramiko.client.PY22
-paramiko.common.PY22
-paramiko.dsskey.PY22
-paramiko.hostkeys.PY22
-paramiko.kex_gex.PY22
-paramiko.kex_group1.PY22
-paramiko.packet.PY22
-paramiko.pkey.PY22
-paramiko.rsakey.PY22
-paramiko.server.PY22
-paramiko.sftp.PY22
-paramiko.sftp_attr.PY22
-paramiko.sftp_client.PY22
-paramiko.sftp_file.PY22
-paramiko.sftp_handle.PY22
-paramiko.sftp_server.PY22
-paramiko.sftp_si.PY22
-paramiko.transport.PY22
-paramiko.util.PY22" class="py-name" href="#" onclick="return doclink('link-17', 'PY22', 'link-17');">PY22</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_py22_read_all</tt><tt class="py-op">(</tt><tt class="py-name">n</tt><tt class="py-op">,</tt> <tt class="py-name">out</tt><tt class="py-op">)</tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">n</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"> <tt class="py-name">got_timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"> <tt class="py-name">x</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__socket</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name" targets="Method paramiko.Channel.recv()=paramiko.Channel-class.html#recv,Method paramiko.win_pageant.PageantConnection.recv()=paramiko.win_pageant.PageantConnection-class.html#recv"><a title="paramiko.Channel.recv
-paramiko.win_pageant.PageantConnection.recv" class="py-name" href="#" onclick="return doclink('link-18', 'recv', 'link-18');">recv</a></tt><tt class="py-op">(</tt><tt class="py-name">n</tt><tt class="py-op">)</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">EOFError</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">+=</tt> <tt class="py-name">x</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"> <tt class="py-name">n</tt> <tt class="py-op">-=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">:</tt> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"> <tt class="py-name">got_timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">error</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"> <tt class="py-comment"># on Linux, sometimes instead of socket.timeout, we get</tt> </tt>
-<a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"> <tt class="py-comment"># EAGAIN. this is a bug in recent (&gt; 2.6.9) kernels but</tt> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"> <tt class="py-comment"># we need to work around it.</tt> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">args</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">tuple</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">args</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">errno</tt><tt class="py-op">.</tt><tt class="py-name">EAGAIN</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"> <tt class="py-name">got_timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-op">(</tt><tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">args</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">tuple</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">args</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">errno</tt><tt class="py-op">.</tt><tt class="py-name">EINTR</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L222"></a><tt class="py-lineno">222</tt> <tt class="py-line"> <tt class="py-comment"># syscall interrupted; try again</tt> </tt>
-<a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__closed</tt><tt class="py-op">:</tt> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">EOFError</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> </tt>
-<a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">got_timeout</tt><tt class="py-op">:</tt> </tt>
-<a name="L229"></a><tt class="py-lineno">229</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__closed</tt><tt class="py-op">:</tt> </tt>
-<a name="L230"></a><tt class="py-lineno">230</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">EOFError</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">check_rekey</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">out</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__need_rekey</tt><tt class="py-op">:</tt> </tt>
-<a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-19" class="py-name" targets="Class paramiko.packet.NeedRekeyException=paramiko.packet.NeedRekeyException-class.html"><a title="paramiko.packet.NeedRekeyException" class="py-name" href="#" onclick="return doclink('link-19', 'NeedRekeyException', 'link-19');">NeedRekeyException</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_check_keepalive</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">out</tt> </tt>
-</div><a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"> </tt>
-<a name="Packetizer.write_all"></a><div id="Packetizer.write_all-def"><a name="L236"></a><tt class="py-lineno">236</tt> <a class="py-toggle" href="#" id="Packetizer.write_all-toggle" onclick="return toggle('Packetizer.write_all');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.packet.Packetizer-class.html#write_all">write_all</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">out</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Packetizer.write_all-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Packetizer.write_all-expanded"><a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__keepalive_last</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">out</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L239"></a><tt class="py-lineno">239</tt> <tt class="py-line"> <tt class="py-name">got_timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"> <tt class="py-name">n</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__socket</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name" targets="Method paramiko.Channel.send()=paramiko.Channel-class.html#send,Method paramiko.win_pageant.PageantConnection.send()=paramiko.win_pageant.PageantConnection-class.html#send"><a title="paramiko.Channel.send
-paramiko.win_pageant.PageantConnection.send" class="py-name" href="#" onclick="return doclink('link-20', 'send', 'link-20');">send</a></tt><tt class="py-op">(</tt><tt class="py-name">out</tt><tt class="py-op">)</tt> </tt>
-<a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">:</tt> </tt>
-<a name="L243"></a><tt class="py-lineno">243</tt> <tt class="py-line"> <tt class="py-name">got_timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L244"></a><tt class="py-lineno">244</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">error</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L245"></a><tt class="py-lineno">245</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">args</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">tuple</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">args</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">errno</tt><tt class="py-op">.</tt><tt class="py-name">EAGAIN</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"> <tt class="py-name">got_timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L247"></a><tt class="py-lineno">247</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-op">(</tt><tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">args</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">tuple</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">args</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-name">errno</tt><tt class="py-op">.</tt><tt class="py-name">EINTR</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L248"></a><tt class="py-lineno">248</tt> <tt class="py-line"> <tt class="py-comment"># syscall interrupted; try again</tt> </tt>
-<a name="L249"></a><tt class="py-lineno">249</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L250"></a><tt class="py-lineno">250</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L251"></a><tt class="py-lineno">251</tt> <tt class="py-line"> <tt class="py-name">n</tt> <tt class="py-op">=</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt> </tt>
-<a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">:</tt> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt> <tt class="py-line"> <tt class="py-comment"># could be: (32, 'Broken pipe')</tt> </tt>
-<a name="L254"></a><tt class="py-lineno">254</tt> <tt class="py-line"> <tt class="py-name">n</tt> <tt class="py-op">=</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt> </tt>
-<a name="L255"></a><tt class="py-lineno">255</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">got_timeout</tt><tt class="py-op">:</tt> </tt>
-<a name="L256"></a><tt class="py-lineno">256</tt> <tt class="py-line"> <tt class="py-name">n</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L257"></a><tt class="py-lineno">257</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__closed</tt><tt class="py-op">:</tt> </tt>
-<a name="L258"></a><tt class="py-lineno">258</tt> <tt class="py-line"> <tt class="py-name">n</tt> <tt class="py-op">=</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt> </tt>
-<a name="L259"></a><tt class="py-lineno">259</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">n</tt> <tt class="py-op">&lt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">EOFError</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">n</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">out</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L262"></a><tt class="py-lineno">262</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L263"></a><tt class="py-lineno">263</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt class="py-name">out</tt><tt class="py-op">[</tt><tt class="py-name">n</tt><tt class="py-op">:</tt><tt class="py-op">]</tt> </tt>
-<a name="L264"></a><tt class="py-lineno">264</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-</div><a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"> </tt>
-<a name="Packetizer.readline"></a><div id="Packetizer.readline-def"><a name="L266"></a><tt class="py-lineno">266</tt> <a class="py-toggle" href="#" id="Packetizer.readline-toggle" onclick="return toggle('Packetizer.readline');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.packet.Packetizer-class.html#readline">readline</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">timeout</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Packetizer.readline-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Packetizer.readline-expanded"><a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L268"></a><tt class="py-lineno">268</tt> <tt class="py-line"><tt class="py-docstring"> Read a line from the socket. We assume no data is pending after the</tt> </tt>
-<a name="L269"></a><tt class="py-lineno">269</tt> <tt class="py-line"><tt class="py-docstring"> line, so it's okay to attempt large reads.</tt> </tt>
-<a name="L270"></a><tt class="py-lineno">270</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L271"></a><tt class="py-lineno">271</tt> <tt class="py-line"> <tt class="py-name">buf</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__remainder</tt> </tt>
-<a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-keyword">not</tt> <tt class="py-string">'\n'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">buf</tt><tt class="py-op">:</tt> </tt>
-<a name="L273"></a><tt class="py-lineno">273</tt> <tt class="py-line"> <tt class="py-name">buf</tt> <tt class="py-op">+=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_read_timeout</tt><tt class="py-op">(</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L274"></a><tt class="py-lineno">274</tt> <tt class="py-line"> <tt class="py-name">n</tt> <tt class="py-op">=</tt> <tt class="py-name">buf</tt><tt class="py-op">.</tt><tt class="py-name">index</tt><tt class="py-op">(</tt><tt class="py-string">'\n'</tt><tt class="py-op">)</tt> </tt>
-<a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__remainder</tt> <tt class="py-op">=</tt> <tt class="py-name">buf</tt><tt class="py-op">[</tt><tt class="py-name">n</tt><tt class="py-op">+</tt><tt class="py-number">1</tt><tt class="py-op">:</tt><tt class="py-op">]</tt> </tt>
-<a name="L276"></a><tt class="py-lineno">276</tt> <tt class="py-line"> <tt class="py-name">buf</tt> <tt class="py-op">=</tt> <tt class="py-name">buf</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-name">n</tt><tt class="py-op">]</tt> </tt>
-<a name="L277"></a><tt class="py-lineno">277</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">buf</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">buf</tt><tt class="py-op">[</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">'\r'</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L278"></a><tt class="py-lineno">278</tt> <tt class="py-line"> <tt class="py-name">buf</tt> <tt class="py-op">=</tt> <tt class="py-name">buf</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L279"></a><tt class="py-lineno">279</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">buf</tt> </tt>
-</div><a name="L280"></a><tt class="py-lineno">280</tt> <tt class="py-line"> </tt>
-<a name="Packetizer.send_message"></a><div id="Packetizer.send_message-def"><a name="L281"></a><tt class="py-lineno">281</tt> <a class="py-toggle" href="#" id="Packetizer.send_message-toggle" onclick="return toggle('Packetizer.send_message');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.packet.Packetizer-class.html#send_message">send_message</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">data</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Packetizer.send_message-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Packetizer.send_message-expanded"><a name="L282"></a><tt class="py-lineno">282</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L283"></a><tt class="py-lineno">283</tt> <tt class="py-line"><tt class="py-docstring"> Write a block of data using the current cipher, as an SSH block.</tt> </tt>
-<a name="L284"></a><tt class="py-lineno">284</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L285"></a><tt class="py-lineno">285</tt> <tt class="py-line"> <tt class="py-comment"># encrypt this sucka</tt> </tt>
-<a name="L286"></a><tt class="py-lineno">286</tt> <tt class="py-line"> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L287"></a><tt class="py-lineno">287</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-name">ord</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L288"></a><tt class="py-lineno">288</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">cmd</tt> <tt class="py-keyword">in</tt> <tt id="link-21" class="py-name" targets="Variable paramiko.auth_handler.MSG_NAMES=paramiko.auth_handler-module.html#MSG_NAMES,Variable paramiko.channel.MSG_NAMES=paramiko.channel-module.html#MSG_NAMES,Variable paramiko.client.MSG_NAMES=paramiko.client-module.html#MSG_NAMES,Variable paramiko.common.MSG_NAMES=paramiko.common-module.html#MSG_NAMES,Variable paramiko.dsskey.MSG_NAMES=paramiko.dsskey-module.html#MSG_NAMES,Variable paramiko.hostkeys.MSG_NAMES=paramiko.hostkeys-module.html#MSG_NAMES,Variable paramiko.kex_gex.MSG_NAMES=paramiko.kex_gex-module.html#MSG_NAMES,Variable paramiko.kex_group1.MSG_NAMES=paramiko.kex_group1-module.html#MSG_NAMES,Variable paramiko.packet.MSG_NAMES=paramiko.packet-module.html#MSG_NAMES,Variable paramiko.pkey.MSG_NAMES=paramiko.pkey-module.html#MSG_NAMES,Variable paramiko.rsakey.MSG_NAMES=paramiko.rsakey-module.html#MSG_NAMES,Variable paramiko.server.MSG_NAMES=paramiko.server-module.html#MSG_NAMES,Variable paramiko.sftp.MSG_NAMES=paramiko.sftp-module.html#MSG_NAMES,Variable paramiko.sftp_attr.MSG_NAMES=paramiko.sftp_attr-module.html#MSG_NAMES,Variable paramiko.sftp_client.MSG_NAMES=paramiko.sftp_client-module.html#MSG_NAMES,Variable paramiko.sftp_file.MSG_NAMES=paramiko.sftp_file-module.html#MSG_NAMES,Variable paramiko.sftp_handle.MSG_NAMES=paramiko.sftp_handle-module.html#MSG_NAMES,Variable paramiko.sftp_server.MSG_NAMES=paramiko.sftp_server-module.html#MSG_NAMES,Variable paramiko.sftp_si.MSG_NAMES=paramiko.sftp_si-module.html#MSG_NAMES,Variable paramiko.transport.MSG_NAMES=paramiko.transport-module.html#MSG_NAMES,Variable paramiko.util.MSG_NAMES=paramiko.util-module.html#MSG_NAMES"><a title="paramiko.auth_handler.MSG_NAMES
-paramiko.channel.MSG_NAMES
-paramiko.client.MSG_NAMES
-paramiko.common.MSG_NAMES
-paramiko.dsskey.MSG_NAMES
-paramiko.hostkeys.MSG_NAMES
-paramiko.kex_gex.MSG_NAMES
-paramiko.kex_group1.MSG_NAMES
-paramiko.packet.MSG_NAMES
-paramiko.pkey.MSG_NAMES
-paramiko.rsakey.MSG_NAMES
-paramiko.server.MSG_NAMES
-paramiko.sftp.MSG_NAMES
-paramiko.sftp_attr.MSG_NAMES
-paramiko.sftp_client.MSG_NAMES
-paramiko.sftp_file.MSG_NAMES
-paramiko.sftp_handle.MSG_NAMES
-paramiko.sftp_server.MSG_NAMES
-paramiko.sftp_si.MSG_NAMES
-paramiko.transport.MSG_NAMES
-paramiko.util.MSG_NAMES" class="py-name" href="#" onclick="return doclink('link-21', 'MSG_NAMES', 'link-21');">MSG_NAMES</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L289"></a><tt class="py-lineno">289</tt> <tt class="py-line"> <tt class="py-name">cmd_name</tt> <tt class="py-op">=</tt> <tt id="link-22" class="py-name"><a title="paramiko.auth_handler.MSG_NAMES
-paramiko.channel.MSG_NAMES
-paramiko.client.MSG_NAMES
-paramiko.common.MSG_NAMES
-paramiko.dsskey.MSG_NAMES
-paramiko.hostkeys.MSG_NAMES
-paramiko.kex_gex.MSG_NAMES
-paramiko.kex_group1.MSG_NAMES
-paramiko.packet.MSG_NAMES
-paramiko.pkey.MSG_NAMES
-paramiko.rsakey.MSG_NAMES
-paramiko.server.MSG_NAMES
-paramiko.sftp.MSG_NAMES
-paramiko.sftp_attr.MSG_NAMES
-paramiko.sftp_client.MSG_NAMES
-paramiko.sftp_file.MSG_NAMES
-paramiko.sftp_handle.MSG_NAMES
-paramiko.sftp_server.MSG_NAMES
-paramiko.sftp_si.MSG_NAMES
-paramiko.transport.MSG_NAMES
-paramiko.util.MSG_NAMES" class="py-name" href="#" onclick="return doclink('link-22', 'MSG_NAMES', 'link-21');">MSG_NAMES</a></tt><tt class="py-op">[</tt><tt class="py-name">cmd</tt><tt class="py-op">]</tt> </tt>
-<a name="L290"></a><tt class="py-lineno">290</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L291"></a><tt class="py-lineno">291</tt> <tt class="py-line"> <tt class="py-name">cmd_name</tt> <tt class="py-op">=</tt> <tt class="py-string">'$%x'</tt> <tt class="py-op">%</tt> <tt class="py-name">cmd</tt> </tt>
-<a name="L292"></a><tt class="py-lineno">292</tt> <tt class="py-line"> <tt class="py-name">orig_len</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L293"></a><tt class="py-lineno">293</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__write_lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L294"></a><tt class="py-lineno">294</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L295"></a><tt class="py-lineno">295</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__compress_engine_out</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L296"></a><tt class="py-lineno">296</tt> <tt class="py-line"> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__compress_engine_out</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L297"></a><tt class="py-lineno">297</tt> <tt class="py-line"> <tt id="link-23" class="py-name" targets="Module paramiko.packet=paramiko.packet-module.html"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-23', 'packet', 'link-23');">packet</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_build_packet</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L298"></a><tt class="py-lineno">298</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__dump_packets</tt><tt class="py-op">:</tt> </tt>
-<a name="L299"></a><tt class="py-lineno">299</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-24" class="py-name" targets="Variable paramiko.auth_handler.DEBUG=paramiko.auth_handler-module.html#DEBUG,Variable paramiko.channel.DEBUG=paramiko.channel-module.html#DEBUG,Variable paramiko.client.DEBUG=paramiko.client-module.html#DEBUG,Variable paramiko.common.DEBUG=paramiko.common-module.html#DEBUG,Variable paramiko.dsskey.DEBUG=paramiko.dsskey-module.html#DEBUG,Variable paramiko.hostkeys.DEBUG=paramiko.hostkeys-module.html#DEBUG,Variable paramiko.kex_gex.DEBUG=paramiko.kex_gex-module.html#DEBUG,Variable paramiko.kex_group1.DEBUG=paramiko.kex_group1-module.html#DEBUG,Variable paramiko.logging22.DEBUG=paramiko.logging22-module.html#DEBUG,Variable paramiko.packet.DEBUG=paramiko.packet-module.html#DEBUG,Variable paramiko.pkey.DEBUG=paramiko.pkey-module.html#DEBUG,Variable paramiko.rsakey.DEBUG=paramiko.rsakey-module.html#DEBUG,Variable paramiko.server.DEBUG=paramiko.server-module.html#DEBUG,Variable paramiko.sftp.DEBUG=paramiko.sftp-module.html#DEBUG,Variable paramiko.sftp_attr.DEBUG=paramiko.sftp_attr-module.html#DEBUG,Variable paramiko.sftp_client.DEBUG=paramiko.sftp_client-module.html#DEBUG,Variable paramiko.sftp_file.DEBUG=paramiko.sftp_file-module.html#DEBUG,Variable paramiko.sftp_handle.DEBUG=paramiko.sftp_handle-module.html#DEBUG,Variable paramiko.sftp_server.DEBUG=paramiko.sftp_server-module.html#DEBUG,Variable paramiko.sftp_si.DEBUG=paramiko.sftp_si-module.html#DEBUG,Variable paramiko.transport.DEBUG=paramiko.transport-module.html#DEBUG,Variable paramiko.util.DEBUG=paramiko.util-module.html#DEBUG"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-24', 'DEBUG', 'link-24');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Write packet &lt;%s&gt;, length %d'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">cmd_name</tt><tt class="py-op">,</tt> <tt class="py-name">orig_len</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L300"></a><tt class="py-lineno">300</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-25" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-25', 'DEBUG', 'link-24');">DEBUG</a></tt><tt class="py-op">,</tt> <tt id="link-26" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-26', 'util', 'link-3');">util</a></tt><tt class="py-op">.</tt><tt id="link-27" class="py-name" targets="Function paramiko.util.format_binary()=paramiko.util-module.html#format_binary"><a title="paramiko.util.format_binary" class="py-name" href="#" onclick="return doclink('link-27', 'format_binary', 'link-27');">format_binary</a></tt><tt class="py-op">(</tt><tt id="link-28" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-28', 'packet', 'link-23');">packet</a></tt><tt class="py-op">,</tt> <tt class="py-string">'OUT: '</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L301"></a><tt class="py-lineno">301</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__block_engine_out</tt> <tt class="py-op">!=</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L302"></a><tt class="py-lineno">302</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__block_engine_out</tt><tt class="py-op">.</tt><tt class="py-name">encrypt</tt><tt class="py-op">(</tt><tt id="link-29" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-29', 'packet', 'link-23');">packet</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L303"></a><tt class="py-lineno">303</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L304"></a><tt class="py-lineno">304</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt id="link-30" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-30', 'packet', 'link-23');">packet</a></tt> </tt>
-<a name="L305"></a><tt class="py-lineno">305</tt> <tt class="py-line"> <tt class="py-comment"># + mac</tt> </tt>
-<a name="L306"></a><tt class="py-lineno">306</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__block_engine_out</tt> <tt class="py-op">!=</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L307"></a><tt class="py-lineno">307</tt> <tt class="py-line"> <tt class="py-name">payload</tt> <tt class="py-op">=</tt> <tt class="py-name">struct</tt><tt class="py-op">.</tt><tt class="py-name">pack</tt><tt class="py-op">(</tt><tt class="py-string">'&gt;I'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__sequence_number_out</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt id="link-31" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-31', 'packet', 'link-23');">packet</a></tt> </tt>
-<a name="L308"></a><tt class="py-lineno">308</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">+=</tt> <tt id="link-32" class="py-name" targets="Function paramiko.packet.compute_hmac()=paramiko.packet-module.html#compute_hmac"><a title="paramiko.packet.compute_hmac" class="py-name" href="#" onclick="return doclink('link-32', 'compute_hmac', 'link-32');">compute_hmac</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__mac_key_out</tt><tt class="py-op">,</tt> <tt class="py-name">payload</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__mac_engine_out</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__mac_size_out</tt><tt class="py-op">]</tt> </tt>
-<a name="L309"></a><tt class="py-lineno">309</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__sequence_number_out</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__sequence_number_out</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-op">&amp;</tt> <tt class="py-number">0xffffffffL</tt> </tt>
-<a name="L310"></a><tt class="py-lineno">310</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">write_all</tt><tt class="py-op">(</tt><tt class="py-name">out</tt><tt class="py-op">)</tt> </tt>
-<a name="L311"></a><tt class="py-lineno">311</tt> <tt class="py-line"> </tt>
-<a name="L312"></a><tt class="py-lineno">312</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__sent_bytes</tt> <tt class="py-op">+=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">out</tt><tt class="py-op">)</tt> </tt>
-<a name="L313"></a><tt class="py-lineno">313</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__sent_packets</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L314"></a><tt class="py-lineno">314</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__sent_packets</tt> <tt class="py-op">&gt;=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">REKEY_PACKETS</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__sent_bytes</tt> <tt class="py-op">&gt;=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">REKEY_BYTES</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> \ </tt>
-<a name="L315"></a><tt class="py-lineno">315</tt> <tt class="py-line"> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__need_rekey</tt><tt class="py-op">:</tt> </tt>
-<a name="L316"></a><tt class="py-lineno">316</tt> <tt class="py-line"> <tt class="py-comment"># only ask once for rekeying</tt> </tt>
-<a name="L317"></a><tt class="py-lineno">317</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-33" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-33', 'DEBUG', 'link-24');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Rekeying (hit %d packets, %d bytes sent)'</tt> <tt class="py-op">%</tt> </tt>
-<a name="L318"></a><tt class="py-lineno">318</tt> <tt class="py-line"> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__sent_packets</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__sent_bytes</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L319"></a><tt class="py-lineno">319</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__received_packets_overflow</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L320"></a><tt class="py-lineno">320</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_trigger_rekey</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L321"></a><tt class="py-lineno">321</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L322"></a><tt class="py-lineno">322</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__write_lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L323"></a><tt class="py-lineno">323</tt> <tt class="py-line"> </tt>
-<a name="Packetizer.read_message"></a><div id="Packetizer.read_message-def"><a name="L324"></a><tt class="py-lineno">324</tt> <a class="py-toggle" href="#" id="Packetizer.read_message-toggle" onclick="return toggle('Packetizer.read_message');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.packet.Packetizer-class.html#read_message">read_message</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Packetizer.read_message-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Packetizer.read_message-expanded"><a name="L325"></a><tt class="py-lineno">325</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L326"></a><tt class="py-lineno">326</tt> <tt class="py-line"><tt class="py-docstring"> Only one thread should ever be in this function (no other locking is</tt> </tt>
-<a name="L327"></a><tt class="py-lineno">327</tt> <tt class="py-line"><tt class="py-docstring"> done).</tt> </tt>
-<a name="L328"></a><tt class="py-lineno">328</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L329"></a><tt class="py-lineno">329</tt> <tt class="py-line"><tt class="py-docstring"> @raise SSHException: if the packet is mangled</tt> </tt>
-<a name="L330"></a><tt class="py-lineno">330</tt> <tt class="py-line"><tt class="py-docstring"> @raise NeedRekeyException: if the transport should rekey</tt> </tt>
-<a name="L331"></a><tt class="py-lineno">331</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L332"></a><tt class="py-lineno">332</tt> <tt class="py-line"> <tt class="py-name">header</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">read_all</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__block_size_in</tt><tt class="py-op">,</tt> <tt class="py-name">check_rekey</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">)</tt> </tt>
-<a name="L333"></a><tt class="py-lineno">333</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__block_engine_in</tt> <tt class="py-op">!=</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L334"></a><tt class="py-lineno">334</tt> <tt class="py-line"> <tt class="py-name">header</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__block_engine_in</tt><tt class="py-op">.</tt><tt class="py-name">decrypt</tt><tt class="py-op">(</tt><tt class="py-name">header</tt><tt class="py-op">)</tt> </tt>
-<a name="L335"></a><tt class="py-lineno">335</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__dump_packets</tt><tt class="py-op">:</tt> </tt>
-<a name="L336"></a><tt class="py-lineno">336</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-34" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-34', 'DEBUG', 'link-24');">DEBUG</a></tt><tt class="py-op">,</tt> <tt id="link-35" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-35', 'util', 'link-3');">util</a></tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="paramiko.util.format_binary" class="py-name" href="#" onclick="return doclink('link-36', 'format_binary', 'link-27');">format_binary</a></tt><tt class="py-op">(</tt><tt class="py-name">header</tt><tt class="py-op">,</tt> <tt class="py-string">'IN: '</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">;</tt> </tt>
-<a name="L337"></a><tt class="py-lineno">337</tt> <tt class="py-line"> <tt class="py-name">packet_size</tt> <tt class="py-op">=</tt> <tt class="py-name">struct</tt><tt class="py-op">.</tt><tt class="py-name">unpack</tt><tt class="py-op">(</tt><tt class="py-string">'&gt;I'</tt><tt class="py-op">,</tt> <tt class="py-name">header</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-number">4</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L338"></a><tt class="py-lineno">338</tt> <tt class="py-line"> <tt class="py-comment"># leftover contains decrypted bytes from the first block (after the length field)</tt> </tt>
-<a name="L339"></a><tt class="py-lineno">339</tt> <tt class="py-line"> <tt class="py-name">leftover</tt> <tt class="py-op">=</tt> <tt class="py-name">header</tt><tt class="py-op">[</tt><tt class="py-number">4</tt><tt class="py-op">:</tt><tt class="py-op">]</tt> </tt>
-<a name="L340"></a><tt class="py-lineno">340</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">packet_size</tt> <tt class="py-op">-</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">leftover</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">%</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__block_size_in</tt> <tt class="py-op">!=</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L341"></a><tt class="py-lineno">341</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-37" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-37', 'SSHException', 'link-6');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Invalid packet blocking'</tt><tt class="py-op">)</tt> </tt>
-<a name="L342"></a><tt class="py-lineno">342</tt> <tt class="py-line"> <tt class="py-name">buf</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">read_all</tt><tt class="py-op">(</tt><tt class="py-name">packet_size</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__mac_size_in</tt> <tt class="py-op">-</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">leftover</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L343"></a><tt class="py-lineno">343</tt> <tt class="py-line"> <tt id="link-38" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-38', 'packet', 'link-23');">packet</a></tt> <tt class="py-op">=</tt> <tt class="py-name">buf</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-name">packet_size</tt> <tt class="py-op">-</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">leftover</tt><tt class="py-op">)</tt><tt class="py-op">]</tt> </tt>
-<a name="L344"></a><tt class="py-lineno">344</tt> <tt class="py-line"> <tt class="py-name">post_packet</tt> <tt class="py-op">=</tt> <tt class="py-name">buf</tt><tt class="py-op">[</tt><tt class="py-name">packet_size</tt> <tt class="py-op">-</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">leftover</tt><tt class="py-op">)</tt><tt class="py-op">:</tt><tt class="py-op">]</tt> </tt>
-<a name="L345"></a><tt class="py-lineno">345</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__block_engine_in</tt> <tt class="py-op">!=</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L346"></a><tt class="py-lineno">346</tt> <tt class="py-line"> <tt id="link-39" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-39', 'packet', 'link-23');">packet</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__block_engine_in</tt><tt class="py-op">.</tt><tt class="py-name">decrypt</tt><tt class="py-op">(</tt><tt id="link-40" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-40', 'packet', 'link-23');">packet</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L347"></a><tt class="py-lineno">347</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__dump_packets</tt><tt class="py-op">:</tt> </tt>
-<a name="L348"></a><tt class="py-lineno">348</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-41" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-41', 'DEBUG', 'link-24');">DEBUG</a></tt><tt class="py-op">,</tt> <tt id="link-42" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-42', 'util', 'link-3');">util</a></tt><tt class="py-op">.</tt><tt id="link-43" class="py-name"><a title="paramiko.util.format_binary" class="py-name" href="#" onclick="return doclink('link-43', 'format_binary', 'link-27');">format_binary</a></tt><tt class="py-op">(</tt><tt id="link-44" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-44', 'packet', 'link-23');">packet</a></tt><tt class="py-op">,</tt> <tt class="py-string">'IN: '</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">;</tt> </tt>
-<a name="L349"></a><tt class="py-lineno">349</tt> <tt class="py-line"> <tt id="link-45" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-45', 'packet', 'link-23');">packet</a></tt> <tt class="py-op">=</tt> <tt class="py-name">leftover</tt> <tt class="py-op">+</tt> <tt id="link-46" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-46', 'packet', 'link-23');">packet</a></tt> </tt>
-<a name="L350"></a><tt class="py-lineno">350</tt> <tt class="py-line"> </tt>
-<a name="L351"></a><tt class="py-lineno">351</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__mac_size_in</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L352"></a><tt class="py-lineno">352</tt> <tt class="py-line"> <tt class="py-name">mac</tt> <tt class="py-op">=</tt> <tt class="py-name">post_packet</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__mac_size_in</tt><tt class="py-op">]</tt> </tt>
-<a name="L353"></a><tt class="py-lineno">353</tt> <tt class="py-line"> <tt class="py-name">mac_payload</tt> <tt class="py-op">=</tt> <tt class="py-name">struct</tt><tt class="py-op">.</tt><tt class="py-name">pack</tt><tt class="py-op">(</tt><tt class="py-string">'&gt;II'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__sequence_number_in</tt><tt class="py-op">,</tt> <tt class="py-name">packet_size</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt id="link-47" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-47', 'packet', 'link-23');">packet</a></tt> </tt>
-<a name="L354"></a><tt class="py-lineno">354</tt> <tt class="py-line"> <tt class="py-name">my_mac</tt> <tt class="py-op">=</tt> <tt id="link-48" class="py-name"><a title="paramiko.packet.compute_hmac" class="py-name" href="#" onclick="return doclink('link-48', 'compute_hmac', 'link-32');">compute_hmac</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__mac_key_in</tt><tt class="py-op">,</tt> <tt class="py-name">mac_payload</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__mac_engine_in</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__mac_size_in</tt><tt class="py-op">]</tt> </tt>
-<a name="L355"></a><tt class="py-lineno">355</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">my_mac</tt> <tt class="py-op">!=</tt> <tt class="py-name">mac</tt><tt class="py-op">:</tt> </tt>
-<a name="L356"></a><tt class="py-lineno">356</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-49" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-49', 'SSHException', 'link-6');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Mismatched MAC'</tt><tt class="py-op">)</tt> </tt>
-<a name="L357"></a><tt class="py-lineno">357</tt> <tt class="py-line"> <tt class="py-name">padding</tt> <tt class="py-op">=</tt> <tt class="py-name">ord</tt><tt class="py-op">(</tt><tt id="link-50" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-50', 'packet', 'link-23');">packet</a></tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L358"></a><tt class="py-lineno">358</tt> <tt class="py-line"> <tt class="py-name">payload</tt> <tt class="py-op">=</tt> <tt id="link-51" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-51', 'packet', 'link-23');">packet</a></tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">:</tt><tt class="py-name">packet_size</tt> <tt class="py-op">-</tt> <tt class="py-name">padding</tt><tt class="py-op">]</tt> </tt>
-<a name="L359"></a><tt class="py-lineno">359</tt> <tt class="py-line"> </tt>
-<a name="L360"></a><tt class="py-lineno">360</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__dump_packets</tt><tt class="py-op">:</tt> </tt>
-<a name="L361"></a><tt class="py-lineno">361</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-52" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-52', 'DEBUG', 'link-24');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Got payload (%d bytes, %d padding)'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">packet_size</tt><tt class="py-op">,</tt> <tt class="py-name">padding</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L362"></a><tt class="py-lineno">362</tt> <tt class="py-line"> </tt>
-<a name="L363"></a><tt class="py-lineno">363</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__compress_engine_in</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L364"></a><tt class="py-lineno">364</tt> <tt class="py-line"> <tt class="py-name">payload</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__compress_engine_in</tt><tt class="py-op">(</tt><tt class="py-name">payload</tt><tt class="py-op">)</tt> </tt>
-<a name="L365"></a><tt class="py-lineno">365</tt> <tt class="py-line"> </tt>
-<a name="L366"></a><tt class="py-lineno">366</tt> <tt class="py-line"> <tt class="py-name">msg</tt> <tt class="py-op">=</tt> <tt id="link-53" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-53', 'Message', 'link-9');">Message</a></tt><tt class="py-op">(</tt><tt class="py-name">payload</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">:</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L367"></a><tt class="py-lineno">367</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt class="py-name">seqno</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__sequence_number_in</tt> </tt>
-<a name="L368"></a><tt class="py-lineno">368</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__sequence_number_in</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__sequence_number_in</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-op">&amp;</tt> <tt class="py-number">0xffffffffL</tt> </tt>
-<a name="L369"></a><tt class="py-lineno">369</tt> <tt class="py-line"> </tt>
-<a name="L370"></a><tt class="py-lineno">370</tt> <tt class="py-line"> <tt class="py-comment"># check for rekey</tt> </tt>
-<a name="L371"></a><tt class="py-lineno">371</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__received_bytes</tt> <tt class="py-op">+=</tt> <tt class="py-name">packet_size</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__mac_size_in</tt> <tt class="py-op">+</tt> <tt class="py-number">4</tt> </tt>
-<a name="L372"></a><tt class="py-lineno">372</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__received_packets</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L373"></a><tt class="py-lineno">373</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__need_rekey</tt><tt class="py-op">:</tt> </tt>
-<a name="L374"></a><tt class="py-lineno">374</tt> <tt class="py-line"> <tt class="py-comment"># we've asked to rekey -- give them 20 packets to comply before</tt> </tt>
-<a name="L375"></a><tt class="py-lineno">375</tt> <tt class="py-line"> <tt class="py-comment"># dropping the connection</tt> </tt>
-<a name="L376"></a><tt class="py-lineno">376</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__received_packets_overflow</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L377"></a><tt class="py-lineno">377</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__received_packets_overflow</tt> <tt class="py-op">&gt;=</tt> <tt class="py-number">20</tt><tt class="py-op">:</tt> </tt>
-<a name="L378"></a><tt class="py-lineno">378</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-54" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-54', 'SSHException', 'link-6');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Remote transport is ignoring rekey requests'</tt><tt class="py-op">)</tt> </tt>
-<a name="L379"></a><tt class="py-lineno">379</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__received_packets</tt> <tt class="py-op">&gt;=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">REKEY_PACKETS</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> \ </tt>
-<a name="L380"></a><tt class="py-lineno">380</tt> <tt class="py-line"> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__received_bytes</tt> <tt class="py-op">&gt;=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">REKEY_BYTES</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L381"></a><tt class="py-lineno">381</tt> <tt class="py-line"> <tt class="py-comment"># only ask once for rekeying</tt> </tt>
-<a name="L382"></a><tt class="py-lineno">382</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-55" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-55', 'DEBUG', 'link-24');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Rekeying (hit %d packets, %d bytes received)'</tt> <tt class="py-op">%</tt> </tt>
-<a name="L383"></a><tt class="py-lineno">383</tt> <tt class="py-line"> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__received_packets</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__received_bytes</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L384"></a><tt class="py-lineno">384</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__received_packets_overflow</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L385"></a><tt class="py-lineno">385</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_trigger_rekey</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L386"></a><tt class="py-lineno">386</tt> <tt class="py-line"> </tt>
-<a name="L387"></a><tt class="py-lineno">387</tt> <tt class="py-line"> <tt class="py-name">cmd</tt> <tt class="py-op">=</tt> <tt class="py-name">ord</tt><tt class="py-op">(</tt><tt class="py-name">payload</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L388"></a><tt class="py-lineno">388</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">cmd</tt> <tt class="py-keyword">in</tt> <tt id="link-56" class="py-name"><a title="paramiko.auth_handler.MSG_NAMES
-paramiko.channel.MSG_NAMES
-paramiko.client.MSG_NAMES
-paramiko.common.MSG_NAMES
-paramiko.dsskey.MSG_NAMES
-paramiko.hostkeys.MSG_NAMES
-paramiko.kex_gex.MSG_NAMES
-paramiko.kex_group1.MSG_NAMES
-paramiko.packet.MSG_NAMES
-paramiko.pkey.MSG_NAMES
-paramiko.rsakey.MSG_NAMES
-paramiko.server.MSG_NAMES
-paramiko.sftp.MSG_NAMES
-paramiko.sftp_attr.MSG_NAMES
-paramiko.sftp_client.MSG_NAMES
-paramiko.sftp_file.MSG_NAMES
-paramiko.sftp_handle.MSG_NAMES
-paramiko.sftp_server.MSG_NAMES
-paramiko.sftp_si.MSG_NAMES
-paramiko.transport.MSG_NAMES
-paramiko.util.MSG_NAMES" class="py-name" href="#" onclick="return doclink('link-56', 'MSG_NAMES', 'link-21');">MSG_NAMES</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L389"></a><tt class="py-lineno">389</tt> <tt class="py-line"> <tt class="py-name">cmd_name</tt> <tt class="py-op">=</tt> <tt id="link-57" class="py-name"><a title="paramiko.auth_handler.MSG_NAMES
-paramiko.channel.MSG_NAMES
-paramiko.client.MSG_NAMES
-paramiko.common.MSG_NAMES
-paramiko.dsskey.MSG_NAMES
-paramiko.hostkeys.MSG_NAMES
-paramiko.kex_gex.MSG_NAMES
-paramiko.kex_group1.MSG_NAMES
-paramiko.packet.MSG_NAMES
-paramiko.pkey.MSG_NAMES
-paramiko.rsakey.MSG_NAMES
-paramiko.server.MSG_NAMES
-paramiko.sftp.MSG_NAMES
-paramiko.sftp_attr.MSG_NAMES
-paramiko.sftp_client.MSG_NAMES
-paramiko.sftp_file.MSG_NAMES
-paramiko.sftp_handle.MSG_NAMES
-paramiko.sftp_server.MSG_NAMES
-paramiko.sftp_si.MSG_NAMES
-paramiko.transport.MSG_NAMES
-paramiko.util.MSG_NAMES" class="py-name" href="#" onclick="return doclink('link-57', 'MSG_NAMES', 'link-21');">MSG_NAMES</a></tt><tt class="py-op">[</tt><tt class="py-name">cmd</tt><tt class="py-op">]</tt> </tt>
-<a name="L390"></a><tt class="py-lineno">390</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L391"></a><tt class="py-lineno">391</tt> <tt class="py-line"> <tt class="py-name">cmd_name</tt> <tt class="py-op">=</tt> <tt class="py-string">'$%x'</tt> <tt class="py-op">%</tt> <tt class="py-name">cmd</tt> </tt>
-<a name="L392"></a><tt class="py-lineno">392</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__dump_packets</tt><tt class="py-op">:</tt> </tt>
-<a name="L393"></a><tt class="py-lineno">393</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-58" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-58', 'DEBUG', 'link-24');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Read packet &lt;%s&gt;, length %d'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">cmd_name</tt><tt class="py-op">,</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">payload</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L394"></a><tt class="py-lineno">394</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">cmd</tt><tt class="py-op">,</tt> <tt class="py-name">msg</tt> </tt>
-</div><a name="L395"></a><tt class="py-lineno">395</tt> <tt class="py-line"> </tt>
-<a name="L396"></a><tt class="py-lineno">396</tt> <tt class="py-line"> </tt>
-<a name="L397"></a><tt class="py-lineno">397</tt> <tt class="py-line"> <tt class="py-comment">########## protected</tt> </tt>
-<a name="L398"></a><tt class="py-lineno">398</tt> <tt class="py-line"> </tt>
-<a name="L399"></a><tt class="py-lineno">399</tt> <tt class="py-line"> </tt>
-<a name="Packetizer._log"></a><div id="Packetizer._log-def"><a name="L400"></a><tt class="py-lineno">400</tt> <a class="py-toggle" href="#" id="Packetizer._log-toggle" onclick="return toggle('Packetizer._log');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.packet.Packetizer-class.html#_log">_log</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">level</tt><tt class="py-op">,</tt> <tt class="py-param">msg</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Packetizer._log-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Packetizer._log-expanded"><a name="L401"></a><tt class="py-lineno">401</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__logger</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L402"></a><tt class="py-lineno">402</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L403"></a><tt class="py-lineno">403</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">issubclass</tt><tt class="py-op">(</tt><tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L404"></a><tt class="py-lineno">404</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">m</tt> <tt class="py-keyword">in</tt> <tt class="py-name">msg</tt><tt class="py-op">:</tt> </tt>
-<a name="L405"></a><tt class="py-lineno">405</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__logger</tt><tt class="py-op">.</tt><tt id="link-59" class="py-name"><a title="paramiko.logging22.logger.log" class="py-name" href="#" onclick="return doclink('link-59', 'log', 'link-15');">log</a></tt><tt class="py-op">(</tt><tt class="py-name">level</tt><tt class="py-op">,</tt> <tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L406"></a><tt class="py-lineno">406</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L407"></a><tt class="py-lineno">407</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__logger</tt><tt class="py-op">.</tt><tt id="link-60" class="py-name"><a title="paramiko.logging22.logger.log" class="py-name" href="#" onclick="return doclink('link-60', 'log', 'link-15');">log</a></tt><tt class="py-op">(</tt><tt class="py-name">level</tt><tt class="py-op">,</tt> <tt class="py-name">msg</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L408"></a><tt class="py-lineno">408</tt> <tt class="py-line"> </tt>
-<a name="Packetizer._check_keepalive"></a><div id="Packetizer._check_keepalive-def"><a name="L409"></a><tt class="py-lineno">409</tt> <a class="py-toggle" href="#" id="Packetizer._check_keepalive-toggle" onclick="return toggle('Packetizer._check_keepalive');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.packet.Packetizer-class.html#_check_keepalive">_check_keepalive</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Packetizer._check_keepalive-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Packetizer._check_keepalive-expanded"><a name="L410"></a><tt class="py-lineno">410</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__keepalive_interval</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__block_engine_out</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> \ </tt>
-<a name="L411"></a><tt class="py-lineno">411</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__need_rekey</tt><tt class="py-op">:</tt> </tt>
-<a name="L412"></a><tt class="py-lineno">412</tt> <tt class="py-line"> <tt class="py-comment"># wait till we're encrypting, and not in the middle of rekeying</tt> </tt>
-<a name="L413"></a><tt class="py-lineno">413</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L414"></a><tt class="py-lineno">414</tt> <tt class="py-line"> <tt class="py-name">now</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L415"></a><tt class="py-lineno">415</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">now</tt> <tt class="py-op">&gt;</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__keepalive_last</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__keepalive_interval</tt><tt class="py-op">:</tt> </tt>
-<a name="L416"></a><tt class="py-lineno">416</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__keepalive_callback</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L417"></a><tt class="py-lineno">417</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__keepalive_last</tt> <tt class="py-op">=</tt> <tt class="py-name">now</tt> </tt>
-</div><a name="L418"></a><tt class="py-lineno">418</tt> <tt class="py-line"> </tt>
-<a name="Packetizer._py22_read_all"></a><div id="Packetizer._py22_read_all-def"><a name="L419"></a><tt class="py-lineno">419</tt> <a class="py-toggle" href="#" id="Packetizer._py22_read_all-toggle" onclick="return toggle('Packetizer._py22_read_all');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.packet.Packetizer-class.html#_py22_read_all">_py22_read_all</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">n</tt><tt class="py-op">,</tt> <tt class="py-param">out</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Packetizer._py22_read_all-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Packetizer._py22_read_all-expanded"><a name="L420"></a><tt class="py-lineno">420</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">n</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L421"></a><tt class="py-lineno">421</tt> <tt class="py-line"> <tt class="py-name">r</tt><tt class="py-op">,</tt> <tt class="py-name">w</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt> <tt class="py-op">=</tt> <tt class="py-name">select</tt><tt class="py-op">.</tt><tt class="py-name">select</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__socket</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-number">0.1</tt><tt class="py-op">)</tt> </tt>
-<a name="L422"></a><tt class="py-lineno">422</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__socket</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">r</tt><tt class="py-op">:</tt> </tt>
-<a name="L423"></a><tt class="py-lineno">423</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__closed</tt><tt class="py-op">:</tt> </tt>
-<a name="L424"></a><tt class="py-lineno">424</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">EOFError</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L425"></a><tt class="py-lineno">425</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_check_keepalive</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L426"></a><tt class="py-lineno">426</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L427"></a><tt class="py-lineno">427</tt> <tt class="py-line"> <tt class="py-name">x</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__socket</tt><tt class="py-op">.</tt><tt id="link-61" class="py-name"><a title="paramiko.Channel.recv
-paramiko.win_pageant.PageantConnection.recv" class="py-name" href="#" onclick="return doclink('link-61', 'recv', 'link-18');">recv</a></tt><tt class="py-op">(</tt><tt class="py-name">n</tt><tt class="py-op">)</tt> </tt>
-<a name="L428"></a><tt class="py-lineno">428</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L429"></a><tt class="py-lineno">429</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">EOFError</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L430"></a><tt class="py-lineno">430</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">+=</tt> <tt class="py-name">x</tt> </tt>
-<a name="L431"></a><tt class="py-lineno">431</tt> <tt class="py-line"> <tt class="py-name">n</tt> <tt class="py-op">-=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt> </tt>
-<a name="L432"></a><tt class="py-lineno">432</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">out</tt> </tt>
-</div><a name="L433"></a><tt class="py-lineno">433</tt> <tt class="py-line"> </tt>
-<a name="Packetizer._py22_read_timeout"></a><div id="Packetizer._py22_read_timeout-def"><a name="L434"></a><tt class="py-lineno">434</tt> <a class="py-toggle" href="#" id="Packetizer._py22_read_timeout-toggle" onclick="return toggle('Packetizer._py22_read_timeout');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.packet.Packetizer-class.html#_py22_read_timeout">_py22_read_timeout</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">timeout</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Packetizer._py22_read_timeout-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Packetizer._py22_read_timeout-expanded"><a name="L435"></a><tt class="py-lineno">435</tt> <tt class="py-line"> <tt class="py-name">start</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L436"></a><tt class="py-lineno">436</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L437"></a><tt class="py-lineno">437</tt> <tt class="py-line"> <tt class="py-name">r</tt><tt class="py-op">,</tt> <tt class="py-name">w</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt> <tt class="py-op">=</tt> <tt class="py-name">select</tt><tt class="py-op">.</tt><tt class="py-name">select</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__socket</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-number">0.1</tt><tt class="py-op">)</tt> </tt>
-<a name="L438"></a><tt class="py-lineno">438</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__socket</tt> <tt class="py-keyword">in</tt> <tt class="py-name">r</tt><tt class="py-op">:</tt> </tt>
-<a name="L439"></a><tt class="py-lineno">439</tt> <tt class="py-line"> <tt class="py-name">x</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__socket</tt><tt class="py-op">.</tt><tt id="link-62" class="py-name"><a title="paramiko.Channel.recv
-paramiko.win_pageant.PageantConnection.recv" class="py-name" href="#" onclick="return doclink('link-62', 'recv', 'link-18');">recv</a></tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L440"></a><tt class="py-lineno">440</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L441"></a><tt class="py-lineno">441</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">EOFError</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L442"></a><tt class="py-lineno">442</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L443"></a><tt class="py-lineno">443</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__closed</tt><tt class="py-op">:</tt> </tt>
-<a name="L444"></a><tt class="py-lineno">444</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">EOFError</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L445"></a><tt class="py-lineno">445</tt> <tt class="py-line"> <tt class="py-name">now</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L446"></a><tt class="py-lineno">446</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">now</tt> <tt class="py-op">-</tt> <tt class="py-name">start</tt> <tt class="py-op">&gt;=</tt> <tt class="py-name">timeout</tt><tt class="py-op">:</tt> </tt>
-<a name="L447"></a><tt class="py-lineno">447</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L448"></a><tt class="py-lineno">448</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">x</tt> </tt>
-</div><a name="L449"></a><tt class="py-lineno">449</tt> <tt class="py-line"> </tt>
-<a name="Packetizer._read_timeout"></a><div id="Packetizer._read_timeout-def"><a name="L450"></a><tt class="py-lineno">450</tt> <a class="py-toggle" href="#" id="Packetizer._read_timeout-toggle" onclick="return toggle('Packetizer._read_timeout');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.packet.Packetizer-class.html#_read_timeout">_read_timeout</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">timeout</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Packetizer._read_timeout-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Packetizer._read_timeout-expanded"><a name="L451"></a><tt class="py-lineno">451</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-63" class="py-name"><a title="paramiko.auth_handler.PY22
-paramiko.channel.PY22
-paramiko.client.PY22
-paramiko.common.PY22
-paramiko.dsskey.PY22
-paramiko.hostkeys.PY22
-paramiko.kex_gex.PY22
-paramiko.kex_group1.PY22
-paramiko.packet.PY22
-paramiko.pkey.PY22
-paramiko.rsakey.PY22
-paramiko.server.PY22
-paramiko.sftp.PY22
-paramiko.sftp_attr.PY22
-paramiko.sftp_client.PY22
-paramiko.sftp_file.PY22
-paramiko.sftp_handle.PY22
-paramiko.sftp_server.PY22
-paramiko.sftp_si.PY22
-paramiko.transport.PY22
-paramiko.util.PY22" class="py-name" href="#" onclick="return doclink('link-63', 'PY22', 'link-17');">PY22</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L452"></a><tt class="py-lineno">452</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_py22_read_timeout</tt><tt class="py-op">(</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L453"></a><tt class="py-lineno">453</tt> <tt class="py-line"> <tt class="py-name">start</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L454"></a><tt class="py-lineno">454</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L455"></a><tt class="py-lineno">455</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L456"></a><tt class="py-lineno">456</tt> <tt class="py-line"> <tt class="py-name">x</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__socket</tt><tt class="py-op">.</tt><tt id="link-64" class="py-name"><a title="paramiko.Channel.recv
-paramiko.win_pageant.PageantConnection.recv" class="py-name" href="#" onclick="return doclink('link-64', 'recv', 'link-18');">recv</a></tt><tt class="py-op">(</tt><tt class="py-number">128</tt><tt class="py-op">)</tt> </tt>
-<a name="L457"></a><tt class="py-lineno">457</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L458"></a><tt class="py-lineno">458</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">EOFError</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L459"></a><tt class="py-lineno">459</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L460"></a><tt class="py-lineno">460</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">:</tt> </tt>
-<a name="L461"></a><tt class="py-lineno">461</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L462"></a><tt class="py-lineno">462</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__closed</tt><tt class="py-op">:</tt> </tt>
-<a name="L463"></a><tt class="py-lineno">463</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">EOFError</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L464"></a><tt class="py-lineno">464</tt> <tt class="py-line"> <tt class="py-name">now</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L465"></a><tt class="py-lineno">465</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">now</tt> <tt class="py-op">-</tt> <tt class="py-name">start</tt> <tt class="py-op">&gt;=</tt> <tt class="py-name">timeout</tt><tt class="py-op">:</tt> </tt>
-<a name="L466"></a><tt class="py-lineno">466</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">timeout</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L467"></a><tt class="py-lineno">467</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">x</tt> </tt>
-</div><a name="L468"></a><tt class="py-lineno">468</tt> <tt class="py-line"> </tt>
-<a name="Packetizer._build_packet"></a><div id="Packetizer._build_packet-def"><a name="L469"></a><tt class="py-lineno">469</tt> <a class="py-toggle" href="#" id="Packetizer._build_packet-toggle" onclick="return toggle('Packetizer._build_packet');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.packet.Packetizer-class.html#_build_packet">_build_packet</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">payload</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Packetizer._build_packet-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Packetizer._build_packet-expanded"><a name="L470"></a><tt class="py-lineno">470</tt> <tt class="py-line"> <tt class="py-comment"># pad up at least 4 bytes, to nearest block-size (usually 8)</tt> </tt>
-<a name="L471"></a><tt class="py-lineno">471</tt> <tt class="py-line"> <tt class="py-name">bsize</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__block_size_out</tt> </tt>
-<a name="L472"></a><tt class="py-lineno">472</tt> <tt class="py-line"> <tt class="py-name">padding</tt> <tt class="py-op">=</tt> <tt class="py-number">3</tt> <tt class="py-op">+</tt> <tt class="py-name">bsize</tt> <tt class="py-op">-</tt> <tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">payload</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-number">8</tt><tt class="py-op">)</tt> <tt class="py-op">%</tt> <tt class="py-name">bsize</tt><tt class="py-op">)</tt> </tt>
-<a name="L473"></a><tt class="py-lineno">473</tt> <tt class="py-line"> <tt id="link-65" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-65', 'packet', 'link-23');">packet</a></tt> <tt class="py-op">=</tt> <tt class="py-name">struct</tt><tt class="py-op">.</tt><tt class="py-name">pack</tt><tt class="py-op">(</tt><tt class="py-string">'&gt;IB'</tt><tt class="py-op">,</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">payload</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-name">padding</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">padding</tt><tt class="py-op">)</tt> </tt>
-<a name="L474"></a><tt class="py-lineno">474</tt> <tt class="py-line"> <tt id="link-66" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-66', 'packet', 'link-23');">packet</a></tt> <tt class="py-op">+=</tt> <tt class="py-name">payload</tt> </tt>
-<a name="L475"></a><tt class="py-lineno">475</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__block_engine_out</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L476"></a><tt class="py-lineno">476</tt> <tt class="py-line"> <tt id="link-67" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-67', 'packet', 'link-23');">packet</a></tt> <tt class="py-op">+=</tt> <tt id="link-68" class="py-name" targets="Variable paramiko.auth_handler.rng=paramiko.auth_handler-module.html#rng,Variable paramiko.channel.rng=paramiko.channel-module.html#rng,Variable paramiko.client.rng=paramiko.client-module.html#rng,Variable paramiko.common.rng=paramiko.common-module.html#rng,Variable paramiko.dsskey.rng=paramiko.dsskey-module.html#rng,Variable paramiko.hostkeys.rng=paramiko.hostkeys-module.html#rng,Variable paramiko.kex_gex.rng=paramiko.kex_gex-module.html#rng,Variable paramiko.kex_group1.rng=paramiko.kex_group1-module.html#rng,Variable paramiko.packet.rng=paramiko.packet-module.html#rng,Variable paramiko.pkey.rng=paramiko.pkey-module.html#rng,Variable paramiko.rsakey.rng=paramiko.rsakey-module.html#rng,Variable paramiko.server.rng=paramiko.server-module.html#rng,Variable paramiko.sftp.rng=paramiko.sftp-module.html#rng,Variable paramiko.sftp_attr.rng=paramiko.sftp_attr-module.html#rng,Variable paramiko.sftp_client.rng=paramiko.sftp_client-module.html#rng,Variable paramiko.sftp_file.rng=paramiko.sftp_file-module.html#rng,Variable paramiko.sftp_handle.rng=paramiko.sftp_handle-module.html#rng,Variable paramiko.sftp_server.rng=paramiko.sftp_server-module.html#rng,Variable paramiko.sftp_si.rng=paramiko.sftp_si-module.html#rng,Variable paramiko.transport.rng=paramiko.transport-module.html#rng,Variable paramiko.util.rng=paramiko.util-module.html#rng"><a title="paramiko.auth_handler.rng
-paramiko.channel.rng
-paramiko.client.rng
-paramiko.common.rng
-paramiko.dsskey.rng
-paramiko.hostkeys.rng
-paramiko.kex_gex.rng
-paramiko.kex_group1.rng
-paramiko.packet.rng
-paramiko.pkey.rng
-paramiko.rsakey.rng
-paramiko.server.rng
-paramiko.sftp.rng
-paramiko.sftp_attr.rng
-paramiko.sftp_client.rng
-paramiko.sftp_file.rng
-paramiko.sftp_handle.rng
-paramiko.sftp_server.rng
-paramiko.sftp_si.rng
-paramiko.transport.rng
-paramiko.util.rng" class="py-name" href="#" onclick="return doclink('link-68', 'rng', 'link-68');">rng</a></tt><tt class="py-op">.</tt><tt id="link-69" class="py-name" targets="Method paramiko.BufferedFile.read()=paramiko.BufferedFile-class.html#read,Method paramiko.SFTPHandle.read()=paramiko.SFTPHandle-class.html#read,Method paramiko.buffered_pipe.BufferedPipe.read()=paramiko.buffered_pipe.BufferedPipe-class.html#read"><a title="paramiko.BufferedFile.read
-paramiko.SFTPHandle.read
-paramiko.buffered_pipe.BufferedPipe.read" class="py-name" href="#" onclick="return doclink('link-69', 'read', 'link-69');">read</a></tt><tt class="py-op">(</tt><tt class="py-name">padding</tt><tt class="py-op">)</tt> </tt>
-<a name="L477"></a><tt class="py-lineno">477</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L478"></a><tt class="py-lineno">478</tt> <tt class="py-line"> <tt class="py-comment"># cute trick i caught openssh doing: if we're not encrypting,</tt> </tt>
-<a name="L479"></a><tt class="py-lineno">479</tt> <tt class="py-line"> <tt class="py-comment"># don't waste random bytes for the padding</tt> </tt>
-<a name="L480"></a><tt class="py-lineno">480</tt> <tt class="py-line"> <tt id="link-70" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-70', 'packet', 'link-23');">packet</a></tt> <tt class="py-op">+=</tt> <tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> <tt class="py-op">*</tt> <tt class="py-name">padding</tt><tt class="py-op">)</tt> </tt>
-<a name="L481"></a><tt class="py-lineno">481</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-71" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-71', 'packet', 'link-23');">packet</a></tt> </tt>
-</div><a name="L482"></a><tt class="py-lineno">482</tt> <tt class="py-line"> </tt>
-<a name="Packetizer._trigger_rekey"></a><div id="Packetizer._trigger_rekey-def"><a name="L483"></a><tt class="py-lineno">483</tt> <a class="py-toggle" href="#" id="Packetizer._trigger_rekey-toggle" onclick="return toggle('Packetizer._trigger_rekey');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.packet.Packetizer-class.html#_trigger_rekey">_trigger_rekey</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Packetizer._trigger_rekey-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Packetizer._trigger_rekey-expanded"><a name="L484"></a><tt class="py-lineno">484</tt> <tt class="py-line"> <tt class="py-comment"># outside code should check for this flag</tt> </tt>
-<a name="L485"></a><tt class="py-lineno">485</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__need_rekey</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-</div></div><a name="L486"></a><tt class="py-lineno">486</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:07 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.packet.NeedRekeyException-class.html b/docs/paramiko.packet.NeedRekeyException-class.html
deleted file mode 100644
index 7387922..0000000
--- a/docs/paramiko.packet.NeedRekeyException-class.html
+++ /dev/null
@@ -1,170 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.packet.NeedRekeyException</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- <a href="paramiko.packet-module.html" onclick="show_private();">Module&nbsp;packet</a> ::
- Class&nbsp;NeedRekeyException
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.packet.NeedRekeyException-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class NeedRekeyException</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.packet-pysrc.html#NeedRekeyException">source&nbsp;code</a></span></p>
-<pre class="base-tree">
- object --+
- |
-exceptions.BaseException --+
- |
- exceptions.Exception --+
- |
- <strong class="uidshort">NeedRekeyException</strong>
-</pre>
-
-<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.Exception</code></b>:
- <code>__init__</code>,
- <code>__new__</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.BaseException</code></b>:
- <code>__delattr__</code>,
- <code>__getattribute__</code>,
- <code>__getitem__</code>,
- <code>__getslice__</code>,
- <code>__reduce__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__setstate__</code>,
- <code>__str__</code>,
- <code>__unicode__</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__format__</code>,
- <code>__hash__</code>,
- <code>__reduce_ex__</code>,
- <code>__sizeof__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.BaseException</code></b>:
- <code>args</code>,
- <code>message</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:04 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.pipe-module.html b/docs/paramiko.pipe-module.html
deleted file mode 100644
index eb41032..0000000
--- a/docs/paramiko.pipe-module.html
+++ /dev/null
@@ -1,231 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.pipe</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;pipe
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.pipe-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module pipe</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.pipe-pysrc.html">source&nbsp;code</a></span></p>
-<p>Abstraction of a one-way pipe where the read end can be used in
- select(). Normally this is trivial, but Windows makes it nearly
- impossible.</p>
- <p>The pipe acts like an Event, which can be set or cleared. When set,
- the pipe will trigger as readable in select().</p>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Classes</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.pipe.PosixPipe-class.html" class="summary-name">PosixPipe</a>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.pipe.WindowsPipe-class.html" class="summary-name">WindowsPipe</a><br />
- On Windows, only an OS-level &quot;WinSock&quot; may be used in
- select(), but reads and writes must be to the actual socket object.
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.pipe.OrPipe-class.html" class="summary-name">OrPipe</a>
- </td>
- </tr>
-</table>
-<!-- ==================== FUNCTIONS ==================== -->
-<a name="section-Functions"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Functions</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="make_pipe"></a><span class="summary-sig-name">make_pipe</span>()</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.pipe-pysrc.html#make_pipe">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.pipe-module.html#make_or_pipe" class="summary-sig-name">make_or_pipe</a>(<span class="summary-sig-arg">pipe</span>)</span><br />
- wraps a pipe into two pipe-like objects which are &quot;or&quot;d
- together to affect the real pipe.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.pipe-pysrc.html#make_or_pipe">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'paramiko'"><code class="variable-quote">'</code><code class="variable-string">paramiko</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== FUNCTION DETAILS ==================== -->
-<a name="section-FunctionDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Function Details</span></td>
-</tr>
-</table>
-<a name="make_or_pipe"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">make_or_pipe</span>(<span class="sig-arg">pipe</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.pipe-pysrc.html#make_or_pipe">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>wraps a pipe into two pipe-like objects which are &quot;or&quot;d
- together to affect the real pipe. if either returned pipe is set, the
- wrapped pipe is set. when both are cleared, the wrapped pipe is
- cleared.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:02 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.pipe-pysrc.html b/docs/paramiko.pipe-pysrc.html
deleted file mode 100644
index c556536..0000000
--- a/docs/paramiko.pipe-pysrc.html
+++ /dev/null
@@ -1,327 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.pipe</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;pipe
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.pipe-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.pipe-module.html" onclick="show_private();">Module paramiko.pipe</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2003-2007 Robey Pointer &lt;robeypointer@gmail.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring">Abstraction of a one-way pipe where the read end can be used in select().</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">Normally this is trivial, but Windows makes it nearly impossible.</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-docstring">The pipe acts like an Event, which can be set or cleared. When set, the pipe</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-docstring">will trigger as readable in select().</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">socket</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> </tt>
-<a name="make_pipe"></a><div id="make_pipe-def"><a name="L32"></a><tt class="py-lineno"> 32</tt> <a class="py-toggle" href="#" id="make_pipe-toggle" onclick="return toggle('make_pipe');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pipe-module.html#make_pipe">make_pipe</a> <tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="make_pipe-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="make_pipe-expanded"><a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">sys</tt><tt class="py-op">.</tt><tt class="py-name">platform</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-number">3</tt><tt class="py-op">]</tt> <tt class="py-op">!=</tt> <tt class="py-string">'win'</tt><tt class="py-op">:</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> <tt class="py-name">p</tt> <tt class="py-op">=</tt> <tt id="link-0" class="py-name" targets="Class paramiko.pipe.PosixPipe=paramiko.pipe.PosixPipe-class.html"><a title="paramiko.pipe.PosixPipe" class="py-name" href="#" onclick="return doclink('link-0', 'PosixPipe', 'link-0');">PosixPipe</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> <tt class="py-name">p</tt> <tt class="py-op">=</tt> <tt id="link-1" class="py-name" targets="Class paramiko.pipe.WindowsPipe=paramiko.pipe.WindowsPipe-class.html"><a title="paramiko.pipe.WindowsPipe" class="py-name" href="#" onclick="return doclink('link-1', 'WindowsPipe', 'link-1');">WindowsPipe</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">p</tt> </tt>
-</div><a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> </tt>
-<a name="PosixPipe"></a><div id="PosixPipe-def"><a name="L40"></a><tt class="py-lineno"> 40</tt> <a class="py-toggle" href="#" id="PosixPipe-toggle" onclick="return toggle('PosixPipe');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.pipe.PosixPipe-class.html">PosixPipe</a> <tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PosixPipe-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="PosixPipe-expanded"><a name="PosixPipe.__init__"></a><div id="PosixPipe.__init__-def"><a name="L41"></a><tt class="py-lineno"> 41</tt> <a class="py-toggle" href="#" id="PosixPipe.__init__-toggle" onclick="return toggle('PosixPipe.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pipe.PosixPipe-class.html#__init__">__init__</a> <tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PosixPipe.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PosixPipe.__init__-expanded"><a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_rfd</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_wfd</tt> <tt class="py-op">=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Module paramiko.pipe=paramiko.pipe-module.html"><a title="paramiko.pipe" class="py-name" href="#" onclick="return doclink('link-2', 'pipe', 'link-2');">pipe</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_set</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_forever</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_closed</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-</div><a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> </tt>
-<a name="PosixPipe.close"></a><div id="PosixPipe.close-def"><a name="L47"></a><tt class="py-lineno"> 47</tt> <a class="py-toggle" href="#" id="PosixPipe.close-toggle" onclick="return toggle('PosixPipe.close');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pipe.PosixPipe-class.html#close">close</a> <tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PosixPipe.close-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PosixPipe.close-expanded"><a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Method paramiko.Agent.close()=paramiko.Agent-class.html#close,Method paramiko.BufferedFile.close()=paramiko.BufferedFile-class.html#close,Method paramiko.Channel.close()=paramiko.Channel-class.html#close,Method paramiko.SFTPClient.close()=paramiko.SFTPClient-class.html#close,Method paramiko.SFTPFile.close()=paramiko.SFTPFile-class.html#close,Method paramiko.SFTPHandle.close()=paramiko.SFTPHandle-class.html#close,Method paramiko.SSHClient.close()=paramiko.SSHClient-class.html#close,Method paramiko.Transport.close()=paramiko.Transport-class.html#close,Method paramiko.buffered_pipe.BufferedPipe.close()=paramiko.buffered_pipe.BufferedPipe-class.html#close,Method paramiko.pipe.PosixPipe.close()=paramiko.pipe.PosixPipe-class.html#close,Method paramiko.pipe.WindowsPipe.close()=paramiko.pipe.WindowsPipe-class.html#close,Method paramiko.win_pageant.PageantConnection.close()=paramiko.win_pageant.PageantConnection-class.html#close"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-3', 'close', 'link-3');">close</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_rfd</tt><tt class="py-op">)</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-4', 'close', 'link-3');">close</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_wfd</tt><tt class="py-op">)</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-comment"># used for unit tests:</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_closed</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-</div><a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> </tt>
-<a name="PosixPipe.fileno"></a><div id="PosixPipe.fileno-def"><a name="L53"></a><tt class="py-lineno"> 53</tt> <a class="py-toggle" href="#" id="PosixPipe.fileno-toggle" onclick="return toggle('PosixPipe.fileno');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pipe.PosixPipe-class.html#fileno">fileno</a> <tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PosixPipe.fileno-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PosixPipe.fileno-expanded"><a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_rfd</tt> </tt>
-</div><a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> </tt>
-<a name="PosixPipe.clear"></a><div id="PosixPipe.clear-def"><a name="L56"></a><tt class="py-lineno"> 56</tt> <a class="py-toggle" href="#" id="PosixPipe.clear-toggle" onclick="return toggle('PosixPipe.clear');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pipe.PosixPipe-class.html#clear">clear</a> <tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PosixPipe.clear-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PosixPipe.clear-expanded"><a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_set</tt> <tt class="py-keyword">or</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_forever</tt><tt class="py-op">:</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Method paramiko.BufferedFile.read()=paramiko.BufferedFile-class.html#read,Method paramiko.SFTPHandle.read()=paramiko.SFTPHandle-class.html#read,Method paramiko.buffered_pipe.BufferedPipe.read()=paramiko.buffered_pipe.BufferedPipe-class.html#read"><a title="paramiko.BufferedFile.read
-paramiko.SFTPHandle.read
-paramiko.buffered_pipe.BufferedPipe.read" class="py-name" href="#" onclick="return doclink('link-5', 'read', 'link-5');">read</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_rfd</tt><tt class="py-op">,</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_set</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-</div><a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> </tt>
-<a name="PosixPipe.set"></a><div id="PosixPipe.set-def"><a name="L62"></a><tt class="py-lineno"> 62</tt> <a class="py-toggle" href="#" id="PosixPipe.set-toggle" onclick="return toggle('PosixPipe.set');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pipe.PosixPipe-class.html#set">set</a> <tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PosixPipe.set-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PosixPipe.set-expanded"><a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_set</tt> <tt class="py-keyword">or</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_closed</tt><tt class="py-op">:</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_set</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name" targets="Method paramiko.BufferedFile.write()=paramiko.BufferedFile-class.html#write,Method paramiko.SFTPHandle.write()=paramiko.SFTPHandle-class.html#write"><a title="paramiko.BufferedFile.write
-paramiko.SFTPHandle.write" class="py-name" href="#" onclick="return doclink('link-6', 'write', 'link-6');">write</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_wfd</tt><tt class="py-op">,</tt> <tt class="py-string">'*'</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> </tt>
-<a name="PosixPipe.set_forever"></a><div id="PosixPipe.set_forever-def"><a name="L68"></a><tt class="py-lineno"> 68</tt> <a class="py-toggle" href="#" id="PosixPipe.set_forever-toggle" onclick="return toggle('PosixPipe.set_forever');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pipe.PosixPipe-class.html#set_forever">set_forever</a> <tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PosixPipe.set_forever-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PosixPipe.set_forever-expanded"><a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_forever</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Method paramiko.pipe.OrPipe.set()=paramiko.pipe.OrPipe-class.html#set,Method paramiko.pipe.PosixPipe.set()=paramiko.pipe.PosixPipe-class.html#set,Method paramiko.pipe.WindowsPipe.set()=paramiko.pipe.WindowsPipe-class.html#set"><a title="paramiko.pipe.OrPipe.set
-paramiko.pipe.PosixPipe.set
-paramiko.pipe.WindowsPipe.set" class="py-name" href="#" onclick="return doclink('link-7', 'set', 'link-7');">set</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> </tt>
-<a name="WindowsPipe"></a><div id="WindowsPipe-def"><a name="L73"></a><tt class="py-lineno"> 73</tt> <a class="py-toggle" href="#" id="WindowsPipe-toggle" onclick="return toggle('WindowsPipe');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.pipe.WindowsPipe-class.html">WindowsPipe</a> <tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="WindowsPipe-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="WindowsPipe-expanded"><a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"><tt class="py-docstring"> On Windows, only an OS-level "WinSock" may be used in select(), but reads</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"><tt class="py-docstring"> and writes must be to the actual socket object.</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="WindowsPipe.__init__"></a><div id="WindowsPipe.__init__-def"><a name="L78"></a><tt class="py-lineno"> 78</tt> <a class="py-toggle" href="#" id="WindowsPipe.__init__-toggle" onclick="return toggle('WindowsPipe.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pipe.WindowsPipe-class.html#__init__">__init__</a> <tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="WindowsPipe.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="WindowsPipe.__init__-expanded"><a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-name">serv</tt> <tt class="py-op">=</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">socket</tt><tt class="py-op">(</tt><tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">AF_INET</tt><tt class="py-op">,</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">SOCK_STREAM</tt><tt class="py-op">)</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-name">serv</tt><tt class="py-op">.</tt><tt class="py-name">bind</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-string">'127.0.0.1'</tt><tt class="py-op">,</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-name">serv</tt><tt class="py-op">.</tt><tt class="py-name">listen</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-comment"># need to save sockets in _rsock/_wsock so they don't get closed</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_rsock</tt> <tt class="py-op">=</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">socket</tt><tt class="py-op">(</tt><tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">AF_INET</tt><tt class="py-op">,</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">SOCK_STREAM</tt><tt class="py-op">)</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_rsock</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Method paramiko.SSHClient.connect()=paramiko.SSHClient-class.html#connect,Method paramiko.Transport.connect()=paramiko.Transport-class.html#connect"><a title="paramiko.SSHClient.connect
-paramiko.Transport.connect" class="py-name" href="#" onclick="return doclink('link-8', 'connect', 'link-8');">connect</a></tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-string">'127.0.0.1'</tt><tt class="py-op">,</tt> <tt class="py-name">serv</tt><tt class="py-op">.</tt><tt class="py-name">getsockname</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_wsock</tt><tt class="py-op">,</tt> <tt class="py-name">addr</tt> <tt class="py-op">=</tt> <tt class="py-name">serv</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name" targets="Method paramiko.Transport.accept()=paramiko.Transport-class.html#accept"><a title="paramiko.Transport.accept" class="py-name" href="#" onclick="return doclink('link-9', 'accept', 'link-9');">accept</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-name">serv</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-10', 'close', 'link-3');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_set</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_forever</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_closed</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-</div><a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> </tt>
-<a name="WindowsPipe.close"></a><div id="WindowsPipe.close-def"><a name="L93"></a><tt class="py-lineno"> 93</tt> <a class="py-toggle" href="#" id="WindowsPipe.close-toggle" onclick="return toggle('WindowsPipe.close');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pipe.WindowsPipe-class.html#close">close</a> <tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="WindowsPipe.close-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="WindowsPipe.close-expanded"><a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_rsock</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-11', 'close', 'link-3');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_wsock</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-12', 'close', 'link-3');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-comment"># used for unit tests:</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_closed</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-</div><a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> </tt>
-<a name="WindowsPipe.fileno"></a><div id="WindowsPipe.fileno-def"><a name="L99"></a><tt class="py-lineno"> 99</tt> <a class="py-toggle" href="#" id="WindowsPipe.fileno-toggle" onclick="return toggle('WindowsPipe.fileno');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pipe.WindowsPipe-class.html#fileno">fileno</a> <tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="WindowsPipe.fileno-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="WindowsPipe.fileno-expanded"><a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_rsock</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name" targets="Method paramiko.Channel.fileno()=paramiko.Channel-class.html#fileno,Method paramiko.pipe.PosixPipe.fileno()=paramiko.pipe.PosixPipe-class.html#fileno,Method paramiko.pipe.WindowsPipe.fileno()=paramiko.pipe.WindowsPipe-class.html#fileno"><a title="paramiko.Channel.fileno
-paramiko.pipe.PosixPipe.fileno
-paramiko.pipe.WindowsPipe.fileno" class="py-name" href="#" onclick="return doclink('link-13', 'fileno', 'link-13');">fileno</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> </tt>
-<a name="WindowsPipe.clear"></a><div id="WindowsPipe.clear-def"><a name="L102"></a><tt class="py-lineno">102</tt> <a class="py-toggle" href="#" id="WindowsPipe.clear-toggle" onclick="return toggle('WindowsPipe.clear');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pipe.WindowsPipe-class.html#clear">clear</a> <tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="WindowsPipe.clear-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="WindowsPipe.clear-expanded"><a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_set</tt> <tt class="py-keyword">or</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_forever</tt><tt class="py-op">:</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_rsock</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name" targets="Method paramiko.Channel.recv()=paramiko.Channel-class.html#recv,Method paramiko.win_pageant.PageantConnection.recv()=paramiko.win_pageant.PageantConnection-class.html#recv"><a title="paramiko.Channel.recv
-paramiko.win_pageant.PageantConnection.recv" class="py-name" href="#" onclick="return doclink('link-14', 'recv', 'link-14');">recv</a></tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_set</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-</div><a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> </tt>
-<a name="WindowsPipe.set"></a><div id="WindowsPipe.set-def"><a name="L108"></a><tt class="py-lineno">108</tt> <a class="py-toggle" href="#" id="WindowsPipe.set-toggle" onclick="return toggle('WindowsPipe.set');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pipe.WindowsPipe-class.html#set">set</a> <tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="WindowsPipe.set-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="WindowsPipe.set-expanded"><a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_set</tt> <tt class="py-keyword">or</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_closed</tt><tt class="py-op">:</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_set</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_wsock</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name" targets="Method paramiko.Channel.send()=paramiko.Channel-class.html#send,Method paramiko.win_pageant.PageantConnection.send()=paramiko.win_pageant.PageantConnection-class.html#send"><a title="paramiko.Channel.send
-paramiko.win_pageant.PageantConnection.send" class="py-name" href="#" onclick="return doclink('link-15', 'send', 'link-15');">send</a></tt><tt class="py-op">(</tt><tt class="py-string">'*'</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> </tt>
-<a name="WindowsPipe.set_forever"></a><div id="WindowsPipe.set_forever-def"><a name="L114"></a><tt class="py-lineno">114</tt> <a class="py-toggle" href="#" id="WindowsPipe.set_forever-toggle" onclick="return toggle('WindowsPipe.set_forever');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pipe.WindowsPipe-class.html#set_forever">set_forever</a> <tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="WindowsPipe.set_forever-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="WindowsPipe.set_forever-expanded"><a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_forever</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="paramiko.pipe.OrPipe.set
-paramiko.pipe.PosixPipe.set
-paramiko.pipe.WindowsPipe.set" class="py-name" href="#" onclick="return doclink('link-16', 'set', 'link-7');">set</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> </tt>
-<a name="OrPipe"></a><div id="OrPipe-def"><a name="L119"></a><tt class="py-lineno">119</tt> <a class="py-toggle" href="#" id="OrPipe-toggle" onclick="return toggle('OrPipe');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.pipe.OrPipe-class.html">OrPipe</a> <tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OrPipe-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="OrPipe-expanded"><a name="OrPipe.__init__"></a><div id="OrPipe.__init__-def"><a name="L120"></a><tt class="py-lineno">120</tt> <a class="py-toggle" href="#" id="OrPipe.__init__-toggle" onclick="return toggle('OrPipe.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pipe.OrPipe-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">pipe</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OrPipe.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="OrPipe.__init__-expanded"><a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_set</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_partner</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pipe</tt> <tt class="py-op">=</tt> <tt id="link-17" class="py-name"><a title="paramiko.pipe" class="py-name" href="#" onclick="return doclink('link-17', 'pipe', 'link-2');">pipe</a></tt> </tt>
-</div><a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> </tt>
-<a name="OrPipe.set"></a><div id="OrPipe.set-def"><a name="L125"></a><tt class="py-lineno">125</tt> <a class="py-toggle" href="#" id="OrPipe.set-toggle" onclick="return toggle('OrPipe.set');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pipe.OrPipe-class.html#set">set</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OrPipe.set-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="OrPipe.set-expanded"><a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_set</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_partner</tt><tt class="py-op">.</tt><tt class="py-name">_set</tt><tt class="py-op">:</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pipe</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="paramiko.pipe.OrPipe.set
-paramiko.pipe.PosixPipe.set
-paramiko.pipe.WindowsPipe.set" class="py-name" href="#" onclick="return doclink('link-18', 'set', 'link-7');">set</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> </tt>
-<a name="OrPipe.clear"></a><div id="OrPipe.clear-def"><a name="L130"></a><tt class="py-lineno">130</tt> <a class="py-toggle" href="#" id="OrPipe.clear-toggle" onclick="return toggle('OrPipe.clear');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pipe.OrPipe-class.html#clear">clear</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="OrPipe.clear-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="OrPipe.clear-expanded"><a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_set</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_partner</tt><tt class="py-op">.</tt><tt class="py-name">_set</tt><tt class="py-op">:</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pipe</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name" targets="Method paramiko.HostKeys.clear()=paramiko.HostKeys-class.html#clear,Method paramiko.pipe.OrPipe.clear()=paramiko.pipe.OrPipe-class.html#clear,Method paramiko.pipe.PosixPipe.clear()=paramiko.pipe.PosixPipe-class.html#clear,Method paramiko.pipe.WindowsPipe.clear()=paramiko.pipe.WindowsPipe-class.html#clear"><a title="paramiko.HostKeys.clear
-paramiko.pipe.OrPipe.clear
-paramiko.pipe.PosixPipe.clear
-paramiko.pipe.WindowsPipe.clear" class="py-name" href="#" onclick="return doclink('link-19', 'clear', 'link-19');">clear</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> </tt>
-<a name="make_or_pipe"></a><div id="make_or_pipe-def"><a name="L136"></a><tt class="py-lineno">136</tt> <a class="py-toggle" href="#" id="make_or_pipe-toggle" onclick="return toggle('make_or_pipe');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pipe-module.html#make_or_pipe">make_or_pipe</a><tt class="py-op">(</tt><tt class="py-param">pipe</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="make_or_pipe-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="make_or_pipe-expanded"><a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"><tt class="py-docstring"> wraps a pipe into two pipe-like objects which are "or"d together to</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"><tt class="py-docstring"> affect the real pipe. if either returned pipe is set, the wrapped pipe</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"><tt class="py-docstring"> is set. when both are cleared, the wrapped pipe is cleared.</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> <tt class="py-name">p1</tt> <tt class="py-op">=</tt> <tt id="link-20" class="py-name" targets="Class paramiko.pipe.OrPipe=paramiko.pipe.OrPipe-class.html"><a title="paramiko.pipe.OrPipe" class="py-name" href="#" onclick="return doclink('link-20', 'OrPipe', 'link-20');">OrPipe</a></tt><tt class="py-op">(</tt><tt id="link-21" class="py-name"><a title="paramiko.pipe" class="py-name" href="#" onclick="return doclink('link-21', 'pipe', 'link-2');">pipe</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> <tt class="py-name">p2</tt> <tt class="py-op">=</tt> <tt id="link-22" class="py-name"><a title="paramiko.pipe.OrPipe" class="py-name" href="#" onclick="return doclink('link-22', 'OrPipe', 'link-20');">OrPipe</a></tt><tt class="py-op">(</tt><tt id="link-23" class="py-name"><a title="paramiko.pipe" class="py-name" href="#" onclick="return doclink('link-23', 'pipe', 'link-2');">pipe</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-name">p1</tt><tt class="py-op">.</tt><tt class="py-name">_partner</tt> <tt class="py-op">=</tt> <tt class="py-name">p2</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-name">p2</tt><tt class="py-op">.</tt><tt class="py-name">_partner</tt> <tt class="py-op">=</tt> <tt class="py-name">p1</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">p1</tt><tt class="py-op">,</tt> <tt class="py-name">p2</tt> </tt>
-</div><a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:07 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.pipe.OrPipe-class.html b/docs/paramiko.pipe.OrPipe-class.html
deleted file mode 100644
index b6f709c..0000000
--- a/docs/paramiko.pipe.OrPipe-class.html
+++ /dev/null
@@ -1,239 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.pipe.OrPipe</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- <a href="paramiko.pipe-module.html" onclick="show_private();">Module&nbsp;pipe</a> ::
- Class&nbsp;OrPipe
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.pipe.OrPipe-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class OrPipe</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.pipe-pysrc.html#OrPipe">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- <strong class="uidshort">OrPipe</strong>
-</pre>
-
-<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.pipe.OrPipe-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">pipe</span>)</span><br />
- x.__init__(...) initializes x; see x.__class__.__doc__ for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.pipe-pysrc.html#OrPipe.__init__">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set"></a><span class="summary-sig-name">set</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.pipe-pysrc.html#OrPipe.set">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="clear"></a><span class="summary-sig-name">clear</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.pipe-pysrc.html#OrPipe.clear">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">pipe</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.pipe-pysrc.html#OrPipe.__init__">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see x.__class__.__doc__ for
- signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:04 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.pipe.PosixPipe-class.html b/docs/paramiko.pipe.PosixPipe-class.html
deleted file mode 100644
index e742413..0000000
--- a/docs/paramiko.pipe.PosixPipe-class.html
+++ /dev/null
@@ -1,285 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.pipe.PosixPipe</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- <a href="paramiko.pipe-module.html" onclick="show_private();">Module&nbsp;pipe</a> ::
- Class&nbsp;PosixPipe
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.pipe.PosixPipe-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class PosixPipe</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.pipe-pysrc.html#PosixPipe">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- <strong class="uidshort">PosixPipe</strong>
-</pre>
-
-<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.pipe.PosixPipe-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- x.__init__(...) initializes x; see x.__class__.__doc__ for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.pipe-pysrc.html#PosixPipe.__init__">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="close"></a><span class="summary-sig-name">close</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.pipe-pysrc.html#PosixPipe.close">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="fileno"></a><span class="summary-sig-name">fileno</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.pipe-pysrc.html#PosixPipe.fileno">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="clear"></a><span class="summary-sig-name">clear</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.pipe-pysrc.html#PosixPipe.clear">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set"></a><span class="summary-sig-name">set</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.pipe-pysrc.html#PosixPipe.set">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_forever"></a><span class="summary-sig-name">set_forever</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.pipe-pysrc.html#PosixPipe.set_forever">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.pipe-pysrc.html#PosixPipe.__init__">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see x.__class__.__doc__ for
- signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:04 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.pipe.WindowsPipe-class.html b/docs/paramiko.pipe.WindowsPipe-class.html
deleted file mode 100644
index de302d7..0000000
--- a/docs/paramiko.pipe.WindowsPipe-class.html
+++ /dev/null
@@ -1,288 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.pipe.WindowsPipe</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- <a href="paramiko.pipe-module.html" onclick="show_private();">Module&nbsp;pipe</a> ::
- Class&nbsp;WindowsPipe
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.pipe.WindowsPipe-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class WindowsPipe</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.pipe-pysrc.html#WindowsPipe">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- <strong class="uidshort">WindowsPipe</strong>
-</pre>
-
-<hr />
-<p>On Windows, only an OS-level &quot;WinSock&quot; may be used in
- select(), but reads and writes must be to the actual socket object.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.pipe.WindowsPipe-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- x.__init__(...) initializes x; see x.__class__.__doc__ for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.pipe-pysrc.html#WindowsPipe.__init__">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="close"></a><span class="summary-sig-name">close</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.pipe-pysrc.html#WindowsPipe.close">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="fileno"></a><span class="summary-sig-name">fileno</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.pipe-pysrc.html#WindowsPipe.fileno">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="clear"></a><span class="summary-sig-name">clear</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.pipe-pysrc.html#WindowsPipe.clear">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set"></a><span class="summary-sig-name">set</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.pipe-pysrc.html#WindowsPipe.set">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="set_forever"></a><span class="summary-sig-name">set_forever</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.pipe-pysrc.html#WindowsPipe.set_forever">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.pipe-pysrc.html#WindowsPipe.__init__">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see x.__class__.__doc__ for
- signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:04 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.pkey-module.html b/docs/paramiko.pkey-module.html
deleted file mode 100644
index 6688914..0000000
--- a/docs/paramiko.pkey-module.html
+++ /dev/null
@@ -1,531 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.pkey</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;pkey
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.pkey-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module pkey</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.pkey-pysrc.html">source&nbsp;code</a></span></p>
-<p>Common API for all public keys.</p>
-
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_FAILED"></a><span class="summary-name">AUTH_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_PARTIALLY_SUCCESSFUL"></a><span class="summary-name">AUTH_PARTIALLY_SUCCESSFUL</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_SUCCESSFUL"></a><span class="summary-name">AUTH_SUCCESSFUL</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.pkey-module.html#CONNECTION_FAILED_CODE" class="summary-name">CONNECTION_FAILED_CODE</a> = <code title="{1: 'Administratively prohibited',
- 2: 'Connect failed',
- 3: 'Unknown channel type',
- 4: 'Resource shortage'}"><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">:</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CRITICAL"></a><span class="summary-name">CRITICAL</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DEBUG"></a><span class="summary-name">DEBUG</span> = <code title="10">10</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_AUTH_CANCELLED_BY_USER"></a><span class="summary-name">DISCONNECT_AUTH_CANCELLED_BY_USER</span> = <code title="13">13</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE"></a><span class="summary-name">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</span> = <code title="14">14</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_SERVICE_NOT_AVAILABLE"></a><span class="summary-name">DISCONNECT_SERVICE_NOT_AVAILABLE</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="ERROR"></a><span class="summary-name">ERROR</span> = <code title="40">40</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="INFO"></a><span class="summary-name">INFO</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_CLOSE"></a><span class="summary-name">MSG_CHANNEL_CLOSE</span> = <code title="97">97</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_DATA"></a><span class="summary-name">MSG_CHANNEL_DATA</span> = <code title="94">94</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EOF"></a><span class="summary-name">MSG_CHANNEL_EOF</span> = <code title="96">96</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EXTENDED_DATA"></a><span class="summary-name">MSG_CHANNEL_EXTENDED_DATA</span> = <code title="95">95</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_FAILURE"></a><span class="summary-name">MSG_CHANNEL_FAILURE</span> = <code title="100">100</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN"></a><span class="summary-name">MSG_CHANNEL_OPEN</span> = <code title="90">90</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_FAILURE"></a><span class="summary-name">MSG_CHANNEL_OPEN_FAILURE</span> = <code title="92">92</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_OPEN_SUCCESS</span> = <code title="91">91</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_REQUEST"></a><span class="summary-name">MSG_CHANNEL_REQUEST</span> = <code title="98">98</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_SUCCESS</span> = <code title="99">99</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_WINDOW_ADJUST"></a><span class="summary-name">MSG_CHANNEL_WINDOW_ADJUST</span> = <code title="93">93</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DEBUG"></a><span class="summary-name">MSG_DEBUG</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DISCONNECT"></a><span class="summary-name">MSG_DISCONNECT</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_GLOBAL_REQUEST"></a><span class="summary-name">MSG_GLOBAL_REQUEST</span> = <code title="80">80</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_IGNORE"></a><span class="summary-name">MSG_IGNORE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_KEXINIT"></a><span class="summary-name">MSG_KEXINIT</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.pkey-module.html#MSG_NAMES" class="summary-name">MSG_NAMES</a> = <code title="{1: 'disconnect',
- 2: 'ignore',
- 3: 'unimplemented',
- 4: 'debug',
- 5: 'service-request',
- 6: 'service-accept',
- 20: 'kexinit',
- 21: 'newkeys',
-..."><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">, </code>3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_NEWKEYS"></a><span class="summary-name">MSG_NEWKEYS</span> = <code title="21">21</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_FAILURE"></a><span class="summary-name">MSG_REQUEST_FAILURE</span> = <code title="82">82</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_SUCCESS"></a><span class="summary-name">MSG_REQUEST_SUCCESS</span> = <code title="81">81</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_ACCEPT"></a><span class="summary-name">MSG_SERVICE_ACCEPT</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_REQUEST"></a><span class="summary-name">MSG_SERVICE_REQUEST</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_UNIMPLEMENTED"></a><span class="summary-name">MSG_UNIMPLEMENTED</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_BANNER"></a><span class="summary-name">MSG_USERAUTH_BANNER</span> = <code title="53">53</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_FAILURE"></a><span class="summary-name">MSG_USERAUTH_FAILURE</span> = <code title="51">51</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_REQUEST"></a><span class="summary-name">MSG_USERAUTH_INFO_REQUEST</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_RESPONSE"></a><span class="summary-name">MSG_USERAUTH_INFO_RESPONSE</span> = <code title="61">61</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_PK_OK"></a><span class="summary-name">MSG_USERAUTH_PK_OK</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_REQUEST"></a><span class="summary-name">MSG_USERAUTH_REQUEST</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_SUCCESS"></a><span class="summary-name">MSG_USERAUTH_SUCCESS</span> = <code title="52">52</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED"></a><span class="summary-name">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_CONNECT_FAILED"></a><span class="summary-name">OPEN_FAILED_CONNECT_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_RESOURCE_SHORTAGE"></a><span class="summary-name">OPEN_FAILED_RESOURCE_SHORTAGE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_UNKNOWN_CHANNEL_TYPE"></a><span class="summary-name">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_SUCCEEDED"></a><span class="summary-name">OPEN_SUCCEEDED</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="PY22"></a><span class="summary-name">PY22</span> = <code title="False">False</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="WARNING"></a><span class="summary-name">WARNING</span> = <code title="30">30</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'paramiko'"><code class="variable-quote">'</code><code class="variable-string">paramiko</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="rng"></a><span class="summary-name">rng</span> = <code title="Random.new()">Random.new()</code>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES DETAILS ==================== -->
-<a name="section-VariablesDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables Details</span></td>
-</tr>
-</table>
-<a name="CONNECTION_FAILED_CODE"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">CONNECTION_FAILED_CODE</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Connect failed</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Unknown channel type</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Resource shortage</code><code class="variable-quote">'</code><code class="variable-group">}</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="MSG_NAMES"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">MSG_NAMES</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">debug</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 5<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-request</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 6<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-accept</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 20<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">kexinit</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 21<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">newkeys</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:02 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.pkey-pysrc.html b/docs/paramiko.pkey-pysrc.html
deleted file mode 100644
index 56f0c4b..0000000
--- a/docs/paramiko.pkey-pysrc.html
+++ /dev/null
@@ -1,542 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.pkey</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;pkey
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.pkey-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.pkey-module.html" onclick="show_private();">Module paramiko.pkey</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2003-2007 Robey Pointer &lt;robeypointer@gmail.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring">Common API for all public keys.</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">base64</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">binascii</tt> <tt class="py-keyword">import</tt> <tt class="py-name">hexlify</tt><tt class="py-op">,</tt> <tt class="py-name">unhexlify</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">Crypto</tt><tt class="py-op">.</tt><tt class="py-name">Hash</tt> <tt class="py-keyword">import</tt> <tt class="py-name">MD5</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">Crypto</tt><tt class="py-op">.</tt><tt class="py-name">Cipher</tt> <tt class="py-keyword">import</tt> <tt class="py-name">DES3</tt><tt class="py-op">,</tt> <tt class="py-name">AES</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package paramiko=paramiko-module.html"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-0', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Module paramiko.common=paramiko.common-module.html"><a title="paramiko.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt> <tt class="py-keyword">import</tt> <tt class="py-op">*</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-2" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-2', 'paramiko', 'link-0');">paramiko</a></tt> <tt class="py-keyword">import</tt> <tt id="link-3" class="py-name" targets="Module paramiko.util=paramiko.util-module.html"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-3', 'util', 'link-3');">util</a></tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-4" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-4', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Module paramiko.message=paramiko.message-module.html"><a title="paramiko.message" class="py-name" href="#" onclick="return doclink('link-5', 'message', 'link-5');">message</a></tt> <tt class="py-keyword">import</tt> <tt id="link-6" class="py-name" targets="Class paramiko.Message=paramiko.Message-class.html"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-6', 'Message', 'link-6');">Message</a></tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-7" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-7', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Module paramiko.ssh_exception=paramiko.ssh_exception-module.html"><a title="paramiko.ssh_exception" class="py-name" href="#" onclick="return doclink('link-8', 'ssh_exception', 'link-8');">ssh_exception</a></tt> <tt class="py-keyword">import</tt> <tt id="link-9" class="py-name" targets="Class paramiko.SSHException=paramiko.SSHException-class.html"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-9', 'SSHException', 'link-9');">SSHException</a></tt><tt class="py-op">,</tt> <tt id="link-10" class="py-name" targets="Class paramiko.PasswordRequiredException=paramiko.PasswordRequiredException-class.html"><a title="paramiko.PasswordRequiredException" class="py-name" href="#" onclick="return doclink('link-10', 'PasswordRequiredException', 'link-10');">PasswordRequiredException</a></tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> </tt>
-<a name="PKey"></a><div id="PKey-def"><a name="L36"></a><tt class="py-lineno"> 36</tt> <a class="py-toggle" href="#" id="PKey-toggle" onclick="return toggle('PKey');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.pkey.PKey-class.html">PKey</a> <tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PKey-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="PKey-expanded"><a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"><tt class="py-docstring"> Base class for public keys.</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt class="py-comment"># known encryption types for private key files:</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt id="link-11" class="py-name" targets="Variable paramiko.PKey._CIPHER_TABLE=paramiko.PKey-class.html#_CIPHER_TABLE"><a title="paramiko.PKey._CIPHER_TABLE" class="py-name" href="#" onclick="return doclink('link-11', '_CIPHER_TABLE', 'link-11');">_CIPHER_TABLE</a></tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-string">'AES-128-CBC'</tt><tt class="py-op">:</tt> <tt class="py-op">{</tt> <tt class="py-string">'cipher'</tt><tt class="py-op">:</tt> <tt class="py-name">AES</tt><tt class="py-op">,</tt> <tt class="py-string">'keysize'</tt><tt class="py-op">:</tt> <tt class="py-number">16</tt><tt class="py-op">,</tt> <tt class="py-string">'blocksize'</tt><tt class="py-op">:</tt> <tt class="py-number">16</tt><tt class="py-op">,</tt> <tt class="py-string">'mode'</tt><tt class="py-op">:</tt> <tt class="py-name">AES</tt><tt class="py-op">.</tt><tt class="py-name">MODE_CBC</tt> <tt class="py-op">}</tt><tt class="py-op">,</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-string">'DES-EDE3-CBC'</tt><tt class="py-op">:</tt> <tt class="py-op">{</tt> <tt class="py-string">'cipher'</tt><tt class="py-op">:</tt> <tt class="py-name">DES3</tt><tt class="py-op">,</tt> <tt class="py-string">'keysize'</tt><tt class="py-op">:</tt> <tt class="py-number">24</tt><tt class="py-op">,</tt> <tt class="py-string">'blocksize'</tt><tt class="py-op">:</tt> <tt class="py-number">8</tt><tt class="py-op">,</tt> <tt class="py-string">'mode'</tt><tt class="py-op">:</tt> <tt class="py-name">DES3</tt><tt class="py-op">.</tt><tt class="py-name">MODE_CBC</tt> <tt class="py-op">}</tt><tt class="py-op">,</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-op">}</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> </tt>
-<a name="PKey.__init__"></a><div id="PKey.__init__-def"><a name="L48"></a><tt class="py-lineno"> 48</tt> <a class="py-toggle" href="#" id="PKey.__init__-toggle" onclick="return toggle('PKey.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pkey.PKey-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">msg</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">data</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PKey.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PKey.__init__-expanded"><a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"><tt class="py-docstring"> Create a new instance of this public key type. If C{msg} is given,</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"><tt class="py-docstring"> the key's public part(s) will be filled in from the message. If</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"><tt class="py-docstring"> C{data} is given, the key's public part(s) will be filled in from</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"><tt class="py-docstring"> the string.</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"><tt class="py-docstring"> @param msg: an optional SSH L{Message} containing a public key of this</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"><tt class="py-docstring"> type.</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"><tt class="py-docstring"> @type msg: L{Message}</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"><tt class="py-docstring"> @param data: an optional string containing a public key of this type</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"><tt class="py-docstring"> @type data: str</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"><tt class="py-docstring"> @raise SSHException: if a key cannot be created from the C{data} or</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"><tt class="py-docstring"> C{msg} given, or no key was passed in.</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-</div><a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> </tt>
-<a name="PKey.__str__"></a><div id="PKey.__str__-def"><a name="L66"></a><tt class="py-lineno"> 66</tt> <a class="py-toggle" href="#" id="PKey.__str__-toggle" onclick="return toggle('PKey.__str__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pkey.PKey-class.html#__str__">__str__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PKey.__str__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PKey.__str__-expanded"><a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"><tt class="py-docstring"> Return a string of an SSH L{Message} made up of the public part(s) of</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"><tt class="py-docstring"> this key. This string is suitable for passing to L{__init__} to</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"><tt class="py-docstring"> re-create the key object later.</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"><tt class="py-docstring"> @return: string representation of an SSH key message.</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: str</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">''</tt> </tt>
-</div><a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> </tt>
-<a name="PKey.__cmp__"></a><div id="PKey.__cmp__-def"><a name="L77"></a><tt class="py-lineno"> 77</tt> <a class="py-toggle" href="#" id="PKey.__cmp__-toggle" onclick="return toggle('PKey.__cmp__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pkey.PKey-class.html#__cmp__">__cmp__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">other</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PKey.__cmp__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PKey.__cmp__-expanded"><a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"><tt class="py-docstring"> Compare this key to another. Returns 0 if this key is equivalent to</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"><tt class="py-docstring"> the given key, or non-0 if they are different. Only the public parts</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"><tt class="py-docstring"> of the key are compared, so a public key will compare equal to its</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"><tt class="py-docstring"> corresponding private key.</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"><tt class="py-docstring"> @param other: key to compare to.</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"><tt class="py-docstring"> @type other: L{PKey}</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"><tt class="py-docstring"> @return: 0 if the two keys are equivalent, non-0 otherwise.</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: int</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-name">hs</tt> <tt class="py-op">=</tt> <tt class="py-name">hash</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-name">ho</tt> <tt class="py-op">=</tt> <tt class="py-name">hash</tt><tt class="py-op">(</tt><tt class="py-name">other</tt><tt class="py-op">)</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">hs</tt> <tt class="py-op">!=</tt> <tt class="py-name">ho</tt><tt class="py-op">:</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">cmp</tt><tt class="py-op">(</tt><tt class="py-name">hs</tt><tt class="py-op">,</tt> <tt class="py-name">ho</tt><tt class="py-op">)</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">cmp</tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">other</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> </tt>
-<a name="PKey.get_name"></a><div id="PKey.get_name-def"><a name="L95"></a><tt class="py-lineno"> 95</tt> <a class="py-toggle" href="#" id="PKey.get_name-toggle" onclick="return toggle('PKey.get_name');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pkey.PKey-class.html#get_name">get_name</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PKey.get_name-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PKey.get_name-expanded"><a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"><tt class="py-docstring"> Return the name of this private key implementation.</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"><tt class="py-docstring"> @return: name of this private key type, in SSH terminology (for</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"><tt class="py-docstring"> example, C{"ssh-rsa"}).</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: str</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">''</tt> </tt>
-</div><a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> </tt>
-<a name="PKey.get_bits"></a><div id="PKey.get_bits-def"><a name="L105"></a><tt class="py-lineno">105</tt> <a class="py-toggle" href="#" id="PKey.get_bits-toggle" onclick="return toggle('PKey.get_bits');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pkey.PKey-class.html#get_bits">get_bits</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PKey.get_bits-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PKey.get_bits-expanded"><a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"><tt class="py-docstring"> Return the number of significant bits in this key. This is useful</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"><tt class="py-docstring"> for judging the relative security of a key.</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"><tt class="py-docstring"> @return: bits in the key.</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: int</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-number">0</tt> </tt>
-</div><a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> </tt>
-<a name="PKey.can_sign"></a><div id="PKey.can_sign-def"><a name="L115"></a><tt class="py-lineno">115</tt> <a class="py-toggle" href="#" id="PKey.can_sign-toggle" onclick="return toggle('PKey.can_sign');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pkey.PKey-class.html#can_sign">can_sign</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PKey.can_sign-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PKey.can_sign-expanded"><a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"><tt class="py-docstring"> Return C{True} if this key has the private part necessary for signing</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"><tt class="py-docstring"> data.</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"><tt class="py-docstring"> @return: C{True} if this is a private key.</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: bool</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">False</tt> </tt>
-</div><a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> </tt>
-<a name="PKey.get_fingerprint"></a><div id="PKey.get_fingerprint-def"><a name="L125"></a><tt class="py-lineno">125</tt> <a class="py-toggle" href="#" id="PKey.get_fingerprint-toggle" onclick="return toggle('PKey.get_fingerprint');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pkey.PKey-class.html#get_fingerprint">get_fingerprint</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PKey.get_fingerprint-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PKey.get_fingerprint-expanded"><a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"><tt class="py-docstring"> Return an MD5 fingerprint of the public part of this key. Nothing</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"><tt class="py-docstring"> secret is revealed.</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"><tt class="py-docstring"> @return: a 16-byte string (binary) of the MD5 fingerprint, in SSH</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"><tt class="py-docstring"> format.</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: str</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">MD5</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name" targets="Class Method paramiko.util.Counter.new()=paramiko.util.Counter-class.html#new"><a title="paramiko.util.Counter.new" class="py-name" href="#" onclick="return doclink('link-12', 'new', 'link-12');">new</a></tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">digest</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> </tt>
-<a name="PKey.get_base64"></a><div id="PKey.get_base64-def"><a name="L136"></a><tt class="py-lineno">136</tt> <a class="py-toggle" href="#" id="PKey.get_base64-toggle" onclick="return toggle('PKey.get_base64');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pkey.PKey-class.html#get_base64">get_base64</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PKey.get_base64-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PKey.get_base64-expanded"><a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"><tt class="py-docstring"> Return a base64 string containing the public part of this key. Nothing</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"><tt class="py-docstring"> secret is revealed. This format is compatible with that used to store</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"><tt class="py-docstring"> public key files or recognized host keys.</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"><tt class="py-docstring"> @return: a base64 string containing the public part of the key.</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: str</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">base64</tt><tt class="py-op">.</tt><tt class="py-name">encodestring</tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">'\n'</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> </tt>
-<a name="PKey.sign_ssh_data"></a><div id="PKey.sign_ssh_data-def"><a name="L147"></a><tt class="py-lineno">147</tt> <a class="py-toggle" href="#" id="PKey.sign_ssh_data-toggle" onclick="return toggle('PKey.sign_ssh_data');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pkey.PKey-class.html#sign_ssh_data">sign_ssh_data</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">rng</tt><tt class="py-op">,</tt> <tt class="py-param">data</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PKey.sign_ssh_data-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PKey.sign_ssh_data-expanded"><a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"><tt class="py-docstring"> Sign a blob of data with this private key, and return a L{Message}</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"><tt class="py-docstring"> representing an SSH signature message.</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"><tt class="py-docstring"> @param rng: a secure random number generator.</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"><tt class="py-docstring"> @type rng: L{Crypto.Util.rng.RandomPool}</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"><tt class="py-docstring"> @param data: the data to sign.</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"><tt class="py-docstring"> @type data: str</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"><tt class="py-docstring"> @return: an SSH signature message.</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: L{Message}</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">''</tt> </tt>
-</div><a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> </tt>
-<a name="PKey.verify_ssh_sig"></a><div id="PKey.verify_ssh_sig-def"><a name="L161"></a><tt class="py-lineno">161</tt> <a class="py-toggle" href="#" id="PKey.verify_ssh_sig-toggle" onclick="return toggle('PKey.verify_ssh_sig');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pkey.PKey-class.html#verify_ssh_sig">verify_ssh_sig</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">data</tt><tt class="py-op">,</tt> <tt class="py-param">msg</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PKey.verify_ssh_sig-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PKey.verify_ssh_sig-expanded"><a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"><tt class="py-docstring"> Given a blob of data, and an SSH message representing a signature of</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"><tt class="py-docstring"> that data, verify that it was signed with this key.</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"><tt class="py-docstring"> @param data: the data that was signed.</tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"><tt class="py-docstring"> @type data: str</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"><tt class="py-docstring"> @param msg: an SSH signature message</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"><tt class="py-docstring"> @type msg: L{Message}</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"><tt class="py-docstring"> @return: C{True} if the signature verifies correctly; C{False}</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"><tt class="py-docstring"> otherwise.</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: boolean</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">False</tt> </tt>
-</div><a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> </tt>
-<a name="PKey.from_private_key_file"></a><div id="PKey.from_private_key_file-def"><a name="L176"></a><tt class="py-lineno">176</tt> <a class="py-toggle" href="#" id="PKey.from_private_key_file-toggle" onclick="return toggle('PKey.from_private_key_file');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pkey.PKey-class.html#from_private_key_file">from_private_key_file</a><tt class="py-op">(</tt><tt class="py-param">cls</tt><tt class="py-op">,</tt> <tt class="py-param">filename</tt><tt class="py-op">,</tt> <tt class="py-param">password</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PKey.from_private_key_file-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PKey.from_private_key_file-expanded"><a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"><tt class="py-docstring"> Create a key object by reading a private key file. If the private</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"><tt class="py-docstring"> key is encrypted and C{password} is not C{None}, the given password</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"><tt class="py-docstring"> will be used to decrypt the key (otherwise L{PasswordRequiredException}</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"><tt class="py-docstring"> is thrown). Through the magic of python, this factory method will</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"><tt class="py-docstring"> exist in all subclasses of PKey (such as L{RSAKey} or L{DSSKey}), but</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"><tt class="py-docstring"> is useless on the abstract PKey class.</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"><tt class="py-docstring"> @param filename: name of the file to read</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"><tt class="py-docstring"> @type filename: str</tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"><tt class="py-docstring"> @param password: an optional password to use to decrypt the key file,</tt> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"><tt class="py-docstring"> if it's encrypted</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"><tt class="py-docstring"> @type password: str</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"><tt class="py-docstring"> @return: a new key object based on the given private key</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: L{PKey}</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"><tt class="py-docstring"> @raise IOError: if there was an error reading the file</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"><tt class="py-docstring"> @raise PasswordRequiredException: if the private key file is</tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"><tt class="py-docstring"> encrypted, and C{password} is C{None}</tt> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"><tt class="py-docstring"> @raise SSHException: if the key file is invalid</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"> <tt class="py-name">key</tt> <tt class="py-op">=</tt> <tt class="py-name">cls</tt><tt class="py-op">(</tt><tt class="py-name">filename</tt><tt class="py-op">=</tt><tt class="py-name">filename</tt><tt class="py-op">,</tt> <tt class="py-name">password</tt><tt class="py-op">=</tt><tt class="py-name">password</tt><tt class="py-op">)</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">key</tt> </tt>
-</div><a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> <tt id="link-13" class="py-name" targets="Class Method paramiko.PKey.from_private_key_file()=paramiko.PKey-class.html#from_private_key_file"><a title="paramiko.PKey.from_private_key_file" class="py-name" href="#" onclick="return doclink('link-13', 'from_private_key_file', 'link-13');">from_private_key_file</a></tt> <tt class="py-op">=</tt> <tt class="py-name">classmethod</tt><tt class="py-op">(</tt><tt id="link-14" class="py-name"><a title="paramiko.PKey.from_private_key_file" class="py-name" href="#" onclick="return doclink('link-14', 'from_private_key_file', 'link-13');">from_private_key_file</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"> </tt>
-<a name="PKey.from_private_key"></a><div id="PKey.from_private_key-def"><a name="L202"></a><tt class="py-lineno">202</tt> <a class="py-toggle" href="#" id="PKey.from_private_key-toggle" onclick="return toggle('PKey.from_private_key');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pkey.PKey-class.html#from_private_key">from_private_key</a><tt class="py-op">(</tt><tt class="py-param">cls</tt><tt class="py-op">,</tt> <tt class="py-param">file_obj</tt><tt class="py-op">,</tt> <tt class="py-param">password</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PKey.from_private_key-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PKey.from_private_key-expanded"><a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"><tt class="py-docstring"> Create a key object by reading a private key from a file (or file-like)</tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"><tt class="py-docstring"> object. If the private key is encrypted and C{password} is not C{None},</tt> </tt>
-<a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"><tt class="py-docstring"> the given password will be used to decrypt the key (otherwise</tt> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"><tt class="py-docstring"> L{PasswordRequiredException} is thrown).</tt> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"><tt class="py-docstring"> @param file_obj: the file to read from</tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"><tt class="py-docstring"> @type file_obj: file</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"><tt class="py-docstring"> @param password: an optional password to use to decrypt the key, if it's</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"><tt class="py-docstring"> encrypted</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"><tt class="py-docstring"> @type password: str</tt> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"><tt class="py-docstring"> @return: a new key object based on the given private key</tt> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: L{PKey}</tt> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"><tt class="py-docstring"> @raise IOError: if there was an error reading the key</tt> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"><tt class="py-docstring"> @raise PasswordRequiredException: if the private key file is encrypted,</tt> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"><tt class="py-docstring"> and C{password} is C{None}</tt> </tt>
-<a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"><tt class="py-docstring"> @raise SSHException: if the key file is invalid</tt> </tt>
-<a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L222"></a><tt class="py-lineno">222</tt> <tt class="py-line"> <tt class="py-name">key</tt> <tt class="py-op">=</tt> <tt class="py-name">cls</tt><tt class="py-op">(</tt><tt class="py-name">file_obj</tt><tt class="py-op">=</tt><tt class="py-name">file_obj</tt><tt class="py-op">,</tt> <tt class="py-name">password</tt><tt class="py-op">=</tt><tt class="py-name">password</tt><tt class="py-op">)</tt> </tt>
-<a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">key</tt> </tt>
-</div><a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"> <tt id="link-15" class="py-name" targets="Class Method paramiko.PKey.from_private_key()=paramiko.PKey-class.html#from_private_key"><a title="paramiko.PKey.from_private_key" class="py-name" href="#" onclick="return doclink('link-15', 'from_private_key', 'link-15');">from_private_key</a></tt> <tt class="py-op">=</tt> <tt class="py-name">classmethod</tt><tt class="py-op">(</tt><tt id="link-16" class="py-name"><a title="paramiko.PKey.from_private_key" class="py-name" href="#" onclick="return doclink('link-16', 'from_private_key', 'link-15');">from_private_key</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"> </tt>
-<a name="PKey.write_private_key_file"></a><div id="PKey.write_private_key_file-def"><a name="L226"></a><tt class="py-lineno">226</tt> <a class="py-toggle" href="#" id="PKey.write_private_key_file-toggle" onclick="return toggle('PKey.write_private_key_file');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pkey.PKey-class.html#write_private_key_file">write_private_key_file</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">filename</tt><tt class="py-op">,</tt> <tt class="py-param">password</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PKey.write_private_key_file-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PKey.write_private_key_file-expanded"><a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"><tt class="py-docstring"> Write private key contents into a file. If the password is not</tt> </tt>
-<a name="L229"></a><tt class="py-lineno">229</tt> <tt class="py-line"><tt class="py-docstring"> C{None}, the key is encrypted before writing.</tt> </tt>
-<a name="L230"></a><tt class="py-lineno">230</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"><tt class="py-docstring"> @param filename: name of the file to write</tt> </tt>
-<a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"><tt class="py-docstring"> @type filename: str</tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"><tt class="py-docstring"> @param password: an optional password to use to encrypt the key file</tt> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"><tt class="py-docstring"> @type password: str</tt> </tt>
-<a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"><tt class="py-docstring"> @raise IOError: if there was an error writing the file</tt> </tt>
-<a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"><tt class="py-docstring"> @raise SSHException: if the key is invalid</tt> </tt>
-<a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L239"></a><tt class="py-lineno">239</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">Exception</tt><tt class="py-op">(</tt><tt class="py-string">'Not implemented in PKey'</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"> </tt>
-<a name="PKey.write_private_key"></a><div id="PKey.write_private_key-def"><a name="L241"></a><tt class="py-lineno">241</tt> <a class="py-toggle" href="#" id="PKey.write_private_key-toggle" onclick="return toggle('PKey.write_private_key');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pkey.PKey-class.html#write_private_key">write_private_key</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">file_obj</tt><tt class="py-op">,</tt> <tt class="py-param">password</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PKey.write_private_key-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PKey.write_private_key-expanded"><a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L243"></a><tt class="py-lineno">243</tt> <tt class="py-line"><tt class="py-docstring"> Write private key contents into a file (or file-like) object. If the</tt> </tt>
-<a name="L244"></a><tt class="py-lineno">244</tt> <tt class="py-line"><tt class="py-docstring"> password is not C{None}, the key is encrypted before writing.</tt> </tt>
-<a name="L245"></a><tt class="py-lineno">245</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"><tt class="py-docstring"> @param file_obj: the file object to write into</tt> </tt>
-<a name="L247"></a><tt class="py-lineno">247</tt> <tt class="py-line"><tt class="py-docstring"> @type file_obj: file</tt> </tt>
-<a name="L248"></a><tt class="py-lineno">248</tt> <tt class="py-line"><tt class="py-docstring"> @param password: an optional password to use to encrypt the key</tt> </tt>
-<a name="L249"></a><tt class="py-lineno">249</tt> <tt class="py-line"><tt class="py-docstring"> @type password: str</tt> </tt>
-<a name="L250"></a><tt class="py-lineno">250</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L251"></a><tt class="py-lineno">251</tt> <tt class="py-line"><tt class="py-docstring"> @raise IOError: if there was an error writing to the file</tt> </tt>
-<a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"><tt class="py-docstring"> @raise SSHException: if the key is invalid</tt> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L254"></a><tt class="py-lineno">254</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">Exception</tt><tt class="py-op">(</tt><tt class="py-string">'Not implemented in PKey'</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L255"></a><tt class="py-lineno">255</tt> <tt class="py-line"> </tt>
-<a name="PKey._read_private_key_file"></a><div id="PKey._read_private_key_file-def"><a name="L256"></a><tt class="py-lineno">256</tt> <a class="py-toggle" href="#" id="PKey._read_private_key_file-toggle" onclick="return toggle('PKey._read_private_key_file');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pkey.PKey-class.html#_read_private_key_file">_read_private_key_file</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">tag</tt><tt class="py-op">,</tt> <tt class="py-param">filename</tt><tt class="py-op">,</tt> <tt class="py-param">password</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PKey._read_private_key_file-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PKey._read_private_key_file-expanded"><a name="L257"></a><tt class="py-lineno">257</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L258"></a><tt class="py-lineno">258</tt> <tt class="py-line"><tt class="py-docstring"> Read an SSH2-format private key file, looking for a string of the type</tt> </tt>
-<a name="L259"></a><tt class="py-lineno">259</tt> <tt class="py-line"><tt class="py-docstring"> C{"BEGIN xxx PRIVATE KEY"} for some C{xxx}, base64-decode the text we</tt> </tt>
-<a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"><tt class="py-docstring"> find, and return it as a string. If the private key is encrypted and</tt> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt> <tt class="py-line"><tt class="py-docstring"> C{password} is not C{None}, the given password will be used to decrypt</tt> </tt>
-<a name="L262"></a><tt class="py-lineno">262</tt> <tt class="py-line"><tt class="py-docstring"> the key (otherwise L{PasswordRequiredException} is thrown).</tt> </tt>
-<a name="L263"></a><tt class="py-lineno">263</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L264"></a><tt class="py-lineno">264</tt> <tt class="py-line"><tt class="py-docstring"> @param tag: C{"RSA"} or C{"DSA"}, the tag used to mark the data block.</tt> </tt>
-<a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"><tt class="py-docstring"> @type tag: str</tt> </tt>
-<a name="L266"></a><tt class="py-lineno">266</tt> <tt class="py-line"><tt class="py-docstring"> @param filename: name of the file to read.</tt> </tt>
-<a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"><tt class="py-docstring"> @type filename: str</tt> </tt>
-<a name="L268"></a><tt class="py-lineno">268</tt> <tt class="py-line"><tt class="py-docstring"> @param password: an optional password to use to decrypt the key file,</tt> </tt>
-<a name="L269"></a><tt class="py-lineno">269</tt> <tt class="py-line"><tt class="py-docstring"> if it's encrypted.</tt> </tt>
-<a name="L270"></a><tt class="py-lineno">270</tt> <tt class="py-line"><tt class="py-docstring"> @type password: str</tt> </tt>
-<a name="L271"></a><tt class="py-lineno">271</tt> <tt class="py-line"><tt class="py-docstring"> @return: data blob that makes up the private key.</tt> </tt>
-<a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: str</tt> </tt>
-<a name="L273"></a><tt class="py-lineno">273</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L274"></a><tt class="py-lineno">274</tt> <tt class="py-line"><tt class="py-docstring"> @raise IOError: if there was an error reading the file.</tt> </tt>
-<a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"><tt class="py-docstring"> @raise PasswordRequiredException: if the private key file is</tt> </tt>
-<a name="L276"></a><tt class="py-lineno">276</tt> <tt class="py-line"><tt class="py-docstring"> encrypted, and C{password} is C{None}.</tt> </tt>
-<a name="L277"></a><tt class="py-lineno">277</tt> <tt class="py-line"><tt class="py-docstring"> @raise SSHException: if the key file is invalid.</tt> </tt>
-<a name="L278"></a><tt class="py-lineno">278</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L279"></a><tt class="py-lineno">279</tt> <tt class="py-line"> <tt class="py-name">f</tt> <tt class="py-op">=</tt> <tt id="link-17" class="py-name" targets="Method paramiko.SFTPServerInterface.open()=paramiko.SFTPServerInterface-class.html#open"><a title="paramiko.SFTPServerInterface.open" class="py-name" href="#" onclick="return doclink('link-17', 'open', 'link-17');">open</a></tt><tt class="py-op">(</tt><tt class="py-name">filename</tt><tt class="py-op">,</tt> <tt class="py-string">'r'</tt><tt class="py-op">)</tt> </tt>
-<a name="L280"></a><tt class="py-lineno">280</tt> <tt class="py-line"> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_read_private_key</tt><tt class="py-op">(</tt><tt class="py-name">tag</tt><tt class="py-op">,</tt> <tt class="py-name">f</tt><tt class="py-op">,</tt> <tt class="py-name">password</tt><tt class="py-op">)</tt> </tt>
-<a name="L281"></a><tt class="py-lineno">281</tt> <tt class="py-line"> <tt class="py-name">f</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name" targets="Method paramiko.Agent.close()=paramiko.Agent-class.html#close,Method paramiko.BufferedFile.close()=paramiko.BufferedFile-class.html#close,Method paramiko.Channel.close()=paramiko.Channel-class.html#close,Method paramiko.SFTPClient.close()=paramiko.SFTPClient-class.html#close,Method paramiko.SFTPFile.close()=paramiko.SFTPFile-class.html#close,Method paramiko.SFTPHandle.close()=paramiko.SFTPHandle-class.html#close,Method paramiko.SSHClient.close()=paramiko.SSHClient-class.html#close,Method paramiko.Transport.close()=paramiko.Transport-class.html#close,Method paramiko.buffered_pipe.BufferedPipe.close()=paramiko.buffered_pipe.BufferedPipe-class.html#close,Method paramiko.pipe.PosixPipe.close()=paramiko.pipe.PosixPipe-class.html#close,Method paramiko.pipe.WindowsPipe.close()=paramiko.pipe.WindowsPipe-class.html#close,Method paramiko.win_pageant.PageantConnection.close()=paramiko.win_pageant.PageantConnection-class.html#close"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-18', 'close', 'link-18');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L282"></a><tt class="py-lineno">282</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">data</tt> </tt>
-</div><a name="L283"></a><tt class="py-lineno">283</tt> <tt class="py-line"> </tt>
-<a name="PKey._read_private_key"></a><div id="PKey._read_private_key-def"><a name="L284"></a><tt class="py-lineno">284</tt> <a class="py-toggle" href="#" id="PKey._read_private_key-toggle" onclick="return toggle('PKey._read_private_key');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pkey.PKey-class.html#_read_private_key">_read_private_key</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">tag</tt><tt class="py-op">,</tt> <tt class="py-param">f</tt><tt class="py-op">,</tt> <tt class="py-param">password</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PKey._read_private_key-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PKey._read_private_key-expanded"><a name="L285"></a><tt class="py-lineno">285</tt> <tt class="py-line"> <tt class="py-name">lines</tt> <tt class="py-op">=</tt> <tt class="py-name">f</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name" targets="Method paramiko.BufferedFile.readlines()=paramiko.BufferedFile-class.html#readlines"><a title="paramiko.BufferedFile.readlines" class="py-name" href="#" onclick="return doclink('link-19', 'readlines', 'link-19');">readlines</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L286"></a><tt class="py-lineno">286</tt> <tt class="py-line"> <tt class="py-name">start</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L287"></a><tt class="py-lineno">287</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-op">(</tt><tt class="py-name">start</tt> <tt class="py-op">&lt;</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">lines</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">lines</tt><tt class="py-op">[</tt><tt class="py-name">start</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">strip</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-string">'-----BEGIN '</tt> <tt class="py-op">+</tt> <tt class="py-name">tag</tt> <tt class="py-op">+</tt> <tt class="py-string">' PRIVATE KEY-----'</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L288"></a><tt class="py-lineno">288</tt> <tt class="py-line"> <tt class="py-name">start</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L289"></a><tt class="py-lineno">289</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">start</tt> <tt class="py-op">&gt;=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">lines</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L290"></a><tt class="py-lineno">290</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-20" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-20', 'SSHException', 'link-9');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'not a valid '</tt> <tt class="py-op">+</tt> <tt class="py-name">tag</tt> <tt class="py-op">+</tt> <tt class="py-string">' private key file'</tt><tt class="py-op">)</tt> </tt>
-<a name="L291"></a><tt class="py-lineno">291</tt> <tt class="py-line"> <tt class="py-comment"># parse any headers first</tt> </tt>
-<a name="L292"></a><tt class="py-lineno">292</tt> <tt class="py-line"> <tt class="py-name">headers</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L293"></a><tt class="py-lineno">293</tt> <tt class="py-line"> <tt class="py-name">start</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L294"></a><tt class="py-lineno">294</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">start</tt> <tt class="py-op">&lt;</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">lines</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L295"></a><tt class="py-lineno">295</tt> <tt class="py-line"> <tt class="py-name">l</tt> <tt class="py-op">=</tt> <tt class="py-name">lines</tt><tt class="py-op">[</tt><tt class="py-name">start</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">': '</tt><tt class="py-op">)</tt> </tt>
-<a name="L296"></a><tt class="py-lineno">296</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">l</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L297"></a><tt class="py-lineno">297</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L298"></a><tt class="py-lineno">298</tt> <tt class="py-line"> <tt class="py-name">headers</tt><tt class="py-op">[</tt><tt class="py-name">l</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">lower</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">l</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">strip</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L299"></a><tt class="py-lineno">299</tt> <tt class="py-line"> <tt class="py-name">start</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L300"></a><tt class="py-lineno">300</tt> <tt class="py-line"> <tt class="py-comment"># find end</tt> </tt>
-<a name="L301"></a><tt class="py-lineno">301</tt> <tt class="py-line"> <tt class="py-name">end</tt> <tt class="py-op">=</tt> <tt class="py-name">start</tt> </tt>
-<a name="L302"></a><tt class="py-lineno">302</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-op">(</tt><tt class="py-name">lines</tt><tt class="py-op">[</tt><tt class="py-name">end</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">strip</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-string">'-----END '</tt> <tt class="py-op">+</tt> <tt class="py-name">tag</tt> <tt class="py-op">+</tt> <tt class="py-string">' PRIVATE KEY-----'</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">end</tt> <tt class="py-op">&lt;</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">lines</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L303"></a><tt class="py-lineno">303</tt> <tt class="py-line"> <tt class="py-name">end</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L304"></a><tt class="py-lineno">304</tt> <tt class="py-line"> <tt class="py-comment"># if we trudged to the end of the file, just try to cope.</tt> </tt>
-<a name="L305"></a><tt class="py-lineno">305</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L306"></a><tt class="py-lineno">306</tt> <tt class="py-line"> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-name">base64</tt><tt class="py-op">.</tt><tt class="py-name">decodestring</tt><tt class="py-op">(</tt><tt class="py-string">''</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-name">lines</tt><tt class="py-op">[</tt><tt class="py-name">start</tt><tt class="py-op">:</tt><tt class="py-name">end</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L307"></a><tt class="py-lineno">307</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">base64</tt><tt class="py-op">.</tt><tt class="py-name">binascii</tt><tt class="py-op">.</tt><tt class="py-name">Error</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L308"></a><tt class="py-lineno">308</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-21" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-21', 'SSHException', 'link-9');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'base64 decoding error: '</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L309"></a><tt class="py-lineno">309</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-string">'proc-type'</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">headers</tt><tt class="py-op">:</tt> </tt>
-<a name="L310"></a><tt class="py-lineno">310</tt> <tt class="py-line"> <tt class="py-comment"># unencryped: done</tt> </tt>
-<a name="L311"></a><tt class="py-lineno">311</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">data</tt> </tt>
-<a name="L312"></a><tt class="py-lineno">312</tt> <tt class="py-line"> <tt class="py-comment"># encrypted keyfile: will need a password</tt> </tt>
-<a name="L313"></a><tt class="py-lineno">313</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">headers</tt><tt class="py-op">[</tt><tt class="py-string">'proc-type'</tt><tt class="py-op">]</tt> <tt class="py-op">!=</tt> <tt class="py-string">'4,ENCRYPTED'</tt><tt class="py-op">:</tt> </tt>
-<a name="L314"></a><tt class="py-lineno">314</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-22" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-22', 'SSHException', 'link-9');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Unknown private key structure "%s"'</tt> <tt class="py-op">%</tt> <tt class="py-name">headers</tt><tt class="py-op">[</tt><tt class="py-string">'proc-type'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L315"></a><tt class="py-lineno">315</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L316"></a><tt class="py-lineno">316</tt> <tt class="py-line"> <tt class="py-name">encryption_type</tt><tt class="py-op">,</tt> <tt class="py-name">saltstr</tt> <tt class="py-op">=</tt> <tt class="py-name">headers</tt><tt class="py-op">[</tt><tt class="py-string">'dek-info'</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">','</tt><tt class="py-op">)</tt> </tt>
-<a name="L317"></a><tt class="py-lineno">317</tt> <tt class="py-line"> <tt class="py-keyword">except</tt><tt class="py-op">:</tt> </tt>
-<a name="L318"></a><tt class="py-lineno">318</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-23" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-23', 'SSHException', 'link-9');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Can\'t parse DEK-info in private key file'</tt><tt class="py-op">)</tt> </tt>
-<a name="L319"></a><tt class="py-lineno">319</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">encryption_type</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name"><a title="paramiko.PKey._CIPHER_TABLE" class="py-name" href="#" onclick="return doclink('link-24', '_CIPHER_TABLE', 'link-11');">_CIPHER_TABLE</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L320"></a><tt class="py-lineno">320</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-25" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-25', 'SSHException', 'link-9');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Unknown private key cipher "%s"'</tt> <tt class="py-op">%</tt> <tt class="py-name">encryption_type</tt><tt class="py-op">)</tt> </tt>
-<a name="L321"></a><tt class="py-lineno">321</tt> <tt class="py-line"> <tt class="py-comment"># if no password was passed in, raise an exception pointing out that we need one</tt> </tt>
-<a name="L322"></a><tt class="py-lineno">322</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">password</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L323"></a><tt class="py-lineno">323</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-26" class="py-name"><a title="paramiko.PasswordRequiredException" class="py-name" href="#" onclick="return doclink('link-26', 'PasswordRequiredException', 'link-10');">PasswordRequiredException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Private key file is encrypted'</tt><tt class="py-op">)</tt> </tt>
-<a name="L324"></a><tt class="py-lineno">324</tt> <tt class="py-line"> <tt class="py-name">cipher</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name"><a title="paramiko.PKey._CIPHER_TABLE" class="py-name" href="#" onclick="return doclink('link-27', '_CIPHER_TABLE', 'link-11');">_CIPHER_TABLE</a></tt><tt class="py-op">[</tt><tt class="py-name">encryption_type</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'cipher'</tt><tt class="py-op">]</tt> </tt>
-<a name="L325"></a><tt class="py-lineno">325</tt> <tt class="py-line"> <tt class="py-name">keysize</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="paramiko.PKey._CIPHER_TABLE" class="py-name" href="#" onclick="return doclink('link-28', '_CIPHER_TABLE', 'link-11');">_CIPHER_TABLE</a></tt><tt class="py-op">[</tt><tt class="py-name">encryption_type</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'keysize'</tt><tt class="py-op">]</tt> </tt>
-<a name="L326"></a><tt class="py-lineno">326</tt> <tt class="py-line"> <tt class="py-name">mode</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name"><a title="paramiko.PKey._CIPHER_TABLE" class="py-name" href="#" onclick="return doclink('link-29', '_CIPHER_TABLE', 'link-11');">_CIPHER_TABLE</a></tt><tt class="py-op">[</tt><tt class="py-name">encryption_type</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'mode'</tt><tt class="py-op">]</tt> </tt>
-<a name="L327"></a><tt class="py-lineno">327</tt> <tt class="py-line"> <tt class="py-name">salt</tt> <tt class="py-op">=</tt> <tt class="py-name">unhexlify</tt><tt class="py-op">(</tt><tt class="py-name">saltstr</tt><tt class="py-op">)</tt> </tt>
-<a name="L328"></a><tt class="py-lineno">328</tt> <tt class="py-line"> <tt class="py-name">key</tt> <tt class="py-op">=</tt> <tt id="link-30" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-30', 'util', 'link-3');">util</a></tt><tt class="py-op">.</tt><tt id="link-31" class="py-name" targets="Function paramiko.util.generate_key_bytes()=paramiko.util-module.html#generate_key_bytes"><a title="paramiko.util.generate_key_bytes" class="py-name" href="#" onclick="return doclink('link-31', 'generate_key_bytes', 'link-31');">generate_key_bytes</a></tt><tt class="py-op">(</tt><tt class="py-name">MD5</tt><tt class="py-op">,</tt> <tt class="py-name">salt</tt><tt class="py-op">,</tt> <tt class="py-name">password</tt><tt class="py-op">,</tt> <tt class="py-name">keysize</tt><tt class="py-op">)</tt> </tt>
-<a name="L329"></a><tt class="py-lineno">329</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">cipher</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name"><a title="paramiko.util.Counter.new" class="py-name" href="#" onclick="return doclink('link-32', 'new', 'link-12');">new</a></tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">,</tt> <tt class="py-name">mode</tt><tt class="py-op">,</tt> <tt class="py-name">salt</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">decrypt</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L330"></a><tt class="py-lineno">330</tt> <tt class="py-line"> </tt>
-<a name="PKey._write_private_key_file"></a><div id="PKey._write_private_key_file-def"><a name="L331"></a><tt class="py-lineno">331</tt> <a class="py-toggle" href="#" id="PKey._write_private_key_file-toggle" onclick="return toggle('PKey._write_private_key_file');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pkey.PKey-class.html#_write_private_key_file">_write_private_key_file</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">tag</tt><tt class="py-op">,</tt> <tt class="py-param">filename</tt><tt class="py-op">,</tt> <tt class="py-param">data</tt><tt class="py-op">,</tt> <tt class="py-param">password</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PKey._write_private_key_file-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PKey._write_private_key_file-expanded"><a name="L332"></a><tt class="py-lineno">332</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L333"></a><tt class="py-lineno">333</tt> <tt class="py-line"><tt class="py-docstring"> Write an SSH2-format private key file in a form that can be read by</tt> </tt>
-<a name="L334"></a><tt class="py-lineno">334</tt> <tt class="py-line"><tt class="py-docstring"> paramiko or openssh. If no password is given, the key is written in</tt> </tt>
-<a name="L335"></a><tt class="py-lineno">335</tt> <tt class="py-line"><tt class="py-docstring"> a trivially-encoded format (base64) which is completely insecure. If</tt> </tt>
-<a name="L336"></a><tt class="py-lineno">336</tt> <tt class="py-line"><tt class="py-docstring"> a password is given, DES-EDE3-CBC is used.</tt> </tt>
-<a name="L337"></a><tt class="py-lineno">337</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L338"></a><tt class="py-lineno">338</tt> <tt class="py-line"><tt class="py-docstring"> @param tag: C{"RSA"} or C{"DSA"}, the tag used to mark the data block.</tt> </tt>
-<a name="L339"></a><tt class="py-lineno">339</tt> <tt class="py-line"><tt class="py-docstring"> @type tag: str</tt> </tt>
-<a name="L340"></a><tt class="py-lineno">340</tt> <tt class="py-line"><tt class="py-docstring"> @param filename: name of the file to write.</tt> </tt>
-<a name="L341"></a><tt class="py-lineno">341</tt> <tt class="py-line"><tt class="py-docstring"> @type filename: str</tt> </tt>
-<a name="L342"></a><tt class="py-lineno">342</tt> <tt class="py-line"><tt class="py-docstring"> @param data: data blob that makes up the private key.</tt> </tt>
-<a name="L343"></a><tt class="py-lineno">343</tt> <tt class="py-line"><tt class="py-docstring"> @type data: str</tt> </tt>
-<a name="L344"></a><tt class="py-lineno">344</tt> <tt class="py-line"><tt class="py-docstring"> @param password: an optional password to use to encrypt the file.</tt> </tt>
-<a name="L345"></a><tt class="py-lineno">345</tt> <tt class="py-line"><tt class="py-docstring"> @type password: str</tt> </tt>
-<a name="L346"></a><tt class="py-lineno">346</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L347"></a><tt class="py-lineno">347</tt> <tt class="py-line"><tt class="py-docstring"> @raise IOError: if there was an error writing the file.</tt> </tt>
-<a name="L348"></a><tt class="py-lineno">348</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L349"></a><tt class="py-lineno">349</tt> <tt class="py-line"> <tt class="py-name">f</tt> <tt class="py-op">=</tt> <tt id="link-33" class="py-name"><a title="paramiko.SFTPServerInterface.open" class="py-name" href="#" onclick="return doclink('link-33', 'open', 'link-17');">open</a></tt><tt class="py-op">(</tt><tt class="py-name">filename</tt><tt class="py-op">,</tt> <tt class="py-string">'w'</tt><tt class="py-op">,</tt> <tt class="py-number">0600</tt><tt class="py-op">)</tt> </tt>
-<a name="L350"></a><tt class="py-lineno">350</tt> <tt class="py-line"> <tt class="py-comment"># grrr... the mode doesn't always take hold</tt> </tt>
-<a name="L351"></a><tt class="py-lineno">351</tt> <tt class="py-line"> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name" targets="Method paramiko.SFTPClient.chmod()=paramiko.SFTPClient-class.html#chmod,Method paramiko.SFTPFile.chmod()=paramiko.SFTPFile-class.html#chmod"><a title="paramiko.SFTPClient.chmod
-paramiko.SFTPFile.chmod" class="py-name" href="#" onclick="return doclink('link-34', 'chmod', 'link-34');">chmod</a></tt><tt class="py-op">(</tt><tt class="py-name">filename</tt><tt class="py-op">,</tt> <tt class="py-number">0600</tt><tt class="py-op">)</tt> </tt>
-<a name="L352"></a><tt class="py-lineno">352</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_write_private_key</tt><tt class="py-op">(</tt><tt class="py-name">tag</tt><tt class="py-op">,</tt> <tt class="py-name">f</tt><tt class="py-op">,</tt> <tt class="py-name">data</tt><tt class="py-op">,</tt> <tt class="py-name">password</tt><tt class="py-op">)</tt> </tt>
-<a name="L353"></a><tt class="py-lineno">353</tt> <tt class="py-line"> <tt class="py-name">f</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-35', 'close', 'link-18');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L354"></a><tt class="py-lineno">354</tt> <tt class="py-line"> </tt>
-<a name="PKey._write_private_key"></a><div id="PKey._write_private_key-def"><a name="L355"></a><tt class="py-lineno">355</tt> <a class="py-toggle" href="#" id="PKey._write_private_key-toggle" onclick="return toggle('PKey._write_private_key');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.pkey.PKey-class.html#_write_private_key">_write_private_key</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">tag</tt><tt class="py-op">,</tt> <tt class="py-param">f</tt><tt class="py-op">,</tt> <tt class="py-param">data</tt><tt class="py-op">,</tt> <tt class="py-param">password</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PKey._write_private_key-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PKey._write_private_key-expanded"><a name="L356"></a><tt class="py-lineno">356</tt> <tt class="py-line"> <tt class="py-name">f</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name" targets="Method paramiko.BufferedFile.write()=paramiko.BufferedFile-class.html#write,Method paramiko.SFTPHandle.write()=paramiko.SFTPHandle-class.html#write"><a title="paramiko.BufferedFile.write
-paramiko.SFTPHandle.write" class="py-name" href="#" onclick="return doclink('link-36', 'write', 'link-36');">write</a></tt><tt class="py-op">(</tt><tt class="py-string">'-----BEGIN %s PRIVATE KEY-----\n'</tt> <tt class="py-op">%</tt> <tt class="py-name">tag</tt><tt class="py-op">)</tt> </tt>
-<a name="L357"></a><tt class="py-lineno">357</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">password</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L358"></a><tt class="py-lineno">358</tt> <tt class="py-line"> <tt class="py-comment"># since we only support one cipher here, use it</tt> </tt>
-<a name="L359"></a><tt class="py-lineno">359</tt> <tt class="py-line"> <tt class="py-name">cipher_name</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name"><a title="paramiko.PKey._CIPHER_TABLE" class="py-name" href="#" onclick="return doclink('link-37', '_CIPHER_TABLE', 'link-11');">_CIPHER_TABLE</a></tt><tt class="py-op">.</tt><tt id="link-38" class="py-name" targets="Method paramiko.HostKeys.keys()=paramiko.HostKeys-class.html#keys"><a title="paramiko.HostKeys.keys" class="py-name" href="#" onclick="return doclink('link-38', 'keys', 'link-38');">keys</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L360"></a><tt class="py-lineno">360</tt> <tt class="py-line"> <tt class="py-name">cipher</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="paramiko.PKey._CIPHER_TABLE" class="py-name" href="#" onclick="return doclink('link-39', '_CIPHER_TABLE', 'link-11');">_CIPHER_TABLE</a></tt><tt class="py-op">[</tt><tt class="py-name">cipher_name</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'cipher'</tt><tt class="py-op">]</tt> </tt>
-<a name="L361"></a><tt class="py-lineno">361</tt> <tt class="py-line"> <tt class="py-name">keysize</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name"><a title="paramiko.PKey._CIPHER_TABLE" class="py-name" href="#" onclick="return doclink('link-40', '_CIPHER_TABLE', 'link-11');">_CIPHER_TABLE</a></tt><tt class="py-op">[</tt><tt class="py-name">cipher_name</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'keysize'</tt><tt class="py-op">]</tt> </tt>
-<a name="L362"></a><tt class="py-lineno">362</tt> <tt class="py-line"> <tt class="py-name">blocksize</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name"><a title="paramiko.PKey._CIPHER_TABLE" class="py-name" href="#" onclick="return doclink('link-41', '_CIPHER_TABLE', 'link-11');">_CIPHER_TABLE</a></tt><tt class="py-op">[</tt><tt class="py-name">cipher_name</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'blocksize'</tt><tt class="py-op">]</tt> </tt>
-<a name="L363"></a><tt class="py-lineno">363</tt> <tt class="py-line"> <tt class="py-name">mode</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-42" class="py-name"><a title="paramiko.PKey._CIPHER_TABLE" class="py-name" href="#" onclick="return doclink('link-42', '_CIPHER_TABLE', 'link-11');">_CIPHER_TABLE</a></tt><tt class="py-op">[</tt><tt class="py-name">cipher_name</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'mode'</tt><tt class="py-op">]</tt> </tt>
-<a name="L364"></a><tt class="py-lineno">364</tt> <tt class="py-line"> <tt class="py-name">salt</tt> <tt class="py-op">=</tt> <tt id="link-43" class="py-name" targets="Variable paramiko.auth_handler.rng=paramiko.auth_handler-module.html#rng,Variable paramiko.channel.rng=paramiko.channel-module.html#rng,Variable paramiko.client.rng=paramiko.client-module.html#rng,Variable paramiko.common.rng=paramiko.common-module.html#rng,Variable paramiko.dsskey.rng=paramiko.dsskey-module.html#rng,Variable paramiko.hostkeys.rng=paramiko.hostkeys-module.html#rng,Variable paramiko.kex_gex.rng=paramiko.kex_gex-module.html#rng,Variable paramiko.kex_group1.rng=paramiko.kex_group1-module.html#rng,Variable paramiko.packet.rng=paramiko.packet-module.html#rng,Variable paramiko.pkey.rng=paramiko.pkey-module.html#rng,Variable paramiko.rsakey.rng=paramiko.rsakey-module.html#rng,Variable paramiko.server.rng=paramiko.server-module.html#rng,Variable paramiko.sftp.rng=paramiko.sftp-module.html#rng,Variable paramiko.sftp_attr.rng=paramiko.sftp_attr-module.html#rng,Variable paramiko.sftp_client.rng=paramiko.sftp_client-module.html#rng,Variable paramiko.sftp_file.rng=paramiko.sftp_file-module.html#rng,Variable paramiko.sftp_handle.rng=paramiko.sftp_handle-module.html#rng,Variable paramiko.sftp_server.rng=paramiko.sftp_server-module.html#rng,Variable paramiko.sftp_si.rng=paramiko.sftp_si-module.html#rng,Variable paramiko.transport.rng=paramiko.transport-module.html#rng,Variable paramiko.util.rng=paramiko.util-module.html#rng"><a title="paramiko.auth_handler.rng
-paramiko.channel.rng
-paramiko.client.rng
-paramiko.common.rng
-paramiko.dsskey.rng
-paramiko.hostkeys.rng
-paramiko.kex_gex.rng
-paramiko.kex_group1.rng
-paramiko.packet.rng
-paramiko.pkey.rng
-paramiko.rsakey.rng
-paramiko.server.rng
-paramiko.sftp.rng
-paramiko.sftp_attr.rng
-paramiko.sftp_client.rng
-paramiko.sftp_file.rng
-paramiko.sftp_handle.rng
-paramiko.sftp_server.rng
-paramiko.sftp_si.rng
-paramiko.transport.rng
-paramiko.util.rng" class="py-name" href="#" onclick="return doclink('link-43', 'rng', 'link-43');">rng</a></tt><tt class="py-op">.</tt><tt id="link-44" class="py-name" targets="Method paramiko.BufferedFile.read()=paramiko.BufferedFile-class.html#read,Method paramiko.SFTPHandle.read()=paramiko.SFTPHandle-class.html#read,Method paramiko.buffered_pipe.BufferedPipe.read()=paramiko.buffered_pipe.BufferedPipe-class.html#read"><a title="paramiko.BufferedFile.read
-paramiko.SFTPHandle.read
-paramiko.buffered_pipe.BufferedPipe.read" class="py-name" href="#" onclick="return doclink('link-44', 'read', 'link-44');">read</a></tt><tt class="py-op">(</tt><tt class="py-number">8</tt><tt class="py-op">)</tt> </tt>
-<a name="L365"></a><tt class="py-lineno">365</tt> <tt class="py-line"> <tt class="py-name">key</tt> <tt class="py-op">=</tt> <tt id="link-45" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-45', 'util', 'link-3');">util</a></tt><tt class="py-op">.</tt><tt id="link-46" class="py-name"><a title="paramiko.util.generate_key_bytes" class="py-name" href="#" onclick="return doclink('link-46', 'generate_key_bytes', 'link-31');">generate_key_bytes</a></tt><tt class="py-op">(</tt><tt class="py-name">MD5</tt><tt class="py-op">,</tt> <tt class="py-name">salt</tt><tt class="py-op">,</tt> <tt class="py-name">password</tt><tt class="py-op">,</tt> <tt class="py-name">keysize</tt><tt class="py-op">)</tt> </tt>
-<a name="L366"></a><tt class="py-lineno">366</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> <tt class="py-op">%</tt> <tt class="py-name">blocksize</tt> <tt class="py-op">!=</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L367"></a><tt class="py-lineno">367</tt> <tt class="py-line"> <tt class="py-name">n</tt> <tt class="py-op">=</tt> <tt class="py-name">blocksize</tt> <tt class="py-op">-</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> <tt class="py-op">%</tt> <tt class="py-name">blocksize</tt> </tt>
-<a name="L368"></a><tt class="py-lineno">368</tt> <tt class="py-line"> <tt class="py-comment">#data += rng.read(n)</tt> </tt>
-<a name="L369"></a><tt class="py-lineno">369</tt> <tt class="py-line"> <tt class="py-comment"># that would make more sense ^, but it confuses openssh.</tt> </tt>
-<a name="L370"></a><tt class="py-lineno">370</tt> <tt class="py-line"> <tt class="py-name">data</tt> <tt class="py-op">+=</tt> <tt class="py-string">'\0'</tt> <tt class="py-op">*</tt> <tt class="py-name">n</tt> </tt>
-<a name="L371"></a><tt class="py-lineno">371</tt> <tt class="py-line"> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-name">cipher</tt><tt class="py-op">.</tt><tt id="link-47" class="py-name"><a title="paramiko.util.Counter.new" class="py-name" href="#" onclick="return doclink('link-47', 'new', 'link-12');">new</a></tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">,</tt> <tt class="py-name">mode</tt><tt class="py-op">,</tt> <tt class="py-name">salt</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">encrypt</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L372"></a><tt class="py-lineno">372</tt> <tt class="py-line"> <tt class="py-name">f</tt><tt class="py-op">.</tt><tt id="link-48" class="py-name"><a title="paramiko.BufferedFile.write
-paramiko.SFTPHandle.write" class="py-name" href="#" onclick="return doclink('link-48', 'write', 'link-36');">write</a></tt><tt class="py-op">(</tt><tt class="py-string">'Proc-Type: 4,ENCRYPTED\n'</tt><tt class="py-op">)</tt> </tt>
-<a name="L373"></a><tt class="py-lineno">373</tt> <tt class="py-line"> <tt class="py-name">f</tt><tt class="py-op">.</tt><tt id="link-49" class="py-name"><a title="paramiko.BufferedFile.write
-paramiko.SFTPHandle.write" class="py-name" href="#" onclick="return doclink('link-49', 'write', 'link-36');">write</a></tt><tt class="py-op">(</tt><tt class="py-string">'DEK-Info: %s,%s\n'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">cipher_name</tt><tt class="py-op">,</tt> <tt class="py-name">hexlify</tt><tt class="py-op">(</tt><tt class="py-name">salt</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">upper</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L374"></a><tt class="py-lineno">374</tt> <tt class="py-line"> <tt class="py-name">f</tt><tt class="py-op">.</tt><tt id="link-50" class="py-name"><a title="paramiko.BufferedFile.write
-paramiko.SFTPHandle.write" class="py-name" href="#" onclick="return doclink('link-50', 'write', 'link-36');">write</a></tt><tt class="py-op">(</tt><tt class="py-string">'\n'</tt><tt class="py-op">)</tt> </tt>
-<a name="L375"></a><tt class="py-lineno">375</tt> <tt class="py-line"> <tt class="py-name">s</tt> <tt class="py-op">=</tt> <tt class="py-name">base64</tt><tt class="py-op">.</tt><tt class="py-name">encodestring</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L376"></a><tt class="py-lineno">376</tt> <tt class="py-line"> <tt class="py-comment"># re-wrap to 64-char lines</tt> </tt>
-<a name="L377"></a><tt class="py-lineno">377</tt> <tt class="py-line"> <tt class="py-name">s</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">'\n'</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L378"></a><tt class="py-lineno">378</tt> <tt class="py-line"> <tt class="py-name">s</tt> <tt class="py-op">=</tt> <tt class="py-string">'\n'</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-name">s</tt><tt class="py-op">[</tt><tt class="py-name">i</tt> <tt class="py-op">:</tt> <tt class="py-name">i</tt><tt class="py-op">+</tt><tt class="py-number">64</tt><tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">64</tt><tt class="py-op">)</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L379"></a><tt class="py-lineno">379</tt> <tt class="py-line"> <tt class="py-name">f</tt><tt class="py-op">.</tt><tt id="link-51" class="py-name"><a title="paramiko.BufferedFile.write
-paramiko.SFTPHandle.write" class="py-name" href="#" onclick="return doclink('link-51', 'write', 'link-36');">write</a></tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">)</tt> </tt>
-<a name="L380"></a><tt class="py-lineno">380</tt> <tt class="py-line"> <tt class="py-name">f</tt><tt class="py-op">.</tt><tt id="link-52" class="py-name"><a title="paramiko.BufferedFile.write
-paramiko.SFTPHandle.write" class="py-name" href="#" onclick="return doclink('link-52', 'write', 'link-36');">write</a></tt><tt class="py-op">(</tt><tt class="py-string">'\n'</tt><tt class="py-op">)</tt> </tt>
-<a name="L381"></a><tt class="py-lineno">381</tt> <tt class="py-line"> <tt class="py-name">f</tt><tt class="py-op">.</tt><tt id="link-53" class="py-name"><a title="paramiko.BufferedFile.write
-paramiko.SFTPHandle.write" class="py-name" href="#" onclick="return doclink('link-53', 'write', 'link-36');">write</a></tt><tt class="py-op">(</tt><tt class="py-string">'-----END %s PRIVATE KEY-----\n'</tt> <tt class="py-op">%</tt> <tt class="py-name">tag</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L382"></a><tt class="py-lineno">382</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:07 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.primes-module.html b/docs/paramiko.primes-module.html
deleted file mode 100644
index c507d4e..0000000
--- a/docs/paramiko.primes-module.html
+++ /dev/null
@@ -1,138 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.primes</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;primes
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.primes-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module primes</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.primes-pysrc.html">source&nbsp;code</a></span></p>
-<p>Utility functions for dealing with primes.</p>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Classes</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.primes.ModulusPack-class.html" class="summary-name">ModulusPack</a><br />
- convenience object for holding the contents of the /etc/ssh/moduli
- file, on systems that have such a file.
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'paramiko'"><code class="variable-quote">'</code><code class="variable-string">paramiko</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:02 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.primes-pysrc.html b/docs/paramiko.primes-pysrc.html
deleted file mode 100644
index eabf841..0000000
--- a/docs/paramiko.primes-pysrc.html
+++ /dev/null
@@ -1,355 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.primes</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;primes
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.primes-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.primes-module.html" onclick="show_private();">Module paramiko.primes</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2003-2007 Robey Pointer &lt;robeypointer@gmail.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring">Utility functions for dealing with primes.</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">Crypto</tt><tt class="py-op">.</tt><tt class="py-name">Util</tt> <tt class="py-keyword">import</tt> <tt class="py-name">number</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package paramiko=paramiko-module.html"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-0', 'paramiko', 'link-0');">paramiko</a></tt> <tt class="py-keyword">import</tt> <tt id="link-1" class="py-name" targets="Module paramiko.util=paramiko.util-module.html"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-1', 'util', 'link-1');">util</a></tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-2" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-2', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Module paramiko.ssh_exception=paramiko.ssh_exception-module.html"><a title="paramiko.ssh_exception" class="py-name" href="#" onclick="return doclink('link-3', 'ssh_exception', 'link-3');">ssh_exception</a></tt> <tt class="py-keyword">import</tt> <tt id="link-4" class="py-name" targets="Class paramiko.SSHException=paramiko.SSHException-class.html"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-4', 'SSHException', 'link-4');">SSHException</a></tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> </tt>
-<a name="_generate_prime"></a><div id="_generate_prime-def"><a name="L29"></a><tt class="py-lineno"> 29</tt> <a class="py-toggle" href="#" id="_generate_prime-toggle" onclick="return toggle('_generate_prime');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.primes-module.html#_generate_prime">_generate_prime</a><tt class="py-op">(</tt><tt class="py-param">bits</tt><tt class="py-op">,</tt> <tt class="py-param">rng</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="_generate_prime-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="_generate_prime-expanded"><a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> <tt class="py-docstring">"primtive attempt at prime generation"</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> <tt class="py-name">hbyte_mask</tt> <tt class="py-op">=</tt> <tt class="py-name">pow</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">,</tt> <tt class="py-name">bits</tt> <tt class="py-op">%</tt> <tt class="py-number">8</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> <tt class="py-comment"># loop catches the case where we increment n into a higher bit-range</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> <tt class="py-name">x</tt> <tt class="py-op">=</tt> <tt id="link-5" class="py-name" targets="Variable paramiko.auth_handler.rng=paramiko.auth_handler-module.html#rng,Variable paramiko.channel.rng=paramiko.channel-module.html#rng,Variable paramiko.client.rng=paramiko.client-module.html#rng,Variable paramiko.common.rng=paramiko.common-module.html#rng,Variable paramiko.dsskey.rng=paramiko.dsskey-module.html#rng,Variable paramiko.hostkeys.rng=paramiko.hostkeys-module.html#rng,Variable paramiko.kex_gex.rng=paramiko.kex_gex-module.html#rng,Variable paramiko.kex_group1.rng=paramiko.kex_group1-module.html#rng,Variable paramiko.packet.rng=paramiko.packet-module.html#rng,Variable paramiko.pkey.rng=paramiko.pkey-module.html#rng,Variable paramiko.rsakey.rng=paramiko.rsakey-module.html#rng,Variable paramiko.server.rng=paramiko.server-module.html#rng,Variable paramiko.sftp.rng=paramiko.sftp-module.html#rng,Variable paramiko.sftp_attr.rng=paramiko.sftp_attr-module.html#rng,Variable paramiko.sftp_client.rng=paramiko.sftp_client-module.html#rng,Variable paramiko.sftp_file.rng=paramiko.sftp_file-module.html#rng,Variable paramiko.sftp_handle.rng=paramiko.sftp_handle-module.html#rng,Variable paramiko.sftp_server.rng=paramiko.sftp_server-module.html#rng,Variable paramiko.sftp_si.rng=paramiko.sftp_si-module.html#rng,Variable paramiko.transport.rng=paramiko.transport-module.html#rng,Variable paramiko.util.rng=paramiko.util-module.html#rng"><a title="paramiko.auth_handler.rng
-paramiko.channel.rng
-paramiko.client.rng
-paramiko.common.rng
-paramiko.dsskey.rng
-paramiko.hostkeys.rng
-paramiko.kex_gex.rng
-paramiko.kex_group1.rng
-paramiko.packet.rng
-paramiko.pkey.rng
-paramiko.rsakey.rng
-paramiko.server.rng
-paramiko.sftp.rng
-paramiko.sftp_attr.rng
-paramiko.sftp_client.rng
-paramiko.sftp_file.rng
-paramiko.sftp_handle.rng
-paramiko.sftp_server.rng
-paramiko.sftp_si.rng
-paramiko.transport.rng
-paramiko.util.rng" class="py-name" href="#" onclick="return doclink('link-5', 'rng', 'link-5');">rng</a></tt><tt class="py-op">.</tt><tt id="link-6" class="py-name" targets="Method paramiko.BufferedFile.read()=paramiko.BufferedFile-class.html#read,Method paramiko.SFTPHandle.read()=paramiko.SFTPHandle-class.html#read,Method paramiko.buffered_pipe.BufferedPipe.read()=paramiko.buffered_pipe.BufferedPipe-class.html#read"><a title="paramiko.BufferedFile.read
-paramiko.SFTPHandle.read
-paramiko.buffered_pipe.BufferedPipe.read" class="py-name" href="#" onclick="return doclink('link-6', 'read', 'link-6');">read</a></tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">bits</tt><tt class="py-op">+</tt><tt class="py-number">7</tt><tt class="py-op">)</tt> <tt class="py-op">//</tt> <tt class="py-number">8</tt><tt class="py-op">)</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">hbyte_mask</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> <tt class="py-name">x</tt> <tt class="py-op">=</tt> <tt class="py-name">chr</tt><tt class="py-op">(</tt><tt class="py-name">ord</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">&amp;</tt> <tt class="py-name">hbyte_mask</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-name">x</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">:</tt><tt class="py-op">]</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> <tt class="py-name">n</tt> <tt class="py-op">=</tt> <tt id="link-7" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-7', 'util', 'link-1');">util</a></tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Function paramiko.util.inflate_long()=paramiko.util-module.html#inflate_long"><a title="paramiko.util.inflate_long" class="py-name" href="#" onclick="return doclink('link-8', 'inflate_long', 'link-8');">inflate_long</a></tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">,</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> <tt class="py-name">n</tt> <tt class="py-op">|=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> <tt class="py-name">n</tt> <tt class="py-op">|=</tt> <tt class="py-op">(</tt><tt class="py-number">1</tt> <tt class="py-op">&lt;&lt;</tt> <tt class="py-op">(</tt><tt class="py-name">bits</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-keyword">not</tt> <tt class="py-name">number</tt><tt class="py-op">.</tt><tt class="py-name">isPrime</tt><tt class="py-op">(</tt><tt class="py-name">n</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt class="py-name">n</tt> <tt class="py-op">+=</tt> <tt class="py-number">2</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-9" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-9', 'util', 'link-1');">util</a></tt><tt class="py-op">.</tt><tt id="link-10" class="py-name" targets="Function paramiko.util.bit_length()=paramiko.util-module.html#bit_length"><a title="paramiko.util.bit_length" class="py-name" href="#" onclick="return doclink('link-10', 'bit_length', 'link-10');">bit_length</a></tt><tt class="py-op">(</tt><tt class="py-name">n</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-name">bits</tt><tt class="py-op">:</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">n</tt> </tt>
-</div><a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> </tt>
-<a name="_roll_random"></a><div id="_roll_random-def"><a name="L46"></a><tt class="py-lineno"> 46</tt> <a class="py-toggle" href="#" id="_roll_random-toggle" onclick="return toggle('_roll_random');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.primes-module.html#_roll_random">_roll_random</a><tt class="py-op">(</tt><tt class="py-param">rng</tt><tt class="py-op">,</tt> <tt class="py-param">n</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="_roll_random-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="_roll_random-expanded"><a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-docstring">"returns a random # from 0 to N-1"</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-name">bits</tt> <tt class="py-op">=</tt> <tt id="link-11" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-11', 'util', 'link-1');">util</a></tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="paramiko.util.bit_length" class="py-name" href="#" onclick="return doclink('link-12', 'bit_length', 'link-10');">bit_length</a></tt><tt class="py-op">(</tt><tt class="py-name">n</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-name">bytes</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">bits</tt> <tt class="py-op">+</tt> <tt class="py-number">7</tt><tt class="py-op">)</tt> <tt class="py-op">//</tt> <tt class="py-number">8</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-name">hbyte_mask</tt> <tt class="py-op">=</tt> <tt class="py-name">pow</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">,</tt> <tt class="py-name">bits</tt> <tt class="py-op">%</tt> <tt class="py-number">8</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-comment"># so here's the plan:</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-comment"># we fetch as many random bits as we'd need to fit N-1, and if the</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-comment"># generated number is &gt;= N, we try again. in the worst case (N-1 is a</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-comment"># power of 2), we have slightly better than 50% odds of getting one that</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-comment"># fits, so i can't guarantee that this loop will ever finish, but the odds</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-comment"># of it looping forever should be infinitesimal.</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-name">x</tt> <tt class="py-op">=</tt> <tt id="link-13" class="py-name"><a title="paramiko.auth_handler.rng
-paramiko.channel.rng
-paramiko.client.rng
-paramiko.common.rng
-paramiko.dsskey.rng
-paramiko.hostkeys.rng
-paramiko.kex_gex.rng
-paramiko.kex_group1.rng
-paramiko.packet.rng
-paramiko.pkey.rng
-paramiko.rsakey.rng
-paramiko.server.rng
-paramiko.sftp.rng
-paramiko.sftp_attr.rng
-paramiko.sftp_client.rng
-paramiko.sftp_file.rng
-paramiko.sftp_handle.rng
-paramiko.sftp_server.rng
-paramiko.sftp_si.rng
-paramiko.transport.rng
-paramiko.util.rng" class="py-name" href="#" onclick="return doclink('link-13', 'rng', 'link-5');">rng</a></tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="paramiko.BufferedFile.read
-paramiko.SFTPHandle.read
-paramiko.buffered_pipe.BufferedPipe.read" class="py-name" href="#" onclick="return doclink('link-14', 'read', 'link-6');">read</a></tt><tt class="py-op">(</tt><tt class="py-name">bytes</tt><tt class="py-op">)</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">hbyte_mask</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-name">x</tt> <tt class="py-op">=</tt> <tt class="py-name">chr</tt><tt class="py-op">(</tt><tt class="py-name">ord</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">&amp;</tt> <tt class="py-name">hbyte_mask</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-name">x</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">:</tt><tt class="py-op">]</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-name">num</tt> <tt class="py-op">=</tt> <tt id="link-15" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-15', 'util', 'link-1');">util</a></tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="paramiko.util.inflate_long" class="py-name" href="#" onclick="return doclink('link-16', 'inflate_long', 'link-8');">inflate_long</a></tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">,</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">num</tt> <tt class="py-op">&lt;</tt> <tt class="py-name">n</tt><tt class="py-op">:</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">num</tt> </tt>
-</div><a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> </tt>
-<a name="ModulusPack"></a><div id="ModulusPack-def"><a name="L68"></a><tt class="py-lineno"> 68</tt> <a class="py-toggle" href="#" id="ModulusPack-toggle" onclick="return toggle('ModulusPack');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.primes.ModulusPack-class.html">ModulusPack</a> <tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ModulusPack-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="ModulusPack-expanded"><a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"><tt class="py-docstring"> convenience object for holding the contents of the /etc/ssh/moduli file,</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"><tt class="py-docstring"> on systems that have such a file.</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> </tt>
-<a name="ModulusPack.__init__"></a><div id="ModulusPack.__init__-def"><a name="L74"></a><tt class="py-lineno"> 74</tt> <a class="py-toggle" href="#" id="ModulusPack.__init__-toggle" onclick="return toggle('ModulusPack.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.primes.ModulusPack-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">rpool</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ModulusPack.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="ModulusPack.__init__-expanded"><a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-comment"># pack is a hash of: bits -&gt; [ (generator, modulus) ... ]</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pack</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">discarded</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="paramiko.auth_handler.rng
-paramiko.channel.rng
-paramiko.client.rng
-paramiko.common.rng
-paramiko.dsskey.rng
-paramiko.hostkeys.rng
-paramiko.kex_gex.rng
-paramiko.kex_group1.rng
-paramiko.packet.rng
-paramiko.pkey.rng
-paramiko.rsakey.rng
-paramiko.server.rng
-paramiko.sftp.rng
-paramiko.sftp_attr.rng
-paramiko.sftp_client.rng
-paramiko.sftp_file.rng
-paramiko.sftp_handle.rng
-paramiko.sftp_server.rng
-paramiko.sftp_si.rng
-paramiko.transport.rng
-paramiko.util.rng" class="py-name" href="#" onclick="return doclink('link-17', 'rng', 'link-5');">rng</a></tt> <tt class="py-op">=</tt> <tt class="py-name">rpool</tt> </tt>
-</div><a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> </tt>
-<a name="ModulusPack._parse_modulus"></a><div id="ModulusPack._parse_modulus-def"><a name="L80"></a><tt class="py-lineno"> 80</tt> <a class="py-toggle" href="#" id="ModulusPack._parse_modulus-toggle" onclick="return toggle('ModulusPack._parse_modulus');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.primes.ModulusPack-class.html#_parse_modulus">_parse_modulus</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">line</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ModulusPack._parse_modulus-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="ModulusPack._parse_modulus-expanded"><a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-name">timestamp</tt><tt class="py-op">,</tt> <tt class="py-name">mod_type</tt><tt class="py-op">,</tt> <tt class="py-name">tests</tt><tt class="py-op">,</tt> <tt class="py-name">tries</tt><tt class="py-op">,</tt> <tt class="py-name">size</tt><tt class="py-op">,</tt> <tt class="py-name">generator</tt><tt class="py-op">,</tt> <tt class="py-name">modulus</tt> <tt class="py-op">=</tt> <tt class="py-name">line</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-name">mod_type</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">mod_type</tt><tt class="py-op">)</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-name">tests</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">tests</tt><tt class="py-op">)</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-name">tries</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">tries</tt><tt class="py-op">)</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">size</tt><tt class="py-op">)</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-name">generator</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">generator</tt><tt class="py-op">)</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-name">modulus</tt> <tt class="py-op">=</tt> <tt class="py-name">long</tt><tt class="py-op">(</tt><tt class="py-name">modulus</tt><tt class="py-op">,</tt> <tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-comment"># weed out primes that aren't at least:</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-comment"># type 2 (meets basic structural requirements)</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-comment"># test 4 (more than just a small-prime sieve)</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-comment"># tries &lt; 100 if test &amp; 4 (at least 100 tries of miller-rabin)</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">mod_type</tt> <tt class="py-op">&lt;</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">tests</tt> <tt class="py-op">&lt;</tt> <tt class="py-number">4</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">tests</tt> <tt class="py-op">&amp;</tt> <tt class="py-number">4</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">tests</tt> <tt class="py-op">&lt;</tt> <tt class="py-number">8</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">tries</tt> <tt class="py-op">&lt;</tt> <tt class="py-number">100</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">discarded</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">modulus</tt><tt class="py-op">,</tt> <tt class="py-string">'does not meet basic requirements'</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">generator</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-name">generator</tt> <tt class="py-op">=</tt> <tt class="py-number">2</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-comment"># there's a bug in the ssh "moduli" file (yeah, i know: shock! dismay!</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-comment"># call cnn!) where it understates the bit lengths of these primes by 1.</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-comment"># this is okay.</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt class="py-name">bl</tt> <tt class="py-op">=</tt> <tt id="link-18" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-18', 'util', 'link-1');">util</a></tt><tt class="py-op">.</tt><tt id="link-19" class="py-name"><a title="paramiko.util.bit_length" class="py-name" href="#" onclick="return doclink('link-19', 'bit_length', 'link-10');">bit_length</a></tt><tt class="py-op">(</tt><tt class="py-name">modulus</tt><tt class="py-op">)</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">bl</tt> <tt class="py-op">!=</tt> <tt class="py-name">size</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">bl</tt> <tt class="py-op">!=</tt> <tt class="py-name">size</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">discarded</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">modulus</tt><tt class="py-op">,</tt> <tt class="py-string">'incorrectly reported bit length %d'</tt> <tt class="py-op">%</tt> <tt class="py-name">size</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">bl</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pack</tt><tt class="py-op">:</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pack</tt><tt class="py-op">[</tt><tt class="py-name">bl</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pack</tt><tt class="py-op">[</tt><tt class="py-name">bl</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">generator</tt><tt class="py-op">,</tt> <tt class="py-name">modulus</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> </tt>
-<a name="ModulusPack.read_file"></a><div id="ModulusPack.read_file-def"><a name="L110"></a><tt class="py-lineno">110</tt> <a class="py-toggle" href="#" id="ModulusPack.read_file-toggle" onclick="return toggle('ModulusPack.read_file');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.primes.ModulusPack-class.html#read_file">read_file</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">filename</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ModulusPack.read_file-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="ModulusPack.read_file-expanded"><a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"><tt class="py-docstring"> @raise IOError: passed from any file operations that fail.</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pack</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-name">f</tt> <tt class="py-op">=</tt> <tt id="link-20" class="py-name" targets="Method paramiko.SFTPServerInterface.open()=paramiko.SFTPServerInterface-class.html#open"><a title="paramiko.SFTPServerInterface.open" class="py-name" href="#" onclick="return doclink('link-20', 'open', 'link-20');">open</a></tt><tt class="py-op">(</tt><tt class="py-name">filename</tt><tt class="py-op">,</tt> <tt class="py-string">'r'</tt><tt class="py-op">)</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">line</tt> <tt class="py-keyword">in</tt> <tt class="py-name">f</tt><tt class="py-op">:</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-name">line</tt> <tt class="py-op">=</tt> <tt class="py-name">line</tt><tt class="py-op">.</tt><tt class="py-name">strip</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">'#'</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_parse_modulus</tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">)</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-keyword">except</tt><tt class="py-op">:</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-name">f</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name" targets="Method paramiko.Agent.close()=paramiko.Agent-class.html#close,Method paramiko.BufferedFile.close()=paramiko.BufferedFile-class.html#close,Method paramiko.Channel.close()=paramiko.Channel-class.html#close,Method paramiko.SFTPClient.close()=paramiko.SFTPClient-class.html#close,Method paramiko.SFTPFile.close()=paramiko.SFTPFile-class.html#close,Method paramiko.SFTPHandle.close()=paramiko.SFTPHandle-class.html#close,Method paramiko.SSHClient.close()=paramiko.SSHClient-class.html#close,Method paramiko.Transport.close()=paramiko.Transport-class.html#close,Method paramiko.buffered_pipe.BufferedPipe.close()=paramiko.buffered_pipe.BufferedPipe-class.html#close,Method paramiko.pipe.PosixPipe.close()=paramiko.pipe.PosixPipe-class.html#close,Method paramiko.pipe.WindowsPipe.close()=paramiko.pipe.WindowsPipe-class.html#close,Method paramiko.win_pageant.PageantConnection.close()=paramiko.win_pageant.PageantConnection-class.html#close"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-21', 'close', 'link-21');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> </tt>
-<a name="ModulusPack.get_modulus"></a><div id="ModulusPack.get_modulus-def"><a name="L126"></a><tt class="py-lineno">126</tt> <a class="py-toggle" href="#" id="ModulusPack.get_modulus-toggle" onclick="return toggle('ModulusPack.get_modulus');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.primes.ModulusPack-class.html#get_modulus">get_modulus</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">min</tt><tt class="py-op">,</tt> <tt class="py-param">prefer</tt><tt class="py-op">,</tt> <tt class="py-param">max</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ModulusPack.get_modulus-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="ModulusPack.get_modulus-expanded"><a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-name">bitsizes</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pack</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name" targets="Method paramiko.HostKeys.keys()=paramiko.HostKeys-class.html#keys"><a title="paramiko.HostKeys.keys" class="py-name" href="#" onclick="return doclink('link-22', 'keys', 'link-22');">keys</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-name">bitsizes</tt><tt class="py-op">.</tt><tt class="py-name">sort</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">bitsizes</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-23" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-23', 'SSHException', 'link-4');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'no moduli available'</tt><tt class="py-op">)</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-name">good</tt> <tt class="py-op">=</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-comment"># find nearest bitsize &gt;= preferred</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">b</tt> <tt class="py-keyword">in</tt> <tt class="py-name">bitsizes</tt><tt class="py-op">:</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">b</tt> <tt class="py-op">&gt;=</tt> <tt class="py-name">prefer</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">b</tt> <tt class="py-op">&lt;</tt> <tt class="py-name">max</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">b</tt> <tt class="py-op">&lt;</tt> <tt class="py-name">good</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">good</tt> <tt class="py-op">==</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-name">good</tt> <tt class="py-op">=</tt> <tt class="py-name">b</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-comment"># if that failed, find greatest bitsize &gt;= min</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">good</tt> <tt class="py-op">==</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">b</tt> <tt class="py-keyword">in</tt> <tt class="py-name">bitsizes</tt><tt class="py-op">:</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">b</tt> <tt class="py-op">&gt;=</tt> <tt class="py-name">min</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">b</tt> <tt class="py-op">&lt;</tt> <tt class="py-name">max</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">b</tt> <tt class="py-op">&gt;</tt> <tt class="py-name">good</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-name">good</tt> <tt class="py-op">=</tt> <tt class="py-name">b</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">good</tt> <tt class="py-op">==</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> <tt class="py-comment"># their entire (min, max) range has no intersection with our range.</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> <tt class="py-comment"># if their range is below ours, pick the smallest. otherwise pick</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-comment"># the largest. it'll be out of their range requirement either way,</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-comment"># but we'll be sending them the closest one we have.</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt class="py-name">good</tt> <tt class="py-op">=</tt> <tt class="py-name">bitsizes</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">min</tt> <tt class="py-op">&gt;</tt> <tt class="py-name">good</tt><tt class="py-op">:</tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt class="py-name">good</tt> <tt class="py-op">=</tt> <tt class="py-name">bitsizes</tt><tt class="py-op">[</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt class="py-comment"># now pick a random modulus of this bitsize</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt class="py-name">n</tt> <tt class="py-op">=</tt> <tt class="py-name">_roll_random</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name"><a title="paramiko.auth_handler.rng
-paramiko.channel.rng
-paramiko.client.rng
-paramiko.common.rng
-paramiko.dsskey.rng
-paramiko.hostkeys.rng
-paramiko.kex_gex.rng
-paramiko.kex_group1.rng
-paramiko.packet.rng
-paramiko.pkey.rng
-paramiko.rsakey.rng
-paramiko.server.rng
-paramiko.sftp.rng
-paramiko.sftp_attr.rng
-paramiko.sftp_client.rng
-paramiko.sftp_file.rng
-paramiko.sftp_handle.rng
-paramiko.sftp_server.rng
-paramiko.sftp_si.rng
-paramiko.transport.rng
-paramiko.util.rng" class="py-name" href="#" onclick="return doclink('link-24', 'rng', 'link-5');">rng</a></tt><tt class="py-op">,</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pack</tt><tt class="py-op">[</tt><tt class="py-name">good</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pack</tt><tt class="py-op">[</tt><tt class="py-name">good</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-name">n</tt><tt class="py-op">]</tt> </tt>
-</div></div><a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:08 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.primes.ModulusPack-class.html b/docs/paramiko.primes.ModulusPack-class.html
deleted file mode 100644
index e584c54..0000000
--- a/docs/paramiko.primes.ModulusPack-class.html
+++ /dev/null
@@ -1,270 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.primes.ModulusPack</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- <a href="paramiko.primes-module.html" onclick="show_private();">Module&nbsp;primes</a> ::
- Class&nbsp;ModulusPack
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.primes.ModulusPack-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class ModulusPack</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.primes-pysrc.html#ModulusPack">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- <strong class="uidshort">ModulusPack</strong>
-</pre>
-
-<hr />
-<p>convenience object for holding the contents of the /etc/ssh/moduli
- file, on systems that have such a file.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.primes.ModulusPack-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">rpool</span>)</span><br />
- x.__init__(...) initializes x; see x.__class__.__doc__ for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.primes-pysrc.html#ModulusPack.__init__">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.primes.ModulusPack-class.html#read_file" class="summary-sig-name">read_file</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">filename</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.primes-pysrc.html#ModulusPack.read_file">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="get_modulus"></a><span class="summary-sig-name">get_modulus</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">min</span>,
- <span class="summary-sig-arg">prefer</span>,
- <span class="summary-sig-arg">max</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.primes-pysrc.html#ModulusPack.get_modulus">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">rpool</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.primes-pysrc.html#ModulusPack.__init__">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see x.__class__.__doc__ for
- signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<a name="read_file"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">read_file</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">filename</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.primes-pysrc.html#ModulusPack.read_file">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
-
- <dl class="fields">
- <dt>Raises:</dt>
- <dd><ul class="nomargin-top">
- <li><code><strong class='fraise'>IOError</strong></code> - passed from any file operations that fail.</li>
- </ul></dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:04 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.resource-module.html b/docs/paramiko.resource-module.html
deleted file mode 100644
index 7bcd6d0..0000000
--- a/docs/paramiko.resource-module.html
+++ /dev/null
@@ -1,127 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.resource</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;resource
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.resource-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module resource</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.resource-pysrc.html">source&nbsp;code</a></span></p>
-<p>Resource manager.</p>
-
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="ResourceManager"></a><span class="summary-name">ResourceManager</span> = <code title="ResourceManager()">ResourceManager()</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'paramiko'"><code class="variable-quote">'</code><code class="variable-string">paramiko</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:02 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.resource-pysrc.html b/docs/paramiko.resource-pysrc.html
deleted file mode 100644
index 0322572..0000000
--- a/docs/paramiko.resource-pysrc.html
+++ /dev/null
@@ -1,192 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.resource</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;resource
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.resource-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.resource-module.html" onclick="show_private();">Module paramiko.resource</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2003-2007 Robey Pointer &lt;robeypointer@gmail.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno">10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno">11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno">12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno">13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno">14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno">15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno">16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno">17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno">18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno">19</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L20"></a><tt class="py-lineno">20</tt> <tt class="py-line"><tt class="py-docstring">Resource manager.</tt> </tt>
-<a name="L21"></a><tt class="py-lineno">21</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L22"></a><tt class="py-lineno">22</tt> <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno">23</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">weakref</tt> </tt>
-<a name="L24"></a><tt class="py-lineno">24</tt> <tt class="py-line"> </tt>
-<a name="L25"></a><tt class="py-lineno">25</tt> <tt class="py-line"> </tt>
-<a name="ResourceManager"></a><div id="ResourceManager-def"><a name="L26"></a><tt class="py-lineno">26</tt> <a class="py-toggle" href="#" id="ResourceManager-toggle" onclick="return toggle('ResourceManager');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.resource.ResourceManager-class.html">ResourceManager</a> <tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ResourceManager-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="ResourceManager-expanded"><a name="L27"></a><tt class="py-lineno">27</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L28"></a><tt class="py-lineno">28</tt> <tt class="py-line"><tt class="py-docstring"> A registry of objects and resources that should be closed when those</tt> </tt>
-<a name="L29"></a><tt class="py-lineno">29</tt> <tt class="py-line"><tt class="py-docstring"> objects are deleted.</tt> </tt>
-<a name="L30"></a><tt class="py-lineno">30</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L31"></a><tt class="py-lineno">31</tt> <tt class="py-line"><tt class="py-docstring"> This is meant to be a safer alternative to python's C{__del__} method,</tt> </tt>
-<a name="L32"></a><tt class="py-lineno">32</tt> <tt class="py-line"><tt class="py-docstring"> which can cause reference cycles to never be collected. Objects registered</tt> </tt>
-<a name="L33"></a><tt class="py-lineno">33</tt> <tt class="py-line"><tt class="py-docstring"> with the ResourceManager can be collected but still free resources when</tt> </tt>
-<a name="L34"></a><tt class="py-lineno">34</tt> <tt class="py-line"><tt class="py-docstring"> they die.</tt> </tt>
-<a name="L35"></a><tt class="py-lineno">35</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L36"></a><tt class="py-lineno">36</tt> <tt class="py-line"><tt class="py-docstring"> Resources are registered using L{register}, and when an object is garbage</tt> </tt>
-<a name="L37"></a><tt class="py-lineno">37</tt> <tt class="py-line"><tt class="py-docstring"> collected, each registered resource is closed by having its C{close()}</tt> </tt>
-<a name="L38"></a><tt class="py-lineno">38</tt> <tt class="py-line"><tt class="py-docstring"> method called. Multiple resources may be registered per object, but a</tt> </tt>
-<a name="L39"></a><tt class="py-lineno">39</tt> <tt class="py-line"><tt class="py-docstring"> resource will only be closed once, even if multiple objects register it.</tt> </tt>
-<a name="L40"></a><tt class="py-lineno">40</tt> <tt class="py-line"><tt class="py-docstring"> (The last object to register it wins.)</tt> </tt>
-<a name="L41"></a><tt class="py-lineno">41</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L42"></a><tt class="py-lineno">42</tt> <tt class="py-line"> </tt>
-<a name="ResourceManager.__init__"></a><div id="ResourceManager.__init__-def"><a name="L43"></a><tt class="py-lineno">43</tt> <a class="py-toggle" href="#" id="ResourceManager.__init__-toggle" onclick="return toggle('ResourceManager.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.resource.ResourceManager-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ResourceManager.__init__-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="ResourceManager.__init__-expanded"><a name="L44"></a><tt class="py-lineno">44</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_table</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-</div><a name="L45"></a><tt class="py-lineno">45</tt> <tt class="py-line"> </tt>
-<a name="ResourceManager.register"></a><div id="ResourceManager.register-def"><a name="L46"></a><tt class="py-lineno">46</tt> <a class="py-toggle" href="#" id="ResourceManager.register-toggle" onclick="return toggle('ResourceManager.register');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.resource.ResourceManager-class.html#register">register</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">obj</tt><tt class="py-op">,</tt> <tt class="py-param">resource</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ResourceManager.register-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="ResourceManager.register-expanded"><a name="L47"></a><tt class="py-lineno">47</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L48"></a><tt class="py-lineno">48</tt> <tt class="py-line"><tt class="py-docstring"> Register a resource to be closed with an object is collected.</tt> </tt>
-<a name="L49"></a><tt class="py-lineno">49</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L50"></a><tt class="py-lineno">50</tt> <tt class="py-line"><tt class="py-docstring"> When the given C{obj} is garbage-collected by the python interpreter,</tt> </tt>
-<a name="L51"></a><tt class="py-lineno">51</tt> <tt class="py-line"><tt class="py-docstring"> the C{resource} will be closed by having its C{close()} method called.</tt> </tt>
-<a name="L52"></a><tt class="py-lineno">52</tt> <tt class="py-line"><tt class="py-docstring"> Any exceptions are ignored.</tt> </tt>
-<a name="L53"></a><tt class="py-lineno">53</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L54"></a><tt class="py-lineno">54</tt> <tt class="py-line"><tt class="py-docstring"> @param obj: the object to track</tt> </tt>
-<a name="L55"></a><tt class="py-lineno">55</tt> <tt class="py-line"><tt class="py-docstring"> @type obj: object</tt> </tt>
-<a name="L56"></a><tt class="py-lineno">56</tt> <tt class="py-line"><tt class="py-docstring"> @param resource: the resource to close when the object is collected</tt> </tt>
-<a name="L57"></a><tt class="py-lineno">57</tt> <tt class="py-line"><tt class="py-docstring"> @type resource: object</tt> </tt>
-<a name="L58"></a><tt class="py-lineno">58</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L59"></a><tt class="py-lineno">59</tt> <tt class="py-line"> <tt class="py-keyword">def</tt> <tt class="py-def-name">callback</tt><tt class="py-op">(</tt><tt class="py-param">ref</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L60"></a><tt class="py-lineno">60</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L61"></a><tt class="py-lineno">61</tt> <tt class="py-line"> <tt id="link-0" class="py-name" targets="Module paramiko.resource=paramiko.resource-module.html"><a title="paramiko.resource" class="py-name" href="#" onclick="return doclink('link-0', 'resource', 'link-0');">resource</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method paramiko.Agent.close()=paramiko.Agent-class.html#close,Method paramiko.BufferedFile.close()=paramiko.BufferedFile-class.html#close,Method paramiko.Channel.close()=paramiko.Channel-class.html#close,Method paramiko.SFTPClient.close()=paramiko.SFTPClient-class.html#close,Method paramiko.SFTPFile.close()=paramiko.SFTPFile-class.html#close,Method paramiko.SFTPHandle.close()=paramiko.SFTPHandle-class.html#close,Method paramiko.SSHClient.close()=paramiko.SSHClient-class.html#close,Method paramiko.Transport.close()=paramiko.Transport-class.html#close,Method paramiko.buffered_pipe.BufferedPipe.close()=paramiko.buffered_pipe.BufferedPipe-class.html#close,Method paramiko.pipe.PosixPipe.close()=paramiko.pipe.PosixPipe-class.html#close,Method paramiko.pipe.WindowsPipe.close()=paramiko.pipe.WindowsPipe-class.html#close,Method paramiko.win_pageant.PageantConnection.close()=paramiko.win_pageant.PageantConnection-class.html#close"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-1', 'close', 'link-1');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L62"></a><tt class="py-lineno">62</tt> <tt class="py-line"> <tt class="py-keyword">except</tt><tt class="py-op">:</tt> </tt>
-<a name="L63"></a><tt class="py-lineno">63</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L64"></a><tt class="py-lineno">64</tt> <tt class="py-line"> <tt class="py-keyword">del</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_table</tt><tt class="py-op">[</tt><tt class="py-name">id</tt><tt class="py-op">(</tt><tt id="link-2" class="py-name"><a title="paramiko.resource" class="py-name" href="#" onclick="return doclink('link-2', 'resource', 'link-0');">resource</a></tt><tt class="py-op">)</tt><tt class="py-op">]</tt> </tt>
-</div><a name="L65"></a><tt class="py-lineno">65</tt> <tt class="py-line"> </tt>
-<a name="L66"></a><tt class="py-lineno">66</tt> <tt class="py-line"> <tt class="py-comment"># keep the weakref in a table so it sticks around long enough to get</tt> </tt>
-<a name="L67"></a><tt class="py-lineno">67</tt> <tt class="py-line"> <tt class="py-comment"># its callback called. :)</tt> </tt>
-<a name="L68"></a><tt class="py-lineno">68</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_table</tt><tt class="py-op">[</tt><tt class="py-name">id</tt><tt class="py-op">(</tt><tt id="link-3" class="py-name"><a title="paramiko.resource" class="py-name" href="#" onclick="return doclink('link-3', 'resource', 'link-0');">resource</a></tt><tt class="py-op">)</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">weakref</tt><tt class="py-op">.</tt><tt class="py-name">ref</tt><tt class="py-op">(</tt><tt class="py-name">obj</tt><tt class="py-op">,</tt> <tt class="py-name">callback</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L69"></a><tt class="py-lineno">69</tt> <tt class="py-line"> </tt>
-<a name="L70"></a><tt class="py-lineno">70</tt> <tt class="py-line"> </tt>
-<a name="L71"></a><tt class="py-lineno">71</tt> <tt class="py-line"><tt class="py-comment"># singleton</tt> </tt>
-<a name="L72"></a><tt class="py-lineno">72</tt> <tt class="py-line"><tt id="link-4" class="py-name" targets="Variable paramiko.resource.ResourceManager=paramiko.resource-module.html#ResourceManager"><a title="paramiko.resource.ResourceManager" class="py-name" href="#" onclick="return doclink('link-4', 'ResourceManager', 'link-4');">ResourceManager</a></tt> <tt class="py-op">=</tt> <tt id="link-5" class="py-name"><a title="paramiko.resource.ResourceManager" class="py-name" href="#" onclick="return doclink('link-5', 'ResourceManager', 'link-4');">ResourceManager</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L73"></a><tt class="py-lineno">73</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:06 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.rsakey-module.html b/docs/paramiko.rsakey-module.html
deleted file mode 100644
index fe3358b..0000000
--- a/docs/paramiko.rsakey-module.html
+++ /dev/null
@@ -1,531 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.rsakey</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;rsakey
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.rsakey-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module rsakey</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.rsakey-pysrc.html">source&nbsp;code</a></span></p>
-<p><a href="paramiko.RSAKey-class.html" class="link">RSAKey</a></p>
-
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_FAILED"></a><span class="summary-name">AUTH_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_PARTIALLY_SUCCESSFUL"></a><span class="summary-name">AUTH_PARTIALLY_SUCCESSFUL</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_SUCCESSFUL"></a><span class="summary-name">AUTH_SUCCESSFUL</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.rsakey-module.html#CONNECTION_FAILED_CODE" class="summary-name">CONNECTION_FAILED_CODE</a> = <code title="{1: 'Administratively prohibited',
- 2: 'Connect failed',
- 3: 'Unknown channel type',
- 4: 'Resource shortage'}"><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">:</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CRITICAL"></a><span class="summary-name">CRITICAL</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DEBUG"></a><span class="summary-name">DEBUG</span> = <code title="10">10</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_AUTH_CANCELLED_BY_USER"></a><span class="summary-name">DISCONNECT_AUTH_CANCELLED_BY_USER</span> = <code title="13">13</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE"></a><span class="summary-name">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</span> = <code title="14">14</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_SERVICE_NOT_AVAILABLE"></a><span class="summary-name">DISCONNECT_SERVICE_NOT_AVAILABLE</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="ERROR"></a><span class="summary-name">ERROR</span> = <code title="40">40</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="INFO"></a><span class="summary-name">INFO</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_CLOSE"></a><span class="summary-name">MSG_CHANNEL_CLOSE</span> = <code title="97">97</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_DATA"></a><span class="summary-name">MSG_CHANNEL_DATA</span> = <code title="94">94</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EOF"></a><span class="summary-name">MSG_CHANNEL_EOF</span> = <code title="96">96</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EXTENDED_DATA"></a><span class="summary-name">MSG_CHANNEL_EXTENDED_DATA</span> = <code title="95">95</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_FAILURE"></a><span class="summary-name">MSG_CHANNEL_FAILURE</span> = <code title="100">100</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN"></a><span class="summary-name">MSG_CHANNEL_OPEN</span> = <code title="90">90</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_FAILURE"></a><span class="summary-name">MSG_CHANNEL_OPEN_FAILURE</span> = <code title="92">92</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_OPEN_SUCCESS</span> = <code title="91">91</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_REQUEST"></a><span class="summary-name">MSG_CHANNEL_REQUEST</span> = <code title="98">98</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_SUCCESS</span> = <code title="99">99</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_WINDOW_ADJUST"></a><span class="summary-name">MSG_CHANNEL_WINDOW_ADJUST</span> = <code title="93">93</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DEBUG"></a><span class="summary-name">MSG_DEBUG</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DISCONNECT"></a><span class="summary-name">MSG_DISCONNECT</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_GLOBAL_REQUEST"></a><span class="summary-name">MSG_GLOBAL_REQUEST</span> = <code title="80">80</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_IGNORE"></a><span class="summary-name">MSG_IGNORE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_KEXINIT"></a><span class="summary-name">MSG_KEXINIT</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.rsakey-module.html#MSG_NAMES" class="summary-name">MSG_NAMES</a> = <code title="{1: 'disconnect',
- 2: 'ignore',
- 3: 'unimplemented',
- 4: 'debug',
- 5: 'service-request',
- 6: 'service-accept',
- 20: 'kexinit',
- 21: 'newkeys',
-..."><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">, </code>3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_NEWKEYS"></a><span class="summary-name">MSG_NEWKEYS</span> = <code title="21">21</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_FAILURE"></a><span class="summary-name">MSG_REQUEST_FAILURE</span> = <code title="82">82</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_SUCCESS"></a><span class="summary-name">MSG_REQUEST_SUCCESS</span> = <code title="81">81</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_ACCEPT"></a><span class="summary-name">MSG_SERVICE_ACCEPT</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_REQUEST"></a><span class="summary-name">MSG_SERVICE_REQUEST</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_UNIMPLEMENTED"></a><span class="summary-name">MSG_UNIMPLEMENTED</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_BANNER"></a><span class="summary-name">MSG_USERAUTH_BANNER</span> = <code title="53">53</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_FAILURE"></a><span class="summary-name">MSG_USERAUTH_FAILURE</span> = <code title="51">51</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_REQUEST"></a><span class="summary-name">MSG_USERAUTH_INFO_REQUEST</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_RESPONSE"></a><span class="summary-name">MSG_USERAUTH_INFO_RESPONSE</span> = <code title="61">61</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_PK_OK"></a><span class="summary-name">MSG_USERAUTH_PK_OK</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_REQUEST"></a><span class="summary-name">MSG_USERAUTH_REQUEST</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_SUCCESS"></a><span class="summary-name">MSG_USERAUTH_SUCCESS</span> = <code title="52">52</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED"></a><span class="summary-name">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_CONNECT_FAILED"></a><span class="summary-name">OPEN_FAILED_CONNECT_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_RESOURCE_SHORTAGE"></a><span class="summary-name">OPEN_FAILED_RESOURCE_SHORTAGE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_UNKNOWN_CHANNEL_TYPE"></a><span class="summary-name">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_SUCCEEDED"></a><span class="summary-name">OPEN_SUCCEEDED</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="PY22"></a><span class="summary-name">PY22</span> = <code title="False">False</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="WARNING"></a><span class="summary-name">WARNING</span> = <code title="30">30</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'paramiko'"><code class="variable-quote">'</code><code class="variable-string">paramiko</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="rng"></a><span class="summary-name">rng</span> = <code title="Random.new()">Random.new()</code>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES DETAILS ==================== -->
-<a name="section-VariablesDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables Details</span></td>
-</tr>
-</table>
-<a name="CONNECTION_FAILED_CODE"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">CONNECTION_FAILED_CODE</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Connect failed</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Unknown channel type</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Resource shortage</code><code class="variable-quote">'</code><code class="variable-group">}</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="MSG_NAMES"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">MSG_NAMES</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">debug</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 5<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-request</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 6<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-accept</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 20<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">kexinit</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 21<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">newkeys</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:02 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.rsakey-pysrc.html b/docs/paramiko.rsakey-pysrc.html
deleted file mode 100644
index 8deccb5..0000000
--- a/docs/paramiko.rsakey-pysrc.html
+++ /dev/null
@@ -1,323 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.rsakey</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;rsakey
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.rsakey-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.rsakey-module.html" onclick="show_private();">Module paramiko.rsakey</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2003-2007 Robey Pointer &lt;robeypointer@gmail.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring">L{RSAKey}</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">Crypto</tt><tt class="py-op">.</tt><tt class="py-name">PublicKey</tt> <tt class="py-keyword">import</tt> <tt class="py-name">RSA</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">Crypto</tt><tt class="py-op">.</tt><tt class="py-name">Hash</tt> <tt class="py-keyword">import</tt> <tt class="py-name">SHA</tt><tt class="py-op">,</tt> <tt class="py-name">MD5</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">Crypto</tt><tt class="py-op">.</tt><tt class="py-name">Cipher</tt> <tt class="py-keyword">import</tt> <tt class="py-name">DES3</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package paramiko=paramiko-module.html"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-0', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Module paramiko.common=paramiko.common-module.html"><a title="paramiko.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt> <tt class="py-keyword">import</tt> <tt class="py-op">*</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-2" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-2', 'paramiko', 'link-0');">paramiko</a></tt> <tt class="py-keyword">import</tt> <tt id="link-3" class="py-name" targets="Module paramiko.util=paramiko.util-module.html"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-3', 'util', 'link-3');">util</a></tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-4" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-4', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Module paramiko.message=paramiko.message-module.html"><a title="paramiko.message" class="py-name" href="#" onclick="return doclink('link-5', 'message', 'link-5');">message</a></tt> <tt class="py-keyword">import</tt> <tt id="link-6" class="py-name" targets="Class paramiko.Message=paramiko.Message-class.html"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-6', 'Message', 'link-6');">Message</a></tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-7" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-7', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Module paramiko.ber=paramiko.ber-module.html"><a title="paramiko.ber" class="py-name" href="#" onclick="return doclink('link-8', 'ber', 'link-8');">ber</a></tt> <tt class="py-keyword">import</tt> <tt id="link-9" class="py-name" targets="Class paramiko.ber.BER=paramiko.ber.BER-class.html"><a title="paramiko.ber.BER" class="py-name" href="#" onclick="return doclink('link-9', 'BER', 'link-9');">BER</a></tt><tt class="py-op">,</tt> <tt id="link-10" class="py-name" targets="Class paramiko.ber.BERException=paramiko.ber.BERException-class.html"><a title="paramiko.ber.BERException" class="py-name" href="#" onclick="return doclink('link-10', 'BERException', 'link-10');">BERException</a></tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-11" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-11', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-12" class="py-name" targets="Module paramiko.pkey=paramiko.pkey-module.html"><a title="paramiko.pkey" class="py-name" href="#" onclick="return doclink('link-12', 'pkey', 'link-12');">pkey</a></tt> <tt class="py-keyword">import</tt> <tt id="link-13" class="py-name" targets="Class paramiko.PKey=paramiko.PKey-class.html"><a title="paramiko.PKey" class="py-name" href="#" onclick="return doclink('link-13', 'PKey', 'link-13');">PKey</a></tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-14" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-14', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-15" class="py-name" targets="Module paramiko.ssh_exception=paramiko.ssh_exception-module.html"><a title="paramiko.ssh_exception" class="py-name" href="#" onclick="return doclink('link-15', 'ssh_exception', 'link-15');">ssh_exception</a></tt> <tt class="py-keyword">import</tt> <tt id="link-16" class="py-name" targets="Class paramiko.SSHException=paramiko.SSHException-class.html"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-16', 'SSHException', 'link-16');">SSHException</a></tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> </tt>
-<a name="RSAKey"></a><div id="RSAKey-def"><a name="L35"></a><tt class="py-lineno"> 35</tt> <a class="py-toggle" href="#" id="RSAKey-toggle" onclick="return toggle('RSAKey');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.rsakey.RSAKey-class.html">RSAKey</a> <tt class="py-op">(</tt><tt class="py-base-class">PKey</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RSAKey-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="RSAKey-expanded"><a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"><tt class="py-docstring"> Representation of an RSA key which can be used to sign and verify SSH2</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"><tt class="py-docstring"> data.</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> </tt>
-<a name="RSAKey.__init__"></a><div id="RSAKey.__init__-def"><a name="L41"></a><tt class="py-lineno"> 41</tt> <a class="py-toggle" href="#" id="RSAKey.__init__-toggle" onclick="return toggle('RSAKey.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.rsakey.RSAKey-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">msg</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">data</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">filename</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">password</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">vals</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">file_obj</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RSAKey.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RSAKey.__init__-expanded"><a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">n</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">e</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">d</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">p</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">q</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">file_obj</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_from_private_key</tt><tt class="py-op">(</tt><tt class="py-name">file_obj</tt><tt class="py-op">,</tt> <tt class="py-name">password</tt><tt class="py-op">)</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">filename</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_from_private_key_file</tt><tt class="py-op">(</tt><tt class="py-name">filename</tt><tt class="py-op">,</tt> <tt class="py-name">password</tt><tt class="py-op">)</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">msg</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">data</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-name">msg</tt> <tt class="py-op">=</tt> <tt id="link-17" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-17', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">vals</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">e</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">n</tt> <tt class="py-op">=</tt> <tt class="py-name">vals</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">msg</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-18" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-18', 'SSHException', 'link-16');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Key object may not be empty'</tt><tt class="py-op">)</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name" targets="Method paramiko.Message.get_string()=paramiko.Message-class.html#get_string"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-19', 'get_string', 'link-19');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-string">'ssh-rsa'</tt><tt class="py-op">:</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-20" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-20', 'SSHException', 'link-16');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Invalid key'</tt><tt class="py-op">)</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">e</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name" targets="Method paramiko.Message.get_mpint()=paramiko.Message-class.html#get_mpint"><a title="paramiko.Message.get_mpint" class="py-name" href="#" onclick="return doclink('link-21', 'get_mpint', 'link-21');">get_mpint</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">n</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="paramiko.Message.get_mpint" class="py-name" href="#" onclick="return doclink('link-22', 'get_mpint', 'link-21');">get_mpint</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt id="link-23" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-23', 'util', 'link-3');">util</a></tt><tt class="py-op">.</tt><tt id="link-24" class="py-name" targets="Function paramiko.util.bit_length()=paramiko.util-module.html#bit_length"><a title="paramiko.util.bit_length" class="py-name" href="#" onclick="return doclink('link-24', 'bit_length', 'link-24');">bit_length</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">n</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> </tt>
-<a name="RSAKey.__str__"></a><div id="RSAKey.__str__-def"><a name="L66"></a><tt class="py-lineno"> 66</tt> <a class="py-toggle" href="#" id="RSAKey.__str__-toggle" onclick="return toggle('RSAKey.__str__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.rsakey.RSAKey-class.html#__str__">__str__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RSAKey.__str__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RSAKey.__str__-expanded"><a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-25" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-25', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name" targets="Method paramiko.Message.add_string()=paramiko.Message-class.html#add_string"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-26', 'add_string', 'link-26');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-string">'ssh-rsa'</tt><tt class="py-op">)</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name" targets="Method paramiko.Message.add_mpint()=paramiko.Message-class.html#add_mpint"><a title="paramiko.Message.add_mpint" class="py-name" href="#" onclick="return doclink('link-27', 'add_mpint', 'link-27');">add_mpint</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">e</tt><tt class="py-op">)</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="paramiko.Message.add_mpint" class="py-name" href="#" onclick="return doclink('link-28', 'add_mpint', 'link-27');">add_mpint</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">n</tt><tt class="py-op">)</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> </tt>
-<a name="RSAKey.__hash__"></a><div id="RSAKey.__hash__-def"><a name="L73"></a><tt class="py-lineno"> 73</tt> <a class="py-toggle" href="#" id="RSAKey.__hash__-toggle" onclick="return toggle('RSAKey.__hash__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.rsakey.RSAKey-class.html#__hash__">__hash__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RSAKey.__hash__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RSAKey.__hash__-expanded"><a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-name">h</tt> <tt class="py-op">=</tt> <tt class="py-name">hash</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name" targets="Method paramiko.AgentKey.get_name()=paramiko.AgentKey-class.html#get_name,Method paramiko.Channel.get_name()=paramiko.Channel-class.html#get_name,Method paramiko.DSSKey.get_name()=paramiko.DSSKey-class.html#get_name,Method paramiko.PKey.get_name()=paramiko.PKey-class.html#get_name,Method paramiko.RSAKey.get_name()=paramiko.RSAKey-class.html#get_name"><a title="paramiko.AgentKey.get_name
-paramiko.Channel.get_name
-paramiko.DSSKey.get_name
-paramiko.PKey.get_name
-paramiko.RSAKey.get_name" class="py-name" href="#" onclick="return doclink('link-29', 'get_name', 'link-29');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-name">h</tt> <tt class="py-op">=</tt> <tt class="py-name">h</tt> <tt class="py-op">*</tt> <tt class="py-number">37</tt> <tt class="py-op">+</tt> <tt class="py-name">hash</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">e</tt><tt class="py-op">)</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-name">h</tt> <tt class="py-op">=</tt> <tt class="py-name">h</tt> <tt class="py-op">*</tt> <tt class="py-number">37</tt> <tt class="py-op">+</tt> <tt class="py-name">hash</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">n</tt><tt class="py-op">)</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">hash</tt><tt class="py-op">(</tt><tt class="py-name">h</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> </tt>
-<a name="RSAKey.get_name"></a><div id="RSAKey.get_name-def"><a name="L79"></a><tt class="py-lineno"> 79</tt> <a class="py-toggle" href="#" id="RSAKey.get_name-toggle" onclick="return toggle('RSAKey.get_name');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.rsakey.RSAKey-class.html#get_name">get_name</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RSAKey.get_name-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RSAKey.get_name-expanded"><a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">'ssh-rsa'</tt> </tt>
-</div><a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> </tt>
-<a name="RSAKey.get_bits"></a><div id="RSAKey.get_bits-def"><a name="L82"></a><tt class="py-lineno"> 82</tt> <a class="py-toggle" href="#" id="RSAKey.get_bits-toggle" onclick="return toggle('RSAKey.get_bits');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.rsakey.RSAKey-class.html#get_bits">get_bits</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RSAKey.get_bits-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RSAKey.get_bits-expanded"><a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">size</tt> </tt>
-</div><a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> </tt>
-<a name="RSAKey.can_sign"></a><div id="RSAKey.can_sign-def"><a name="L85"></a><tt class="py-lineno"> 85</tt> <a class="py-toggle" href="#" id="RSAKey.can_sign-toggle" onclick="return toggle('RSAKey.can_sign');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.rsakey.RSAKey-class.html#can_sign">can_sign</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RSAKey.can_sign-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RSAKey.can_sign-expanded"><a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">d</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> </tt>
-<a name="RSAKey.sign_ssh_data"></a><div id="RSAKey.sign_ssh_data-def"><a name="L88"></a><tt class="py-lineno"> 88</tt> <a class="py-toggle" href="#" id="RSAKey.sign_ssh_data-toggle" onclick="return toggle('RSAKey.sign_ssh_data');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.rsakey.RSAKey-class.html#sign_ssh_data">sign_ssh_data</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">rpool</tt><tt class="py-op">,</tt> <tt class="py-param">data</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RSAKey.sign_ssh_data-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RSAKey.sign_ssh_data-expanded"><a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-name">digest</tt> <tt class="py-op">=</tt> <tt class="py-name">SHA</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name" targets="Class Method paramiko.util.Counter.new()=paramiko.util.Counter-class.html#new"><a title="paramiko.util.Counter.new" class="py-name" href="#" onclick="return doclink('link-30', 'new', 'link-30');">new</a></tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">digest</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-name">rsa</tt> <tt class="py-op">=</tt> <tt class="py-name">RSA</tt><tt class="py-op">.</tt><tt class="py-name">construct</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">long</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">n</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">long</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">e</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">long</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">d</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-name">sig</tt> <tt class="py-op">=</tt> <tt id="link-31" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-31', 'util', 'link-3');">util</a></tt><tt class="py-op">.</tt><tt id="link-32" class="py-name" targets="Function paramiko.util.deflate_long()=paramiko.util-module.html#deflate_long"><a title="paramiko.util.deflate_long" class="py-name" href="#" onclick="return doclink('link-32', 'deflate_long', 'link-32');">deflate_long</a></tt><tt class="py-op">(</tt><tt class="py-name">rsa</tt><tt class="py-op">.</tt><tt class="py-name">sign</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pkcs1imify</tt><tt class="py-op">(</tt><tt class="py-name">digest</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-33" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-33', 'Message', 'link-6');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-34', 'add_string', 'link-26');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-string">'ssh-rsa'</tt><tt class="py-op">)</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-35', 'add_string', 'link-26');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">sig</tt><tt class="py-op">)</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">m</tt> </tt>
-</div><a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> </tt>
-<a name="RSAKey.verify_ssh_sig"></a><div id="RSAKey.verify_ssh_sig-def"><a name="L97"></a><tt class="py-lineno"> 97</tt> <a class="py-toggle" href="#" id="RSAKey.verify_ssh_sig-toggle" onclick="return toggle('RSAKey.verify_ssh_sig');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.rsakey.RSAKey-class.html#verify_ssh_sig">verify_ssh_sig</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">data</tt><tt class="py-op">,</tt> <tt class="py-param">msg</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RSAKey.verify_ssh_sig-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RSAKey.verify_ssh_sig-expanded"><a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-36', 'get_string', 'link-19');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-string">'ssh-rsa'</tt><tt class="py-op">:</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">False</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-name">sig</tt> <tt class="py-op">=</tt> <tt id="link-37" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-37', 'util', 'link-3');">util</a></tt><tt class="py-op">.</tt><tt id="link-38" class="py-name" targets="Function paramiko.util.inflate_long()=paramiko.util-module.html#inflate_long"><a title="paramiko.util.inflate_long" class="py-name" href="#" onclick="return doclink('link-38', 'inflate_long', 'link-38');">inflate_long</a></tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-39', 'get_string', 'link-19');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">True</tt><tt class="py-op">)</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-comment"># verify the signature by SHA'ing the data and encrypting it using the</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt class="py-comment"># public key. some wackiness ensues where we "pkcs1imify" the 20-byte</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-comment"># hash into a string as long as the RSA key.</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-name">hash_obj</tt> <tt class="py-op">=</tt> <tt id="link-40" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-40', 'util', 'link-3');">util</a></tt><tt class="py-op">.</tt><tt id="link-41" class="py-name"><a title="paramiko.util.inflate_long" class="py-name" href="#" onclick="return doclink('link-41', 'inflate_long', 'link-38');">inflate_long</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pkcs1imify</tt><tt class="py-op">(</tt><tt class="py-name">SHA</tt><tt class="py-op">.</tt><tt id="link-42" class="py-name"><a title="paramiko.util.Counter.new" class="py-name" href="#" onclick="return doclink('link-42', 'new', 'link-30');">new</a></tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">digest</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">True</tt><tt class="py-op">)</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-name">rsa</tt> <tt class="py-op">=</tt> <tt class="py-name">RSA</tt><tt class="py-op">.</tt><tt class="py-name">construct</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">long</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">n</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">long</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">e</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">rsa</tt><tt class="py-op">.</tt><tt class="py-name">verify</tt><tt class="py-op">(</tt><tt class="py-name">hash_obj</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt><tt class="py-name">sig</tt><tt class="py-op">,</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> </tt>
-<a name="RSAKey._encode_key"></a><div id="RSAKey._encode_key-def"><a name="L108"></a><tt class="py-lineno">108</tt> <a class="py-toggle" href="#" id="RSAKey._encode_key-toggle" onclick="return toggle('RSAKey._encode_key');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.rsakey.RSAKey-class.html#_encode_key">_encode_key</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RSAKey._encode_key-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RSAKey._encode_key-expanded"><a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">p</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">q</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-43" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-43', 'SSHException', 'link-16');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Not enough key info to write private key file'</tt><tt class="py-op">)</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt class="py-name">keylist</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">n</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">e</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">d</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">p</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">q</tt><tt class="py-op">,</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">d</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">p</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">d</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">q</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt id="link-44" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-44', 'util', 'link-3');">util</a></tt><tt class="py-op">.</tt><tt id="link-45" class="py-name" targets="Function paramiko.util.mod_inverse()=paramiko.util-module.html#mod_inverse"><a title="paramiko.util.mod_inverse" class="py-name" href="#" onclick="return doclink('link-45', 'mod_inverse', 'link-45');">mod_inverse</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">q</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">p</tt><tt class="py-op">)</tt> <tt class="py-op">]</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-name">b</tt> <tt class="py-op">=</tt> <tt id="link-46" class="py-name"><a title="paramiko.ber.BER" class="py-name" href="#" onclick="return doclink('link-46', 'BER', 'link-9');">BER</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-name">b</tt><tt class="py-op">.</tt><tt id="link-47" class="py-name" targets="Method paramiko.ber.BER.encode()=paramiko.ber.BER-class.html#encode"><a title="paramiko.ber.BER.encode" class="py-name" href="#" onclick="return doclink('link-47', 'encode', 'link-47');">encode</a></tt><tt class="py-op">(</tt><tt class="py-name">keylist</tt><tt class="py-op">)</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt id="link-48" class="py-name"><a title="paramiko.ber.BERException" class="py-name" href="#" onclick="return doclink('link-48', 'BERException', 'link-10');">BERException</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-49" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-49', 'SSHException', 'link-16');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Unable to create ber encoding of key'</tt><tt class="py-op">)</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">b</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> </tt>
-<a name="RSAKey.write_private_key_file"></a><div id="RSAKey.write_private_key_file-def"><a name="L121"></a><tt class="py-lineno">121</tt> <a class="py-toggle" href="#" id="RSAKey.write_private_key_file-toggle" onclick="return toggle('RSAKey.write_private_key_file');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.rsakey.RSAKey-class.html#write_private_key_file">write_private_key_file</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">filename</tt><tt class="py-op">,</tt> <tt class="py-param">password</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RSAKey.write_private_key_file-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RSAKey.write_private_key_file-expanded"><a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_write_private_key_file</tt><tt class="py-op">(</tt><tt class="py-string">'RSA'</tt><tt class="py-op">,</tt> <tt class="py-name">filename</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_encode_key</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">password</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> </tt>
-<a name="RSAKey.write_private_key"></a><div id="RSAKey.write_private_key-def"><a name="L124"></a><tt class="py-lineno">124</tt> <a class="py-toggle" href="#" id="RSAKey.write_private_key-toggle" onclick="return toggle('RSAKey.write_private_key');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.rsakey.RSAKey-class.html#write_private_key">write_private_key</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">file_obj</tt><tt class="py-op">,</tt> <tt class="py-param">password</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RSAKey.write_private_key-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RSAKey.write_private_key-expanded"><a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_write_private_key</tt><tt class="py-op">(</tt><tt class="py-string">'RSA'</tt><tt class="py-op">,</tt> <tt class="py-name">file_obj</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_encode_key</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">password</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> </tt>
-<a name="RSAKey.generate"></a><div id="RSAKey.generate-def"><a name="L127"></a><tt class="py-lineno">127</tt> <a class="py-toggle" href="#" id="RSAKey.generate-toggle" onclick="return toggle('RSAKey.generate');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.rsakey.RSAKey-class.html#generate">generate</a><tt class="py-op">(</tt><tt class="py-param">bits</tt><tt class="py-op">,</tt> <tt class="py-param">progress_func</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RSAKey.generate-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RSAKey.generate-expanded"><a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"><tt class="py-docstring"> Generate a new private RSA key. This factory function can be used to</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"><tt class="py-docstring"> generate a new host key or authentication key.</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"><tt class="py-docstring"> @param bits: number of bits the generated key should be.</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"><tt class="py-docstring"> @type bits: int</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"><tt class="py-docstring"> @param progress_func: an optional function to call at key points in</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"><tt class="py-docstring"> key generation (used by C{pyCrypto.PublicKey}).</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"><tt class="py-docstring"> @type progress_func: function</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"><tt class="py-docstring"> @return: new private key</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: L{RSAKey}</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-name">rsa</tt> <tt class="py-op">=</tt> <tt class="py-name">RSA</tt><tt class="py-op">.</tt><tt id="link-50" class="py-name" targets="Static Method paramiko.DSSKey.generate()=paramiko.DSSKey-class.html#generate,Static Method paramiko.RSAKey.generate()=paramiko.RSAKey-class.html#generate"><a title="paramiko.DSSKey.generate
-paramiko.RSAKey.generate" class="py-name" href="#" onclick="return doclink('link-50', 'generate', 'link-50');">generate</a></tt><tt class="py-op">(</tt><tt class="py-name">bits</tt><tt class="py-op">,</tt> <tt id="link-51" class="py-name" targets="Variable paramiko.auth_handler.rng=paramiko.auth_handler-module.html#rng,Variable paramiko.channel.rng=paramiko.channel-module.html#rng,Variable paramiko.client.rng=paramiko.client-module.html#rng,Variable paramiko.common.rng=paramiko.common-module.html#rng,Variable paramiko.dsskey.rng=paramiko.dsskey-module.html#rng,Variable paramiko.hostkeys.rng=paramiko.hostkeys-module.html#rng,Variable paramiko.kex_gex.rng=paramiko.kex_gex-module.html#rng,Variable paramiko.kex_group1.rng=paramiko.kex_group1-module.html#rng,Variable paramiko.packet.rng=paramiko.packet-module.html#rng,Variable paramiko.pkey.rng=paramiko.pkey-module.html#rng,Variable paramiko.rsakey.rng=paramiko.rsakey-module.html#rng,Variable paramiko.server.rng=paramiko.server-module.html#rng,Variable paramiko.sftp.rng=paramiko.sftp-module.html#rng,Variable paramiko.sftp_attr.rng=paramiko.sftp_attr-module.html#rng,Variable paramiko.sftp_client.rng=paramiko.sftp_client-module.html#rng,Variable paramiko.sftp_file.rng=paramiko.sftp_file-module.html#rng,Variable paramiko.sftp_handle.rng=paramiko.sftp_handle-module.html#rng,Variable paramiko.sftp_server.rng=paramiko.sftp_server-module.html#rng,Variable paramiko.sftp_si.rng=paramiko.sftp_si-module.html#rng,Variable paramiko.transport.rng=paramiko.transport-module.html#rng,Variable paramiko.util.rng=paramiko.util-module.html#rng"><a title="paramiko.auth_handler.rng
-paramiko.channel.rng
-paramiko.client.rng
-paramiko.common.rng
-paramiko.dsskey.rng
-paramiko.hostkeys.rng
-paramiko.kex_gex.rng
-paramiko.kex_group1.rng
-paramiko.packet.rng
-paramiko.pkey.rng
-paramiko.rsakey.rng
-paramiko.server.rng
-paramiko.sftp.rng
-paramiko.sftp_attr.rng
-paramiko.sftp_client.rng
-paramiko.sftp_file.rng
-paramiko.sftp_handle.rng
-paramiko.sftp_server.rng
-paramiko.sftp_si.rng
-paramiko.transport.rng
-paramiko.util.rng" class="py-name" href="#" onclick="return doclink('link-51', 'rng', 'link-51');">rng</a></tt><tt class="py-op">.</tt><tt id="link-52" class="py-name" targets="Method paramiko.BufferedFile.read()=paramiko.BufferedFile-class.html#read,Method paramiko.SFTPHandle.read()=paramiko.SFTPHandle-class.html#read,Method paramiko.buffered_pipe.BufferedPipe.read()=paramiko.buffered_pipe.BufferedPipe-class.html#read"><a title="paramiko.BufferedFile.read
-paramiko.SFTPHandle.read
-paramiko.buffered_pipe.BufferedPipe.read" class="py-name" href="#" onclick="return doclink('link-52', 'read', 'link-52');">read</a></tt><tt class="py-op">,</tt> <tt class="py-name">progress_func</tt><tt class="py-op">)</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-name">key</tt> <tt class="py-op">=</tt> <tt id="link-53" class="py-name" targets="Class paramiko.RSAKey=paramiko.RSAKey-class.html"><a title="paramiko.RSAKey" class="py-name" href="#" onclick="return doclink('link-53', 'RSAKey', 'link-53');">RSAKey</a></tt><tt class="py-op">(</tt><tt class="py-name">vals</tt><tt class="py-op">=</tt><tt class="py-op">(</tt><tt class="py-name">rsa</tt><tt class="py-op">.</tt><tt class="py-name">e</tt><tt class="py-op">,</tt> <tt class="py-name">rsa</tt><tt class="py-op">.</tt><tt class="py-name">n</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> <tt class="py-name">key</tt><tt class="py-op">.</tt><tt class="py-name">d</tt> <tt class="py-op">=</tt> <tt class="py-name">rsa</tt><tt class="py-op">.</tt><tt class="py-name">d</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> <tt class="py-name">key</tt><tt class="py-op">.</tt><tt class="py-name">p</tt> <tt class="py-op">=</tt> <tt class="py-name">rsa</tt><tt class="py-op">.</tt><tt class="py-name">p</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-name">key</tt><tt class="py-op">.</tt><tt class="py-name">q</tt> <tt class="py-op">=</tt> <tt class="py-name">rsa</tt><tt class="py-op">.</tt><tt class="py-name">q</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">key</tt> </tt>
-</div><a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt id="link-54" class="py-name"><a title="paramiko.DSSKey.generate
-paramiko.RSAKey.generate" class="py-name" href="#" onclick="return doclink('link-54', 'generate', 'link-50');">generate</a></tt> <tt class="py-op">=</tt> <tt class="py-name">staticmethod</tt><tt class="py-op">(</tt><tt id="link-55" class="py-name"><a title="paramiko.DSSKey.generate
-paramiko.RSAKey.generate" class="py-name" href="#" onclick="return doclink('link-55', 'generate', 'link-50');">generate</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt class="py-comment">### internals...</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> </tt>
-<a name="RSAKey._pkcs1imify"></a><div id="RSAKey._pkcs1imify-def"><a name="L152"></a><tt class="py-lineno">152</tt> <a class="py-toggle" href="#" id="RSAKey._pkcs1imify-toggle" onclick="return toggle('RSAKey._pkcs1imify');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.rsakey.RSAKey-class.html#_pkcs1imify">_pkcs1imify</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">data</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RSAKey._pkcs1imify-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RSAKey._pkcs1imify-expanded"><a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"><tt class="py-docstring"> turn a 20-byte SHA1 hash into a blob of data as large as the key's N,</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"><tt class="py-docstring"> using PKCS1's \"emsa-pkcs1-v1_5\" encoding. totally bizarre.</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt class="py-name">SHA1_DIGESTINFO</tt> <tt class="py-op">=</tt> <tt class="py-string">'\x30\x21\x30\x09\x06\x05\x2b\x0e\x03\x02\x1a\x05\x00\x04\x14'</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt id="link-56" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-56', 'util', 'link-3');">util</a></tt><tt class="py-op">.</tt><tt id="link-57" class="py-name"><a title="paramiko.util.deflate_long" class="py-name" href="#" onclick="return doclink('link-57', 'deflate_long', 'link-32');">deflate_long</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">n</tt><tt class="py-op">,</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> <tt class="py-name">filler</tt> <tt class="py-op">=</tt> <tt class="py-string">'\xff'</tt> <tt class="py-op">*</tt> <tt class="py-op">(</tt><tt class="py-name">size</tt> <tt class="py-op">-</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">SHA1_DIGESTINFO</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-number">3</tt><tt class="py-op">)</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">'\x00\x01'</tt> <tt class="py-op">+</tt> <tt class="py-name">filler</tt> <tt class="py-op">+</tt> <tt class="py-string">'\x00'</tt> <tt class="py-op">+</tt> <tt class="py-name">SHA1_DIGESTINFO</tt> <tt class="py-op">+</tt> <tt class="py-name">data</tt> </tt>
-</div><a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> </tt>
-<a name="RSAKey._from_private_key_file"></a><div id="RSAKey._from_private_key_file-def"><a name="L162"></a><tt class="py-lineno">162</tt> <a class="py-toggle" href="#" id="RSAKey._from_private_key_file-toggle" onclick="return toggle('RSAKey._from_private_key_file');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.rsakey.RSAKey-class.html#_from_private_key_file">_from_private_key_file</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">filename</tt><tt class="py-op">,</tt> <tt class="py-param">password</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RSAKey._from_private_key_file-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RSAKey._from_private_key_file-expanded"><a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_read_private_key_file</tt><tt class="py-op">(</tt><tt class="py-string">'RSA'</tt><tt class="py-op">,</tt> <tt class="py-name">filename</tt><tt class="py-op">,</tt> <tt class="py-name">password</tt><tt class="py-op">)</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_decode_key</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> </tt>
-<a name="RSAKey._from_private_key"></a><div id="RSAKey._from_private_key-def"><a name="L166"></a><tt class="py-lineno">166</tt> <a class="py-toggle" href="#" id="RSAKey._from_private_key-toggle" onclick="return toggle('RSAKey._from_private_key');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.rsakey.RSAKey-class.html#_from_private_key">_from_private_key</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">file_obj</tt><tt class="py-op">,</tt> <tt class="py-param">password</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RSAKey._from_private_key-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RSAKey._from_private_key-expanded"><a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_read_private_key</tt><tt class="py-op">(</tt><tt class="py-string">'RSA'</tt><tt class="py-op">,</tt> <tt class="py-name">file_obj</tt><tt class="py-op">,</tt> <tt class="py-name">password</tt><tt class="py-op">)</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_decode_key</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> </tt>
-<a name="RSAKey._decode_key"></a><div id="RSAKey._decode_key-def"><a name="L170"></a><tt class="py-lineno">170</tt> <a class="py-toggle" href="#" id="RSAKey._decode_key-toggle" onclick="return toggle('RSAKey._decode_key');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.rsakey.RSAKey-class.html#_decode_key">_decode_key</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">data</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="RSAKey._decode_key-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="RSAKey._decode_key-expanded"><a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> <tt class="py-comment"># private key file contains:</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> <tt class="py-comment"># RSAPrivateKey = { version = 0, n, e, d, p, q, d mod p-1, d mod q-1, q**-1 mod p }</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-name">keylist</tt> <tt class="py-op">=</tt> <tt id="link-58" class="py-name"><a title="paramiko.ber.BER" class="py-name" href="#" onclick="return doclink('link-58', 'BER', 'link-9');">BER</a></tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-59" class="py-name" targets="Method paramiko.ber.BER.decode()=paramiko.ber.BER-class.html#decode"><a title="paramiko.ber.BER.decode" class="py-name" href="#" onclick="return doclink('link-59', 'decode', 'link-59');">decode</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt id="link-60" class="py-name"><a title="paramiko.ber.BERException" class="py-name" href="#" onclick="return doclink('link-60', 'BERException', 'link-10');">BERException</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-61" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-61', 'SSHException', 'link-16');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Unable to parse key file'</tt><tt class="py-op">)</tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">keylist</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">keylist</tt><tt class="py-op">)</tt> <tt class="py-op">&lt;</tt> <tt class="py-number">4</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">keylist</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">!=</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-62" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-62', 'SSHException', 'link-16');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Not a valid RSA private key file (bad ber encoding)'</tt><tt class="py-op">)</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">n</tt> <tt class="py-op">=</tt> <tt class="py-name">keylist</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">e</tt> <tt class="py-op">=</tt> <tt class="py-name">keylist</tt><tt class="py-op">[</tt><tt class="py-number">2</tt><tt class="py-op">]</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">d</tt> <tt class="py-op">=</tt> <tt class="py-name">keylist</tt><tt class="py-op">[</tt><tt class="py-number">3</tt><tt class="py-op">]</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> <tt class="py-comment"># not really needed</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">p</tt> <tt class="py-op">=</tt> <tt class="py-name">keylist</tt><tt class="py-op">[</tt><tt class="py-number">4</tt><tt class="py-op">]</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">q</tt> <tt class="py-op">=</tt> <tt class="py-name">keylist</tt><tt class="py-op">[</tt><tt class="py-number">5</tt><tt class="py-op">]</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt id="link-63" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-63', 'util', 'link-3');">util</a></tt><tt class="py-op">.</tt><tt id="link-64" class="py-name"><a title="paramiko.util.bit_length" class="py-name" href="#" onclick="return doclink('link-64', 'bit_length', 'link-24');">bit_length</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">n</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:06 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.server-module.html b/docs/paramiko.server-module.html
deleted file mode 100644
index 0583da6..0000000
--- a/docs/paramiko.server-module.html
+++ /dev/null
@@ -1,533 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.server</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;server
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.server-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module server</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.server-pysrc.html">source&nbsp;code</a></span></p>
-<p><a href="paramiko.ServerInterface-class.html"
- class="link">ServerInterface</a> is an interface to override for server
- support.</p>
-
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_FAILED"></a><span class="summary-name">AUTH_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_PARTIALLY_SUCCESSFUL"></a><span class="summary-name">AUTH_PARTIALLY_SUCCESSFUL</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_SUCCESSFUL"></a><span class="summary-name">AUTH_SUCCESSFUL</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.server-module.html#CONNECTION_FAILED_CODE" class="summary-name">CONNECTION_FAILED_CODE</a> = <code title="{1: 'Administratively prohibited',
- 2: 'Connect failed',
- 3: 'Unknown channel type',
- 4: 'Resource shortage'}"><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">:</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CRITICAL"></a><span class="summary-name">CRITICAL</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DEBUG"></a><span class="summary-name">DEBUG</span> = <code title="10">10</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_AUTH_CANCELLED_BY_USER"></a><span class="summary-name">DISCONNECT_AUTH_CANCELLED_BY_USER</span> = <code title="13">13</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE"></a><span class="summary-name">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</span> = <code title="14">14</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_SERVICE_NOT_AVAILABLE"></a><span class="summary-name">DISCONNECT_SERVICE_NOT_AVAILABLE</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="ERROR"></a><span class="summary-name">ERROR</span> = <code title="40">40</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="INFO"></a><span class="summary-name">INFO</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_CLOSE"></a><span class="summary-name">MSG_CHANNEL_CLOSE</span> = <code title="97">97</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_DATA"></a><span class="summary-name">MSG_CHANNEL_DATA</span> = <code title="94">94</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EOF"></a><span class="summary-name">MSG_CHANNEL_EOF</span> = <code title="96">96</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EXTENDED_DATA"></a><span class="summary-name">MSG_CHANNEL_EXTENDED_DATA</span> = <code title="95">95</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_FAILURE"></a><span class="summary-name">MSG_CHANNEL_FAILURE</span> = <code title="100">100</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN"></a><span class="summary-name">MSG_CHANNEL_OPEN</span> = <code title="90">90</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_FAILURE"></a><span class="summary-name">MSG_CHANNEL_OPEN_FAILURE</span> = <code title="92">92</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_OPEN_SUCCESS</span> = <code title="91">91</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_REQUEST"></a><span class="summary-name">MSG_CHANNEL_REQUEST</span> = <code title="98">98</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_SUCCESS</span> = <code title="99">99</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_WINDOW_ADJUST"></a><span class="summary-name">MSG_CHANNEL_WINDOW_ADJUST</span> = <code title="93">93</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DEBUG"></a><span class="summary-name">MSG_DEBUG</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DISCONNECT"></a><span class="summary-name">MSG_DISCONNECT</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_GLOBAL_REQUEST"></a><span class="summary-name">MSG_GLOBAL_REQUEST</span> = <code title="80">80</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_IGNORE"></a><span class="summary-name">MSG_IGNORE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_KEXINIT"></a><span class="summary-name">MSG_KEXINIT</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.server-module.html#MSG_NAMES" class="summary-name">MSG_NAMES</a> = <code title="{1: 'disconnect',
- 2: 'ignore',
- 3: 'unimplemented',
- 4: 'debug',
- 5: 'service-request',
- 6: 'service-accept',
- 20: 'kexinit',
- 21: 'newkeys',
-..."><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">, </code>3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_NEWKEYS"></a><span class="summary-name">MSG_NEWKEYS</span> = <code title="21">21</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_FAILURE"></a><span class="summary-name">MSG_REQUEST_FAILURE</span> = <code title="82">82</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_SUCCESS"></a><span class="summary-name">MSG_REQUEST_SUCCESS</span> = <code title="81">81</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_ACCEPT"></a><span class="summary-name">MSG_SERVICE_ACCEPT</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_REQUEST"></a><span class="summary-name">MSG_SERVICE_REQUEST</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_UNIMPLEMENTED"></a><span class="summary-name">MSG_UNIMPLEMENTED</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_BANNER"></a><span class="summary-name">MSG_USERAUTH_BANNER</span> = <code title="53">53</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_FAILURE"></a><span class="summary-name">MSG_USERAUTH_FAILURE</span> = <code title="51">51</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_REQUEST"></a><span class="summary-name">MSG_USERAUTH_INFO_REQUEST</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_RESPONSE"></a><span class="summary-name">MSG_USERAUTH_INFO_RESPONSE</span> = <code title="61">61</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_PK_OK"></a><span class="summary-name">MSG_USERAUTH_PK_OK</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_REQUEST"></a><span class="summary-name">MSG_USERAUTH_REQUEST</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_SUCCESS"></a><span class="summary-name">MSG_USERAUTH_SUCCESS</span> = <code title="52">52</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED"></a><span class="summary-name">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_CONNECT_FAILED"></a><span class="summary-name">OPEN_FAILED_CONNECT_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_RESOURCE_SHORTAGE"></a><span class="summary-name">OPEN_FAILED_RESOURCE_SHORTAGE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_UNKNOWN_CHANNEL_TYPE"></a><span class="summary-name">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_SUCCEEDED"></a><span class="summary-name">OPEN_SUCCEEDED</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="PY22"></a><span class="summary-name">PY22</span> = <code title="False">False</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="WARNING"></a><span class="summary-name">WARNING</span> = <code title="30">30</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'paramiko'"><code class="variable-quote">'</code><code class="variable-string">paramiko</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="rng"></a><span class="summary-name">rng</span> = <code title="Random.new()">Random.new()</code>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES DETAILS ==================== -->
-<a name="section-VariablesDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables Details</span></td>
-</tr>
-</table>
-<a name="CONNECTION_FAILED_CODE"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">CONNECTION_FAILED_CODE</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Connect failed</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Unknown channel type</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Resource shortage</code><code class="variable-quote">'</code><code class="variable-group">}</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="MSG_NAMES"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">MSG_NAMES</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">debug</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 5<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-request</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 6<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-accept</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 20<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">kexinit</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 21<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">newkeys</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:02 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.server-pysrc.html b/docs/paramiko.server-pysrc.html
deleted file mode 100644
index 87a9294..0000000
--- a/docs/paramiko.server-pysrc.html
+++ /dev/null
@@ -1,1006 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.server</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;server
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.server-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.server-module.html" onclick="show_private();">Module paramiko.server</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2003-2007 Robey Pointer &lt;robeypointer@gmail.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring">L{ServerInterface} is an interface to override for server support.</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">threading</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package paramiko=paramiko-module.html"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-0', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Module paramiko.common=paramiko.common-module.html"><a title="paramiko.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt> <tt class="py-keyword">import</tt> <tt class="py-op">*</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-2" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-2', 'paramiko', 'link-0');">paramiko</a></tt> <tt class="py-keyword">import</tt> <tt id="link-3" class="py-name" targets="Module paramiko.util=paramiko.util-module.html"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-3', 'util', 'link-3');">util</a></tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> </tt>
-<a name="InteractiveQuery"></a><div id="InteractiveQuery-def"><a name="L28"></a><tt class="py-lineno"> 28</tt> <a class="py-toggle" href="#" id="InteractiveQuery-toggle" onclick="return toggle('InteractiveQuery');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.server.InteractiveQuery-class.html">InteractiveQuery</a> <tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="InteractiveQuery-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="InteractiveQuery-expanded"><a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"><tt class="py-docstring"> A query (set of prompts) for a user during interactive authentication.</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> </tt>
-<a name="InteractiveQuery.__init__"></a><div id="InteractiveQuery.__init__-def"><a name="L33"></a><tt class="py-lineno"> 33</tt> <a class="py-toggle" href="#" id="InteractiveQuery.__init__-toggle" onclick="return toggle('InteractiveQuery.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.server.InteractiveQuery-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">name</tt><tt class="py-op">=</tt><tt class="py-string">''</tt><tt class="py-op">,</tt> <tt class="py-param">instructions</tt><tt class="py-op">=</tt><tt class="py-string">''</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">prompts</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="InteractiveQuery.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="InteractiveQuery.__init__-expanded"><a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"><tt class="py-docstring"> Create a new interactive query to send to the client. The name and</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"><tt class="py-docstring"> instructions are optional, but are generally displayed to the end</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"><tt class="py-docstring"> user. A list of prompts may be included, or they may be added via</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"><tt class="py-docstring"> the L{add_prompt} method.</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"><tt class="py-docstring"> @param name: name of this query</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"><tt class="py-docstring"> @type name: str</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"><tt class="py-docstring"> @param instructions: user instructions (usually short) about this query</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"><tt class="py-docstring"> @type instructions: str</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"><tt class="py-docstring"> @param prompts: one or more authentication prompts</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"><tt class="py-docstring"> @type prompts: str</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name" targets="Variable paramiko.kex_gex.KexGex.name=paramiko.kex_gex.KexGex-class.html#name,Variable paramiko.kex_group1.KexGroup1.name=paramiko.kex_group1.KexGroup1-class.html#name"><a title="paramiko.kex_gex.KexGex.name
-paramiko.kex_group1.KexGroup1.name" class="py-name" href="#" onclick="return doclink('link-4', 'name', 'link-4');">name</a></tt> <tt class="py-op">=</tt> <tt id="link-5" class="py-name"><a title="paramiko.kex_gex.KexGex.name
-paramiko.kex_group1.KexGroup1.name" class="py-name" href="#" onclick="return doclink('link-5', 'name', 'link-4');">name</a></tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">instructions</tt> <tt class="py-op">=</tt> <tt class="py-name">instructions</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">prompts</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">x</tt> <tt class="py-keyword">in</tt> <tt class="py-name">prompts</tt><tt class="py-op">:</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">str</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">unicode</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">add_prompt</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">add_prompt</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">x</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> </tt>
-<a name="InteractiveQuery.add_prompt"></a><div id="InteractiveQuery.add_prompt-def"><a name="L56"></a><tt class="py-lineno"> 56</tt> <a class="py-toggle" href="#" id="InteractiveQuery.add_prompt-toggle" onclick="return toggle('InteractiveQuery.add_prompt');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.server.InteractiveQuery-class.html#add_prompt">add_prompt</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">prompt</tt><tt class="py-op">,</tt> <tt class="py-param">echo</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="InteractiveQuery.add_prompt-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="InteractiveQuery.add_prompt-expanded"><a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"><tt class="py-docstring"> Add a prompt to this query. The prompt should be a (reasonably short)</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"><tt class="py-docstring"> string. Multiple prompts can be added to the same query.</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"><tt class="py-docstring"> @param prompt: the user prompt</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"><tt class="py-docstring"> @type prompt: str</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"><tt class="py-docstring"> @param echo: C{True} (default) if the user's response should be echoed;</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"><tt class="py-docstring"> C{False} if not (for a password or similar)</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"><tt class="py-docstring"> @type echo: bool</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">prompts</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">prompt</tt><tt class="py-op">,</tt> <tt class="py-name">echo</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> </tt>
-<a name="ServerInterface"></a><div id="ServerInterface-def"><a name="L70"></a><tt class="py-lineno"> 70</tt> <a class="py-toggle" href="#" id="ServerInterface-toggle" onclick="return toggle('ServerInterface');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.server.ServerInterface-class.html">ServerInterface</a> <tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ServerInterface-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="ServerInterface-expanded"><a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"><tt class="py-docstring"> This class defines an interface for controlling the behavior of paramiko</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"><tt class="py-docstring"> in server mode.</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"><tt class="py-docstring"> Methods on this class are called from paramiko's primary thread, so you</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"><tt class="py-docstring"> shouldn't do too much work in them. (Certainly nothing that blocks or</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"><tt class="py-docstring"> sleeps.)</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> </tt>
-<a name="ServerInterface.check_channel_request"></a><div id="ServerInterface.check_channel_request-def"><a name="L80"></a><tt class="py-lineno"> 80</tt> <a class="py-toggle" href="#" id="ServerInterface.check_channel_request-toggle" onclick="return toggle('ServerInterface.check_channel_request');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.server.ServerInterface-class.html#check_channel_request">check_channel_request</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">kind</tt><tt class="py-op">,</tt> <tt class="py-param">chanid</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ServerInterface.check_channel_request-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="ServerInterface.check_channel_request-expanded"><a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"><tt class="py-docstring"> Determine if a channel request of a given type will be granted, and</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"><tt class="py-docstring"> return C{OPEN_SUCCEEDED} or an error code. This method is</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"><tt class="py-docstring"> called in server mode when the client requests a channel, after</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"><tt class="py-docstring"> authentication is complete.</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"><tt class="py-docstring"> If you allow channel requests (and an ssh server that didn't would be</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"><tt class="py-docstring"> useless), you should also override some of the channel request methods</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"><tt class="py-docstring"> below, which are used to determine which services will be allowed on</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"><tt class="py-docstring"> a given channel:</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"><tt class="py-docstring"> - L{check_channel_pty_request}</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"><tt class="py-docstring"> - L{check_channel_shell_request}</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"><tt class="py-docstring"> - L{check_channel_subsystem_request}</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"><tt class="py-docstring"> - L{check_channel_window_change_request}</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"><tt class="py-docstring"> - L{check_channel_x11_request}</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"><tt class="py-docstring"> The C{chanid} parameter is a small number that uniquely identifies the</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"><tt class="py-docstring"> channel within a L{Transport}. A L{Channel} object is not created</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"><tt class="py-docstring"> unless this method returns C{OPEN_SUCCEEDED} -- once a</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"><tt class="py-docstring"> L{Channel} object is created, you can call L{Channel.get_id} to</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"><tt class="py-docstring"> retrieve the channel ID.</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"><tt class="py-docstring"> The return value should either be C{OPEN_SUCCEEDED} (or</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"><tt class="py-docstring"> C{0}) to allow the channel request, or one of the following error</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"><tt class="py-docstring"> codes to reject it:</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"><tt class="py-docstring"> - C{OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED}</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"><tt class="py-docstring"> - C{OPEN_FAILED_CONNECT_FAILED}</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"><tt class="py-docstring"> - C{OPEN_FAILED_UNKNOWN_CHANNEL_TYPE}</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"><tt class="py-docstring"> - C{OPEN_FAILED_RESOURCE_SHORTAGE}</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"><tt class="py-docstring"> The default implementation always returns</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"><tt class="py-docstring"> C{OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED}.</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"><tt class="py-docstring"> @param kind: the kind of channel the client would like to open</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"><tt class="py-docstring"> (usually C{"session"}).</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"><tt class="py-docstring"> @type kind: str</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"><tt class="py-docstring"> @param chanid: ID of the channel</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"><tt class="py-docstring"> @type chanid: int</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"><tt class="py-docstring"> @return: a success or failure code (listed above)</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: int</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-6" class="py-name" targets="Variable paramiko.auth_handler.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.auth_handler-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.channel.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.channel-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.client.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.client-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.common.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.common-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.dsskey.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.dsskey-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.hostkeys.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.hostkeys-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.kex_gex.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.kex_gex-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.kex_group1.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.kex_group1-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.packet.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.packet-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.pkey.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.pkey-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.rsakey.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.rsakey-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.server.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.server-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.sftp.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.sftp-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.sftp_attr.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.sftp_attr-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.sftp_client.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.sftp_client-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.sftp_file.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.sftp_file-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.sftp_handle.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.sftp_handle-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.sftp_server.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.sftp_server-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.sftp_si.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.sftp_si-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.transport.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.transport-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.util.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.util-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED"><a title="paramiko.auth_handler.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.channel.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.client.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.common.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.dsskey.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.hostkeys.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.kex_gex.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.kex_group1.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.packet.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.pkey.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.rsakey.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.server.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_attr.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_client.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_file.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_handle.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_server.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_si.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.transport.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.util.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED" class="py-name" href="#" onclick="return doclink('link-6', 'OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED', 'link-6');">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</a></tt> </tt>
-</div><a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> </tt>
-<a name="ServerInterface.get_allowed_auths"></a><div id="ServerInterface.get_allowed_auths-def"><a name="L124"></a><tt class="py-lineno">124</tt> <a class="py-toggle" href="#" id="ServerInterface.get_allowed_auths-toggle" onclick="return toggle('ServerInterface.get_allowed_auths');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.server.ServerInterface-class.html#get_allowed_auths">get_allowed_auths</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">username</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ServerInterface.get_allowed_auths-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="ServerInterface.get_allowed_auths-expanded"><a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"><tt class="py-docstring"> Return a list of authentication methods supported by the server.</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"><tt class="py-docstring"> This list is sent to clients attempting to authenticate, to inform them</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"><tt class="py-docstring"> of authentication methods that might be successful.</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"><tt class="py-docstring"> The "list" is actually a string of comma-separated names of types of</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"><tt class="py-docstring"> authentication. Possible values are C{"password"}, C{"publickey"},</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"><tt class="py-docstring"> and C{"none"}.</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"><tt class="py-docstring"> The default implementation always returns C{"password"}.</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"><tt class="py-docstring"> @param username: the username requesting authentication.</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"><tt class="py-docstring"> @type username: str</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"><tt class="py-docstring"> @return: a comma-separated list of authentication types</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: str</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">'password'</tt> </tt>
-</div><a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> </tt>
-<a name="ServerInterface.check_auth_none"></a><div id="ServerInterface.check_auth_none-def"><a name="L143"></a><tt class="py-lineno">143</tt> <a class="py-toggle" href="#" id="ServerInterface.check_auth_none-toggle" onclick="return toggle('ServerInterface.check_auth_none');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.server.ServerInterface-class.html#check_auth_none">check_auth_none</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">username</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ServerInterface.check_auth_none-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="ServerInterface.check_auth_none-expanded"><a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"><tt class="py-docstring"> Determine if a client may open channels with no (further)</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"><tt class="py-docstring"> authentication.</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"><tt class="py-docstring"> Return L{AUTH_FAILED} if the client must authenticate, or</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"><tt class="py-docstring"> L{AUTH_SUCCESSFUL} if it's okay for the client to not</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"><tt class="py-docstring"> authenticate.</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"><tt class="py-docstring"> The default implementation always returns L{AUTH_FAILED}.</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"><tt class="py-docstring"> @param username: the username of the client.</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"><tt class="py-docstring"> @type username: str</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"><tt class="py-docstring"> @return: L{AUTH_FAILED} if the authentication fails;</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"><tt class="py-docstring"> L{AUTH_SUCCESSFUL} if it succeeds.</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: int</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-7" class="py-name" targets="Variable paramiko.auth_handler.AUTH_FAILED=paramiko.auth_handler-module.html#AUTH_FAILED,Variable paramiko.channel.AUTH_FAILED=paramiko.channel-module.html#AUTH_FAILED,Variable paramiko.client.AUTH_FAILED=paramiko.client-module.html#AUTH_FAILED,Variable paramiko.common.AUTH_FAILED=paramiko.common-module.html#AUTH_FAILED,Variable paramiko.dsskey.AUTH_FAILED=paramiko.dsskey-module.html#AUTH_FAILED,Variable paramiko.hostkeys.AUTH_FAILED=paramiko.hostkeys-module.html#AUTH_FAILED,Variable paramiko.kex_gex.AUTH_FAILED=paramiko.kex_gex-module.html#AUTH_FAILED,Variable paramiko.kex_group1.AUTH_FAILED=paramiko.kex_group1-module.html#AUTH_FAILED,Variable paramiko.packet.AUTH_FAILED=paramiko.packet-module.html#AUTH_FAILED,Variable paramiko.pkey.AUTH_FAILED=paramiko.pkey-module.html#AUTH_FAILED,Variable paramiko.rsakey.AUTH_FAILED=paramiko.rsakey-module.html#AUTH_FAILED,Variable paramiko.server.AUTH_FAILED=paramiko.server-module.html#AUTH_FAILED,Variable paramiko.sftp.AUTH_FAILED=paramiko.sftp-module.html#AUTH_FAILED,Variable paramiko.sftp_attr.AUTH_FAILED=paramiko.sftp_attr-module.html#AUTH_FAILED,Variable paramiko.sftp_client.AUTH_FAILED=paramiko.sftp_client-module.html#AUTH_FAILED,Variable paramiko.sftp_file.AUTH_FAILED=paramiko.sftp_file-module.html#AUTH_FAILED,Variable paramiko.sftp_handle.AUTH_FAILED=paramiko.sftp_handle-module.html#AUTH_FAILED,Variable paramiko.sftp_server.AUTH_FAILED=paramiko.sftp_server-module.html#AUTH_FAILED,Variable paramiko.sftp_si.AUTH_FAILED=paramiko.sftp_si-module.html#AUTH_FAILED,Variable paramiko.transport.AUTH_FAILED=paramiko.transport-module.html#AUTH_FAILED,Variable paramiko.util.AUTH_FAILED=paramiko.util-module.html#AUTH_FAILED"><a title="paramiko.auth_handler.AUTH_FAILED
-paramiko.channel.AUTH_FAILED
-paramiko.client.AUTH_FAILED
-paramiko.common.AUTH_FAILED
-paramiko.dsskey.AUTH_FAILED
-paramiko.hostkeys.AUTH_FAILED
-paramiko.kex_gex.AUTH_FAILED
-paramiko.kex_group1.AUTH_FAILED
-paramiko.packet.AUTH_FAILED
-paramiko.pkey.AUTH_FAILED
-paramiko.rsakey.AUTH_FAILED
-paramiko.server.AUTH_FAILED
-paramiko.sftp.AUTH_FAILED
-paramiko.sftp_attr.AUTH_FAILED
-paramiko.sftp_client.AUTH_FAILED
-paramiko.sftp_file.AUTH_FAILED
-paramiko.sftp_handle.AUTH_FAILED
-paramiko.sftp_server.AUTH_FAILED
-paramiko.sftp_si.AUTH_FAILED
-paramiko.transport.AUTH_FAILED
-paramiko.util.AUTH_FAILED" class="py-name" href="#" onclick="return doclink('link-7', 'AUTH_FAILED', 'link-7');">AUTH_FAILED</a></tt> </tt>
-</div><a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> </tt>
-<a name="ServerInterface.check_auth_password"></a><div id="ServerInterface.check_auth_password-def"><a name="L162"></a><tt class="py-lineno">162</tt> <a class="py-toggle" href="#" id="ServerInterface.check_auth_password-toggle" onclick="return toggle('ServerInterface.check_auth_password');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.server.ServerInterface-class.html#check_auth_password">check_auth_password</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">username</tt><tt class="py-op">,</tt> <tt class="py-param">password</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ServerInterface.check_auth_password-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="ServerInterface.check_auth_password-expanded"><a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"><tt class="py-docstring"> Determine if a given username and password supplied by the client is</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"><tt class="py-docstring"> acceptable for use in authentication.</tt> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"><tt class="py-docstring"> Return L{AUTH_FAILED} if the password is not accepted,</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"><tt class="py-docstring"> L{AUTH_SUCCESSFUL} if the password is accepted and completes</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"><tt class="py-docstring"> the authentication, or L{AUTH_PARTIALLY_SUCCESSFUL} if your</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"><tt class="py-docstring"> authentication is stateful, and this key is accepted for</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"><tt class="py-docstring"> authentication, but more authentication is required. (In this latter</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"><tt class="py-docstring"> case, L{get_allowed_auths} will be called to report to the client what</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"><tt class="py-docstring"> options it has for continuing the authentication.)</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"><tt class="py-docstring"> The default implementation always returns L{AUTH_FAILED}.</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"><tt class="py-docstring"> @param username: the username of the authenticating client.</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"><tt class="py-docstring"> @type username: str</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"><tt class="py-docstring"> @param password: the password given by the client.</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"><tt class="py-docstring"> @type password: str</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"><tt class="py-docstring"> @return: L{AUTH_FAILED} if the authentication fails;</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"><tt class="py-docstring"> L{AUTH_SUCCESSFUL} if it succeeds;</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"><tt class="py-docstring"> L{AUTH_PARTIALLY_SUCCESSFUL} if the password auth is</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"><tt class="py-docstring"> successful, but authentication must continue.</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: int</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-8" class="py-name"><a title="paramiko.auth_handler.AUTH_FAILED
-paramiko.channel.AUTH_FAILED
-paramiko.client.AUTH_FAILED
-paramiko.common.AUTH_FAILED
-paramiko.dsskey.AUTH_FAILED
-paramiko.hostkeys.AUTH_FAILED
-paramiko.kex_gex.AUTH_FAILED
-paramiko.kex_group1.AUTH_FAILED
-paramiko.packet.AUTH_FAILED
-paramiko.pkey.AUTH_FAILED
-paramiko.rsakey.AUTH_FAILED
-paramiko.server.AUTH_FAILED
-paramiko.sftp.AUTH_FAILED
-paramiko.sftp_attr.AUTH_FAILED
-paramiko.sftp_client.AUTH_FAILED
-paramiko.sftp_file.AUTH_FAILED
-paramiko.sftp_handle.AUTH_FAILED
-paramiko.sftp_server.AUTH_FAILED
-paramiko.sftp_si.AUTH_FAILED
-paramiko.transport.AUTH_FAILED
-paramiko.util.AUTH_FAILED" class="py-name" href="#" onclick="return doclink('link-8', 'AUTH_FAILED', 'link-7');">AUTH_FAILED</a></tt> </tt>
-</div><a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"> </tt>
-<a name="ServerInterface.check_auth_publickey"></a><div id="ServerInterface.check_auth_publickey-def"><a name="L189"></a><tt class="py-lineno">189</tt> <a class="py-toggle" href="#" id="ServerInterface.check_auth_publickey-toggle" onclick="return toggle('ServerInterface.check_auth_publickey');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.server.ServerInterface-class.html#check_auth_publickey">check_auth_publickey</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">username</tt><tt class="py-op">,</tt> <tt class="py-param">key</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ServerInterface.check_auth_publickey-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="ServerInterface.check_auth_publickey-expanded"><a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"><tt class="py-docstring"> Determine if a given key supplied by the client is acceptable for use</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"><tt class="py-docstring"> in authentication. You should override this method in server mode to</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"><tt class="py-docstring"> check the username and key and decide if you would accept a signature</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"><tt class="py-docstring"> made using this key.</tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"><tt class="py-docstring"> Return L{AUTH_FAILED} if the key is not accepted,</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"><tt class="py-docstring"> L{AUTH_SUCCESSFUL} if the key is accepted and completes the</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"><tt class="py-docstring"> authentication, or L{AUTH_PARTIALLY_SUCCESSFUL} if your</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"><tt class="py-docstring"> authentication is stateful, and this password is accepted for</tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"><tt class="py-docstring"> authentication, but more authentication is required. (In this latter</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"><tt class="py-docstring"> case, L{get_allowed_auths} will be called to report to the client what</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"><tt class="py-docstring"> options it has for continuing the authentication.)</tt> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"><tt class="py-docstring"> Note that you don't have to actually verify any key signtature here.</tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"><tt class="py-docstring"> If you're willing to accept the key, paramiko will do the work of</tt> </tt>
-<a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"><tt class="py-docstring"> verifying the client's signature.</tt> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"><tt class="py-docstring"> The default implementation always returns L{AUTH_FAILED}.</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"><tt class="py-docstring"> @param username: the username of the authenticating client</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"><tt class="py-docstring"> @type username: str</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"><tt class="py-docstring"> @param key: the key object provided by the client</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"><tt class="py-docstring"> @type key: L{PKey &lt;pkey.PKey&gt;}</tt> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"><tt class="py-docstring"> @return: L{AUTH_FAILED} if the client can't authenticate</tt> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"><tt class="py-docstring"> with this key; L{AUTH_SUCCESSFUL} if it can;</tt> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"><tt class="py-docstring"> L{AUTH_PARTIALLY_SUCCESSFUL} if it can authenticate with</tt> </tt>
-<a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"><tt class="py-docstring"> this key but must continue with authentication</tt> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: int</tt> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-9" class="py-name"><a title="paramiko.auth_handler.AUTH_FAILED
-paramiko.channel.AUTH_FAILED
-paramiko.client.AUTH_FAILED
-paramiko.common.AUTH_FAILED
-paramiko.dsskey.AUTH_FAILED
-paramiko.hostkeys.AUTH_FAILED
-paramiko.kex_gex.AUTH_FAILED
-paramiko.kex_group1.AUTH_FAILED
-paramiko.packet.AUTH_FAILED
-paramiko.pkey.AUTH_FAILED
-paramiko.rsakey.AUTH_FAILED
-paramiko.server.AUTH_FAILED
-paramiko.sftp.AUTH_FAILED
-paramiko.sftp_attr.AUTH_FAILED
-paramiko.sftp_client.AUTH_FAILED
-paramiko.sftp_file.AUTH_FAILED
-paramiko.sftp_handle.AUTH_FAILED
-paramiko.sftp_server.AUTH_FAILED
-paramiko.sftp_si.AUTH_FAILED
-paramiko.transport.AUTH_FAILED
-paramiko.util.AUTH_FAILED" class="py-name" href="#" onclick="return doclink('link-9', 'AUTH_FAILED', 'link-7');">AUTH_FAILED</a></tt> </tt>
-</div><a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"> </tt>
-<a name="ServerInterface.check_auth_interactive"></a><div id="ServerInterface.check_auth_interactive-def"><a name="L222"></a><tt class="py-lineno">222</tt> <a class="py-toggle" href="#" id="ServerInterface.check_auth_interactive-toggle" onclick="return toggle('ServerInterface.check_auth_interactive');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.server.ServerInterface-class.html#check_auth_interactive">check_auth_interactive</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">username</tt><tt class="py-op">,</tt> <tt class="py-param">submethods</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ServerInterface.check_auth_interactive-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="ServerInterface.check_auth_interactive-expanded"><a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"><tt class="py-docstring"> Begin an interactive authentication challenge, if supported. You</tt> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"><tt class="py-docstring"> should override this method in server mode if you want to support the</tt> </tt>
-<a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"><tt class="py-docstring"> C{"keyboard-interactive"} auth type, which requires you to send a</tt> </tt>
-<a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"><tt class="py-docstring"> series of questions for the client to answer.</tt> </tt>
-<a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L229"></a><tt class="py-lineno">229</tt> <tt class="py-line"><tt class="py-docstring"> Return L{AUTH_FAILED} if this auth method isn't supported. Otherwise,</tt> </tt>
-<a name="L230"></a><tt class="py-lineno">230</tt> <tt class="py-line"><tt class="py-docstring"> you should return an L{InteractiveQuery} object containing the prompts</tt> </tt>
-<a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"><tt class="py-docstring"> and instructions for the user. The response will be sent via a call</tt> </tt>
-<a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"><tt class="py-docstring"> to L{check_auth_interactive_response}.</tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"><tt class="py-docstring"> The default implementation always returns L{AUTH_FAILED}.</tt> </tt>
-<a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"><tt class="py-docstring"> @param username: the username of the authenticating client</tt> </tt>
-<a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"><tt class="py-docstring"> @type username: str</tt> </tt>
-<a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"><tt class="py-docstring"> @param submethods: a comma-separated list of methods preferred by the</tt> </tt>
-<a name="L239"></a><tt class="py-lineno">239</tt> <tt class="py-line"><tt class="py-docstring"> client (usually empty)</tt> </tt>
-<a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"><tt class="py-docstring"> @type submethods: str</tt> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"><tt class="py-docstring"> @return: L{AUTH_FAILED} if this auth method isn't supported; otherwise</tt> </tt>
-<a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"><tt class="py-docstring"> an object containing queries for the user</tt> </tt>
-<a name="L243"></a><tt class="py-lineno">243</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: int or L{InteractiveQuery}</tt> </tt>
-<a name="L244"></a><tt class="py-lineno">244</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L245"></a><tt class="py-lineno">245</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-10" class="py-name"><a title="paramiko.auth_handler.AUTH_FAILED
-paramiko.channel.AUTH_FAILED
-paramiko.client.AUTH_FAILED
-paramiko.common.AUTH_FAILED
-paramiko.dsskey.AUTH_FAILED
-paramiko.hostkeys.AUTH_FAILED
-paramiko.kex_gex.AUTH_FAILED
-paramiko.kex_group1.AUTH_FAILED
-paramiko.packet.AUTH_FAILED
-paramiko.pkey.AUTH_FAILED
-paramiko.rsakey.AUTH_FAILED
-paramiko.server.AUTH_FAILED
-paramiko.sftp.AUTH_FAILED
-paramiko.sftp_attr.AUTH_FAILED
-paramiko.sftp_client.AUTH_FAILED
-paramiko.sftp_file.AUTH_FAILED
-paramiko.sftp_handle.AUTH_FAILED
-paramiko.sftp_server.AUTH_FAILED
-paramiko.sftp_si.AUTH_FAILED
-paramiko.transport.AUTH_FAILED
-paramiko.util.AUTH_FAILED" class="py-name" href="#" onclick="return doclink('link-10', 'AUTH_FAILED', 'link-7');">AUTH_FAILED</a></tt> </tt>
-</div><a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"> </tt>
-<a name="ServerInterface.check_auth_interactive_response"></a><div id="ServerInterface.check_auth_interactive_response-def"><a name="L247"></a><tt class="py-lineno">247</tt> <a class="py-toggle" href="#" id="ServerInterface.check_auth_interactive_response-toggle" onclick="return toggle('ServerInterface.check_auth_interactive_response');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.server.ServerInterface-class.html#check_auth_interactive_response">check_auth_interactive_response</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">responses</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ServerInterface.check_auth_interactive_response-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="ServerInterface.check_auth_interactive_response-expanded"><a name="L248"></a><tt class="py-lineno">248</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L249"></a><tt class="py-lineno">249</tt> <tt class="py-line"><tt class="py-docstring"> Continue or finish an interactive authentication challenge, if</tt> </tt>
-<a name="L250"></a><tt class="py-lineno">250</tt> <tt class="py-line"><tt class="py-docstring"> supported. You should override this method in server mode if you want</tt> </tt>
-<a name="L251"></a><tt class="py-lineno">251</tt> <tt class="py-line"><tt class="py-docstring"> to support the C{"keyboard-interactive"} auth type.</tt> </tt>
-<a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt> <tt class="py-line"><tt class="py-docstring"> Return L{AUTH_FAILED} if the responses are not accepted,</tt> </tt>
-<a name="L254"></a><tt class="py-lineno">254</tt> <tt class="py-line"><tt class="py-docstring"> L{AUTH_SUCCESSFUL} if the responses are accepted and complete</tt> </tt>
-<a name="L255"></a><tt class="py-lineno">255</tt> <tt class="py-line"><tt class="py-docstring"> the authentication, or L{AUTH_PARTIALLY_SUCCESSFUL} if your</tt> </tt>
-<a name="L256"></a><tt class="py-lineno">256</tt> <tt class="py-line"><tt class="py-docstring"> authentication is stateful, and this set of responses is accepted for</tt> </tt>
-<a name="L257"></a><tt class="py-lineno">257</tt> <tt class="py-line"><tt class="py-docstring"> authentication, but more authentication is required. (In this latter</tt> </tt>
-<a name="L258"></a><tt class="py-lineno">258</tt> <tt class="py-line"><tt class="py-docstring"> case, L{get_allowed_auths} will be called to report to the client what</tt> </tt>
-<a name="L259"></a><tt class="py-lineno">259</tt> <tt class="py-line"><tt class="py-docstring"> options it has for continuing the authentication.)</tt> </tt>
-<a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt> <tt class="py-line"><tt class="py-docstring"> If you wish to continue interactive authentication with more questions,</tt> </tt>
-<a name="L262"></a><tt class="py-lineno">262</tt> <tt class="py-line"><tt class="py-docstring"> you may return an L{InteractiveQuery} object, which should cause the</tt> </tt>
-<a name="L263"></a><tt class="py-lineno">263</tt> <tt class="py-line"><tt class="py-docstring"> client to respond with more answers, calling this method again. This</tt> </tt>
-<a name="L264"></a><tt class="py-lineno">264</tt> <tt class="py-line"><tt class="py-docstring"> cycle can continue indefinitely.</tt> </tt>
-<a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L266"></a><tt class="py-lineno">266</tt> <tt class="py-line"><tt class="py-docstring"> The default implementation always returns L{AUTH_FAILED}.</tt> </tt>
-<a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L268"></a><tt class="py-lineno">268</tt> <tt class="py-line"><tt class="py-docstring"> @param responses: list of responses from the client</tt> </tt>
-<a name="L269"></a><tt class="py-lineno">269</tt> <tt class="py-line"><tt class="py-docstring"> @type responses: list(str)</tt> </tt>
-<a name="L270"></a><tt class="py-lineno">270</tt> <tt class="py-line"><tt class="py-docstring"> @return: L{AUTH_FAILED} if the authentication fails;</tt> </tt>
-<a name="L271"></a><tt class="py-lineno">271</tt> <tt class="py-line"><tt class="py-docstring"> L{AUTH_SUCCESSFUL} if it succeeds;</tt> </tt>
-<a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"><tt class="py-docstring"> L{AUTH_PARTIALLY_SUCCESSFUL} if the interactive auth is</tt> </tt>
-<a name="L273"></a><tt class="py-lineno">273</tt> <tt class="py-line"><tt class="py-docstring"> successful, but authentication must continue; otherwise an object</tt> </tt>
-<a name="L274"></a><tt class="py-lineno">274</tt> <tt class="py-line"><tt class="py-docstring"> containing queries for the user</tt> </tt>
-<a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: int or L{InteractiveQuery}</tt> </tt>
-<a name="L276"></a><tt class="py-lineno">276</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L277"></a><tt class="py-lineno">277</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-11" class="py-name"><a title="paramiko.auth_handler.AUTH_FAILED
-paramiko.channel.AUTH_FAILED
-paramiko.client.AUTH_FAILED
-paramiko.common.AUTH_FAILED
-paramiko.dsskey.AUTH_FAILED
-paramiko.hostkeys.AUTH_FAILED
-paramiko.kex_gex.AUTH_FAILED
-paramiko.kex_group1.AUTH_FAILED
-paramiko.packet.AUTH_FAILED
-paramiko.pkey.AUTH_FAILED
-paramiko.rsakey.AUTH_FAILED
-paramiko.server.AUTH_FAILED
-paramiko.sftp.AUTH_FAILED
-paramiko.sftp_attr.AUTH_FAILED
-paramiko.sftp_client.AUTH_FAILED
-paramiko.sftp_file.AUTH_FAILED
-paramiko.sftp_handle.AUTH_FAILED
-paramiko.sftp_server.AUTH_FAILED
-paramiko.sftp_si.AUTH_FAILED
-paramiko.transport.AUTH_FAILED
-paramiko.util.AUTH_FAILED" class="py-name" href="#" onclick="return doclink('link-11', 'AUTH_FAILED', 'link-7');">AUTH_FAILED</a></tt> </tt>
-</div><a name="L278"></a><tt class="py-lineno">278</tt> <tt class="py-line"> </tt>
-<a name="ServerInterface.check_port_forward_request"></a><div id="ServerInterface.check_port_forward_request-def"><a name="L279"></a><tt class="py-lineno">279</tt> <a class="py-toggle" href="#" id="ServerInterface.check_port_forward_request-toggle" onclick="return toggle('ServerInterface.check_port_forward_request');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.server.ServerInterface-class.html#check_port_forward_request">check_port_forward_request</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">address</tt><tt class="py-op">,</tt> <tt class="py-param">port</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ServerInterface.check_port_forward_request-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="ServerInterface.check_port_forward_request-expanded"><a name="L280"></a><tt class="py-lineno">280</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L281"></a><tt class="py-lineno">281</tt> <tt class="py-line"><tt class="py-docstring"> Handle a request for port forwarding. The client is asking that</tt> </tt>
-<a name="L282"></a><tt class="py-lineno">282</tt> <tt class="py-line"><tt class="py-docstring"> connections to the given address and port be forwarded back across</tt> </tt>
-<a name="L283"></a><tt class="py-lineno">283</tt> <tt class="py-line"><tt class="py-docstring"> this ssh connection. An address of C{"0.0.0.0"} indicates a global</tt> </tt>
-<a name="L284"></a><tt class="py-lineno">284</tt> <tt class="py-line"><tt class="py-docstring"> address (any address associated with this server) and a port of C{0}</tt> </tt>
-<a name="L285"></a><tt class="py-lineno">285</tt> <tt class="py-line"><tt class="py-docstring"> indicates that no specific port is requested (usually the OS will pick</tt> </tt>
-<a name="L286"></a><tt class="py-lineno">286</tt> <tt class="py-line"><tt class="py-docstring"> a port).</tt> </tt>
-<a name="L287"></a><tt class="py-lineno">287</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L288"></a><tt class="py-lineno">288</tt> <tt class="py-line"><tt class="py-docstring"> The default implementation always returns C{False}, rejecting the</tt> </tt>
-<a name="L289"></a><tt class="py-lineno">289</tt> <tt class="py-line"><tt class="py-docstring"> port forwarding request. If the request is accepted, you should return</tt> </tt>
-<a name="L290"></a><tt class="py-lineno">290</tt> <tt class="py-line"><tt class="py-docstring"> the port opened for listening.</tt> </tt>
-<a name="L291"></a><tt class="py-lineno">291</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L292"></a><tt class="py-lineno">292</tt> <tt class="py-line"><tt class="py-docstring"> @param address: the requested address</tt> </tt>
-<a name="L293"></a><tt class="py-lineno">293</tt> <tt class="py-line"><tt class="py-docstring"> @type address: str</tt> </tt>
-<a name="L294"></a><tt class="py-lineno">294</tt> <tt class="py-line"><tt class="py-docstring"> @param port: the requested port</tt> </tt>
-<a name="L295"></a><tt class="py-lineno">295</tt> <tt class="py-line"><tt class="py-docstring"> @type port: int</tt> </tt>
-<a name="L296"></a><tt class="py-lineno">296</tt> <tt class="py-line"><tt class="py-docstring"> @return: the port number that was opened for listening, or C{False} to</tt> </tt>
-<a name="L297"></a><tt class="py-lineno">297</tt> <tt class="py-line"><tt class="py-docstring"> reject</tt> </tt>
-<a name="L298"></a><tt class="py-lineno">298</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: int</tt> </tt>
-<a name="L299"></a><tt class="py-lineno">299</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L300"></a><tt class="py-lineno">300</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">False</tt> </tt>
-</div><a name="L301"></a><tt class="py-lineno">301</tt> <tt class="py-line"> </tt>
-<a name="ServerInterface.cancel_port_forward_request"></a><div id="ServerInterface.cancel_port_forward_request-def"><a name="L302"></a><tt class="py-lineno">302</tt> <a class="py-toggle" href="#" id="ServerInterface.cancel_port_forward_request-toggle" onclick="return toggle('ServerInterface.cancel_port_forward_request');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.server.ServerInterface-class.html#cancel_port_forward_request">cancel_port_forward_request</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">address</tt><tt class="py-op">,</tt> <tt class="py-param">port</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ServerInterface.cancel_port_forward_request-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="ServerInterface.cancel_port_forward_request-expanded"><a name="L303"></a><tt class="py-lineno">303</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L304"></a><tt class="py-lineno">304</tt> <tt class="py-line"><tt class="py-docstring"> The client would like to cancel a previous port-forwarding request.</tt> </tt>
-<a name="L305"></a><tt class="py-lineno">305</tt> <tt class="py-line"><tt class="py-docstring"> If the given address and port is being forwarded across this ssh</tt> </tt>
-<a name="L306"></a><tt class="py-lineno">306</tt> <tt class="py-line"><tt class="py-docstring"> connection, the port should be closed.</tt> </tt>
-<a name="L307"></a><tt class="py-lineno">307</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L308"></a><tt class="py-lineno">308</tt> <tt class="py-line"><tt class="py-docstring"> @param address: the forwarded address</tt> </tt>
-<a name="L309"></a><tt class="py-lineno">309</tt> <tt class="py-line"><tt class="py-docstring"> @type address: str</tt> </tt>
-<a name="L310"></a><tt class="py-lineno">310</tt> <tt class="py-line"><tt class="py-docstring"> @param port: the forwarded port</tt> </tt>
-<a name="L311"></a><tt class="py-lineno">311</tt> <tt class="py-line"><tt class="py-docstring"> @type port: int</tt> </tt>
-<a name="L312"></a><tt class="py-lineno">312</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L313"></a><tt class="py-lineno">313</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-</div><a name="L314"></a><tt class="py-lineno">314</tt> <tt class="py-line"> </tt>
-<a name="ServerInterface.check_global_request"></a><div id="ServerInterface.check_global_request-def"><a name="L315"></a><tt class="py-lineno">315</tt> <a class="py-toggle" href="#" id="ServerInterface.check_global_request-toggle" onclick="return toggle('ServerInterface.check_global_request');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.server.ServerInterface-class.html#check_global_request">check_global_request</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">kind</tt><tt class="py-op">,</tt> <tt class="py-param">msg</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ServerInterface.check_global_request-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="ServerInterface.check_global_request-expanded"><a name="L316"></a><tt class="py-lineno">316</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L317"></a><tt class="py-lineno">317</tt> <tt class="py-line"><tt class="py-docstring"> Handle a global request of the given C{kind}. This method is called</tt> </tt>
-<a name="L318"></a><tt class="py-lineno">318</tt> <tt class="py-line"><tt class="py-docstring"> in server mode and client mode, whenever the remote host makes a global</tt> </tt>
-<a name="L319"></a><tt class="py-lineno">319</tt> <tt class="py-line"><tt class="py-docstring"> request. If there are any arguments to the request, they will be in</tt> </tt>
-<a name="L320"></a><tt class="py-lineno">320</tt> <tt class="py-line"><tt class="py-docstring"> C{msg}.</tt> </tt>
-<a name="L321"></a><tt class="py-lineno">321</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L322"></a><tt class="py-lineno">322</tt> <tt class="py-line"><tt class="py-docstring"> There aren't any useful global requests defined, aside from port</tt> </tt>
-<a name="L323"></a><tt class="py-lineno">323</tt> <tt class="py-line"><tt class="py-docstring"> forwarding, so usually this type of request is an extension to the</tt> </tt>
-<a name="L324"></a><tt class="py-lineno">324</tt> <tt class="py-line"><tt class="py-docstring"> protocol.</tt> </tt>
-<a name="L325"></a><tt class="py-lineno">325</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L326"></a><tt class="py-lineno">326</tt> <tt class="py-line"><tt class="py-docstring"> If the request was successful and you would like to return contextual</tt> </tt>
-<a name="L327"></a><tt class="py-lineno">327</tt> <tt class="py-line"><tt class="py-docstring"> data to the remote host, return a tuple. Items in the tuple will be</tt> </tt>
-<a name="L328"></a><tt class="py-lineno">328</tt> <tt class="py-line"><tt class="py-docstring"> sent back with the successful result. (Note that the items in the</tt> </tt>
-<a name="L329"></a><tt class="py-lineno">329</tt> <tt class="py-line"><tt class="py-docstring"> tuple can only be strings, ints, longs, or bools.)</tt> </tt>
-<a name="L330"></a><tt class="py-lineno">330</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L331"></a><tt class="py-lineno">331</tt> <tt class="py-line"><tt class="py-docstring"> The default implementation always returns C{False}, indicating that it</tt> </tt>
-<a name="L332"></a><tt class="py-lineno">332</tt> <tt class="py-line"><tt class="py-docstring"> does not support any global requests.</tt> </tt>
-<a name="L333"></a><tt class="py-lineno">333</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L334"></a><tt class="py-lineno">334</tt> <tt class="py-line"><tt class="py-docstring"> @note: Port forwarding requests are handled separately, in</tt> </tt>
-<a name="L335"></a><tt class="py-lineno">335</tt> <tt class="py-line"><tt class="py-docstring"> L{check_port_forward_request}.</tt> </tt>
-<a name="L336"></a><tt class="py-lineno">336</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L337"></a><tt class="py-lineno">337</tt> <tt class="py-line"><tt class="py-docstring"> @param kind: the kind of global request being made.</tt> </tt>
-<a name="L338"></a><tt class="py-lineno">338</tt> <tt class="py-line"><tt class="py-docstring"> @type kind: str</tt> </tt>
-<a name="L339"></a><tt class="py-lineno">339</tt> <tt class="py-line"><tt class="py-docstring"> @param msg: any extra arguments to the request.</tt> </tt>
-<a name="L340"></a><tt class="py-lineno">340</tt> <tt class="py-line"><tt class="py-docstring"> @type msg: L{Message}</tt> </tt>
-<a name="L341"></a><tt class="py-lineno">341</tt> <tt class="py-line"><tt class="py-docstring"> @return: C{True} or a tuple of data if the request was granted;</tt> </tt>
-<a name="L342"></a><tt class="py-lineno">342</tt> <tt class="py-line"><tt class="py-docstring"> C{False} otherwise.</tt> </tt>
-<a name="L343"></a><tt class="py-lineno">343</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: bool</tt> </tt>
-<a name="L344"></a><tt class="py-lineno">344</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L345"></a><tt class="py-lineno">345</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">False</tt> </tt>
-</div><a name="L346"></a><tt class="py-lineno">346</tt> <tt class="py-line"> </tt>
-<a name="L347"></a><tt class="py-lineno">347</tt> <tt class="py-line"> </tt>
-<a name="L348"></a><tt class="py-lineno">348</tt> <tt class="py-line"> <tt class="py-comment">### Channel requests</tt> </tt>
-<a name="L349"></a><tt class="py-lineno">349</tt> <tt class="py-line"> </tt>
-<a name="L350"></a><tt class="py-lineno">350</tt> <tt class="py-line"> </tt>
-<a name="ServerInterface.check_channel_pty_request"></a><div id="ServerInterface.check_channel_pty_request-def"><a name="L351"></a><tt class="py-lineno">351</tt> <a class="py-toggle" href="#" id="ServerInterface.check_channel_pty_request-toggle" onclick="return toggle('ServerInterface.check_channel_pty_request');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.server.ServerInterface-class.html#check_channel_pty_request">check_channel_pty_request</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">channel</tt><tt class="py-op">,</tt> <tt class="py-param">term</tt><tt class="py-op">,</tt> <tt class="py-param">width</tt><tt class="py-op">,</tt> <tt class="py-param">height</tt><tt class="py-op">,</tt> <tt class="py-param">pixelwidth</tt><tt class="py-op">,</tt> <tt class="py-param">pixelheight</tt><tt class="py-op">,</tt> </tt>
-<a name="L352"></a><tt class="py-lineno">352</tt> <tt class="py-line"> <tt class="py-param">modes</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ServerInterface.check_channel_pty_request-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="ServerInterface.check_channel_pty_request-expanded"><a name="L353"></a><tt class="py-lineno">353</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L354"></a><tt class="py-lineno">354</tt> <tt class="py-line"><tt class="py-docstring"> Determine if a pseudo-terminal of the given dimensions (usually</tt> </tt>
-<a name="L355"></a><tt class="py-lineno">355</tt> <tt class="py-line"><tt class="py-docstring"> requested for shell access) can be provided on the given channel.</tt> </tt>
-<a name="L356"></a><tt class="py-lineno">356</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L357"></a><tt class="py-lineno">357</tt> <tt class="py-line"><tt class="py-docstring"> The default implementation always returns C{False}.</tt> </tt>
-<a name="L358"></a><tt class="py-lineno">358</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L359"></a><tt class="py-lineno">359</tt> <tt class="py-line"><tt class="py-docstring"> @param channel: the L{Channel} the pty request arrived on.</tt> </tt>
-<a name="L360"></a><tt class="py-lineno">360</tt> <tt class="py-line"><tt class="py-docstring"> @type channel: L{Channel}</tt> </tt>
-<a name="L361"></a><tt class="py-lineno">361</tt> <tt class="py-line"><tt class="py-docstring"> @param term: type of terminal requested (for example, C{"vt100"}).</tt> </tt>
-<a name="L362"></a><tt class="py-lineno">362</tt> <tt class="py-line"><tt class="py-docstring"> @type term: str</tt> </tt>
-<a name="L363"></a><tt class="py-lineno">363</tt> <tt class="py-line"><tt class="py-docstring"> @param width: width of screen in characters.</tt> </tt>
-<a name="L364"></a><tt class="py-lineno">364</tt> <tt class="py-line"><tt class="py-docstring"> @type width: int</tt> </tt>
-<a name="L365"></a><tt class="py-lineno">365</tt> <tt class="py-line"><tt class="py-docstring"> @param height: height of screen in characters.</tt> </tt>
-<a name="L366"></a><tt class="py-lineno">366</tt> <tt class="py-line"><tt class="py-docstring"> @type height: int</tt> </tt>
-<a name="L367"></a><tt class="py-lineno">367</tt> <tt class="py-line"><tt class="py-docstring"> @param pixelwidth: width of screen in pixels, if known (may be C{0} if</tt> </tt>
-<a name="L368"></a><tt class="py-lineno">368</tt> <tt class="py-line"><tt class="py-docstring"> unknown).</tt> </tt>
-<a name="L369"></a><tt class="py-lineno">369</tt> <tt class="py-line"><tt class="py-docstring"> @type pixelwidth: int</tt> </tt>
-<a name="L370"></a><tt class="py-lineno">370</tt> <tt class="py-line"><tt class="py-docstring"> @param pixelheight: height of screen in pixels, if known (may be C{0}</tt> </tt>
-<a name="L371"></a><tt class="py-lineno">371</tt> <tt class="py-line"><tt class="py-docstring"> if unknown).</tt> </tt>
-<a name="L372"></a><tt class="py-lineno">372</tt> <tt class="py-line"><tt class="py-docstring"> @type pixelheight: int</tt> </tt>
-<a name="L373"></a><tt class="py-lineno">373</tt> <tt class="py-line"><tt class="py-docstring"> @return: C{True} if the psuedo-terminal has been allocated; C{False}</tt> </tt>
-<a name="L374"></a><tt class="py-lineno">374</tt> <tt class="py-line"><tt class="py-docstring"> otherwise.</tt> </tt>
-<a name="L375"></a><tt class="py-lineno">375</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: bool</tt> </tt>
-<a name="L376"></a><tt class="py-lineno">376</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L377"></a><tt class="py-lineno">377</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">False</tt> </tt>
-</div><a name="L378"></a><tt class="py-lineno">378</tt> <tt class="py-line"> </tt>
-<a name="ServerInterface.check_channel_shell_request"></a><div id="ServerInterface.check_channel_shell_request-def"><a name="L379"></a><tt class="py-lineno">379</tt> <a class="py-toggle" href="#" id="ServerInterface.check_channel_shell_request-toggle" onclick="return toggle('ServerInterface.check_channel_shell_request');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.server.ServerInterface-class.html#check_channel_shell_request">check_channel_shell_request</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">channel</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ServerInterface.check_channel_shell_request-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="ServerInterface.check_channel_shell_request-expanded"><a name="L380"></a><tt class="py-lineno">380</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L381"></a><tt class="py-lineno">381</tt> <tt class="py-line"><tt class="py-docstring"> Determine if a shell will be provided to the client on the given</tt> </tt>
-<a name="L382"></a><tt class="py-lineno">382</tt> <tt class="py-line"><tt class="py-docstring"> channel. If this method returns C{True}, the channel should be</tt> </tt>
-<a name="L383"></a><tt class="py-lineno">383</tt> <tt class="py-line"><tt class="py-docstring"> connected to the stdin/stdout of a shell (or something that acts like</tt> </tt>
-<a name="L384"></a><tt class="py-lineno">384</tt> <tt class="py-line"><tt class="py-docstring"> a shell).</tt> </tt>
-<a name="L385"></a><tt class="py-lineno">385</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L386"></a><tt class="py-lineno">386</tt> <tt class="py-line"><tt class="py-docstring"> The default implementation always returns C{False}.</tt> </tt>
-<a name="L387"></a><tt class="py-lineno">387</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L388"></a><tt class="py-lineno">388</tt> <tt class="py-line"><tt class="py-docstring"> @param channel: the L{Channel} the request arrived on.</tt> </tt>
-<a name="L389"></a><tt class="py-lineno">389</tt> <tt class="py-line"><tt class="py-docstring"> @type channel: L{Channel}</tt> </tt>
-<a name="L390"></a><tt class="py-lineno">390</tt> <tt class="py-line"><tt class="py-docstring"> @return: C{True} if this channel is now hooked up to a shell; C{False}</tt> </tt>
-<a name="L391"></a><tt class="py-lineno">391</tt> <tt class="py-line"><tt class="py-docstring"> if a shell can't or won't be provided.</tt> </tt>
-<a name="L392"></a><tt class="py-lineno">392</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: bool</tt> </tt>
-<a name="L393"></a><tt class="py-lineno">393</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L394"></a><tt class="py-lineno">394</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">False</tt> </tt>
-</div><a name="L395"></a><tt class="py-lineno">395</tt> <tt class="py-line"> </tt>
-<a name="ServerInterface.check_channel_exec_request"></a><div id="ServerInterface.check_channel_exec_request-def"><a name="L396"></a><tt class="py-lineno">396</tt> <a class="py-toggle" href="#" id="ServerInterface.check_channel_exec_request-toggle" onclick="return toggle('ServerInterface.check_channel_exec_request');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.server.ServerInterface-class.html#check_channel_exec_request">check_channel_exec_request</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">channel</tt><tt class="py-op">,</tt> <tt class="py-param">command</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ServerInterface.check_channel_exec_request-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="ServerInterface.check_channel_exec_request-expanded"><a name="L397"></a><tt class="py-lineno">397</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L398"></a><tt class="py-lineno">398</tt> <tt class="py-line"><tt class="py-docstring"> Determine if a shell command will be executed for the client. If this</tt> </tt>
-<a name="L399"></a><tt class="py-lineno">399</tt> <tt class="py-line"><tt class="py-docstring"> method returns C{True}, the channel should be connected to the stdin,</tt> </tt>
-<a name="L400"></a><tt class="py-lineno">400</tt> <tt class="py-line"><tt class="py-docstring"> stdout, and stderr of the shell command.</tt> </tt>
-<a name="L401"></a><tt class="py-lineno">401</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L402"></a><tt class="py-lineno">402</tt> <tt class="py-line"><tt class="py-docstring"> The default implementation always returns C{False}.</tt> </tt>
-<a name="L403"></a><tt class="py-lineno">403</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L404"></a><tt class="py-lineno">404</tt> <tt class="py-line"><tt class="py-docstring"> @param channel: the L{Channel} the request arrived on.</tt> </tt>
-<a name="L405"></a><tt class="py-lineno">405</tt> <tt class="py-line"><tt class="py-docstring"> @type channel: L{Channel}</tt> </tt>
-<a name="L406"></a><tt class="py-lineno">406</tt> <tt class="py-line"><tt class="py-docstring"> @param command: the command to execute.</tt> </tt>
-<a name="L407"></a><tt class="py-lineno">407</tt> <tt class="py-line"><tt class="py-docstring"> @type command: str</tt> </tt>
-<a name="L408"></a><tt class="py-lineno">408</tt> <tt class="py-line"><tt class="py-docstring"> @return: C{True} if this channel is now hooked up to the stdin,</tt> </tt>
-<a name="L409"></a><tt class="py-lineno">409</tt> <tt class="py-line"><tt class="py-docstring"> stdout, and stderr of the executing command; C{False} if the</tt> </tt>
-<a name="L410"></a><tt class="py-lineno">410</tt> <tt class="py-line"><tt class="py-docstring"> command will not be executed.</tt> </tt>
-<a name="L411"></a><tt class="py-lineno">411</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: bool</tt> </tt>
-<a name="L412"></a><tt class="py-lineno">412</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L413"></a><tt class="py-lineno">413</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.1</tt> </tt>
-<a name="L414"></a><tt class="py-lineno">414</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L415"></a><tt class="py-lineno">415</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">False</tt> </tt>
-</div><a name="L416"></a><tt class="py-lineno">416</tt> <tt class="py-line"> </tt>
-<a name="ServerInterface.check_channel_subsystem_request"></a><div id="ServerInterface.check_channel_subsystem_request-def"><a name="L417"></a><tt class="py-lineno">417</tt> <a class="py-toggle" href="#" id="ServerInterface.check_channel_subsystem_request-toggle" onclick="return toggle('ServerInterface.check_channel_subsystem_request');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.server.ServerInterface-class.html#check_channel_subsystem_request">check_channel_subsystem_request</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">channel</tt><tt class="py-op">,</tt> <tt class="py-param">name</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ServerInterface.check_channel_subsystem_request-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="ServerInterface.check_channel_subsystem_request-expanded"><a name="L418"></a><tt class="py-lineno">418</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L419"></a><tt class="py-lineno">419</tt> <tt class="py-line"><tt class="py-docstring"> Determine if a requested subsystem will be provided to the client on</tt> </tt>
-<a name="L420"></a><tt class="py-lineno">420</tt> <tt class="py-line"><tt class="py-docstring"> the given channel. If this method returns C{True}, all future I/O</tt> </tt>
-<a name="L421"></a><tt class="py-lineno">421</tt> <tt class="py-line"><tt class="py-docstring"> through this channel will be assumed to be connected to the requested</tt> </tt>
-<a name="L422"></a><tt class="py-lineno">422</tt> <tt class="py-line"><tt class="py-docstring"> subsystem. An example of a subsystem is C{sftp}.</tt> </tt>
-<a name="L423"></a><tt class="py-lineno">423</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L424"></a><tt class="py-lineno">424</tt> <tt class="py-line"><tt class="py-docstring"> The default implementation checks for a subsystem handler assigned via</tt> </tt>
-<a name="L425"></a><tt class="py-lineno">425</tt> <tt class="py-line"><tt class="py-docstring"> L{Transport.set_subsystem_handler}.</tt> </tt>
-<a name="L426"></a><tt class="py-lineno">426</tt> <tt class="py-line"><tt class="py-docstring"> If one has been set, the handler is invoked and this method returns</tt> </tt>
-<a name="L427"></a><tt class="py-lineno">427</tt> <tt class="py-line"><tt class="py-docstring"> C{True}. Otherwise it returns C{False}.</tt> </tt>
-<a name="L428"></a><tt class="py-lineno">428</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L429"></a><tt class="py-lineno">429</tt> <tt class="py-line"><tt class="py-docstring"> @note: Because the default implementation uses the L{Transport} to</tt> </tt>
-<a name="L430"></a><tt class="py-lineno">430</tt> <tt class="py-line"><tt class="py-docstring"> identify valid subsystems, you probably won't need to override this</tt> </tt>
-<a name="L431"></a><tt class="py-lineno">431</tt> <tt class="py-line"><tt class="py-docstring"> method.</tt> </tt>
-<a name="L432"></a><tt class="py-lineno">432</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L433"></a><tt class="py-lineno">433</tt> <tt class="py-line"><tt class="py-docstring"> @param channel: the L{Channel} the pty request arrived on.</tt> </tt>
-<a name="L434"></a><tt class="py-lineno">434</tt> <tt class="py-line"><tt class="py-docstring"> @type channel: L{Channel}</tt> </tt>
-<a name="L435"></a><tt class="py-lineno">435</tt> <tt class="py-line"><tt class="py-docstring"> @param name: name of the requested subsystem.</tt> </tt>
-<a name="L436"></a><tt class="py-lineno">436</tt> <tt class="py-line"><tt class="py-docstring"> @type name: str</tt> </tt>
-<a name="L437"></a><tt class="py-lineno">437</tt> <tt class="py-line"><tt class="py-docstring"> @return: C{True} if this channel is now hooked up to the requested</tt> </tt>
-<a name="L438"></a><tt class="py-lineno">438</tt> <tt class="py-line"><tt class="py-docstring"> subsystem; C{False} if that subsystem can't or won't be provided.</tt> </tt>
-<a name="L439"></a><tt class="py-lineno">439</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: bool</tt> </tt>
-<a name="L440"></a><tt class="py-lineno">440</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L441"></a><tt class="py-lineno">441</tt> <tt class="py-line"> <tt class="py-name">handler_class</tt><tt class="py-op">,</tt> <tt class="py-name">larg</tt><tt class="py-op">,</tt> <tt class="py-name">kwarg</tt> <tt class="py-op">=</tt> <tt id="link-12" class="py-name" targets="Module paramiko.channel=paramiko.channel-module.html"><a title="paramiko.channel" class="py-name" href="#" onclick="return doclink('link-12', 'channel', 'link-12');">channel</a></tt><tt class="py-op">.</tt><tt id="link-13" class="py-name" targets="Method paramiko.Channel.get_transport()=paramiko.Channel-class.html#get_transport,Method paramiko.SSHClient.get_transport()=paramiko.SSHClient-class.html#get_transport"><a title="paramiko.Channel.get_transport
-paramiko.SSHClient.get_transport" class="py-name" href="#" onclick="return doclink('link-13', 'get_transport', 'link-13');">get_transport</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">_get_subsystem_handler</tt><tt class="py-op">(</tt><tt id="link-14" class="py-name"><a title="paramiko.kex_gex.KexGex.name
-paramiko.kex_group1.KexGroup1.name" class="py-name" href="#" onclick="return doclink('link-14', 'name', 'link-4');">name</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L442"></a><tt class="py-lineno">442</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">handler_class</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L443"></a><tt class="py-lineno">443</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">False</tt> </tt>
-<a name="L444"></a><tt class="py-lineno">444</tt> <tt class="py-line"> <tt class="py-name">handler</tt> <tt class="py-op">=</tt> <tt class="py-name">handler_class</tt><tt class="py-op">(</tt><tt id="link-15" class="py-name"><a title="paramiko.channel" class="py-name" href="#" onclick="return doclink('link-15', 'channel', 'link-12');">channel</a></tt><tt class="py-op">,</tt> <tt id="link-16" class="py-name"><a title="paramiko.kex_gex.KexGex.name
-paramiko.kex_group1.KexGroup1.name" class="py-name" href="#" onclick="return doclink('link-16', 'name', 'link-4');">name</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-name">larg</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-name">kwarg</tt><tt class="py-op">)</tt> </tt>
-<a name="L445"></a><tt class="py-lineno">445</tt> <tt class="py-line"> <tt class="py-name">handler</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L446"></a><tt class="py-lineno">446</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">True</tt> </tt>
-</div><a name="L447"></a><tt class="py-lineno">447</tt> <tt class="py-line"> </tt>
-<a name="ServerInterface.check_channel_window_change_request"></a><div id="ServerInterface.check_channel_window_change_request-def"><a name="L448"></a><tt class="py-lineno">448</tt> <a class="py-toggle" href="#" id="ServerInterface.check_channel_window_change_request-toggle" onclick="return toggle('ServerInterface.check_channel_window_change_request');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.server.ServerInterface-class.html#check_channel_window_change_request">check_channel_window_change_request</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">channel</tt><tt class="py-op">,</tt> <tt class="py-param">width</tt><tt class="py-op">,</tt> <tt class="py-param">height</tt><tt class="py-op">,</tt> <tt class="py-param">pixelwidth</tt><tt class="py-op">,</tt> <tt class="py-param">pixelheight</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ServerInterface.check_channel_window_change_request-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="ServerInterface.check_channel_window_change_request-expanded"><a name="L449"></a><tt class="py-lineno">449</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L450"></a><tt class="py-lineno">450</tt> <tt class="py-line"><tt class="py-docstring"> Determine if the pseudo-terminal on the given channel can be resized.</tt> </tt>
-<a name="L451"></a><tt class="py-lineno">451</tt> <tt class="py-line"><tt class="py-docstring"> This only makes sense if a pty was previously allocated on it.</tt> </tt>
-<a name="L452"></a><tt class="py-lineno">452</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L453"></a><tt class="py-lineno">453</tt> <tt class="py-line"><tt class="py-docstring"> The default implementation always returns C{False}.</tt> </tt>
-<a name="L454"></a><tt class="py-lineno">454</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L455"></a><tt class="py-lineno">455</tt> <tt class="py-line"><tt class="py-docstring"> @param channel: the L{Channel} the pty request arrived on.</tt> </tt>
-<a name="L456"></a><tt class="py-lineno">456</tt> <tt class="py-line"><tt class="py-docstring"> @type channel: L{Channel}</tt> </tt>
-<a name="L457"></a><tt class="py-lineno">457</tt> <tt class="py-line"><tt class="py-docstring"> @param width: width of screen in characters.</tt> </tt>
-<a name="L458"></a><tt class="py-lineno">458</tt> <tt class="py-line"><tt class="py-docstring"> @type width: int</tt> </tt>
-<a name="L459"></a><tt class="py-lineno">459</tt> <tt class="py-line"><tt class="py-docstring"> @param height: height of screen in characters.</tt> </tt>
-<a name="L460"></a><tt class="py-lineno">460</tt> <tt class="py-line"><tt class="py-docstring"> @type height: int</tt> </tt>
-<a name="L461"></a><tt class="py-lineno">461</tt> <tt class="py-line"><tt class="py-docstring"> @param pixelwidth: width of screen in pixels, if known (may be C{0} if</tt> </tt>
-<a name="L462"></a><tt class="py-lineno">462</tt> <tt class="py-line"><tt class="py-docstring"> unknown).</tt> </tt>
-<a name="L463"></a><tt class="py-lineno">463</tt> <tt class="py-line"><tt class="py-docstring"> @type pixelwidth: int</tt> </tt>
-<a name="L464"></a><tt class="py-lineno">464</tt> <tt class="py-line"><tt class="py-docstring"> @param pixelheight: height of screen in pixels, if known (may be C{0}</tt> </tt>
-<a name="L465"></a><tt class="py-lineno">465</tt> <tt class="py-line"><tt class="py-docstring"> if unknown).</tt> </tt>
-<a name="L466"></a><tt class="py-lineno">466</tt> <tt class="py-line"><tt class="py-docstring"> @type pixelheight: int</tt> </tt>
-<a name="L467"></a><tt class="py-lineno">467</tt> <tt class="py-line"><tt class="py-docstring"> @return: C{True} if the terminal was resized; C{False} if not.</tt> </tt>
-<a name="L468"></a><tt class="py-lineno">468</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: bool</tt> </tt>
-<a name="L469"></a><tt class="py-lineno">469</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L470"></a><tt class="py-lineno">470</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">False</tt> </tt>
-</div><a name="L471"></a><tt class="py-lineno">471</tt> <tt class="py-line"> </tt>
-<a name="ServerInterface.check_channel_x11_request"></a><div id="ServerInterface.check_channel_x11_request-def"><a name="L472"></a><tt class="py-lineno">472</tt> <a class="py-toggle" href="#" id="ServerInterface.check_channel_x11_request-toggle" onclick="return toggle('ServerInterface.check_channel_x11_request');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.server.ServerInterface-class.html#check_channel_x11_request">check_channel_x11_request</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">channel</tt><tt class="py-op">,</tt> <tt class="py-param">single_connection</tt><tt class="py-op">,</tt> <tt class="py-param">auth_protocol</tt><tt class="py-op">,</tt> <tt class="py-param">auth_cookie</tt><tt class="py-op">,</tt> <tt class="py-param">screen_number</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ServerInterface.check_channel_x11_request-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="ServerInterface.check_channel_x11_request-expanded"><a name="L473"></a><tt class="py-lineno">473</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L474"></a><tt class="py-lineno">474</tt> <tt class="py-line"><tt class="py-docstring"> Determine if the client will be provided with an X11 session. If this</tt> </tt>
-<a name="L475"></a><tt class="py-lineno">475</tt> <tt class="py-line"><tt class="py-docstring"> method returns C{True}, X11 applications should be routed through new</tt> </tt>
-<a name="L476"></a><tt class="py-lineno">476</tt> <tt class="py-line"><tt class="py-docstring"> SSH channels, using L{Transport.open_x11_channel}.</tt> </tt>
-<a name="L477"></a><tt class="py-lineno">477</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L478"></a><tt class="py-lineno">478</tt> <tt class="py-line"><tt class="py-docstring"> The default implementation always returns C{False}.</tt> </tt>
-<a name="L479"></a><tt class="py-lineno">479</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L480"></a><tt class="py-lineno">480</tt> <tt class="py-line"><tt class="py-docstring"> @param channel: the L{Channel} the X11 request arrived on</tt> </tt>
-<a name="L481"></a><tt class="py-lineno">481</tt> <tt class="py-line"><tt class="py-docstring"> @type channel: L{Channel}</tt> </tt>
-<a name="L482"></a><tt class="py-lineno">482</tt> <tt class="py-line"><tt class="py-docstring"> @param single_connection: C{True} if only a single X11 channel should</tt> </tt>
-<a name="L483"></a><tt class="py-lineno">483</tt> <tt class="py-line"><tt class="py-docstring"> be opened</tt> </tt>
-<a name="L484"></a><tt class="py-lineno">484</tt> <tt class="py-line"><tt class="py-docstring"> @type single_connection: bool</tt> </tt>
-<a name="L485"></a><tt class="py-lineno">485</tt> <tt class="py-line"><tt class="py-docstring"> @param auth_protocol: the protocol used for X11 authentication</tt> </tt>
-<a name="L486"></a><tt class="py-lineno">486</tt> <tt class="py-line"><tt class="py-docstring"> @type auth_protocol: str</tt> </tt>
-<a name="L487"></a><tt class="py-lineno">487</tt> <tt class="py-line"><tt class="py-docstring"> @param auth_cookie: the cookie used to authenticate to X11</tt> </tt>
-<a name="L488"></a><tt class="py-lineno">488</tt> <tt class="py-line"><tt class="py-docstring"> @type auth_cookie: str</tt> </tt>
-<a name="L489"></a><tt class="py-lineno">489</tt> <tt class="py-line"><tt class="py-docstring"> @param screen_number: the number of the X11 screen to connect to</tt> </tt>
-<a name="L490"></a><tt class="py-lineno">490</tt> <tt class="py-line"><tt class="py-docstring"> @type screen_number: int</tt> </tt>
-<a name="L491"></a><tt class="py-lineno">491</tt> <tt class="py-line"><tt class="py-docstring"> @return: C{True} if the X11 session was opened; C{False} if not</tt> </tt>
-<a name="L492"></a><tt class="py-lineno">492</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: bool</tt> </tt>
-<a name="L493"></a><tt class="py-lineno">493</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L494"></a><tt class="py-lineno">494</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">False</tt> </tt>
-</div><a name="L495"></a><tt class="py-lineno">495</tt> <tt class="py-line"> </tt>
-<a name="ServerInterface.check_channel_direct_tcpip_request"></a><div id="ServerInterface.check_channel_direct_tcpip_request-def"><a name="L496"></a><tt class="py-lineno">496</tt> <a class="py-toggle" href="#" id="ServerInterface.check_channel_direct_tcpip_request-toggle" onclick="return toggle('ServerInterface.check_channel_direct_tcpip_request');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.server.ServerInterface-class.html#check_channel_direct_tcpip_request">check_channel_direct_tcpip_request</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">chanid</tt><tt class="py-op">,</tt> <tt class="py-param">origin</tt><tt class="py-op">,</tt> <tt class="py-param">destination</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ServerInterface.check_channel_direct_tcpip_request-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="ServerInterface.check_channel_direct_tcpip_request-expanded"><a name="L497"></a><tt class="py-lineno">497</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L498"></a><tt class="py-lineno">498</tt> <tt class="py-line"><tt class="py-docstring"> Determine if a local port forwarding channel will be granted, and</tt> </tt>
-<a name="L499"></a><tt class="py-lineno">499</tt> <tt class="py-line"><tt class="py-docstring"> return C{OPEN_SUCCEEDED} or an error code. This method is</tt> </tt>
-<a name="L500"></a><tt class="py-lineno">500</tt> <tt class="py-line"><tt class="py-docstring"> called in server mode when the client requests a channel, after</tt> </tt>
-<a name="L501"></a><tt class="py-lineno">501</tt> <tt class="py-line"><tt class="py-docstring"> authentication is complete.</tt> </tt>
-<a name="L502"></a><tt class="py-lineno">502</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L503"></a><tt class="py-lineno">503</tt> <tt class="py-line"><tt class="py-docstring"> The C{chanid} parameter is a small number that uniquely identifies the</tt> </tt>
-<a name="L504"></a><tt class="py-lineno">504</tt> <tt class="py-line"><tt class="py-docstring"> channel within a L{Transport}. A L{Channel} object is not created</tt> </tt>
-<a name="L505"></a><tt class="py-lineno">505</tt> <tt class="py-line"><tt class="py-docstring"> unless this method returns C{OPEN_SUCCEEDED} -- once a</tt> </tt>
-<a name="L506"></a><tt class="py-lineno">506</tt> <tt class="py-line"><tt class="py-docstring"> L{Channel} object is created, you can call L{Channel.get_id} to</tt> </tt>
-<a name="L507"></a><tt class="py-lineno">507</tt> <tt class="py-line"><tt class="py-docstring"> retrieve the channel ID.</tt> </tt>
-<a name="L508"></a><tt class="py-lineno">508</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L509"></a><tt class="py-lineno">509</tt> <tt class="py-line"><tt class="py-docstring"> The origin and destination parameters are (ip_address, port) tuples</tt> </tt>
-<a name="L510"></a><tt class="py-lineno">510</tt> <tt class="py-line"><tt class="py-docstring"> that correspond to both ends of the TCP connection in the forwarding</tt> </tt>
-<a name="L511"></a><tt class="py-lineno">511</tt> <tt class="py-line"><tt class="py-docstring"> tunnel.</tt> </tt>
-<a name="L512"></a><tt class="py-lineno">512</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L513"></a><tt class="py-lineno">513</tt> <tt class="py-line"><tt class="py-docstring"> The return value should either be C{OPEN_SUCCEEDED} (or</tt> </tt>
-<a name="L514"></a><tt class="py-lineno">514</tt> <tt class="py-line"><tt class="py-docstring"> C{0}) to allow the channel request, or one of the following error</tt> </tt>
-<a name="L515"></a><tt class="py-lineno">515</tt> <tt class="py-line"><tt class="py-docstring"> codes to reject it:</tt> </tt>
-<a name="L516"></a><tt class="py-lineno">516</tt> <tt class="py-line"><tt class="py-docstring"> - C{OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED}</tt> </tt>
-<a name="L517"></a><tt class="py-lineno">517</tt> <tt class="py-line"><tt class="py-docstring"> - C{OPEN_FAILED_CONNECT_FAILED}</tt> </tt>
-<a name="L518"></a><tt class="py-lineno">518</tt> <tt class="py-line"><tt class="py-docstring"> - C{OPEN_FAILED_UNKNOWN_CHANNEL_TYPE}</tt> </tt>
-<a name="L519"></a><tt class="py-lineno">519</tt> <tt class="py-line"><tt class="py-docstring"> - C{OPEN_FAILED_RESOURCE_SHORTAGE}</tt> </tt>
-<a name="L520"></a><tt class="py-lineno">520</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L521"></a><tt class="py-lineno">521</tt> <tt class="py-line"><tt class="py-docstring"> The default implementation always returns</tt> </tt>
-<a name="L522"></a><tt class="py-lineno">522</tt> <tt class="py-line"><tt class="py-docstring"> C{OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED}.</tt> </tt>
-<a name="L523"></a><tt class="py-lineno">523</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L524"></a><tt class="py-lineno">524</tt> <tt class="py-line"><tt class="py-docstring"> @param chanid: ID of the channel</tt> </tt>
-<a name="L525"></a><tt class="py-lineno">525</tt> <tt class="py-line"><tt class="py-docstring"> @type chanid: int</tt> </tt>
-<a name="L526"></a><tt class="py-lineno">526</tt> <tt class="py-line"><tt class="py-docstring"> @param origin: 2-tuple containing the IP address and port of the</tt> </tt>
-<a name="L527"></a><tt class="py-lineno">527</tt> <tt class="py-line"><tt class="py-docstring"> originator (client side)</tt> </tt>
-<a name="L528"></a><tt class="py-lineno">528</tt> <tt class="py-line"><tt class="py-docstring"> @type origin: tuple</tt> </tt>
-<a name="L529"></a><tt class="py-lineno">529</tt> <tt class="py-line"><tt class="py-docstring"> @param destination: 2-tuple containing the IP address and port of the</tt> </tt>
-<a name="L530"></a><tt class="py-lineno">530</tt> <tt class="py-line"><tt class="py-docstring"> destination (server side)</tt> </tt>
-<a name="L531"></a><tt class="py-lineno">531</tt> <tt class="py-line"><tt class="py-docstring"> @type destination: tuple</tt> </tt>
-<a name="L532"></a><tt class="py-lineno">532</tt> <tt class="py-line"><tt class="py-docstring"> @return: a success or failure code (listed above)</tt> </tt>
-<a name="L533"></a><tt class="py-lineno">533</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: int</tt> </tt>
-<a name="L534"></a><tt class="py-lineno">534</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L535"></a><tt class="py-lineno">535</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-17" class="py-name"><a title="paramiko.auth_handler.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.channel.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.client.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.common.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.dsskey.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.hostkeys.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.kex_gex.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.kex_group1.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.packet.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.pkey.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.rsakey.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.server.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_attr.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_client.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_file.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_handle.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_server.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_si.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.transport.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.util.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED" class="py-name" href="#" onclick="return doclink('link-17', 'OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED', 'link-6');">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</a></tt> </tt>
-</div></div><a name="L536"></a><tt class="py-lineno">536</tt> <tt class="py-line"> </tt>
-<a name="L537"></a><tt class="py-lineno">537</tt> <tt class="py-line"> </tt>
-<a name="SubsystemHandler"></a><div id="SubsystemHandler-def"><a name="L538"></a><tt class="py-lineno">538</tt> <a class="py-toggle" href="#" id="SubsystemHandler-toggle" onclick="return toggle('SubsystemHandler');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.server.SubsystemHandler-class.html">SubsystemHandler</a> <tt class="py-op">(</tt><tt class="py-base-class">threading</tt><tt class="py-op">.</tt><tt class="py-base-class">Thread</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SubsystemHandler-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="SubsystemHandler-expanded"><a name="L539"></a><tt class="py-lineno">539</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L540"></a><tt class="py-lineno">540</tt> <tt class="py-line"><tt class="py-docstring"> Handler for a subsytem in server mode. If you create a subclass of this</tt> </tt>
-<a name="L541"></a><tt class="py-lineno">541</tt> <tt class="py-line"><tt class="py-docstring"> class and pass it to</tt> </tt>
-<a name="L542"></a><tt class="py-lineno">542</tt> <tt class="py-line"><tt class="py-docstring"> L{Transport.set_subsystem_handler},</tt> </tt>
-<a name="L543"></a><tt class="py-lineno">543</tt> <tt class="py-line"><tt class="py-docstring"> an object of this</tt> </tt>
-<a name="L544"></a><tt class="py-lineno">544</tt> <tt class="py-line"><tt class="py-docstring"> class will be created for each request for this subsystem. Each new object</tt> </tt>
-<a name="L545"></a><tt class="py-lineno">545</tt> <tt class="py-line"><tt class="py-docstring"> will be executed within its own new thread by calling L{start_subsystem}.</tt> </tt>
-<a name="L546"></a><tt class="py-lineno">546</tt> <tt class="py-line"><tt class="py-docstring"> When that method completes, the channel is closed.</tt> </tt>
-<a name="L547"></a><tt class="py-lineno">547</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L548"></a><tt class="py-lineno">548</tt> <tt class="py-line"><tt class="py-docstring"> For example, if you made a subclass C{MP3Handler} and registered it as the</tt> </tt>
-<a name="L549"></a><tt class="py-lineno">549</tt> <tt class="py-line"><tt class="py-docstring"> handler for subsystem C{"mp3"}, then whenever a client has successfully</tt> </tt>
-<a name="L550"></a><tt class="py-lineno">550</tt> <tt class="py-line"><tt class="py-docstring"> authenticated and requests subsytem C{"mp3"}, an object of class</tt> </tt>
-<a name="L551"></a><tt class="py-lineno">551</tt> <tt class="py-line"><tt class="py-docstring"> C{MP3Handler} will be created, and L{start_subsystem} will be called on</tt> </tt>
-<a name="L552"></a><tt class="py-lineno">552</tt> <tt class="py-line"><tt class="py-docstring"> it from a new thread.</tt> </tt>
-<a name="L553"></a><tt class="py-lineno">553</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="SubsystemHandler.__init__"></a><div id="SubsystemHandler.__init__-def"><a name="L554"></a><tt class="py-lineno">554</tt> <a class="py-toggle" href="#" id="SubsystemHandler.__init__-toggle" onclick="return toggle('SubsystemHandler.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.server.SubsystemHandler-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">channel</tt><tt class="py-op">,</tt> <tt class="py-param">name</tt><tt class="py-op">,</tt> <tt class="py-param">server</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SubsystemHandler.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SubsystemHandler.__init__-expanded"><a name="L555"></a><tt class="py-lineno">555</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L556"></a><tt class="py-lineno">556</tt> <tt class="py-line"><tt class="py-docstring"> Create a new handler for a channel. This is used by L{ServerInterface}</tt> </tt>
-<a name="L557"></a><tt class="py-lineno">557</tt> <tt class="py-line"><tt class="py-docstring"> to start up a new handler when a channel requests this subsystem. You</tt> </tt>
-<a name="L558"></a><tt class="py-lineno">558</tt> <tt class="py-line"><tt class="py-docstring"> don't need to override this method, but if you do, be sure to pass the</tt> </tt>
-<a name="L559"></a><tt class="py-lineno">559</tt> <tt class="py-line"><tt class="py-docstring"> C{channel} and C{name} parameters through to the original C{__init__}</tt> </tt>
-<a name="L560"></a><tt class="py-lineno">560</tt> <tt class="py-line"><tt class="py-docstring"> method here.</tt> </tt>
-<a name="L561"></a><tt class="py-lineno">561</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L562"></a><tt class="py-lineno">562</tt> <tt class="py-line"><tt class="py-docstring"> @param channel: the channel associated with this subsystem request.</tt> </tt>
-<a name="L563"></a><tt class="py-lineno">563</tt> <tt class="py-line"><tt class="py-docstring"> @type channel: L{Channel}</tt> </tt>
-<a name="L564"></a><tt class="py-lineno">564</tt> <tt class="py-line"><tt class="py-docstring"> @param name: name of the requested subsystem.</tt> </tt>
-<a name="L565"></a><tt class="py-lineno">565</tt> <tt class="py-line"><tt class="py-docstring"> @type name: str</tt> </tt>
-<a name="L566"></a><tt class="py-lineno">566</tt> <tt class="py-line"><tt class="py-docstring"> @param server: the server object for the session that started this</tt> </tt>
-<a name="L567"></a><tt class="py-lineno">567</tt> <tt class="py-line"><tt class="py-docstring"> subsystem</tt> </tt>
-<a name="L568"></a><tt class="py-lineno">568</tt> <tt class="py-line"><tt class="py-docstring"> @type server: L{ServerInterface}</tt> </tt>
-<a name="L569"></a><tt class="py-lineno">569</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L570"></a><tt class="py-lineno">570</tt> <tt class="py-line"> <tt class="py-name">threading</tt><tt class="py-op">.</tt><tt class="py-name">Thread</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name" targets="Method paramiko.Agent.__init__()=paramiko.Agent-class.html#__init__,Method paramiko.AgentKey.__init__()=paramiko.AgentKey-class.html#__init__,Method paramiko.BadAuthenticationType.__init__()=paramiko.BadAuthenticationType-class.html#__init__,Method paramiko.BadHostKeyException.__init__()=paramiko.BadHostKeyException-class.html#__init__,Method paramiko.BufferedFile.__init__()=paramiko.BufferedFile-class.html#__init__,Method paramiko.Channel.__init__()=paramiko.Channel-class.html#__init__,Method paramiko.ChannelException.__init__()=paramiko.ChannelException-class.html#__init__,Method paramiko.DSSKey.__init__()=paramiko.DSSKey-class.html#__init__,Method paramiko.HostKeys.__init__()=paramiko.HostKeys-class.html#__init__,Method paramiko.Message.__init__()=paramiko.Message-class.html#__init__,Method paramiko.PKey.__init__()=paramiko.PKey-class.html#__init__,Method paramiko.RSAKey.__init__()=paramiko.RSAKey-class.html#__init__,Method paramiko.SFTPAttributes.__init__()=paramiko.SFTPAttributes-class.html#__init__,Method paramiko.SFTPClient.__init__()=paramiko.SFTPClient-class.html#__init__,Method paramiko.SFTPFile.__init__()=paramiko.SFTPFile-class.html#__init__,Method paramiko.SFTPHandle.__init__()=paramiko.SFTPHandle-class.html#__init__,Method paramiko.SFTPServer.__init__()=paramiko.SFTPServer-class.html#__init__,Method paramiko.SFTPServerInterface.__init__()=paramiko.SFTPServerInterface-class.html#__init__,Method paramiko.SSHClient.__init__()=paramiko.SSHClient-class.html#__init__,Method paramiko.SSHConfig.__init__()=paramiko.SSHConfig-class.html#__init__,Method paramiko.SecurityOptions.__init__()=paramiko.SecurityOptions-class.html#__init__,Method paramiko.SubsystemHandler.__init__()=paramiko.SubsystemHandler-class.html#__init__,Method paramiko.Transport.__init__()=paramiko.Transport-class.html#__init__,Method paramiko.ber.BER.__init__()=paramiko.ber.BER-class.html#__init__,Method paramiko.buffered_pipe.BufferedPipe.__init__()=paramiko.buffered_pipe.BufferedPipe-class.html#__init__,Method paramiko.channel.ChannelStderrFile.__init__()=paramiko.channel.ChannelStderrFile-class.html#__init__,Method paramiko.compress.ZlibCompressor.__init__()=paramiko.compress.ZlibCompressor-class.html#__init__,Method paramiko.compress.ZlibDecompressor.__init__()=paramiko.compress.ZlibDecompressor-class.html#__init__,Method paramiko.hostkeys.HostKeyEntry.__init__()=paramiko.hostkeys.HostKeyEntry-class.html#__init__,Method paramiko.kex_gex.KexGex.__init__()=paramiko.kex_gex.KexGex-class.html#__init__,Method paramiko.kex_group1.KexGroup1.__init__()=paramiko.kex_group1.KexGroup1-class.html#__init__,Method paramiko.logging22.Formatter.__init__()=paramiko.logging22.Formatter-class.html#__init__,Method paramiko.logging22.StreamHandler.__init__()=paramiko.logging22.StreamHandler-class.html#__init__,Method paramiko.logging22.logger.__init__()=paramiko.logging22.logger-class.html#__init__,Method paramiko.pipe.OrPipe.__init__()=paramiko.pipe.OrPipe-class.html#__init__,Method paramiko.pipe.PosixPipe.__init__()=paramiko.pipe.PosixPipe-class.html#__init__,Method paramiko.pipe.WindowsPipe.__init__()=paramiko.pipe.WindowsPipe-class.html#__init__,Method paramiko.primes.ModulusPack.__init__()=paramiko.primes.ModulusPack-class.html#__init__,Method paramiko.ssh_exception.PartialAuthentication.__init__()=paramiko.ssh_exception.PartialAuthentication-class.html#__init__,Method paramiko.transport.ChannelMap.__init__()=paramiko.transport.ChannelMap-class.html#__init__,Method paramiko.util.Counter.__init__()=paramiko.util.Counter-class.html#__init__,Method paramiko.util.enumerate.__init__()=paramiko.util.enumerate-class.html#__init__,Method paramiko.win_pageant.PageantConnection.__init__()=paramiko.win_pageant.PageantConnection-class.html#__init__"><a title="paramiko.Agent.__init__
-paramiko.AgentKey.__init__
-paramiko.BadAuthenticationType.__init__
-paramiko.BadHostKeyException.__init__
-paramiko.BufferedFile.__init__
-paramiko.Channel.__init__
-paramiko.ChannelException.__init__
-paramiko.DSSKey.__init__
-paramiko.HostKeys.__init__
-paramiko.Message.__init__
-paramiko.PKey.__init__
-paramiko.RSAKey.__init__
-paramiko.SFTPAttributes.__init__
-paramiko.SFTPClient.__init__
-paramiko.SFTPFile.__init__
-paramiko.SFTPHandle.__init__
-paramiko.SFTPServer.__init__
-paramiko.SFTPServerInterface.__init__
-paramiko.SSHClient.__init__
-paramiko.SSHConfig.__init__
-paramiko.SecurityOptions.__init__
-paramiko.SubsystemHandler.__init__
-paramiko.Transport.__init__
-paramiko.ber.BER.__init__
-paramiko.buffered_pipe.BufferedPipe.__init__
-paramiko.channel.ChannelStderrFile.__init__
-paramiko.compress.ZlibCompressor.__init__
-paramiko.compress.ZlibDecompressor.__init__
-paramiko.hostkeys.HostKeyEntry.__init__
-paramiko.kex_gex.KexGex.__init__
-paramiko.kex_group1.KexGroup1.__init__
-paramiko.logging22.Formatter.__init__
-paramiko.logging22.StreamHandler.__init__
-paramiko.logging22.logger.__init__
-paramiko.pipe.OrPipe.__init__
-paramiko.pipe.PosixPipe.__init__
-paramiko.pipe.WindowsPipe.__init__
-paramiko.primes.ModulusPack.__init__
-paramiko.ssh_exception.PartialAuthentication.__init__
-paramiko.transport.ChannelMap.__init__
-paramiko.util.Counter.__init__
-paramiko.util.enumerate.__init__
-paramiko.win_pageant.PageantConnection.__init__" class="py-name" href="#" onclick="return doclink('link-18', '__init__', 'link-18');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_run</tt><tt class="py-op">)</tt> </tt>
-<a name="L571"></a><tt class="py-lineno">571</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__channel</tt> <tt class="py-op">=</tt> <tt id="link-19" class="py-name"><a title="paramiko.channel" class="py-name" href="#" onclick="return doclink('link-19', 'channel', 'link-12');">channel</a></tt> </tt>
-<a name="L572"></a><tt class="py-lineno">572</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__transport</tt> <tt class="py-op">=</tt> <tt id="link-20" class="py-name"><a title="paramiko.channel" class="py-name" href="#" onclick="return doclink('link-20', 'channel', 'link-12');">channel</a></tt><tt class="py-op">.</tt><tt id="link-21" class="py-name"><a title="paramiko.Channel.get_transport
-paramiko.SSHClient.get_transport" class="py-name" href="#" onclick="return doclink('link-21', 'get_transport', 'link-13');">get_transport</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L573"></a><tt class="py-lineno">573</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__name</tt> <tt class="py-op">=</tt> <tt id="link-22" class="py-name"><a title="paramiko.kex_gex.KexGex.name
-paramiko.kex_group1.KexGroup1.name" class="py-name" href="#" onclick="return doclink('link-22', 'name', 'link-4');">name</a></tt> </tt>
-<a name="L574"></a><tt class="py-lineno">574</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__server</tt> <tt class="py-op">=</tt> <tt id="link-23" class="py-name" targets="Module paramiko.server=paramiko.server-module.html"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-23', 'server', 'link-23');">server</a></tt> </tt>
-</div><a name="L575"></a><tt class="py-lineno">575</tt> <tt class="py-line"> </tt>
-<a name="SubsystemHandler.get_server"></a><div id="SubsystemHandler.get_server-def"><a name="L576"></a><tt class="py-lineno">576</tt> <a class="py-toggle" href="#" id="SubsystemHandler.get_server-toggle" onclick="return toggle('SubsystemHandler.get_server');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.server.SubsystemHandler-class.html#get_server">get_server</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SubsystemHandler.get_server-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SubsystemHandler.get_server-expanded"><a name="L577"></a><tt class="py-lineno">577</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L578"></a><tt class="py-lineno">578</tt> <tt class="py-line"><tt class="py-docstring"> Return the L{ServerInterface} object associated with this channel and</tt> </tt>
-<a name="L579"></a><tt class="py-lineno">579</tt> <tt class="py-line"><tt class="py-docstring"> subsystem.</tt> </tt>
-<a name="L580"></a><tt class="py-lineno">580</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L581"></a><tt class="py-lineno">581</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: L{ServerInterface}</tt> </tt>
-<a name="L582"></a><tt class="py-lineno">582</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L583"></a><tt class="py-lineno">583</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__server</tt> </tt>
-</div><a name="L584"></a><tt class="py-lineno">584</tt> <tt class="py-line"> </tt>
-<a name="SubsystemHandler._run"></a><div id="SubsystemHandler._run-def"><a name="L585"></a><tt class="py-lineno">585</tt> <a class="py-toggle" href="#" id="SubsystemHandler._run-toggle" onclick="return toggle('SubsystemHandler._run');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.server.SubsystemHandler-class.html#_run">_run</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SubsystemHandler._run-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SubsystemHandler._run-expanded"><a name="L586"></a><tt class="py-lineno">586</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L587"></a><tt class="py-lineno">587</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__transport</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-24" class="py-name" targets="Variable paramiko.auth_handler.DEBUG=paramiko.auth_handler-module.html#DEBUG,Variable paramiko.channel.DEBUG=paramiko.channel-module.html#DEBUG,Variable paramiko.client.DEBUG=paramiko.client-module.html#DEBUG,Variable paramiko.common.DEBUG=paramiko.common-module.html#DEBUG,Variable paramiko.dsskey.DEBUG=paramiko.dsskey-module.html#DEBUG,Variable paramiko.hostkeys.DEBUG=paramiko.hostkeys-module.html#DEBUG,Variable paramiko.kex_gex.DEBUG=paramiko.kex_gex-module.html#DEBUG,Variable paramiko.kex_group1.DEBUG=paramiko.kex_group1-module.html#DEBUG,Variable paramiko.logging22.DEBUG=paramiko.logging22-module.html#DEBUG,Variable paramiko.packet.DEBUG=paramiko.packet-module.html#DEBUG,Variable paramiko.pkey.DEBUG=paramiko.pkey-module.html#DEBUG,Variable paramiko.rsakey.DEBUG=paramiko.rsakey-module.html#DEBUG,Variable paramiko.server.DEBUG=paramiko.server-module.html#DEBUG,Variable paramiko.sftp.DEBUG=paramiko.sftp-module.html#DEBUG,Variable paramiko.sftp_attr.DEBUG=paramiko.sftp_attr-module.html#DEBUG,Variable paramiko.sftp_client.DEBUG=paramiko.sftp_client-module.html#DEBUG,Variable paramiko.sftp_file.DEBUG=paramiko.sftp_file-module.html#DEBUG,Variable paramiko.sftp_handle.DEBUG=paramiko.sftp_handle-module.html#DEBUG,Variable paramiko.sftp_server.DEBUG=paramiko.sftp_server-module.html#DEBUG,Variable paramiko.sftp_si.DEBUG=paramiko.sftp_si-module.html#DEBUG,Variable paramiko.transport.DEBUG=paramiko.transport-module.html#DEBUG,Variable paramiko.util.DEBUG=paramiko.util-module.html#DEBUG"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-24', 'DEBUG', 'link-24');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Starting handler for subsystem %s'</tt> <tt class="py-op">%</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__name</tt><tt class="py-op">)</tt> </tt>
-<a name="L588"></a><tt class="py-lineno">588</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name" targets="Method paramiko.SFTPServer.start_subsystem()=paramiko.SFTPServer-class.html#start_subsystem,Method paramiko.SubsystemHandler.start_subsystem()=paramiko.SubsystemHandler-class.html#start_subsystem"><a title="paramiko.SFTPServer.start_subsystem
-paramiko.SubsystemHandler.start_subsystem" class="py-name" href="#" onclick="return doclink('link-25', 'start_subsystem', 'link-25');">start_subsystem</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__name</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__transport</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__channel</tt><tt class="py-op">)</tt> </tt>
-<a name="L589"></a><tt class="py-lineno">589</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L590"></a><tt class="py-lineno">590</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__transport</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-26" class="py-name" targets="Variable paramiko.auth_handler.ERROR=paramiko.auth_handler-module.html#ERROR,Variable paramiko.channel.ERROR=paramiko.channel-module.html#ERROR,Variable paramiko.client.ERROR=paramiko.client-module.html#ERROR,Variable paramiko.common.ERROR=paramiko.common-module.html#ERROR,Variable paramiko.dsskey.ERROR=paramiko.dsskey-module.html#ERROR,Variable paramiko.hostkeys.ERROR=paramiko.hostkeys-module.html#ERROR,Variable paramiko.kex_gex.ERROR=paramiko.kex_gex-module.html#ERROR,Variable paramiko.kex_group1.ERROR=paramiko.kex_group1-module.html#ERROR,Variable paramiko.logging22.ERROR=paramiko.logging22-module.html#ERROR,Variable paramiko.packet.ERROR=paramiko.packet-module.html#ERROR,Variable paramiko.pkey.ERROR=paramiko.pkey-module.html#ERROR,Variable paramiko.rsakey.ERROR=paramiko.rsakey-module.html#ERROR,Variable paramiko.server.ERROR=paramiko.server-module.html#ERROR,Variable paramiko.sftp.ERROR=paramiko.sftp-module.html#ERROR,Variable paramiko.sftp_attr.ERROR=paramiko.sftp_attr-module.html#ERROR,Variable paramiko.sftp_client.ERROR=paramiko.sftp_client-module.html#ERROR,Variable paramiko.sftp_file.ERROR=paramiko.sftp_file-module.html#ERROR,Variable paramiko.sftp_handle.ERROR=paramiko.sftp_handle-module.html#ERROR,Variable paramiko.sftp_server.ERROR=paramiko.sftp_server-module.html#ERROR,Variable paramiko.sftp_si.ERROR=paramiko.sftp_si-module.html#ERROR,Variable paramiko.transport.ERROR=paramiko.transport-module.html#ERROR,Variable paramiko.util.ERROR=paramiko.util-module.html#ERROR"><a title="paramiko.auth_handler.ERROR
-paramiko.channel.ERROR
-paramiko.client.ERROR
-paramiko.common.ERROR
-paramiko.dsskey.ERROR
-paramiko.hostkeys.ERROR
-paramiko.kex_gex.ERROR
-paramiko.kex_group1.ERROR
-paramiko.logging22.ERROR
-paramiko.packet.ERROR
-paramiko.pkey.ERROR
-paramiko.rsakey.ERROR
-paramiko.server.ERROR
-paramiko.sftp.ERROR
-paramiko.sftp_attr.ERROR
-paramiko.sftp_client.ERROR
-paramiko.sftp_file.ERROR
-paramiko.sftp_handle.ERROR
-paramiko.sftp_server.ERROR
-paramiko.sftp_si.ERROR
-paramiko.transport.ERROR
-paramiko.util.ERROR" class="py-name" href="#" onclick="return doclink('link-26', 'ERROR', 'link-26');">ERROR</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Exception in subsystem handler for "%s": %s'</tt> <tt class="py-op">%</tt> </tt>
-<a name="L591"></a><tt class="py-lineno">591</tt> <tt class="py-line"> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__name</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L592"></a><tt class="py-lineno">592</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__transport</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-27" class="py-name"><a title="paramiko.auth_handler.ERROR
-paramiko.channel.ERROR
-paramiko.client.ERROR
-paramiko.common.ERROR
-paramiko.dsskey.ERROR
-paramiko.hostkeys.ERROR
-paramiko.kex_gex.ERROR
-paramiko.kex_group1.ERROR
-paramiko.logging22.ERROR
-paramiko.packet.ERROR
-paramiko.pkey.ERROR
-paramiko.rsakey.ERROR
-paramiko.server.ERROR
-paramiko.sftp.ERROR
-paramiko.sftp_attr.ERROR
-paramiko.sftp_client.ERROR
-paramiko.sftp_file.ERROR
-paramiko.sftp_handle.ERROR
-paramiko.sftp_server.ERROR
-paramiko.sftp_si.ERROR
-paramiko.transport.ERROR
-paramiko.util.ERROR" class="py-name" href="#" onclick="return doclink('link-27', 'ERROR', 'link-26');">ERROR</a></tt><tt class="py-op">,</tt> <tt id="link-28" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-28', 'util', 'link-3');">util</a></tt><tt class="py-op">.</tt><tt id="link-29" class="py-name" targets="Function paramiko.util.tb_strings()=paramiko.util-module.html#tb_strings"><a title="paramiko.util.tb_strings" class="py-name" href="#" onclick="return doclink('link-29', 'tb_strings', 'link-29');">tb_strings</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L593"></a><tt class="py-lineno">593</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L594"></a><tt class="py-lineno">594</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name" targets="Method paramiko.SFTPServer.finish_subsystem()=paramiko.SFTPServer-class.html#finish_subsystem,Method paramiko.SubsystemHandler.finish_subsystem()=paramiko.SubsystemHandler-class.html#finish_subsystem"><a title="paramiko.SFTPServer.finish_subsystem
-paramiko.SubsystemHandler.finish_subsystem" class="py-name" href="#" onclick="return doclink('link-30', 'finish_subsystem', 'link-30');">finish_subsystem</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L595"></a><tt class="py-lineno">595</tt> <tt class="py-line"> <tt class="py-keyword">except</tt><tt class="py-op">:</tt> </tt>
-<a name="L596"></a><tt class="py-lineno">596</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-</div><a name="L597"></a><tt class="py-lineno">597</tt> <tt class="py-line"> </tt>
-<a name="SubsystemHandler.start_subsystem"></a><div id="SubsystemHandler.start_subsystem-def"><a name="L598"></a><tt class="py-lineno">598</tt> <a class="py-toggle" href="#" id="SubsystemHandler.start_subsystem-toggle" onclick="return toggle('SubsystemHandler.start_subsystem');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.server.SubsystemHandler-class.html#start_subsystem">start_subsystem</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">name</tt><tt class="py-op">,</tt> <tt class="py-param">transport</tt><tt class="py-op">,</tt> <tt class="py-param">channel</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SubsystemHandler.start_subsystem-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SubsystemHandler.start_subsystem-expanded"><a name="L599"></a><tt class="py-lineno">599</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L600"></a><tt class="py-lineno">600</tt> <tt class="py-line"><tt class="py-docstring"> Process an ssh subsystem in server mode. This method is called on a</tt> </tt>
-<a name="L601"></a><tt class="py-lineno">601</tt> <tt class="py-line"><tt class="py-docstring"> new object (and in a new thread) for each subsystem request. It is</tt> </tt>
-<a name="L602"></a><tt class="py-lineno">602</tt> <tt class="py-line"><tt class="py-docstring"> assumed that all subsystem logic will take place here, and when the</tt> </tt>
-<a name="L603"></a><tt class="py-lineno">603</tt> <tt class="py-line"><tt class="py-docstring"> subsystem is finished, this method will return. After this method</tt> </tt>
-<a name="L604"></a><tt class="py-lineno">604</tt> <tt class="py-line"><tt class="py-docstring"> returns, the channel is closed.</tt> </tt>
-<a name="L605"></a><tt class="py-lineno">605</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L606"></a><tt class="py-lineno">606</tt> <tt class="py-line"><tt class="py-docstring"> The combination of C{transport} and C{channel} are unique; this handler</tt> </tt>
-<a name="L607"></a><tt class="py-lineno">607</tt> <tt class="py-line"><tt class="py-docstring"> corresponds to exactly one L{Channel} on one L{Transport}.</tt> </tt>
-<a name="L608"></a><tt class="py-lineno">608</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L609"></a><tt class="py-lineno">609</tt> <tt class="py-line"><tt class="py-docstring"> @note: It is the responsibility of this method to exit if the</tt> </tt>
-<a name="L610"></a><tt class="py-lineno">610</tt> <tt class="py-line"><tt class="py-docstring"> underlying L{Transport} is closed. This can be done by checking</tt> </tt>
-<a name="L611"></a><tt class="py-lineno">611</tt> <tt class="py-line"><tt class="py-docstring"> L{Transport.is_active} or noticing an EOF</tt> </tt>
-<a name="L612"></a><tt class="py-lineno">612</tt> <tt class="py-line"><tt class="py-docstring"> on the L{Channel}. If this method loops forever without checking</tt> </tt>
-<a name="L613"></a><tt class="py-lineno">613</tt> <tt class="py-line"><tt class="py-docstring"> for this case, your python interpreter may refuse to exit because</tt> </tt>
-<a name="L614"></a><tt class="py-lineno">614</tt> <tt class="py-line"><tt class="py-docstring"> this thread will still be running.</tt> </tt>
-<a name="L615"></a><tt class="py-lineno">615</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L616"></a><tt class="py-lineno">616</tt> <tt class="py-line"><tt class="py-docstring"> @param name: name of the requested subsystem.</tt> </tt>
-<a name="L617"></a><tt class="py-lineno">617</tt> <tt class="py-line"><tt class="py-docstring"> @type name: str</tt> </tt>
-<a name="L618"></a><tt class="py-lineno">618</tt> <tt class="py-line"><tt class="py-docstring"> @param transport: the server-mode L{Transport}.</tt> </tt>
-<a name="L619"></a><tt class="py-lineno">619</tt> <tt class="py-line"><tt class="py-docstring"> @type transport: L{Transport}</tt> </tt>
-<a name="L620"></a><tt class="py-lineno">620</tt> <tt class="py-line"><tt class="py-docstring"> @param channel: the channel associated with this subsystem request.</tt> </tt>
-<a name="L621"></a><tt class="py-lineno">621</tt> <tt class="py-line"><tt class="py-docstring"> @type channel: L{Channel}</tt> </tt>
-<a name="L622"></a><tt class="py-lineno">622</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L623"></a><tt class="py-lineno">623</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-</div><a name="L624"></a><tt class="py-lineno">624</tt> <tt class="py-line"> </tt>
-<a name="SubsystemHandler.finish_subsystem"></a><div id="SubsystemHandler.finish_subsystem-def"><a name="L625"></a><tt class="py-lineno">625</tt> <a class="py-toggle" href="#" id="SubsystemHandler.finish_subsystem-toggle" onclick="return toggle('SubsystemHandler.finish_subsystem');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.server.SubsystemHandler-class.html#finish_subsystem">finish_subsystem</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SubsystemHandler.finish_subsystem-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SubsystemHandler.finish_subsystem-expanded"><a name="L626"></a><tt class="py-lineno">626</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L627"></a><tt class="py-lineno">627</tt> <tt class="py-line"><tt class="py-docstring"> Perform any cleanup at the end of a subsystem. The default</tt> </tt>
-<a name="L628"></a><tt class="py-lineno">628</tt> <tt class="py-line"><tt class="py-docstring"> implementation just closes the channel.</tt> </tt>
-<a name="L629"></a><tt class="py-lineno">629</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L630"></a><tt class="py-lineno">630</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.1</tt> </tt>
-<a name="L631"></a><tt class="py-lineno">631</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L632"></a><tt class="py-lineno">632</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__channel</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name" targets="Method paramiko.Agent.close()=paramiko.Agent-class.html#close,Method paramiko.BufferedFile.close()=paramiko.BufferedFile-class.html#close,Method paramiko.Channel.close()=paramiko.Channel-class.html#close,Method paramiko.SFTPClient.close()=paramiko.SFTPClient-class.html#close,Method paramiko.SFTPFile.close()=paramiko.SFTPFile-class.html#close,Method paramiko.SFTPHandle.close()=paramiko.SFTPHandle-class.html#close,Method paramiko.SSHClient.close()=paramiko.SSHClient-class.html#close,Method paramiko.Transport.close()=paramiko.Transport-class.html#close,Method paramiko.buffered_pipe.BufferedPipe.close()=paramiko.buffered_pipe.BufferedPipe-class.html#close,Method paramiko.pipe.PosixPipe.close()=paramiko.pipe.PosixPipe-class.html#close,Method paramiko.pipe.WindowsPipe.close()=paramiko.pipe.WindowsPipe-class.html#close,Method paramiko.win_pageant.PageantConnection.close()=paramiko.win_pageant.PageantConnection-class.html#close"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-31', 'close', 'link-31');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L633"></a><tt class="py-lineno">633</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:04 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.sftp-module.html b/docs/paramiko.sftp-module.html
deleted file mode 100644
index 98d25d5..0000000
--- a/docs/paramiko.sftp-module.html
+++ /dev/null
@@ -1,905 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.sftp</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;sftp
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.sftp-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module sftp</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.sftp-pysrc.html">source&nbsp;code</a></span></p>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_OK"></a><span class="summary-name">SFTP_OK</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.sftp-module.html#SFTP_DESC" class="summary-name">SFTP_DESC</a> = <code title="['Success',
- 'End of file',
- 'No such file',
- 'Permission denied',
- 'Failure',
- 'Bad message',
- 'No connection',
- 'Connection lost',
-..."><code class="variable-group">[</code><code class="variable-quote">'</code><code class="variable-string">Success</code><code class="variable-quote">'</code><code class="variable-op">, </code><code class="variable-quote">'</code><code class="variable-string">End of file</code><code class="variable-quote">'</code><code class="variable-op">, </code><code class="variable-quote">'</code><code class="variable-string">No such file</code><code class="variable-quote">'</code><code class="variable-op">, </code><code class="variable-quote">'</code><code class="variable-string">Permis</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_READ"></a><span class="summary-name">SFTP_FLAG_READ</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_WRITE"></a><span class="summary-name">SFTP_FLAG_WRITE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_APPEND"></a><span class="summary-name">SFTP_FLAG_APPEND</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_CREATE"></a><span class="summary-name">SFTP_FLAG_CREATE</span> = <code title="8">8</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_TRUNC"></a><span class="summary-name">SFTP_FLAG_TRUNC</span> = <code title="16">16</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_EXCL"></a><span class="summary-name">SFTP_FLAG_EXCL</span> = <code title="32">32</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.sftp-module.html#CMD_NAMES" class="summary-name">CMD_NAMES</a> = <code title="{1: 'init',
- 2: 'version',
- 3: 'open',
- 4: 'close',
- 5: 'read',
- 6: 'write',
- 7: 'lstat',
- 8: 'fstat',
-..."><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">init</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">version</code><code class="variable-quote">'</code><code class="variable-op">, </code>3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">open</code><code class="variable-quote">'</code><code class="variable-op">, </code>4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">close</code><code class="variable-quote">'</code><code class="variable-op">, </code>5<code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_FAILED"></a><span class="summary-name">AUTH_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_PARTIALLY_SUCCESSFUL"></a><span class="summary-name">AUTH_PARTIALLY_SUCCESSFUL</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_SUCCESSFUL"></a><span class="summary-name">AUTH_SUCCESSFUL</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_ATTRS"></a><span class="summary-name">CMD_ATTRS</span> = <code title="105">105</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_CLOSE"></a><span class="summary-name">CMD_CLOSE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_DATA"></a><span class="summary-name">CMD_DATA</span> = <code title="103">103</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_EXTENDED"></a><span class="summary-name">CMD_EXTENDED</span> = <code title="200">200</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_EXTENDED_REPLY"></a><span class="summary-name">CMD_EXTENDED_REPLY</span> = <code title="201">201</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_FSETSTAT"></a><span class="summary-name">CMD_FSETSTAT</span> = <code title="10">10</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_FSTAT"></a><span class="summary-name">CMD_FSTAT</span> = <code title="8">8</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_HANDLE"></a><span class="summary-name">CMD_HANDLE</span> = <code title="102">102</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_INIT"></a><span class="summary-name">CMD_INIT</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_LSTAT"></a><span class="summary-name">CMD_LSTAT</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_MKDIR"></a><span class="summary-name">CMD_MKDIR</span> = <code title="14">14</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_NAME"></a><span class="summary-name">CMD_NAME</span> = <code title="104">104</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_OPEN"></a><span class="summary-name">CMD_OPEN</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_OPENDIR"></a><span class="summary-name">CMD_OPENDIR</span> = <code title="11">11</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_READ"></a><span class="summary-name">CMD_READ</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_READDIR"></a><span class="summary-name">CMD_READDIR</span> = <code title="12">12</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_READLINK"></a><span class="summary-name">CMD_READLINK</span> = <code title="19">19</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_REALPATH"></a><span class="summary-name">CMD_REALPATH</span> = <code title="16">16</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_REMOVE"></a><span class="summary-name">CMD_REMOVE</span> = <code title="13">13</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_RENAME"></a><span class="summary-name">CMD_RENAME</span> = <code title="18">18</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_RMDIR"></a><span class="summary-name">CMD_RMDIR</span> = <code title="15">15</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_SETSTAT"></a><span class="summary-name">CMD_SETSTAT</span> = <code title="9">9</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_STAT"></a><span class="summary-name">CMD_STAT</span> = <code title="17">17</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_STATUS"></a><span class="summary-name">CMD_STATUS</span> = <code title="101">101</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_SYMLINK"></a><span class="summary-name">CMD_SYMLINK</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_VERSION"></a><span class="summary-name">CMD_VERSION</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_WRITE"></a><span class="summary-name">CMD_WRITE</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.sftp-module.html#CONNECTION_FAILED_CODE" class="summary-name">CONNECTION_FAILED_CODE</a> = <code title="{1: 'Administratively prohibited',
- 2: 'Connect failed',
- 3: 'Unknown channel type',
- 4: 'Resource shortage'}"><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">:</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CRITICAL"></a><span class="summary-name">CRITICAL</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DEBUG"></a><span class="summary-name">DEBUG</span> = <code title="10">10</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_AUTH_CANCELLED_BY_USER"></a><span class="summary-name">DISCONNECT_AUTH_CANCELLED_BY_USER</span> = <code title="13">13</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE"></a><span class="summary-name">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</span> = <code title="14">14</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_SERVICE_NOT_AVAILABLE"></a><span class="summary-name">DISCONNECT_SERVICE_NOT_AVAILABLE</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="ERROR"></a><span class="summary-name">ERROR</span> = <code title="40">40</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="INFO"></a><span class="summary-name">INFO</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_CLOSE"></a><span class="summary-name">MSG_CHANNEL_CLOSE</span> = <code title="97">97</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_DATA"></a><span class="summary-name">MSG_CHANNEL_DATA</span> = <code title="94">94</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EOF"></a><span class="summary-name">MSG_CHANNEL_EOF</span> = <code title="96">96</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EXTENDED_DATA"></a><span class="summary-name">MSG_CHANNEL_EXTENDED_DATA</span> = <code title="95">95</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_FAILURE"></a><span class="summary-name">MSG_CHANNEL_FAILURE</span> = <code title="100">100</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN"></a><span class="summary-name">MSG_CHANNEL_OPEN</span> = <code title="90">90</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_FAILURE"></a><span class="summary-name">MSG_CHANNEL_OPEN_FAILURE</span> = <code title="92">92</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_OPEN_SUCCESS</span> = <code title="91">91</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_REQUEST"></a><span class="summary-name">MSG_CHANNEL_REQUEST</span> = <code title="98">98</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_SUCCESS</span> = <code title="99">99</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_WINDOW_ADJUST"></a><span class="summary-name">MSG_CHANNEL_WINDOW_ADJUST</span> = <code title="93">93</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DEBUG"></a><span class="summary-name">MSG_DEBUG</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DISCONNECT"></a><span class="summary-name">MSG_DISCONNECT</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_GLOBAL_REQUEST"></a><span class="summary-name">MSG_GLOBAL_REQUEST</span> = <code title="80">80</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_IGNORE"></a><span class="summary-name">MSG_IGNORE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_KEXINIT"></a><span class="summary-name">MSG_KEXINIT</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.sftp-module.html#MSG_NAMES" class="summary-name">MSG_NAMES</a> = <code title="{1: 'disconnect',
- 2: 'ignore',
- 3: 'unimplemented',
- 4: 'debug',
- 5: 'service-request',
- 6: 'service-accept',
- 20: 'kexinit',
- 21: 'newkeys',
-..."><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">, </code>3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_NEWKEYS"></a><span class="summary-name">MSG_NEWKEYS</span> = <code title="21">21</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_FAILURE"></a><span class="summary-name">MSG_REQUEST_FAILURE</span> = <code title="82">82</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_SUCCESS"></a><span class="summary-name">MSG_REQUEST_SUCCESS</span> = <code title="81">81</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_ACCEPT"></a><span class="summary-name">MSG_SERVICE_ACCEPT</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_REQUEST"></a><span class="summary-name">MSG_SERVICE_REQUEST</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_UNIMPLEMENTED"></a><span class="summary-name">MSG_UNIMPLEMENTED</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_BANNER"></a><span class="summary-name">MSG_USERAUTH_BANNER</span> = <code title="53">53</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_FAILURE"></a><span class="summary-name">MSG_USERAUTH_FAILURE</span> = <code title="51">51</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_REQUEST"></a><span class="summary-name">MSG_USERAUTH_INFO_REQUEST</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_RESPONSE"></a><span class="summary-name">MSG_USERAUTH_INFO_RESPONSE</span> = <code title="61">61</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_PK_OK"></a><span class="summary-name">MSG_USERAUTH_PK_OK</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_REQUEST"></a><span class="summary-name">MSG_USERAUTH_REQUEST</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_SUCCESS"></a><span class="summary-name">MSG_USERAUTH_SUCCESS</span> = <code title="52">52</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED"></a><span class="summary-name">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_CONNECT_FAILED"></a><span class="summary-name">OPEN_FAILED_CONNECT_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_RESOURCE_SHORTAGE"></a><span class="summary-name">OPEN_FAILED_RESOURCE_SHORTAGE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_UNKNOWN_CHANNEL_TYPE"></a><span class="summary-name">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_SUCCEEDED"></a><span class="summary-name">OPEN_SUCCEEDED</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="PY22"></a><span class="summary-name">PY22</span> = <code title="False">False</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_BAD_MESSAGE"></a><span class="summary-name">SFTP_BAD_MESSAGE</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_CONNECTION_LOST"></a><span class="summary-name">SFTP_CONNECTION_LOST</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_EOF"></a><span class="summary-name">SFTP_EOF</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FAILURE"></a><span class="summary-name">SFTP_FAILURE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_NO_CONNECTION"></a><span class="summary-name">SFTP_NO_CONNECTION</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_NO_SUCH_FILE"></a><span class="summary-name">SFTP_NO_SUCH_FILE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_OP_UNSUPPORTED"></a><span class="summary-name">SFTP_OP_UNSUPPORTED</span> = <code title="8">8</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_PERMISSION_DENIED"></a><span class="summary-name">SFTP_PERMISSION_DENIED</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="WARNING"></a><span class="summary-name">WARNING</span> = <code title="30">30</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'paramiko'"><code class="variable-quote">'</code><code class="variable-string">paramiko</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="rng"></a><span class="summary-name">rng</span> = <code title="Random.new()">Random.new()</code>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES DETAILS ==================== -->
-<a name="section-VariablesDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables Details</span></td>
-</tr>
-</table>
-<a name="SFTP_DESC"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">SFTP_DESC</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">[</code><code class="variable-quote">'</code><code class="variable-string">Success</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">End of file</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">No such file</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">Permission denied</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">Failure</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">Bad message</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">No connection</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">Connection lost</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="CMD_NAMES"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">CMD_NAMES</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">init</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">version</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">open</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">close</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 5<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">read</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 6<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">write</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 7<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">lstat</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 8<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">fstat</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="CONNECTION_FAILED_CODE"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">CONNECTION_FAILED_CODE</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Connect failed</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Unknown channel type</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Resource shortage</code><code class="variable-quote">'</code><code class="variable-group">}</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="MSG_NAMES"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">MSG_NAMES</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">debug</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 5<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-request</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 6<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-accept</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 20<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">kexinit</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 21<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">newkeys</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:02 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.sftp-pysrc.html b/docs/paramiko.sftp-pysrc.html
deleted file mode 100644
index c01fb55..0000000
--- a/docs/paramiko.sftp-pysrc.html
+++ /dev/null
@@ -1,798 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.sftp</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;sftp
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.sftp-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.sftp-module.html" onclick="show_private();">Module paramiko.sftp</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2003-2007 Robey Pointer &lt;robeypointer@gmail.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">select</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">socket</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">struct</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package paramiko=paramiko-module.html"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-0', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Module paramiko.common=paramiko.common-module.html"><a title="paramiko.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt> <tt class="py-keyword">import</tt> <tt class="py-op">*</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-2" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-2', 'paramiko', 'link-0');">paramiko</a></tt> <tt class="py-keyword">import</tt> <tt id="link-3" class="py-name" targets="Module paramiko.util=paramiko.util-module.html"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-3', 'util', 'link-3');">util</a></tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-4" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-4', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Module paramiko.channel=paramiko.channel-module.html"><a title="paramiko.channel" class="py-name" href="#" onclick="return doclink('link-5', 'channel', 'link-5');">channel</a></tt> <tt class="py-keyword">import</tt> <tt id="link-6" class="py-name" targets="Class paramiko.Channel=paramiko.Channel-class.html"><a title="paramiko.Channel" class="py-name" href="#" onclick="return doclink('link-6', 'Channel', 'link-6');">Channel</a></tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-7" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-7', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Module paramiko.message=paramiko.message-module.html"><a title="paramiko.message" class="py-name" href="#" onclick="return doclink('link-8', 'message', 'link-8');">message</a></tt> <tt class="py-keyword">import</tt> <tt id="link-9" class="py-name" targets="Class paramiko.Message=paramiko.Message-class.html"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-9', 'Message', 'link-9');">Message</a></tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"><tt id="link-10" class="py-name" targets="Variable paramiko.sftp.CMD_INIT=paramiko.sftp-module.html#CMD_INIT,Variable paramiko.sftp_attr.CMD_INIT=paramiko.sftp_attr-module.html#CMD_INIT,Variable paramiko.sftp_client.CMD_INIT=paramiko.sftp_client-module.html#CMD_INIT,Variable paramiko.sftp_file.CMD_INIT=paramiko.sftp_file-module.html#CMD_INIT,Variable paramiko.sftp_handle.CMD_INIT=paramiko.sftp_handle-module.html#CMD_INIT,Variable paramiko.sftp_server.CMD_INIT=paramiko.sftp_server-module.html#CMD_INIT,Variable paramiko.sftp_si.CMD_INIT=paramiko.sftp_si-module.html#CMD_INIT"><a title="paramiko.sftp.CMD_INIT
-paramiko.sftp_attr.CMD_INIT
-paramiko.sftp_client.CMD_INIT
-paramiko.sftp_file.CMD_INIT
-paramiko.sftp_handle.CMD_INIT
-paramiko.sftp_server.CMD_INIT
-paramiko.sftp_si.CMD_INIT" class="py-name" href="#" onclick="return doclink('link-10', 'CMD_INIT', 'link-10');">CMD_INIT</a></tt><tt class="py-op">,</tt> <tt id="link-11" class="py-name" targets="Variable paramiko.sftp.CMD_VERSION=paramiko.sftp-module.html#CMD_VERSION,Variable paramiko.sftp_attr.CMD_VERSION=paramiko.sftp_attr-module.html#CMD_VERSION,Variable paramiko.sftp_client.CMD_VERSION=paramiko.sftp_client-module.html#CMD_VERSION,Variable paramiko.sftp_file.CMD_VERSION=paramiko.sftp_file-module.html#CMD_VERSION,Variable paramiko.sftp_handle.CMD_VERSION=paramiko.sftp_handle-module.html#CMD_VERSION,Variable paramiko.sftp_server.CMD_VERSION=paramiko.sftp_server-module.html#CMD_VERSION,Variable paramiko.sftp_si.CMD_VERSION=paramiko.sftp_si-module.html#CMD_VERSION"><a title="paramiko.sftp.CMD_VERSION
-paramiko.sftp_attr.CMD_VERSION
-paramiko.sftp_client.CMD_VERSION
-paramiko.sftp_file.CMD_VERSION
-paramiko.sftp_handle.CMD_VERSION
-paramiko.sftp_server.CMD_VERSION
-paramiko.sftp_si.CMD_VERSION" class="py-name" href="#" onclick="return doclink('link-11', 'CMD_VERSION', 'link-11');">CMD_VERSION</a></tt><tt class="py-op">,</tt> <tt id="link-12" class="py-name" targets="Variable paramiko.sftp.CMD_OPEN=paramiko.sftp-module.html#CMD_OPEN,Variable paramiko.sftp_attr.CMD_OPEN=paramiko.sftp_attr-module.html#CMD_OPEN,Variable paramiko.sftp_client.CMD_OPEN=paramiko.sftp_client-module.html#CMD_OPEN,Variable paramiko.sftp_file.CMD_OPEN=paramiko.sftp_file-module.html#CMD_OPEN,Variable paramiko.sftp_handle.CMD_OPEN=paramiko.sftp_handle-module.html#CMD_OPEN,Variable paramiko.sftp_server.CMD_OPEN=paramiko.sftp_server-module.html#CMD_OPEN,Variable paramiko.sftp_si.CMD_OPEN=paramiko.sftp_si-module.html#CMD_OPEN"><a title="paramiko.sftp.CMD_OPEN
-paramiko.sftp_attr.CMD_OPEN
-paramiko.sftp_client.CMD_OPEN
-paramiko.sftp_file.CMD_OPEN
-paramiko.sftp_handle.CMD_OPEN
-paramiko.sftp_server.CMD_OPEN
-paramiko.sftp_si.CMD_OPEN" class="py-name" href="#" onclick="return doclink('link-12', 'CMD_OPEN', 'link-12');">CMD_OPEN</a></tt><tt class="py-op">,</tt> <tt id="link-13" class="py-name" targets="Variable paramiko.sftp.CMD_CLOSE=paramiko.sftp-module.html#CMD_CLOSE,Variable paramiko.sftp_attr.CMD_CLOSE=paramiko.sftp_attr-module.html#CMD_CLOSE,Variable paramiko.sftp_client.CMD_CLOSE=paramiko.sftp_client-module.html#CMD_CLOSE,Variable paramiko.sftp_file.CMD_CLOSE=paramiko.sftp_file-module.html#CMD_CLOSE,Variable paramiko.sftp_handle.CMD_CLOSE=paramiko.sftp_handle-module.html#CMD_CLOSE,Variable paramiko.sftp_server.CMD_CLOSE=paramiko.sftp_server-module.html#CMD_CLOSE,Variable paramiko.sftp_si.CMD_CLOSE=paramiko.sftp_si-module.html#CMD_CLOSE"><a title="paramiko.sftp.CMD_CLOSE
-paramiko.sftp_attr.CMD_CLOSE
-paramiko.sftp_client.CMD_CLOSE
-paramiko.sftp_file.CMD_CLOSE
-paramiko.sftp_handle.CMD_CLOSE
-paramiko.sftp_server.CMD_CLOSE
-paramiko.sftp_si.CMD_CLOSE" class="py-name" href="#" onclick="return doclink('link-13', 'CMD_CLOSE', 'link-13');">CMD_CLOSE</a></tt><tt class="py-op">,</tt> <tt id="link-14" class="py-name" targets="Variable paramiko.sftp.CMD_READ=paramiko.sftp-module.html#CMD_READ,Variable paramiko.sftp_attr.CMD_READ=paramiko.sftp_attr-module.html#CMD_READ,Variable paramiko.sftp_client.CMD_READ=paramiko.sftp_client-module.html#CMD_READ,Variable paramiko.sftp_file.CMD_READ=paramiko.sftp_file-module.html#CMD_READ,Variable paramiko.sftp_handle.CMD_READ=paramiko.sftp_handle-module.html#CMD_READ,Variable paramiko.sftp_server.CMD_READ=paramiko.sftp_server-module.html#CMD_READ,Variable paramiko.sftp_si.CMD_READ=paramiko.sftp_si-module.html#CMD_READ"><a title="paramiko.sftp.CMD_READ
-paramiko.sftp_attr.CMD_READ
-paramiko.sftp_client.CMD_READ
-paramiko.sftp_file.CMD_READ
-paramiko.sftp_handle.CMD_READ
-paramiko.sftp_server.CMD_READ
-paramiko.sftp_si.CMD_READ" class="py-name" href="#" onclick="return doclink('link-14', 'CMD_READ', 'link-14');">CMD_READ</a></tt><tt class="py-op">,</tt> <tt id="link-15" class="py-name" targets="Variable paramiko.sftp.CMD_WRITE=paramiko.sftp-module.html#CMD_WRITE,Variable paramiko.sftp_attr.CMD_WRITE=paramiko.sftp_attr-module.html#CMD_WRITE,Variable paramiko.sftp_client.CMD_WRITE=paramiko.sftp_client-module.html#CMD_WRITE,Variable paramiko.sftp_file.CMD_WRITE=paramiko.sftp_file-module.html#CMD_WRITE,Variable paramiko.sftp_handle.CMD_WRITE=paramiko.sftp_handle-module.html#CMD_WRITE,Variable paramiko.sftp_server.CMD_WRITE=paramiko.sftp_server-module.html#CMD_WRITE,Variable paramiko.sftp_si.CMD_WRITE=paramiko.sftp_si-module.html#CMD_WRITE"><a title="paramiko.sftp.CMD_WRITE
-paramiko.sftp_attr.CMD_WRITE
-paramiko.sftp_client.CMD_WRITE
-paramiko.sftp_file.CMD_WRITE
-paramiko.sftp_handle.CMD_WRITE
-paramiko.sftp_server.CMD_WRITE
-paramiko.sftp_si.CMD_WRITE" class="py-name" href="#" onclick="return doclink('link-15', 'CMD_WRITE', 'link-15');">CMD_WRITE</a></tt><tt class="py-op">,</tt> <tt id="link-16" class="py-name" targets="Variable paramiko.sftp.CMD_LSTAT=paramiko.sftp-module.html#CMD_LSTAT,Variable paramiko.sftp_attr.CMD_LSTAT=paramiko.sftp_attr-module.html#CMD_LSTAT,Variable paramiko.sftp_client.CMD_LSTAT=paramiko.sftp_client-module.html#CMD_LSTAT,Variable paramiko.sftp_file.CMD_LSTAT=paramiko.sftp_file-module.html#CMD_LSTAT,Variable paramiko.sftp_handle.CMD_LSTAT=paramiko.sftp_handle-module.html#CMD_LSTAT,Variable paramiko.sftp_server.CMD_LSTAT=paramiko.sftp_server-module.html#CMD_LSTAT,Variable paramiko.sftp_si.CMD_LSTAT=paramiko.sftp_si-module.html#CMD_LSTAT"><a title="paramiko.sftp.CMD_LSTAT
-paramiko.sftp_attr.CMD_LSTAT
-paramiko.sftp_client.CMD_LSTAT
-paramiko.sftp_file.CMD_LSTAT
-paramiko.sftp_handle.CMD_LSTAT
-paramiko.sftp_server.CMD_LSTAT
-paramiko.sftp_si.CMD_LSTAT" class="py-name" href="#" onclick="return doclink('link-16', 'CMD_LSTAT', 'link-16');">CMD_LSTAT</a></tt><tt class="py-op">,</tt> <tt id="link-17" class="py-name" targets="Variable paramiko.sftp.CMD_FSTAT=paramiko.sftp-module.html#CMD_FSTAT,Variable paramiko.sftp_attr.CMD_FSTAT=paramiko.sftp_attr-module.html#CMD_FSTAT,Variable paramiko.sftp_client.CMD_FSTAT=paramiko.sftp_client-module.html#CMD_FSTAT,Variable paramiko.sftp_file.CMD_FSTAT=paramiko.sftp_file-module.html#CMD_FSTAT,Variable paramiko.sftp_handle.CMD_FSTAT=paramiko.sftp_handle-module.html#CMD_FSTAT,Variable paramiko.sftp_server.CMD_FSTAT=paramiko.sftp_server-module.html#CMD_FSTAT,Variable paramiko.sftp_si.CMD_FSTAT=paramiko.sftp_si-module.html#CMD_FSTAT"><a title="paramiko.sftp.CMD_FSTAT
-paramiko.sftp_attr.CMD_FSTAT
-paramiko.sftp_client.CMD_FSTAT
-paramiko.sftp_file.CMD_FSTAT
-paramiko.sftp_handle.CMD_FSTAT
-paramiko.sftp_server.CMD_FSTAT
-paramiko.sftp_si.CMD_FSTAT" class="py-name" href="#" onclick="return doclink('link-17', 'CMD_FSTAT', 'link-17');">CMD_FSTAT</a></tt><tt class="py-op">,</tt> \ </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> <tt id="link-18" class="py-name" targets="Variable paramiko.sftp.CMD_SETSTAT=paramiko.sftp-module.html#CMD_SETSTAT,Variable paramiko.sftp_attr.CMD_SETSTAT=paramiko.sftp_attr-module.html#CMD_SETSTAT,Variable paramiko.sftp_client.CMD_SETSTAT=paramiko.sftp_client-module.html#CMD_SETSTAT,Variable paramiko.sftp_file.CMD_SETSTAT=paramiko.sftp_file-module.html#CMD_SETSTAT,Variable paramiko.sftp_handle.CMD_SETSTAT=paramiko.sftp_handle-module.html#CMD_SETSTAT,Variable paramiko.sftp_server.CMD_SETSTAT=paramiko.sftp_server-module.html#CMD_SETSTAT,Variable paramiko.sftp_si.CMD_SETSTAT=paramiko.sftp_si-module.html#CMD_SETSTAT"><a title="paramiko.sftp.CMD_SETSTAT
-paramiko.sftp_attr.CMD_SETSTAT
-paramiko.sftp_client.CMD_SETSTAT
-paramiko.sftp_file.CMD_SETSTAT
-paramiko.sftp_handle.CMD_SETSTAT
-paramiko.sftp_server.CMD_SETSTAT
-paramiko.sftp_si.CMD_SETSTAT" class="py-name" href="#" onclick="return doclink('link-18', 'CMD_SETSTAT', 'link-18');">CMD_SETSTAT</a></tt><tt class="py-op">,</tt> <tt id="link-19" class="py-name" targets="Variable paramiko.sftp.CMD_FSETSTAT=paramiko.sftp-module.html#CMD_FSETSTAT,Variable paramiko.sftp_attr.CMD_FSETSTAT=paramiko.sftp_attr-module.html#CMD_FSETSTAT,Variable paramiko.sftp_client.CMD_FSETSTAT=paramiko.sftp_client-module.html#CMD_FSETSTAT,Variable paramiko.sftp_file.CMD_FSETSTAT=paramiko.sftp_file-module.html#CMD_FSETSTAT,Variable paramiko.sftp_handle.CMD_FSETSTAT=paramiko.sftp_handle-module.html#CMD_FSETSTAT,Variable paramiko.sftp_server.CMD_FSETSTAT=paramiko.sftp_server-module.html#CMD_FSETSTAT,Variable paramiko.sftp_si.CMD_FSETSTAT=paramiko.sftp_si-module.html#CMD_FSETSTAT"><a title="paramiko.sftp.CMD_FSETSTAT
-paramiko.sftp_attr.CMD_FSETSTAT
-paramiko.sftp_client.CMD_FSETSTAT
-paramiko.sftp_file.CMD_FSETSTAT
-paramiko.sftp_handle.CMD_FSETSTAT
-paramiko.sftp_server.CMD_FSETSTAT
-paramiko.sftp_si.CMD_FSETSTAT" class="py-name" href="#" onclick="return doclink('link-19', 'CMD_FSETSTAT', 'link-19');">CMD_FSETSTAT</a></tt><tt class="py-op">,</tt> <tt id="link-20" class="py-name" targets="Variable paramiko.sftp.CMD_OPENDIR=paramiko.sftp-module.html#CMD_OPENDIR,Variable paramiko.sftp_attr.CMD_OPENDIR=paramiko.sftp_attr-module.html#CMD_OPENDIR,Variable paramiko.sftp_client.CMD_OPENDIR=paramiko.sftp_client-module.html#CMD_OPENDIR,Variable paramiko.sftp_file.CMD_OPENDIR=paramiko.sftp_file-module.html#CMD_OPENDIR,Variable paramiko.sftp_handle.CMD_OPENDIR=paramiko.sftp_handle-module.html#CMD_OPENDIR,Variable paramiko.sftp_server.CMD_OPENDIR=paramiko.sftp_server-module.html#CMD_OPENDIR,Variable paramiko.sftp_si.CMD_OPENDIR=paramiko.sftp_si-module.html#CMD_OPENDIR"><a title="paramiko.sftp.CMD_OPENDIR
-paramiko.sftp_attr.CMD_OPENDIR
-paramiko.sftp_client.CMD_OPENDIR
-paramiko.sftp_file.CMD_OPENDIR
-paramiko.sftp_handle.CMD_OPENDIR
-paramiko.sftp_server.CMD_OPENDIR
-paramiko.sftp_si.CMD_OPENDIR" class="py-name" href="#" onclick="return doclink('link-20', 'CMD_OPENDIR', 'link-20');">CMD_OPENDIR</a></tt><tt class="py-op">,</tt> <tt id="link-21" class="py-name" targets="Variable paramiko.sftp.CMD_READDIR=paramiko.sftp-module.html#CMD_READDIR,Variable paramiko.sftp_attr.CMD_READDIR=paramiko.sftp_attr-module.html#CMD_READDIR,Variable paramiko.sftp_client.CMD_READDIR=paramiko.sftp_client-module.html#CMD_READDIR,Variable paramiko.sftp_file.CMD_READDIR=paramiko.sftp_file-module.html#CMD_READDIR,Variable paramiko.sftp_handle.CMD_READDIR=paramiko.sftp_handle-module.html#CMD_READDIR,Variable paramiko.sftp_server.CMD_READDIR=paramiko.sftp_server-module.html#CMD_READDIR,Variable paramiko.sftp_si.CMD_READDIR=paramiko.sftp_si-module.html#CMD_READDIR"><a title="paramiko.sftp.CMD_READDIR
-paramiko.sftp_attr.CMD_READDIR
-paramiko.sftp_client.CMD_READDIR
-paramiko.sftp_file.CMD_READDIR
-paramiko.sftp_handle.CMD_READDIR
-paramiko.sftp_server.CMD_READDIR
-paramiko.sftp_si.CMD_READDIR" class="py-name" href="#" onclick="return doclink('link-21', 'CMD_READDIR', 'link-21');">CMD_READDIR</a></tt><tt class="py-op">,</tt> <tt id="link-22" class="py-name" targets="Variable paramiko.sftp.CMD_REMOVE=paramiko.sftp-module.html#CMD_REMOVE,Variable paramiko.sftp_attr.CMD_REMOVE=paramiko.sftp_attr-module.html#CMD_REMOVE,Variable paramiko.sftp_client.CMD_REMOVE=paramiko.sftp_client-module.html#CMD_REMOVE,Variable paramiko.sftp_file.CMD_REMOVE=paramiko.sftp_file-module.html#CMD_REMOVE,Variable paramiko.sftp_handle.CMD_REMOVE=paramiko.sftp_handle-module.html#CMD_REMOVE,Variable paramiko.sftp_server.CMD_REMOVE=paramiko.sftp_server-module.html#CMD_REMOVE,Variable paramiko.sftp_si.CMD_REMOVE=paramiko.sftp_si-module.html#CMD_REMOVE"><a title="paramiko.sftp.CMD_REMOVE
-paramiko.sftp_attr.CMD_REMOVE
-paramiko.sftp_client.CMD_REMOVE
-paramiko.sftp_file.CMD_REMOVE
-paramiko.sftp_handle.CMD_REMOVE
-paramiko.sftp_server.CMD_REMOVE
-paramiko.sftp_si.CMD_REMOVE" class="py-name" href="#" onclick="return doclink('link-22', 'CMD_REMOVE', 'link-22');">CMD_REMOVE</a></tt><tt class="py-op">,</tt> <tt id="link-23" class="py-name" targets="Variable paramiko.sftp.CMD_MKDIR=paramiko.sftp-module.html#CMD_MKDIR,Variable paramiko.sftp_attr.CMD_MKDIR=paramiko.sftp_attr-module.html#CMD_MKDIR,Variable paramiko.sftp_client.CMD_MKDIR=paramiko.sftp_client-module.html#CMD_MKDIR,Variable paramiko.sftp_file.CMD_MKDIR=paramiko.sftp_file-module.html#CMD_MKDIR,Variable paramiko.sftp_handle.CMD_MKDIR=paramiko.sftp_handle-module.html#CMD_MKDIR,Variable paramiko.sftp_server.CMD_MKDIR=paramiko.sftp_server-module.html#CMD_MKDIR,Variable paramiko.sftp_si.CMD_MKDIR=paramiko.sftp_si-module.html#CMD_MKDIR"><a title="paramiko.sftp.CMD_MKDIR
-paramiko.sftp_attr.CMD_MKDIR
-paramiko.sftp_client.CMD_MKDIR
-paramiko.sftp_file.CMD_MKDIR
-paramiko.sftp_handle.CMD_MKDIR
-paramiko.sftp_server.CMD_MKDIR
-paramiko.sftp_si.CMD_MKDIR" class="py-name" href="#" onclick="return doclink('link-23', 'CMD_MKDIR', 'link-23');">CMD_MKDIR</a></tt><tt class="py-op">,</tt> \ </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> <tt id="link-24" class="py-name" targets="Variable paramiko.sftp.CMD_RMDIR=paramiko.sftp-module.html#CMD_RMDIR,Variable paramiko.sftp_attr.CMD_RMDIR=paramiko.sftp_attr-module.html#CMD_RMDIR,Variable paramiko.sftp_client.CMD_RMDIR=paramiko.sftp_client-module.html#CMD_RMDIR,Variable paramiko.sftp_file.CMD_RMDIR=paramiko.sftp_file-module.html#CMD_RMDIR,Variable paramiko.sftp_handle.CMD_RMDIR=paramiko.sftp_handle-module.html#CMD_RMDIR,Variable paramiko.sftp_server.CMD_RMDIR=paramiko.sftp_server-module.html#CMD_RMDIR,Variable paramiko.sftp_si.CMD_RMDIR=paramiko.sftp_si-module.html#CMD_RMDIR"><a title="paramiko.sftp.CMD_RMDIR
-paramiko.sftp_attr.CMD_RMDIR
-paramiko.sftp_client.CMD_RMDIR
-paramiko.sftp_file.CMD_RMDIR
-paramiko.sftp_handle.CMD_RMDIR
-paramiko.sftp_server.CMD_RMDIR
-paramiko.sftp_si.CMD_RMDIR" class="py-name" href="#" onclick="return doclink('link-24', 'CMD_RMDIR', 'link-24');">CMD_RMDIR</a></tt><tt class="py-op">,</tt> <tt id="link-25" class="py-name" targets="Variable paramiko.sftp.CMD_REALPATH=paramiko.sftp-module.html#CMD_REALPATH,Variable paramiko.sftp_attr.CMD_REALPATH=paramiko.sftp_attr-module.html#CMD_REALPATH,Variable paramiko.sftp_client.CMD_REALPATH=paramiko.sftp_client-module.html#CMD_REALPATH,Variable paramiko.sftp_file.CMD_REALPATH=paramiko.sftp_file-module.html#CMD_REALPATH,Variable paramiko.sftp_handle.CMD_REALPATH=paramiko.sftp_handle-module.html#CMD_REALPATH,Variable paramiko.sftp_server.CMD_REALPATH=paramiko.sftp_server-module.html#CMD_REALPATH,Variable paramiko.sftp_si.CMD_REALPATH=paramiko.sftp_si-module.html#CMD_REALPATH"><a title="paramiko.sftp.CMD_REALPATH
-paramiko.sftp_attr.CMD_REALPATH
-paramiko.sftp_client.CMD_REALPATH
-paramiko.sftp_file.CMD_REALPATH
-paramiko.sftp_handle.CMD_REALPATH
-paramiko.sftp_server.CMD_REALPATH
-paramiko.sftp_si.CMD_REALPATH" class="py-name" href="#" onclick="return doclink('link-25', 'CMD_REALPATH', 'link-25');">CMD_REALPATH</a></tt><tt class="py-op">,</tt> <tt id="link-26" class="py-name" targets="Variable paramiko.sftp.CMD_STAT=paramiko.sftp-module.html#CMD_STAT,Variable paramiko.sftp_attr.CMD_STAT=paramiko.sftp_attr-module.html#CMD_STAT,Variable paramiko.sftp_client.CMD_STAT=paramiko.sftp_client-module.html#CMD_STAT,Variable paramiko.sftp_file.CMD_STAT=paramiko.sftp_file-module.html#CMD_STAT,Variable paramiko.sftp_handle.CMD_STAT=paramiko.sftp_handle-module.html#CMD_STAT,Variable paramiko.sftp_server.CMD_STAT=paramiko.sftp_server-module.html#CMD_STAT,Variable paramiko.sftp_si.CMD_STAT=paramiko.sftp_si-module.html#CMD_STAT"><a title="paramiko.sftp.CMD_STAT
-paramiko.sftp_attr.CMD_STAT
-paramiko.sftp_client.CMD_STAT
-paramiko.sftp_file.CMD_STAT
-paramiko.sftp_handle.CMD_STAT
-paramiko.sftp_server.CMD_STAT
-paramiko.sftp_si.CMD_STAT" class="py-name" href="#" onclick="return doclink('link-26', 'CMD_STAT', 'link-26');">CMD_STAT</a></tt><tt class="py-op">,</tt> <tt id="link-27" class="py-name" targets="Variable paramiko.sftp.CMD_RENAME=paramiko.sftp-module.html#CMD_RENAME,Variable paramiko.sftp_attr.CMD_RENAME=paramiko.sftp_attr-module.html#CMD_RENAME,Variable paramiko.sftp_client.CMD_RENAME=paramiko.sftp_client-module.html#CMD_RENAME,Variable paramiko.sftp_file.CMD_RENAME=paramiko.sftp_file-module.html#CMD_RENAME,Variable paramiko.sftp_handle.CMD_RENAME=paramiko.sftp_handle-module.html#CMD_RENAME,Variable paramiko.sftp_server.CMD_RENAME=paramiko.sftp_server-module.html#CMD_RENAME,Variable paramiko.sftp_si.CMD_RENAME=paramiko.sftp_si-module.html#CMD_RENAME"><a title="paramiko.sftp.CMD_RENAME
-paramiko.sftp_attr.CMD_RENAME
-paramiko.sftp_client.CMD_RENAME
-paramiko.sftp_file.CMD_RENAME
-paramiko.sftp_handle.CMD_RENAME
-paramiko.sftp_server.CMD_RENAME
-paramiko.sftp_si.CMD_RENAME" class="py-name" href="#" onclick="return doclink('link-27', 'CMD_RENAME', 'link-27');">CMD_RENAME</a></tt><tt class="py-op">,</tt> <tt id="link-28" class="py-name" targets="Variable paramiko.sftp.CMD_READLINK=paramiko.sftp-module.html#CMD_READLINK,Variable paramiko.sftp_attr.CMD_READLINK=paramiko.sftp_attr-module.html#CMD_READLINK,Variable paramiko.sftp_client.CMD_READLINK=paramiko.sftp_client-module.html#CMD_READLINK,Variable paramiko.sftp_file.CMD_READLINK=paramiko.sftp_file-module.html#CMD_READLINK,Variable paramiko.sftp_handle.CMD_READLINK=paramiko.sftp_handle-module.html#CMD_READLINK,Variable paramiko.sftp_server.CMD_READLINK=paramiko.sftp_server-module.html#CMD_READLINK,Variable paramiko.sftp_si.CMD_READLINK=paramiko.sftp_si-module.html#CMD_READLINK"><a title="paramiko.sftp.CMD_READLINK
-paramiko.sftp_attr.CMD_READLINK
-paramiko.sftp_client.CMD_READLINK
-paramiko.sftp_file.CMD_READLINK
-paramiko.sftp_handle.CMD_READLINK
-paramiko.sftp_server.CMD_READLINK
-paramiko.sftp_si.CMD_READLINK" class="py-name" href="#" onclick="return doclink('link-28', 'CMD_READLINK', 'link-28');">CMD_READLINK</a></tt><tt class="py-op">,</tt> <tt id="link-29" class="py-name" targets="Variable paramiko.sftp.CMD_SYMLINK=paramiko.sftp-module.html#CMD_SYMLINK,Variable paramiko.sftp_attr.CMD_SYMLINK=paramiko.sftp_attr-module.html#CMD_SYMLINK,Variable paramiko.sftp_client.CMD_SYMLINK=paramiko.sftp_client-module.html#CMD_SYMLINK,Variable paramiko.sftp_file.CMD_SYMLINK=paramiko.sftp_file-module.html#CMD_SYMLINK,Variable paramiko.sftp_handle.CMD_SYMLINK=paramiko.sftp_handle-module.html#CMD_SYMLINK,Variable paramiko.sftp_server.CMD_SYMLINK=paramiko.sftp_server-module.html#CMD_SYMLINK,Variable paramiko.sftp_si.CMD_SYMLINK=paramiko.sftp_si-module.html#CMD_SYMLINK"><a title="paramiko.sftp.CMD_SYMLINK
-paramiko.sftp_attr.CMD_SYMLINK
-paramiko.sftp_client.CMD_SYMLINK
-paramiko.sftp_file.CMD_SYMLINK
-paramiko.sftp_handle.CMD_SYMLINK
-paramiko.sftp_server.CMD_SYMLINK
-paramiko.sftp_si.CMD_SYMLINK" class="py-name" href="#" onclick="return doclink('link-29', 'CMD_SYMLINK', 'link-29');">CMD_SYMLINK</a></tt> \ </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> <tt class="py-op">=</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-number">21</tt><tt class="py-op">)</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"><tt id="link-30" class="py-name" targets="Variable paramiko.sftp.CMD_STATUS=paramiko.sftp-module.html#CMD_STATUS,Variable paramiko.sftp_attr.CMD_STATUS=paramiko.sftp_attr-module.html#CMD_STATUS,Variable paramiko.sftp_client.CMD_STATUS=paramiko.sftp_client-module.html#CMD_STATUS,Variable paramiko.sftp_file.CMD_STATUS=paramiko.sftp_file-module.html#CMD_STATUS,Variable paramiko.sftp_handle.CMD_STATUS=paramiko.sftp_handle-module.html#CMD_STATUS,Variable paramiko.sftp_server.CMD_STATUS=paramiko.sftp_server-module.html#CMD_STATUS,Variable paramiko.sftp_si.CMD_STATUS=paramiko.sftp_si-module.html#CMD_STATUS"><a title="paramiko.sftp.CMD_STATUS
-paramiko.sftp_attr.CMD_STATUS
-paramiko.sftp_client.CMD_STATUS
-paramiko.sftp_file.CMD_STATUS
-paramiko.sftp_handle.CMD_STATUS
-paramiko.sftp_server.CMD_STATUS
-paramiko.sftp_si.CMD_STATUS" class="py-name" href="#" onclick="return doclink('link-30', 'CMD_STATUS', 'link-30');">CMD_STATUS</a></tt><tt class="py-op">,</tt> <tt id="link-31" class="py-name" targets="Variable paramiko.sftp.CMD_HANDLE=paramiko.sftp-module.html#CMD_HANDLE,Variable paramiko.sftp_attr.CMD_HANDLE=paramiko.sftp_attr-module.html#CMD_HANDLE,Variable paramiko.sftp_client.CMD_HANDLE=paramiko.sftp_client-module.html#CMD_HANDLE,Variable paramiko.sftp_file.CMD_HANDLE=paramiko.sftp_file-module.html#CMD_HANDLE,Variable paramiko.sftp_handle.CMD_HANDLE=paramiko.sftp_handle-module.html#CMD_HANDLE,Variable paramiko.sftp_server.CMD_HANDLE=paramiko.sftp_server-module.html#CMD_HANDLE,Variable paramiko.sftp_si.CMD_HANDLE=paramiko.sftp_si-module.html#CMD_HANDLE"><a title="paramiko.sftp.CMD_HANDLE
-paramiko.sftp_attr.CMD_HANDLE
-paramiko.sftp_client.CMD_HANDLE
-paramiko.sftp_file.CMD_HANDLE
-paramiko.sftp_handle.CMD_HANDLE
-paramiko.sftp_server.CMD_HANDLE
-paramiko.sftp_si.CMD_HANDLE" class="py-name" href="#" onclick="return doclink('link-31', 'CMD_HANDLE', 'link-31');">CMD_HANDLE</a></tt><tt class="py-op">,</tt> <tt id="link-32" class="py-name" targets="Variable paramiko.sftp.CMD_DATA=paramiko.sftp-module.html#CMD_DATA,Variable paramiko.sftp_attr.CMD_DATA=paramiko.sftp_attr-module.html#CMD_DATA,Variable paramiko.sftp_client.CMD_DATA=paramiko.sftp_client-module.html#CMD_DATA,Variable paramiko.sftp_file.CMD_DATA=paramiko.sftp_file-module.html#CMD_DATA,Variable paramiko.sftp_handle.CMD_DATA=paramiko.sftp_handle-module.html#CMD_DATA,Variable paramiko.sftp_server.CMD_DATA=paramiko.sftp_server-module.html#CMD_DATA,Variable paramiko.sftp_si.CMD_DATA=paramiko.sftp_si-module.html#CMD_DATA"><a title="paramiko.sftp.CMD_DATA
-paramiko.sftp_attr.CMD_DATA
-paramiko.sftp_client.CMD_DATA
-paramiko.sftp_file.CMD_DATA
-paramiko.sftp_handle.CMD_DATA
-paramiko.sftp_server.CMD_DATA
-paramiko.sftp_si.CMD_DATA" class="py-name" href="#" onclick="return doclink('link-32', 'CMD_DATA', 'link-32');">CMD_DATA</a></tt><tt class="py-op">,</tt> <tt id="link-33" class="py-name" targets="Variable paramiko.sftp.CMD_NAME=paramiko.sftp-module.html#CMD_NAME,Variable paramiko.sftp_attr.CMD_NAME=paramiko.sftp_attr-module.html#CMD_NAME,Variable paramiko.sftp_client.CMD_NAME=paramiko.sftp_client-module.html#CMD_NAME,Variable paramiko.sftp_file.CMD_NAME=paramiko.sftp_file-module.html#CMD_NAME,Variable paramiko.sftp_handle.CMD_NAME=paramiko.sftp_handle-module.html#CMD_NAME,Variable paramiko.sftp_server.CMD_NAME=paramiko.sftp_server-module.html#CMD_NAME,Variable paramiko.sftp_si.CMD_NAME=paramiko.sftp_si-module.html#CMD_NAME"><a title="paramiko.sftp.CMD_NAME
-paramiko.sftp_attr.CMD_NAME
-paramiko.sftp_client.CMD_NAME
-paramiko.sftp_file.CMD_NAME
-paramiko.sftp_handle.CMD_NAME
-paramiko.sftp_server.CMD_NAME
-paramiko.sftp_si.CMD_NAME" class="py-name" href="#" onclick="return doclink('link-33', 'CMD_NAME', 'link-33');">CMD_NAME</a></tt><tt class="py-op">,</tt> <tt id="link-34" class="py-name" targets="Variable paramiko.sftp.CMD_ATTRS=paramiko.sftp-module.html#CMD_ATTRS,Variable paramiko.sftp_attr.CMD_ATTRS=paramiko.sftp_attr-module.html#CMD_ATTRS,Variable paramiko.sftp_client.CMD_ATTRS=paramiko.sftp_client-module.html#CMD_ATTRS,Variable paramiko.sftp_file.CMD_ATTRS=paramiko.sftp_file-module.html#CMD_ATTRS,Variable paramiko.sftp_handle.CMD_ATTRS=paramiko.sftp_handle-module.html#CMD_ATTRS,Variable paramiko.sftp_server.CMD_ATTRS=paramiko.sftp_server-module.html#CMD_ATTRS,Variable paramiko.sftp_si.CMD_ATTRS=paramiko.sftp_si-module.html#CMD_ATTRS"><a title="paramiko.sftp.CMD_ATTRS
-paramiko.sftp_attr.CMD_ATTRS
-paramiko.sftp_client.CMD_ATTRS
-paramiko.sftp_file.CMD_ATTRS
-paramiko.sftp_handle.CMD_ATTRS
-paramiko.sftp_server.CMD_ATTRS
-paramiko.sftp_si.CMD_ATTRS" class="py-name" href="#" onclick="return doclink('link-34', 'CMD_ATTRS', 'link-34');">CMD_ATTRS</a></tt> <tt class="py-op">=</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">101</tt><tt class="py-op">,</tt> <tt class="py-number">106</tt><tt class="py-op">)</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"><tt id="link-35" class="py-name" targets="Variable paramiko.sftp.CMD_EXTENDED=paramiko.sftp-module.html#CMD_EXTENDED,Variable paramiko.sftp_attr.CMD_EXTENDED=paramiko.sftp_attr-module.html#CMD_EXTENDED,Variable paramiko.sftp_client.CMD_EXTENDED=paramiko.sftp_client-module.html#CMD_EXTENDED,Variable paramiko.sftp_file.CMD_EXTENDED=paramiko.sftp_file-module.html#CMD_EXTENDED,Variable paramiko.sftp_handle.CMD_EXTENDED=paramiko.sftp_handle-module.html#CMD_EXTENDED,Variable paramiko.sftp_server.CMD_EXTENDED=paramiko.sftp_server-module.html#CMD_EXTENDED,Variable paramiko.sftp_si.CMD_EXTENDED=paramiko.sftp_si-module.html#CMD_EXTENDED"><a title="paramiko.sftp.CMD_EXTENDED
-paramiko.sftp_attr.CMD_EXTENDED
-paramiko.sftp_client.CMD_EXTENDED
-paramiko.sftp_file.CMD_EXTENDED
-paramiko.sftp_handle.CMD_EXTENDED
-paramiko.sftp_server.CMD_EXTENDED
-paramiko.sftp_si.CMD_EXTENDED" class="py-name" href="#" onclick="return doclink('link-35', 'CMD_EXTENDED', 'link-35');">CMD_EXTENDED</a></tt><tt class="py-op">,</tt> <tt id="link-36" class="py-name" targets="Variable paramiko.sftp.CMD_EXTENDED_REPLY=paramiko.sftp-module.html#CMD_EXTENDED_REPLY,Variable paramiko.sftp_attr.CMD_EXTENDED_REPLY=paramiko.sftp_attr-module.html#CMD_EXTENDED_REPLY,Variable paramiko.sftp_client.CMD_EXTENDED_REPLY=paramiko.sftp_client-module.html#CMD_EXTENDED_REPLY,Variable paramiko.sftp_file.CMD_EXTENDED_REPLY=paramiko.sftp_file-module.html#CMD_EXTENDED_REPLY,Variable paramiko.sftp_handle.CMD_EXTENDED_REPLY=paramiko.sftp_handle-module.html#CMD_EXTENDED_REPLY,Variable paramiko.sftp_server.CMD_EXTENDED_REPLY=paramiko.sftp_server-module.html#CMD_EXTENDED_REPLY,Variable paramiko.sftp_si.CMD_EXTENDED_REPLY=paramiko.sftp_si-module.html#CMD_EXTENDED_REPLY"><a title="paramiko.sftp.CMD_EXTENDED_REPLY
-paramiko.sftp_attr.CMD_EXTENDED_REPLY
-paramiko.sftp_client.CMD_EXTENDED_REPLY
-paramiko.sftp_file.CMD_EXTENDED_REPLY
-paramiko.sftp_handle.CMD_EXTENDED_REPLY
-paramiko.sftp_server.CMD_EXTENDED_REPLY
-paramiko.sftp_si.CMD_EXTENDED_REPLY" class="py-name" href="#" onclick="return doclink('link-36', 'CMD_EXTENDED_REPLY', 'link-36');">CMD_EXTENDED_REPLY</a></tt> <tt class="py-op">=</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">200</tt><tt class="py-op">,</tt> <tt class="py-number">202</tt><tt class="py-op">)</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"><tt id="link-37" class="py-name" targets="Variable paramiko.sftp.SFTP_OK=paramiko.sftp-module.html#SFTP_OK,Variable paramiko.sftp_attr.SFTP_OK=paramiko.sftp_attr-module.html#SFTP_OK,Variable paramiko.sftp_client.SFTP_OK=paramiko.sftp_client-module.html#SFTP_OK,Variable paramiko.sftp_file.SFTP_OK=paramiko.sftp_file-module.html#SFTP_OK,Variable paramiko.sftp_handle.SFTP_OK=paramiko.sftp_handle-module.html#SFTP_OK,Variable paramiko.sftp_server.SFTP_OK=paramiko.sftp_server-module.html#SFTP_OK,Variable paramiko.sftp_si.SFTP_OK=paramiko.sftp_si-module.html#SFTP_OK"><a title="paramiko.sftp.SFTP_OK
-paramiko.sftp_attr.SFTP_OK
-paramiko.sftp_client.SFTP_OK
-paramiko.sftp_file.SFTP_OK
-paramiko.sftp_handle.SFTP_OK
-paramiko.sftp_server.SFTP_OK
-paramiko.sftp_si.SFTP_OK" class="py-name" href="#" onclick="return doclink('link-37', 'SFTP_OK', 'link-37');">SFTP_OK</a></tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"><tt id="link-38" class="py-name" targets="Variable paramiko.sftp.SFTP_EOF=paramiko.sftp-module.html#SFTP_EOF,Variable paramiko.sftp_attr.SFTP_EOF=paramiko.sftp_attr-module.html#SFTP_EOF,Variable paramiko.sftp_client.SFTP_EOF=paramiko.sftp_client-module.html#SFTP_EOF,Variable paramiko.sftp_file.SFTP_EOF=paramiko.sftp_file-module.html#SFTP_EOF,Variable paramiko.sftp_handle.SFTP_EOF=paramiko.sftp_handle-module.html#SFTP_EOF,Variable paramiko.sftp_server.SFTP_EOF=paramiko.sftp_server-module.html#SFTP_EOF,Variable paramiko.sftp_si.SFTP_EOF=paramiko.sftp_si-module.html#SFTP_EOF"><a title="paramiko.sftp.SFTP_EOF
-paramiko.sftp_attr.SFTP_EOF
-paramiko.sftp_client.SFTP_EOF
-paramiko.sftp_file.SFTP_EOF
-paramiko.sftp_handle.SFTP_EOF
-paramiko.sftp_server.SFTP_EOF
-paramiko.sftp_si.SFTP_EOF" class="py-name" href="#" onclick="return doclink('link-38', 'SFTP_EOF', 'link-38');">SFTP_EOF</a></tt><tt class="py-op">,</tt> <tt id="link-39" class="py-name" targets="Variable paramiko.sftp.SFTP_NO_SUCH_FILE=paramiko.sftp-module.html#SFTP_NO_SUCH_FILE,Variable paramiko.sftp_attr.SFTP_NO_SUCH_FILE=paramiko.sftp_attr-module.html#SFTP_NO_SUCH_FILE,Variable paramiko.sftp_client.SFTP_NO_SUCH_FILE=paramiko.sftp_client-module.html#SFTP_NO_SUCH_FILE,Variable paramiko.sftp_file.SFTP_NO_SUCH_FILE=paramiko.sftp_file-module.html#SFTP_NO_SUCH_FILE,Variable paramiko.sftp_handle.SFTP_NO_SUCH_FILE=paramiko.sftp_handle-module.html#SFTP_NO_SUCH_FILE,Variable paramiko.sftp_server.SFTP_NO_SUCH_FILE=paramiko.sftp_server-module.html#SFTP_NO_SUCH_FILE,Variable paramiko.sftp_si.SFTP_NO_SUCH_FILE=paramiko.sftp_si-module.html#SFTP_NO_SUCH_FILE"><a title="paramiko.sftp.SFTP_NO_SUCH_FILE
-paramiko.sftp_attr.SFTP_NO_SUCH_FILE
-paramiko.sftp_client.SFTP_NO_SUCH_FILE
-paramiko.sftp_file.SFTP_NO_SUCH_FILE
-paramiko.sftp_handle.SFTP_NO_SUCH_FILE
-paramiko.sftp_server.SFTP_NO_SUCH_FILE
-paramiko.sftp_si.SFTP_NO_SUCH_FILE" class="py-name" href="#" onclick="return doclink('link-39', 'SFTP_NO_SUCH_FILE', 'link-39');">SFTP_NO_SUCH_FILE</a></tt><tt class="py-op">,</tt> <tt id="link-40" class="py-name" targets="Variable paramiko.sftp.SFTP_PERMISSION_DENIED=paramiko.sftp-module.html#SFTP_PERMISSION_DENIED,Variable paramiko.sftp_attr.SFTP_PERMISSION_DENIED=paramiko.sftp_attr-module.html#SFTP_PERMISSION_DENIED,Variable paramiko.sftp_client.SFTP_PERMISSION_DENIED=paramiko.sftp_client-module.html#SFTP_PERMISSION_DENIED,Variable paramiko.sftp_file.SFTP_PERMISSION_DENIED=paramiko.sftp_file-module.html#SFTP_PERMISSION_DENIED,Variable paramiko.sftp_handle.SFTP_PERMISSION_DENIED=paramiko.sftp_handle-module.html#SFTP_PERMISSION_DENIED,Variable paramiko.sftp_server.SFTP_PERMISSION_DENIED=paramiko.sftp_server-module.html#SFTP_PERMISSION_DENIED,Variable paramiko.sftp_si.SFTP_PERMISSION_DENIED=paramiko.sftp_si-module.html#SFTP_PERMISSION_DENIED"><a title="paramiko.sftp.SFTP_PERMISSION_DENIED
-paramiko.sftp_attr.SFTP_PERMISSION_DENIED
-paramiko.sftp_client.SFTP_PERMISSION_DENIED
-paramiko.sftp_file.SFTP_PERMISSION_DENIED
-paramiko.sftp_handle.SFTP_PERMISSION_DENIED
-paramiko.sftp_server.SFTP_PERMISSION_DENIED
-paramiko.sftp_si.SFTP_PERMISSION_DENIED" class="py-name" href="#" onclick="return doclink('link-40', 'SFTP_PERMISSION_DENIED', 'link-40');">SFTP_PERMISSION_DENIED</a></tt><tt class="py-op">,</tt> <tt id="link-41" class="py-name" targets="Variable paramiko.sftp.SFTP_FAILURE=paramiko.sftp-module.html#SFTP_FAILURE,Variable paramiko.sftp_attr.SFTP_FAILURE=paramiko.sftp_attr-module.html#SFTP_FAILURE,Variable paramiko.sftp_client.SFTP_FAILURE=paramiko.sftp_client-module.html#SFTP_FAILURE,Variable paramiko.sftp_file.SFTP_FAILURE=paramiko.sftp_file-module.html#SFTP_FAILURE,Variable paramiko.sftp_handle.SFTP_FAILURE=paramiko.sftp_handle-module.html#SFTP_FAILURE,Variable paramiko.sftp_server.SFTP_FAILURE=paramiko.sftp_server-module.html#SFTP_FAILURE,Variable paramiko.sftp_si.SFTP_FAILURE=paramiko.sftp_si-module.html#SFTP_FAILURE"><a title="paramiko.sftp.SFTP_FAILURE
-paramiko.sftp_attr.SFTP_FAILURE
-paramiko.sftp_client.SFTP_FAILURE
-paramiko.sftp_file.SFTP_FAILURE
-paramiko.sftp_handle.SFTP_FAILURE
-paramiko.sftp_server.SFTP_FAILURE
-paramiko.sftp_si.SFTP_FAILURE" class="py-name" href="#" onclick="return doclink('link-41', 'SFTP_FAILURE', 'link-41');">SFTP_FAILURE</a></tt><tt class="py-op">,</tt> <tt id="link-42" class="py-name" targets="Variable paramiko.sftp.SFTP_BAD_MESSAGE=paramiko.sftp-module.html#SFTP_BAD_MESSAGE,Variable paramiko.sftp_attr.SFTP_BAD_MESSAGE=paramiko.sftp_attr-module.html#SFTP_BAD_MESSAGE,Variable paramiko.sftp_client.SFTP_BAD_MESSAGE=paramiko.sftp_client-module.html#SFTP_BAD_MESSAGE,Variable paramiko.sftp_file.SFTP_BAD_MESSAGE=paramiko.sftp_file-module.html#SFTP_BAD_MESSAGE,Variable paramiko.sftp_handle.SFTP_BAD_MESSAGE=paramiko.sftp_handle-module.html#SFTP_BAD_MESSAGE,Variable paramiko.sftp_server.SFTP_BAD_MESSAGE=paramiko.sftp_server-module.html#SFTP_BAD_MESSAGE,Variable paramiko.sftp_si.SFTP_BAD_MESSAGE=paramiko.sftp_si-module.html#SFTP_BAD_MESSAGE"><a title="paramiko.sftp.SFTP_BAD_MESSAGE
-paramiko.sftp_attr.SFTP_BAD_MESSAGE
-paramiko.sftp_client.SFTP_BAD_MESSAGE
-paramiko.sftp_file.SFTP_BAD_MESSAGE
-paramiko.sftp_handle.SFTP_BAD_MESSAGE
-paramiko.sftp_server.SFTP_BAD_MESSAGE
-paramiko.sftp_si.SFTP_BAD_MESSAGE" class="py-name" href="#" onclick="return doclink('link-42', 'SFTP_BAD_MESSAGE', 'link-42');">SFTP_BAD_MESSAGE</a></tt><tt class="py-op">,</tt> \ </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> <tt id="link-43" class="py-name" targets="Variable paramiko.sftp.SFTP_NO_CONNECTION=paramiko.sftp-module.html#SFTP_NO_CONNECTION,Variable paramiko.sftp_attr.SFTP_NO_CONNECTION=paramiko.sftp_attr-module.html#SFTP_NO_CONNECTION,Variable paramiko.sftp_client.SFTP_NO_CONNECTION=paramiko.sftp_client-module.html#SFTP_NO_CONNECTION,Variable paramiko.sftp_file.SFTP_NO_CONNECTION=paramiko.sftp_file-module.html#SFTP_NO_CONNECTION,Variable paramiko.sftp_handle.SFTP_NO_CONNECTION=paramiko.sftp_handle-module.html#SFTP_NO_CONNECTION,Variable paramiko.sftp_server.SFTP_NO_CONNECTION=paramiko.sftp_server-module.html#SFTP_NO_CONNECTION,Variable paramiko.sftp_si.SFTP_NO_CONNECTION=paramiko.sftp_si-module.html#SFTP_NO_CONNECTION"><a title="paramiko.sftp.SFTP_NO_CONNECTION
-paramiko.sftp_attr.SFTP_NO_CONNECTION
-paramiko.sftp_client.SFTP_NO_CONNECTION
-paramiko.sftp_file.SFTP_NO_CONNECTION
-paramiko.sftp_handle.SFTP_NO_CONNECTION
-paramiko.sftp_server.SFTP_NO_CONNECTION
-paramiko.sftp_si.SFTP_NO_CONNECTION" class="py-name" href="#" onclick="return doclink('link-43', 'SFTP_NO_CONNECTION', 'link-43');">SFTP_NO_CONNECTION</a></tt><tt class="py-op">,</tt> <tt id="link-44" class="py-name" targets="Variable paramiko.sftp.SFTP_CONNECTION_LOST=paramiko.sftp-module.html#SFTP_CONNECTION_LOST,Variable paramiko.sftp_attr.SFTP_CONNECTION_LOST=paramiko.sftp_attr-module.html#SFTP_CONNECTION_LOST,Variable paramiko.sftp_client.SFTP_CONNECTION_LOST=paramiko.sftp_client-module.html#SFTP_CONNECTION_LOST,Variable paramiko.sftp_file.SFTP_CONNECTION_LOST=paramiko.sftp_file-module.html#SFTP_CONNECTION_LOST,Variable paramiko.sftp_handle.SFTP_CONNECTION_LOST=paramiko.sftp_handle-module.html#SFTP_CONNECTION_LOST,Variable paramiko.sftp_server.SFTP_CONNECTION_LOST=paramiko.sftp_server-module.html#SFTP_CONNECTION_LOST,Variable paramiko.sftp_si.SFTP_CONNECTION_LOST=paramiko.sftp_si-module.html#SFTP_CONNECTION_LOST"><a title="paramiko.sftp.SFTP_CONNECTION_LOST
-paramiko.sftp_attr.SFTP_CONNECTION_LOST
-paramiko.sftp_client.SFTP_CONNECTION_LOST
-paramiko.sftp_file.SFTP_CONNECTION_LOST
-paramiko.sftp_handle.SFTP_CONNECTION_LOST
-paramiko.sftp_server.SFTP_CONNECTION_LOST
-paramiko.sftp_si.SFTP_CONNECTION_LOST" class="py-name" href="#" onclick="return doclink('link-44', 'SFTP_CONNECTION_LOST', 'link-44');">SFTP_CONNECTION_LOST</a></tt><tt class="py-op">,</tt> <tt id="link-45" class="py-name" targets="Variable paramiko.sftp.SFTP_OP_UNSUPPORTED=paramiko.sftp-module.html#SFTP_OP_UNSUPPORTED,Variable paramiko.sftp_attr.SFTP_OP_UNSUPPORTED=paramiko.sftp_attr-module.html#SFTP_OP_UNSUPPORTED,Variable paramiko.sftp_client.SFTP_OP_UNSUPPORTED=paramiko.sftp_client-module.html#SFTP_OP_UNSUPPORTED,Variable paramiko.sftp_file.SFTP_OP_UNSUPPORTED=paramiko.sftp_file-module.html#SFTP_OP_UNSUPPORTED,Variable paramiko.sftp_handle.SFTP_OP_UNSUPPORTED=paramiko.sftp_handle-module.html#SFTP_OP_UNSUPPORTED,Variable paramiko.sftp_server.SFTP_OP_UNSUPPORTED=paramiko.sftp_server-module.html#SFTP_OP_UNSUPPORTED,Variable paramiko.sftp_si.SFTP_OP_UNSUPPORTED=paramiko.sftp_si-module.html#SFTP_OP_UNSUPPORTED"><a title="paramiko.sftp.SFTP_OP_UNSUPPORTED
-paramiko.sftp_attr.SFTP_OP_UNSUPPORTED
-paramiko.sftp_client.SFTP_OP_UNSUPPORTED
-paramiko.sftp_file.SFTP_OP_UNSUPPORTED
-paramiko.sftp_handle.SFTP_OP_UNSUPPORTED
-paramiko.sftp_server.SFTP_OP_UNSUPPORTED
-paramiko.sftp_si.SFTP_OP_UNSUPPORTED" class="py-name" href="#" onclick="return doclink('link-45', 'SFTP_OP_UNSUPPORTED', 'link-45');">SFTP_OP_UNSUPPORTED</a></tt> <tt class="py-op">=</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-number">9</tt><tt class="py-op">)</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"><tt id="link-46" class="py-name" targets="Variable paramiko.sftp.SFTP_DESC=paramiko.sftp-module.html#SFTP_DESC,Variable paramiko.sftp_attr.SFTP_DESC=paramiko.sftp_attr-module.html#SFTP_DESC,Variable paramiko.sftp_client.SFTP_DESC=paramiko.sftp_client-module.html#SFTP_DESC,Variable paramiko.sftp_file.SFTP_DESC=paramiko.sftp_file-module.html#SFTP_DESC,Variable paramiko.sftp_handle.SFTP_DESC=paramiko.sftp_handle-module.html#SFTP_DESC,Variable paramiko.sftp_server.SFTP_DESC=paramiko.sftp_server-module.html#SFTP_DESC,Variable paramiko.sftp_si.SFTP_DESC=paramiko.sftp_si-module.html#SFTP_DESC"><a title="paramiko.sftp.SFTP_DESC
-paramiko.sftp_attr.SFTP_DESC
-paramiko.sftp_client.SFTP_DESC
-paramiko.sftp_file.SFTP_DESC
-paramiko.sftp_handle.SFTP_DESC
-paramiko.sftp_server.SFTP_DESC
-paramiko.sftp_si.SFTP_DESC" class="py-name" href="#" onclick="return doclink('link-46', 'SFTP_DESC', 'link-46');">SFTP_DESC</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-string">'Success'</tt><tt class="py-op">,</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt class="py-string">'End of file'</tt><tt class="py-op">,</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt class="py-string">'No such file'</tt><tt class="py-op">,</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-string">'Permission denied'</tt><tt class="py-op">,</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-string">'Failure'</tt><tt class="py-op">,</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-string">'Bad message'</tt><tt class="py-op">,</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-string">'No connection'</tt><tt class="py-op">,</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-string">'Connection lost'</tt><tt class="py-op">,</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-string">'Operation unsupported'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"><tt id="link-47" class="py-name" targets="Variable paramiko.sftp.SFTP_FLAG_READ=paramiko.sftp-module.html#SFTP_FLAG_READ,Variable paramiko.sftp_attr.SFTP_FLAG_READ=paramiko.sftp_attr-module.html#SFTP_FLAG_READ,Variable paramiko.sftp_client.SFTP_FLAG_READ=paramiko.sftp_client-module.html#SFTP_FLAG_READ,Variable paramiko.sftp_file.SFTP_FLAG_READ=paramiko.sftp_file-module.html#SFTP_FLAG_READ,Variable paramiko.sftp_handle.SFTP_FLAG_READ=paramiko.sftp_handle-module.html#SFTP_FLAG_READ,Variable paramiko.sftp_server.SFTP_FLAG_READ=paramiko.sftp_server-module.html#SFTP_FLAG_READ,Variable paramiko.sftp_si.SFTP_FLAG_READ=paramiko.sftp_si-module.html#SFTP_FLAG_READ"><a title="paramiko.sftp.SFTP_FLAG_READ
-paramiko.sftp_attr.SFTP_FLAG_READ
-paramiko.sftp_client.SFTP_FLAG_READ
-paramiko.sftp_file.SFTP_FLAG_READ
-paramiko.sftp_handle.SFTP_FLAG_READ
-paramiko.sftp_server.SFTP_FLAG_READ
-paramiko.sftp_si.SFTP_FLAG_READ" class="py-name" href="#" onclick="return doclink('link-47', 'SFTP_FLAG_READ', 'link-47');">SFTP_FLAG_READ</a></tt> <tt class="py-op">=</tt> <tt class="py-number">0x1</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"><tt id="link-48" class="py-name" targets="Variable paramiko.sftp.SFTP_FLAG_WRITE=paramiko.sftp-module.html#SFTP_FLAG_WRITE,Variable paramiko.sftp_attr.SFTP_FLAG_WRITE=paramiko.sftp_attr-module.html#SFTP_FLAG_WRITE,Variable paramiko.sftp_client.SFTP_FLAG_WRITE=paramiko.sftp_client-module.html#SFTP_FLAG_WRITE,Variable paramiko.sftp_file.SFTP_FLAG_WRITE=paramiko.sftp_file-module.html#SFTP_FLAG_WRITE,Variable paramiko.sftp_handle.SFTP_FLAG_WRITE=paramiko.sftp_handle-module.html#SFTP_FLAG_WRITE,Variable paramiko.sftp_server.SFTP_FLAG_WRITE=paramiko.sftp_server-module.html#SFTP_FLAG_WRITE,Variable paramiko.sftp_si.SFTP_FLAG_WRITE=paramiko.sftp_si-module.html#SFTP_FLAG_WRITE"><a title="paramiko.sftp.SFTP_FLAG_WRITE
-paramiko.sftp_attr.SFTP_FLAG_WRITE
-paramiko.sftp_client.SFTP_FLAG_WRITE
-paramiko.sftp_file.SFTP_FLAG_WRITE
-paramiko.sftp_handle.SFTP_FLAG_WRITE
-paramiko.sftp_server.SFTP_FLAG_WRITE
-paramiko.sftp_si.SFTP_FLAG_WRITE" class="py-name" href="#" onclick="return doclink('link-48', 'SFTP_FLAG_WRITE', 'link-48');">SFTP_FLAG_WRITE</a></tt> <tt class="py-op">=</tt> <tt class="py-number">0x2</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"><tt id="link-49" class="py-name" targets="Variable paramiko.sftp.SFTP_FLAG_APPEND=paramiko.sftp-module.html#SFTP_FLAG_APPEND,Variable paramiko.sftp_attr.SFTP_FLAG_APPEND=paramiko.sftp_attr-module.html#SFTP_FLAG_APPEND,Variable paramiko.sftp_client.SFTP_FLAG_APPEND=paramiko.sftp_client-module.html#SFTP_FLAG_APPEND,Variable paramiko.sftp_file.SFTP_FLAG_APPEND=paramiko.sftp_file-module.html#SFTP_FLAG_APPEND,Variable paramiko.sftp_handle.SFTP_FLAG_APPEND=paramiko.sftp_handle-module.html#SFTP_FLAG_APPEND,Variable paramiko.sftp_server.SFTP_FLAG_APPEND=paramiko.sftp_server-module.html#SFTP_FLAG_APPEND,Variable paramiko.sftp_si.SFTP_FLAG_APPEND=paramiko.sftp_si-module.html#SFTP_FLAG_APPEND"><a title="paramiko.sftp.SFTP_FLAG_APPEND
-paramiko.sftp_attr.SFTP_FLAG_APPEND
-paramiko.sftp_client.SFTP_FLAG_APPEND
-paramiko.sftp_file.SFTP_FLAG_APPEND
-paramiko.sftp_handle.SFTP_FLAG_APPEND
-paramiko.sftp_server.SFTP_FLAG_APPEND
-paramiko.sftp_si.SFTP_FLAG_APPEND" class="py-name" href="#" onclick="return doclink('link-49', 'SFTP_FLAG_APPEND', 'link-49');">SFTP_FLAG_APPEND</a></tt> <tt class="py-op">=</tt> <tt class="py-number">0x4</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"><tt id="link-50" class="py-name" targets="Variable paramiko.sftp.SFTP_FLAG_CREATE=paramiko.sftp-module.html#SFTP_FLAG_CREATE,Variable paramiko.sftp_attr.SFTP_FLAG_CREATE=paramiko.sftp_attr-module.html#SFTP_FLAG_CREATE,Variable paramiko.sftp_client.SFTP_FLAG_CREATE=paramiko.sftp_client-module.html#SFTP_FLAG_CREATE,Variable paramiko.sftp_file.SFTP_FLAG_CREATE=paramiko.sftp_file-module.html#SFTP_FLAG_CREATE,Variable paramiko.sftp_handle.SFTP_FLAG_CREATE=paramiko.sftp_handle-module.html#SFTP_FLAG_CREATE,Variable paramiko.sftp_server.SFTP_FLAG_CREATE=paramiko.sftp_server-module.html#SFTP_FLAG_CREATE,Variable paramiko.sftp_si.SFTP_FLAG_CREATE=paramiko.sftp_si-module.html#SFTP_FLAG_CREATE"><a title="paramiko.sftp.SFTP_FLAG_CREATE
-paramiko.sftp_attr.SFTP_FLAG_CREATE
-paramiko.sftp_client.SFTP_FLAG_CREATE
-paramiko.sftp_file.SFTP_FLAG_CREATE
-paramiko.sftp_handle.SFTP_FLAG_CREATE
-paramiko.sftp_server.SFTP_FLAG_CREATE
-paramiko.sftp_si.SFTP_FLAG_CREATE" class="py-name" href="#" onclick="return doclink('link-50', 'SFTP_FLAG_CREATE', 'link-50');">SFTP_FLAG_CREATE</a></tt> <tt class="py-op">=</tt> <tt class="py-number">0x8</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"><tt id="link-51" class="py-name" targets="Variable paramiko.sftp.SFTP_FLAG_TRUNC=paramiko.sftp-module.html#SFTP_FLAG_TRUNC,Variable paramiko.sftp_attr.SFTP_FLAG_TRUNC=paramiko.sftp_attr-module.html#SFTP_FLAG_TRUNC,Variable paramiko.sftp_client.SFTP_FLAG_TRUNC=paramiko.sftp_client-module.html#SFTP_FLAG_TRUNC,Variable paramiko.sftp_file.SFTP_FLAG_TRUNC=paramiko.sftp_file-module.html#SFTP_FLAG_TRUNC,Variable paramiko.sftp_handle.SFTP_FLAG_TRUNC=paramiko.sftp_handle-module.html#SFTP_FLAG_TRUNC,Variable paramiko.sftp_server.SFTP_FLAG_TRUNC=paramiko.sftp_server-module.html#SFTP_FLAG_TRUNC,Variable paramiko.sftp_si.SFTP_FLAG_TRUNC=paramiko.sftp_si-module.html#SFTP_FLAG_TRUNC"><a title="paramiko.sftp.SFTP_FLAG_TRUNC
-paramiko.sftp_attr.SFTP_FLAG_TRUNC
-paramiko.sftp_client.SFTP_FLAG_TRUNC
-paramiko.sftp_file.SFTP_FLAG_TRUNC
-paramiko.sftp_handle.SFTP_FLAG_TRUNC
-paramiko.sftp_server.SFTP_FLAG_TRUNC
-paramiko.sftp_si.SFTP_FLAG_TRUNC" class="py-name" href="#" onclick="return doclink('link-51', 'SFTP_FLAG_TRUNC', 'link-51');">SFTP_FLAG_TRUNC</a></tt> <tt class="py-op">=</tt> <tt class="py-number">0x10</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"><tt id="link-52" class="py-name" targets="Variable paramiko.sftp.SFTP_FLAG_EXCL=paramiko.sftp-module.html#SFTP_FLAG_EXCL,Variable paramiko.sftp_attr.SFTP_FLAG_EXCL=paramiko.sftp_attr-module.html#SFTP_FLAG_EXCL,Variable paramiko.sftp_client.SFTP_FLAG_EXCL=paramiko.sftp_client-module.html#SFTP_FLAG_EXCL,Variable paramiko.sftp_file.SFTP_FLAG_EXCL=paramiko.sftp_file-module.html#SFTP_FLAG_EXCL,Variable paramiko.sftp_handle.SFTP_FLAG_EXCL=paramiko.sftp_handle-module.html#SFTP_FLAG_EXCL,Variable paramiko.sftp_server.SFTP_FLAG_EXCL=paramiko.sftp_server-module.html#SFTP_FLAG_EXCL,Variable paramiko.sftp_si.SFTP_FLAG_EXCL=paramiko.sftp_si-module.html#SFTP_FLAG_EXCL"><a title="paramiko.sftp.SFTP_FLAG_EXCL
-paramiko.sftp_attr.SFTP_FLAG_EXCL
-paramiko.sftp_client.SFTP_FLAG_EXCL
-paramiko.sftp_file.SFTP_FLAG_EXCL
-paramiko.sftp_handle.SFTP_FLAG_EXCL
-paramiko.sftp_server.SFTP_FLAG_EXCL
-paramiko.sftp_si.SFTP_FLAG_EXCL" class="py-name" href="#" onclick="return doclink('link-52', 'SFTP_FLAG_EXCL', 'link-52');">SFTP_FLAG_EXCL</a></tt> <tt class="py-op">=</tt> <tt class="py-number">0x20</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"><tt id="link-53" class="py-name" targets="Variable paramiko.sftp._VERSION=paramiko.sftp-module.html#_VERSION"><a title="paramiko.sftp._VERSION" class="py-name" href="#" onclick="return doclink('link-53', '_VERSION', 'link-53');">_VERSION</a></tt> <tt class="py-op">=</tt> <tt class="py-number">3</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"><tt class="py-comment"># for debugging</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"><tt id="link-54" class="py-name" targets="Variable paramiko.sftp.CMD_NAMES=paramiko.sftp-module.html#CMD_NAMES,Variable paramiko.sftp_attr.CMD_NAMES=paramiko.sftp_attr-module.html#CMD_NAMES,Variable paramiko.sftp_client.CMD_NAMES=paramiko.sftp_client-module.html#CMD_NAMES,Variable paramiko.sftp_file.CMD_NAMES=paramiko.sftp_file-module.html#CMD_NAMES,Variable paramiko.sftp_handle.CMD_NAMES=paramiko.sftp_handle-module.html#CMD_NAMES,Variable paramiko.sftp_server.CMD_NAMES=paramiko.sftp_server-module.html#CMD_NAMES,Variable paramiko.sftp_si.CMD_NAMES=paramiko.sftp_si-module.html#CMD_NAMES"><a title="paramiko.sftp.CMD_NAMES
-paramiko.sftp_attr.CMD_NAMES
-paramiko.sftp_client.CMD_NAMES
-paramiko.sftp_file.CMD_NAMES
-paramiko.sftp_handle.CMD_NAMES
-paramiko.sftp_server.CMD_NAMES
-paramiko.sftp_si.CMD_NAMES" class="py-name" href="#" onclick="return doclink('link-54', 'CMD_NAMES', 'link-54');">CMD_NAMES</a></tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt id="link-55" class="py-name"><a title="paramiko.sftp.CMD_INIT
-paramiko.sftp_attr.CMD_INIT
-paramiko.sftp_client.CMD_INIT
-paramiko.sftp_file.CMD_INIT
-paramiko.sftp_handle.CMD_INIT
-paramiko.sftp_server.CMD_INIT
-paramiko.sftp_si.CMD_INIT" class="py-name" href="#" onclick="return doclink('link-55', 'CMD_INIT', 'link-10');">CMD_INIT</a></tt><tt class="py-op">:</tt> <tt class="py-string">'init'</tt><tt class="py-op">,</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt id="link-56" class="py-name"><a title="paramiko.sftp.CMD_VERSION
-paramiko.sftp_attr.CMD_VERSION
-paramiko.sftp_client.CMD_VERSION
-paramiko.sftp_file.CMD_VERSION
-paramiko.sftp_handle.CMD_VERSION
-paramiko.sftp_server.CMD_VERSION
-paramiko.sftp_si.CMD_VERSION" class="py-name" href="#" onclick="return doclink('link-56', 'CMD_VERSION', 'link-11');">CMD_VERSION</a></tt><tt class="py-op">:</tt> <tt class="py-string">'version'</tt><tt class="py-op">,</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt id="link-57" class="py-name"><a title="paramiko.sftp.CMD_OPEN
-paramiko.sftp_attr.CMD_OPEN
-paramiko.sftp_client.CMD_OPEN
-paramiko.sftp_file.CMD_OPEN
-paramiko.sftp_handle.CMD_OPEN
-paramiko.sftp_server.CMD_OPEN
-paramiko.sftp_si.CMD_OPEN" class="py-name" href="#" onclick="return doclink('link-57', 'CMD_OPEN', 'link-12');">CMD_OPEN</a></tt><tt class="py-op">:</tt> <tt class="py-string">'open'</tt><tt class="py-op">,</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt id="link-58" class="py-name"><a title="paramiko.sftp.CMD_CLOSE
-paramiko.sftp_attr.CMD_CLOSE
-paramiko.sftp_client.CMD_CLOSE
-paramiko.sftp_file.CMD_CLOSE
-paramiko.sftp_handle.CMD_CLOSE
-paramiko.sftp_server.CMD_CLOSE
-paramiko.sftp_si.CMD_CLOSE" class="py-name" href="#" onclick="return doclink('link-58', 'CMD_CLOSE', 'link-13');">CMD_CLOSE</a></tt><tt class="py-op">:</tt> <tt class="py-string">'close'</tt><tt class="py-op">,</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt id="link-59" class="py-name"><a title="paramiko.sftp.CMD_READ
-paramiko.sftp_attr.CMD_READ
-paramiko.sftp_client.CMD_READ
-paramiko.sftp_file.CMD_READ
-paramiko.sftp_handle.CMD_READ
-paramiko.sftp_server.CMD_READ
-paramiko.sftp_si.CMD_READ" class="py-name" href="#" onclick="return doclink('link-59', 'CMD_READ', 'link-14');">CMD_READ</a></tt><tt class="py-op">:</tt> <tt class="py-string">'read'</tt><tt class="py-op">,</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt id="link-60" class="py-name"><a title="paramiko.sftp.CMD_WRITE
-paramiko.sftp_attr.CMD_WRITE
-paramiko.sftp_client.CMD_WRITE
-paramiko.sftp_file.CMD_WRITE
-paramiko.sftp_handle.CMD_WRITE
-paramiko.sftp_server.CMD_WRITE
-paramiko.sftp_si.CMD_WRITE" class="py-name" href="#" onclick="return doclink('link-60', 'CMD_WRITE', 'link-15');">CMD_WRITE</a></tt><tt class="py-op">:</tt> <tt class="py-string">'write'</tt><tt class="py-op">,</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt id="link-61" class="py-name"><a title="paramiko.sftp.CMD_LSTAT
-paramiko.sftp_attr.CMD_LSTAT
-paramiko.sftp_client.CMD_LSTAT
-paramiko.sftp_file.CMD_LSTAT
-paramiko.sftp_handle.CMD_LSTAT
-paramiko.sftp_server.CMD_LSTAT
-paramiko.sftp_si.CMD_LSTAT" class="py-name" href="#" onclick="return doclink('link-61', 'CMD_LSTAT', 'link-16');">CMD_LSTAT</a></tt><tt class="py-op">:</tt> <tt class="py-string">'lstat'</tt><tt class="py-op">,</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt id="link-62" class="py-name"><a title="paramiko.sftp.CMD_FSTAT
-paramiko.sftp_attr.CMD_FSTAT
-paramiko.sftp_client.CMD_FSTAT
-paramiko.sftp_file.CMD_FSTAT
-paramiko.sftp_handle.CMD_FSTAT
-paramiko.sftp_server.CMD_FSTAT
-paramiko.sftp_si.CMD_FSTAT" class="py-name" href="#" onclick="return doclink('link-62', 'CMD_FSTAT', 'link-17');">CMD_FSTAT</a></tt><tt class="py-op">:</tt> <tt class="py-string">'fstat'</tt><tt class="py-op">,</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt id="link-63" class="py-name"><a title="paramiko.sftp.CMD_SETSTAT
-paramiko.sftp_attr.CMD_SETSTAT
-paramiko.sftp_client.CMD_SETSTAT
-paramiko.sftp_file.CMD_SETSTAT
-paramiko.sftp_handle.CMD_SETSTAT
-paramiko.sftp_server.CMD_SETSTAT
-paramiko.sftp_si.CMD_SETSTAT" class="py-name" href="#" onclick="return doclink('link-63', 'CMD_SETSTAT', 'link-18');">CMD_SETSTAT</a></tt><tt class="py-op">:</tt> <tt class="py-string">'setstat'</tt><tt class="py-op">,</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt id="link-64" class="py-name"><a title="paramiko.sftp.CMD_FSETSTAT
-paramiko.sftp_attr.CMD_FSETSTAT
-paramiko.sftp_client.CMD_FSETSTAT
-paramiko.sftp_file.CMD_FSETSTAT
-paramiko.sftp_handle.CMD_FSETSTAT
-paramiko.sftp_server.CMD_FSETSTAT
-paramiko.sftp_si.CMD_FSETSTAT" class="py-name" href="#" onclick="return doclink('link-64', 'CMD_FSETSTAT', 'link-19');">CMD_FSETSTAT</a></tt><tt class="py-op">:</tt> <tt class="py-string">'fsetstat'</tt><tt class="py-op">,</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt id="link-65" class="py-name"><a title="paramiko.sftp.CMD_OPENDIR
-paramiko.sftp_attr.CMD_OPENDIR
-paramiko.sftp_client.CMD_OPENDIR
-paramiko.sftp_file.CMD_OPENDIR
-paramiko.sftp_handle.CMD_OPENDIR
-paramiko.sftp_server.CMD_OPENDIR
-paramiko.sftp_si.CMD_OPENDIR" class="py-name" href="#" onclick="return doclink('link-65', 'CMD_OPENDIR', 'link-20');">CMD_OPENDIR</a></tt><tt class="py-op">:</tt> <tt class="py-string">'opendir'</tt><tt class="py-op">,</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt id="link-66" class="py-name"><a title="paramiko.sftp.CMD_READDIR
-paramiko.sftp_attr.CMD_READDIR
-paramiko.sftp_client.CMD_READDIR
-paramiko.sftp_file.CMD_READDIR
-paramiko.sftp_handle.CMD_READDIR
-paramiko.sftp_server.CMD_READDIR
-paramiko.sftp_si.CMD_READDIR" class="py-name" href="#" onclick="return doclink('link-66', 'CMD_READDIR', 'link-21');">CMD_READDIR</a></tt><tt class="py-op">:</tt> <tt class="py-string">'readdir'</tt><tt class="py-op">,</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt id="link-67" class="py-name"><a title="paramiko.sftp.CMD_REMOVE
-paramiko.sftp_attr.CMD_REMOVE
-paramiko.sftp_client.CMD_REMOVE
-paramiko.sftp_file.CMD_REMOVE
-paramiko.sftp_handle.CMD_REMOVE
-paramiko.sftp_server.CMD_REMOVE
-paramiko.sftp_si.CMD_REMOVE" class="py-name" href="#" onclick="return doclink('link-67', 'CMD_REMOVE', 'link-22');">CMD_REMOVE</a></tt><tt class="py-op">:</tt> <tt class="py-string">'remove'</tt><tt class="py-op">,</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt id="link-68" class="py-name"><a title="paramiko.sftp.CMD_MKDIR
-paramiko.sftp_attr.CMD_MKDIR
-paramiko.sftp_client.CMD_MKDIR
-paramiko.sftp_file.CMD_MKDIR
-paramiko.sftp_handle.CMD_MKDIR
-paramiko.sftp_server.CMD_MKDIR
-paramiko.sftp_si.CMD_MKDIR" class="py-name" href="#" onclick="return doclink('link-68', 'CMD_MKDIR', 'link-23');">CMD_MKDIR</a></tt><tt class="py-op">:</tt> <tt class="py-string">'mkdir'</tt><tt class="py-op">,</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt id="link-69" class="py-name"><a title="paramiko.sftp.CMD_RMDIR
-paramiko.sftp_attr.CMD_RMDIR
-paramiko.sftp_client.CMD_RMDIR
-paramiko.sftp_file.CMD_RMDIR
-paramiko.sftp_handle.CMD_RMDIR
-paramiko.sftp_server.CMD_RMDIR
-paramiko.sftp_si.CMD_RMDIR" class="py-name" href="#" onclick="return doclink('link-69', 'CMD_RMDIR', 'link-24');">CMD_RMDIR</a></tt><tt class="py-op">:</tt> <tt class="py-string">'rmdir'</tt><tt class="py-op">,</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt id="link-70" class="py-name"><a title="paramiko.sftp.CMD_REALPATH
-paramiko.sftp_attr.CMD_REALPATH
-paramiko.sftp_client.CMD_REALPATH
-paramiko.sftp_file.CMD_REALPATH
-paramiko.sftp_handle.CMD_REALPATH
-paramiko.sftp_server.CMD_REALPATH
-paramiko.sftp_si.CMD_REALPATH" class="py-name" href="#" onclick="return doclink('link-70', 'CMD_REALPATH', 'link-25');">CMD_REALPATH</a></tt><tt class="py-op">:</tt> <tt class="py-string">'realpath'</tt><tt class="py-op">,</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt id="link-71" class="py-name"><a title="paramiko.sftp.CMD_STAT
-paramiko.sftp_attr.CMD_STAT
-paramiko.sftp_client.CMD_STAT
-paramiko.sftp_file.CMD_STAT
-paramiko.sftp_handle.CMD_STAT
-paramiko.sftp_server.CMD_STAT
-paramiko.sftp_si.CMD_STAT" class="py-name" href="#" onclick="return doclink('link-71', 'CMD_STAT', 'link-26');">CMD_STAT</a></tt><tt class="py-op">:</tt> <tt class="py-string">'stat'</tt><tt class="py-op">,</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt id="link-72" class="py-name"><a title="paramiko.sftp.CMD_RENAME
-paramiko.sftp_attr.CMD_RENAME
-paramiko.sftp_client.CMD_RENAME
-paramiko.sftp_file.CMD_RENAME
-paramiko.sftp_handle.CMD_RENAME
-paramiko.sftp_server.CMD_RENAME
-paramiko.sftp_si.CMD_RENAME" class="py-name" href="#" onclick="return doclink('link-72', 'CMD_RENAME', 'link-27');">CMD_RENAME</a></tt><tt class="py-op">:</tt> <tt class="py-string">'rename'</tt><tt class="py-op">,</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt id="link-73" class="py-name"><a title="paramiko.sftp.CMD_READLINK
-paramiko.sftp_attr.CMD_READLINK
-paramiko.sftp_client.CMD_READLINK
-paramiko.sftp_file.CMD_READLINK
-paramiko.sftp_handle.CMD_READLINK
-paramiko.sftp_server.CMD_READLINK
-paramiko.sftp_si.CMD_READLINK" class="py-name" href="#" onclick="return doclink('link-73', 'CMD_READLINK', 'link-28');">CMD_READLINK</a></tt><tt class="py-op">:</tt> <tt class="py-string">'readlink'</tt><tt class="py-op">,</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt id="link-74" class="py-name"><a title="paramiko.sftp.CMD_SYMLINK
-paramiko.sftp_attr.CMD_SYMLINK
-paramiko.sftp_client.CMD_SYMLINK
-paramiko.sftp_file.CMD_SYMLINK
-paramiko.sftp_handle.CMD_SYMLINK
-paramiko.sftp_server.CMD_SYMLINK
-paramiko.sftp_si.CMD_SYMLINK" class="py-name" href="#" onclick="return doclink('link-74', 'CMD_SYMLINK', 'link-29');">CMD_SYMLINK</a></tt><tt class="py-op">:</tt> <tt class="py-string">'symlink'</tt><tt class="py-op">,</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt id="link-75" class="py-name"><a title="paramiko.sftp.CMD_STATUS
-paramiko.sftp_attr.CMD_STATUS
-paramiko.sftp_client.CMD_STATUS
-paramiko.sftp_file.CMD_STATUS
-paramiko.sftp_handle.CMD_STATUS
-paramiko.sftp_server.CMD_STATUS
-paramiko.sftp_si.CMD_STATUS" class="py-name" href="#" onclick="return doclink('link-75', 'CMD_STATUS', 'link-30');">CMD_STATUS</a></tt><tt class="py-op">:</tt> <tt class="py-string">'status'</tt><tt class="py-op">,</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt id="link-76" class="py-name"><a title="paramiko.sftp.CMD_HANDLE
-paramiko.sftp_attr.CMD_HANDLE
-paramiko.sftp_client.CMD_HANDLE
-paramiko.sftp_file.CMD_HANDLE
-paramiko.sftp_handle.CMD_HANDLE
-paramiko.sftp_server.CMD_HANDLE
-paramiko.sftp_si.CMD_HANDLE" class="py-name" href="#" onclick="return doclink('link-76', 'CMD_HANDLE', 'link-31');">CMD_HANDLE</a></tt><tt class="py-op">:</tt> <tt class="py-string">'handle'</tt><tt class="py-op">,</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt id="link-77" class="py-name"><a title="paramiko.sftp.CMD_DATA
-paramiko.sftp_attr.CMD_DATA
-paramiko.sftp_client.CMD_DATA
-paramiko.sftp_file.CMD_DATA
-paramiko.sftp_handle.CMD_DATA
-paramiko.sftp_server.CMD_DATA
-paramiko.sftp_si.CMD_DATA" class="py-name" href="#" onclick="return doclink('link-77', 'CMD_DATA', 'link-32');">CMD_DATA</a></tt><tt class="py-op">:</tt> <tt class="py-string">'data'</tt><tt class="py-op">,</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt id="link-78" class="py-name"><a title="paramiko.sftp.CMD_NAME
-paramiko.sftp_attr.CMD_NAME
-paramiko.sftp_client.CMD_NAME
-paramiko.sftp_file.CMD_NAME
-paramiko.sftp_handle.CMD_NAME
-paramiko.sftp_server.CMD_NAME
-paramiko.sftp_si.CMD_NAME" class="py-name" href="#" onclick="return doclink('link-78', 'CMD_NAME', 'link-33');">CMD_NAME</a></tt><tt class="py-op">:</tt> <tt class="py-string">'name'</tt><tt class="py-op">,</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt id="link-79" class="py-name"><a title="paramiko.sftp.CMD_ATTRS
-paramiko.sftp_attr.CMD_ATTRS
-paramiko.sftp_client.CMD_ATTRS
-paramiko.sftp_file.CMD_ATTRS
-paramiko.sftp_handle.CMD_ATTRS
-paramiko.sftp_server.CMD_ATTRS
-paramiko.sftp_si.CMD_ATTRS" class="py-name" href="#" onclick="return doclink('link-79', 'CMD_ATTRS', 'link-34');">CMD_ATTRS</a></tt><tt class="py-op">:</tt> <tt class="py-string">'attrs'</tt><tt class="py-op">,</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt id="link-80" class="py-name"><a title="paramiko.sftp.CMD_EXTENDED
-paramiko.sftp_attr.CMD_EXTENDED
-paramiko.sftp_client.CMD_EXTENDED
-paramiko.sftp_file.CMD_EXTENDED
-paramiko.sftp_handle.CMD_EXTENDED
-paramiko.sftp_server.CMD_EXTENDED
-paramiko.sftp_si.CMD_EXTENDED" class="py-name" href="#" onclick="return doclink('link-80', 'CMD_EXTENDED', 'link-35');">CMD_EXTENDED</a></tt><tt class="py-op">:</tt> <tt class="py-string">'extended'</tt><tt class="py-op">,</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt id="link-81" class="py-name"><a title="paramiko.sftp.CMD_EXTENDED_REPLY
-paramiko.sftp_attr.CMD_EXTENDED_REPLY
-paramiko.sftp_client.CMD_EXTENDED_REPLY
-paramiko.sftp_file.CMD_EXTENDED_REPLY
-paramiko.sftp_handle.CMD_EXTENDED_REPLY
-paramiko.sftp_server.CMD_EXTENDED_REPLY
-paramiko.sftp_si.CMD_EXTENDED_REPLY" class="py-name" href="#" onclick="return doclink('link-81', 'CMD_EXTENDED_REPLY', 'link-36');">CMD_EXTENDED_REPLY</a></tt><tt class="py-op">:</tt> <tt class="py-string">'extended_reply'</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-op">}</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> </tt>
-<a name="SFTPError"></a><div id="SFTPError-def"><a name="L92"></a><tt class="py-lineno"> 92</tt> <a class="py-toggle" href="#" id="SFTPError-toggle" onclick="return toggle('SFTPError');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.sftp.SFTPError-class.html">SFTPError</a> <tt class="py-op">(</tt><tt class="py-base-class">Exception</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPError-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="SFTPError-expanded"><a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-</div><a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> </tt>
-<a name="BaseSFTP"></a><div id="BaseSFTP-def"><a name="L96"></a><tt class="py-lineno"> 96</tt> <a class="py-toggle" href="#" id="BaseSFTP-toggle" onclick="return toggle('BaseSFTP');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.sftp.BaseSFTP-class.html">BaseSFTP</a> <tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BaseSFTP-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="BaseSFTP-expanded"><a name="BaseSFTP.__init__"></a><div id="BaseSFTP.__init__-def"><a name="L97"></a><tt class="py-lineno"> 97</tt> <a class="py-toggle" href="#" id="BaseSFTP.__init__-toggle" onclick="return toggle('BaseSFTP.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp.BaseSFTP-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BaseSFTP.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BaseSFTP.__init__-expanded"><a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-82" class="py-name" targets="Class paramiko.logging22.logger=paramiko.logging22.logger-class.html"><a title="paramiko.logging22.logger" class="py-name" href="#" onclick="return doclink('link-82', 'logger', 'link-82');">logger</a></tt> <tt class="py-op">=</tt> <tt id="link-83" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-83', 'util', 'link-3');">util</a></tt><tt class="py-op">.</tt><tt id="link-84" class="py-name" targets="Function paramiko.util.get_logger()=paramiko.util-module.html#get_logger"><a title="paramiko.util.get_logger" class="py-name" href="#" onclick="return doclink('link-84', 'get_logger', 'link-84');">get_logger</a></tt><tt class="py-op">(</tt><tt class="py-string">'paramiko.sftp'</tt><tt class="py-op">)</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">sock</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ultra_debug</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-</div><a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-comment">### internals...</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> </tt>
-<a name="BaseSFTP._send_version"></a><div id="BaseSFTP._send_version-def"><a name="L106"></a><tt class="py-lineno">106</tt> <a class="py-toggle" href="#" id="BaseSFTP._send_version-toggle" onclick="return toggle('BaseSFTP._send_version');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp.BaseSFTP-class.html#_send_version">_send_version</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BaseSFTP._send_version-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BaseSFTP._send_version-expanded"><a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_packet</tt><tt class="py-op">(</tt><tt id="link-85" class="py-name"><a title="paramiko.sftp.CMD_INIT
-paramiko.sftp_attr.CMD_INIT
-paramiko.sftp_client.CMD_INIT
-paramiko.sftp_file.CMD_INIT
-paramiko.sftp_handle.CMD_INIT
-paramiko.sftp_server.CMD_INIT
-paramiko.sftp_si.CMD_INIT" class="py-name" href="#" onclick="return doclink('link-85', 'CMD_INIT', 'link-10');">CMD_INIT</a></tt><tt class="py-op">,</tt> <tt class="py-name">struct</tt><tt class="py-op">.</tt><tt class="py-name">pack</tt><tt class="py-op">(</tt><tt class="py-string">'&gt;I'</tt><tt class="py-op">,</tt> <tt id="link-86" class="py-name"><a title="paramiko.sftp._VERSION" class="py-name" href="#" onclick="return doclink('link-86', '_VERSION', 'link-53');">_VERSION</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">,</tt> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_read_packet</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">t</tt> <tt class="py-op">!=</tt> <tt id="link-87" class="py-name"><a title="paramiko.sftp.CMD_VERSION
-paramiko.sftp_attr.CMD_VERSION
-paramiko.sftp_client.CMD_VERSION
-paramiko.sftp_file.CMD_VERSION
-paramiko.sftp_handle.CMD_VERSION
-paramiko.sftp_server.CMD_VERSION
-paramiko.sftp_si.CMD_VERSION" class="py-name" href="#" onclick="return doclink('link-87', 'CMD_VERSION', 'link-11');">CMD_VERSION</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-88" class="py-name" targets="Class paramiko.SFTPError=paramiko.SFTPError-class.html"><a title="paramiko.SFTPError" class="py-name" href="#" onclick="return doclink('link-88', 'SFTPError', 'link-88');">SFTPError</a></tt><tt class="py-op">(</tt><tt class="py-string">'Incompatible sftp protocol'</tt><tt class="py-op">)</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt class="py-name">version</tt> <tt class="py-op">=</tt> <tt class="py-name">struct</tt><tt class="py-op">.</tt><tt class="py-name">unpack</tt><tt class="py-op">(</tt><tt class="py-string">'&gt;I'</tt><tt class="py-op">,</tt> <tt class="py-name">data</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-number">4</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-comment"># if version != _VERSION:</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-comment"># raise SFTPError('Incompatible sftp protocol')</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">version</tt> </tt>
-</div><a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> </tt>
-<a name="BaseSFTP._send_server_version"></a><div id="BaseSFTP._send_server_version-def"><a name="L116"></a><tt class="py-lineno">116</tt> <a class="py-toggle" href="#" id="BaseSFTP._send_server_version-toggle" onclick="return toggle('BaseSFTP._send_server_version');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp.BaseSFTP-class.html#_send_server_version">_send_server_version</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BaseSFTP._send_server_version-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BaseSFTP._send_server_version-expanded"><a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-comment"># winscp will freak out if the server sends version info before the</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-comment"># client finishes sending INIT.</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">,</tt> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_read_packet</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">t</tt> <tt class="py-op">!=</tt> <tt id="link-89" class="py-name"><a title="paramiko.sftp.CMD_INIT
-paramiko.sftp_attr.CMD_INIT
-paramiko.sftp_client.CMD_INIT
-paramiko.sftp_file.CMD_INIT
-paramiko.sftp_handle.CMD_INIT
-paramiko.sftp_server.CMD_INIT
-paramiko.sftp_si.CMD_INIT" class="py-name" href="#" onclick="return doclink('link-89', 'CMD_INIT', 'link-10');">CMD_INIT</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-90" class="py-name"><a title="paramiko.SFTPError" class="py-name" href="#" onclick="return doclink('link-90', 'SFTPError', 'link-88');">SFTPError</a></tt><tt class="py-op">(</tt><tt class="py-string">'Incompatible sftp protocol'</tt><tt class="py-op">)</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-name">version</tt> <tt class="py-op">=</tt> <tt class="py-name">struct</tt><tt class="py-op">.</tt><tt class="py-name">unpack</tt><tt class="py-op">(</tt><tt class="py-string">'&gt;I'</tt><tt class="py-op">,</tt> <tt class="py-name">data</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-number">4</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-comment"># advertise that we support "check-file"</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-name">extension_pairs</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-string">'check-file'</tt><tt class="py-op">,</tt> <tt class="py-string">'md5,sha1'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt class="py-name">msg</tt> <tt class="py-op">=</tt> <tt id="link-91" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-91', 'Message', 'link-9');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-92" class="py-name" targets="Method paramiko.Message.add_int()=paramiko.Message-class.html#add_int"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-92', 'add_int', 'link-92');">add_int</a></tt><tt class="py-op">(</tt><tt id="link-93" class="py-name"><a title="paramiko.sftp._VERSION" class="py-name" href="#" onclick="return doclink('link-93', '_VERSION', 'link-53');">_VERSION</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-94" class="py-name" targets="Method paramiko.HostKeys.add()=paramiko.HostKeys-class.html#add,Method paramiko.Message.add()=paramiko.Message-class.html#add"><a title="paramiko.HostKeys.add
-paramiko.Message.add" class="py-name" href="#" onclick="return doclink('link-94', 'add', 'link-94');">add</a></tt><tt class="py-op">(</tt><tt class="py-op">*</tt><tt class="py-name">extension_pairs</tt><tt class="py-op">)</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_packet</tt><tt class="py-op">(</tt><tt id="link-95" class="py-name"><a title="paramiko.sftp.CMD_VERSION
-paramiko.sftp_attr.CMD_VERSION
-paramiko.sftp_client.CMD_VERSION
-paramiko.sftp_file.CMD_VERSION
-paramiko.sftp_handle.CMD_VERSION
-paramiko.sftp_server.CMD_VERSION
-paramiko.sftp_si.CMD_VERSION" class="py-name" href="#" onclick="return doclink('link-95', 'CMD_VERSION', 'link-11');">CMD_VERSION</a></tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">version</tt> </tt>
-</div><a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> </tt>
-<a name="BaseSFTP._log"></a><div id="BaseSFTP._log-def"><a name="L131"></a><tt class="py-lineno">131</tt> <a class="py-toggle" href="#" id="BaseSFTP._log-toggle" onclick="return toggle('BaseSFTP._log');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp.BaseSFTP-class.html#_log">_log</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">level</tt><tt class="py-op">,</tt> <tt class="py-param">msg</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">args</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BaseSFTP._log-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BaseSFTP._log-expanded"><a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-96" class="py-name"><a title="paramiko.logging22.logger" class="py-name" href="#" onclick="return doclink('link-96', 'logger', 'link-82');">logger</a></tt><tt class="py-op">.</tt><tt id="link-97" class="py-name" targets="Method paramiko.logging22.logger.log()=paramiko.logging22.logger-class.html#log"><a title="paramiko.logging22.logger.log" class="py-name" href="#" onclick="return doclink('link-97', 'log', 'link-97');">log</a></tt><tt class="py-op">(</tt><tt class="py-name">level</tt><tt class="py-op">,</tt> <tt class="py-name">msg</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-name">args</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> </tt>
-<a name="BaseSFTP._write_all"></a><div id="BaseSFTP._write_all-def"><a name="L134"></a><tt class="py-lineno">134</tt> <a class="py-toggle" href="#" id="BaseSFTP._write_all-toggle" onclick="return toggle('BaseSFTP._write_all');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp.BaseSFTP-class.html#_write_all">_write_all</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">out</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BaseSFTP._write_all-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BaseSFTP._write_all-expanded"><a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">out</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-name">n</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">sock</tt><tt class="py-op">.</tt><tt id="link-98" class="py-name" targets="Method paramiko.Channel.send()=paramiko.Channel-class.html#send,Method paramiko.win_pageant.PageantConnection.send()=paramiko.win_pageant.PageantConnection-class.html#send"><a title="paramiko.Channel.send
-paramiko.win_pageant.PageantConnection.send" class="py-name" href="#" onclick="return doclink('link-98', 'send', 'link-98');">send</a></tt><tt class="py-op">(</tt><tt class="py-name">out</tt><tt class="py-op">)</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">n</tt> <tt class="py-op">&lt;=</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">EOFError</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">n</tt> <tt class="py-op">==</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">out</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt class="py-name">out</tt><tt class="py-op">[</tt><tt class="py-name">n</tt><tt class="py-op">:</tt><tt class="py-op">]</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-</div><a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> </tt>
-<a name="BaseSFTP._read_all"></a><div id="BaseSFTP._read_all-def"><a name="L144"></a><tt class="py-lineno">144</tt> <a class="py-toggle" href="#" id="BaseSFTP._read_all-toggle" onclick="return toggle('BaseSFTP._read_all');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp.BaseSFTP-class.html#_read_all">_read_all</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">n</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BaseSFTP._read_all-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BaseSFTP._read_all-expanded"><a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">n</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">sock</tt><tt class="py-op">,</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">socket</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt class="py-comment"># sometimes sftp is used directly over a socket instead of</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt class="py-comment"># through a paramiko channel. in this case, check periodically</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt class="py-comment"># if the socket is closed. (for some reason, recv() won't ever</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> <tt class="py-comment"># return or raise an exception, but calling select on a closed</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> <tt class="py-comment"># socket will.)</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> <tt id="link-99" class="py-name" targets="Method paramiko.BufferedFile.read()=paramiko.BufferedFile-class.html#read,Method paramiko.SFTPHandle.read()=paramiko.SFTPHandle-class.html#read,Method paramiko.buffered_pipe.BufferedPipe.read()=paramiko.buffered_pipe.BufferedPipe-class.html#read"><a title="paramiko.BufferedFile.read
-paramiko.SFTPHandle.read
-paramiko.buffered_pipe.BufferedPipe.read" class="py-name" href="#" onclick="return doclink('link-99', 'read', 'link-99');">read</a></tt><tt class="py-op">,</tt> <tt id="link-100" class="py-name" targets="Method paramiko.BufferedFile.write()=paramiko.BufferedFile-class.html#write,Method paramiko.SFTPHandle.write()=paramiko.SFTPHandle-class.html#write"><a title="paramiko.BufferedFile.write
-paramiko.SFTPHandle.write" class="py-name" href="#" onclick="return doclink('link-100', 'write', 'link-100');">write</a></tt><tt class="py-op">,</tt> <tt class="py-name">err</tt> <tt class="py-op">=</tt> <tt class="py-name">select</tt><tt class="py-op">.</tt><tt class="py-name">select</tt><tt class="py-op">(</tt><tt class="py-op">[</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">sock</tt> <tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-number">0.1</tt><tt class="py-op">)</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt id="link-101" class="py-name"><a title="paramiko.BufferedFile.read
-paramiko.SFTPHandle.read
-paramiko.buffered_pipe.BufferedPipe.read" class="py-name" href="#" onclick="return doclink('link-101', 'read', 'link-99');">read</a></tt><tt class="py-op">)</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> <tt class="py-name">x</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">sock</tt><tt class="py-op">.</tt><tt id="link-102" class="py-name" targets="Method paramiko.Channel.recv()=paramiko.Channel-class.html#recv,Method paramiko.win_pageant.PageantConnection.recv()=paramiko.win_pageant.PageantConnection-class.html#recv"><a title="paramiko.Channel.recv
-paramiko.win_pageant.PageantConnection.recv" class="py-name" href="#" onclick="return doclink('link-102', 'recv', 'link-102');">recv</a></tt><tt class="py-op">(</tt><tt class="py-name">n</tt><tt class="py-op">)</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> <tt class="py-name">x</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">sock</tt><tt class="py-op">.</tt><tt id="link-103" class="py-name"><a title="paramiko.Channel.recv
-paramiko.win_pageant.PageantConnection.recv" class="py-name" href="#" onclick="return doclink('link-103', 'recv', 'link-102');">recv</a></tt><tt class="py-op">(</tt><tt class="py-name">n</tt><tt class="py-op">)</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">EOFError</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">+=</tt> <tt class="py-name">x</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> <tt class="py-name">n</tt> <tt class="py-op">-=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">out</tt> </tt>
-</div><a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> </tt>
-<a name="BaseSFTP._send_packet"></a><div id="BaseSFTP._send_packet-def"><a name="L167"></a><tt class="py-lineno">167</tt> <a class="py-toggle" href="#" id="BaseSFTP._send_packet-toggle" onclick="return toggle('BaseSFTP._send_packet');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp.BaseSFTP-class.html#_send_packet">_send_packet</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">t</tt><tt class="py-op">,</tt> <tt class="py-param">packet</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BaseSFTP._send_packet-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BaseSFTP._send_packet-expanded"><a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt class="py-comment">#self._log(DEBUG2, 'write: %s (len=%d)' % (CMD_NAMES.get(t, '0x%02x' % t), len(packet)))</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt class="py-name">struct</tt><tt class="py-op">.</tt><tt class="py-name">pack</tt><tt class="py-op">(</tt><tt class="py-string">'&gt;I'</tt><tt class="py-op">,</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt id="link-104" class="py-name" targets="Module paramiko.packet=paramiko.packet-module.html"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-104', 'packet', 'link-104');">packet</a></tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-name">chr</tt><tt class="py-op">(</tt><tt class="py-name">t</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt id="link-105" class="py-name"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-105', 'packet', 'link-104');">packet</a></tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ultra_debug</tt><tt class="py-op">:</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-106" class="py-name" targets="Variable paramiko.auth_handler.DEBUG=paramiko.auth_handler-module.html#DEBUG,Variable paramiko.channel.DEBUG=paramiko.channel-module.html#DEBUG,Variable paramiko.client.DEBUG=paramiko.client-module.html#DEBUG,Variable paramiko.common.DEBUG=paramiko.common-module.html#DEBUG,Variable paramiko.dsskey.DEBUG=paramiko.dsskey-module.html#DEBUG,Variable paramiko.hostkeys.DEBUG=paramiko.hostkeys-module.html#DEBUG,Variable paramiko.kex_gex.DEBUG=paramiko.kex_gex-module.html#DEBUG,Variable paramiko.kex_group1.DEBUG=paramiko.kex_group1-module.html#DEBUG,Variable paramiko.logging22.DEBUG=paramiko.logging22-module.html#DEBUG,Variable paramiko.packet.DEBUG=paramiko.packet-module.html#DEBUG,Variable paramiko.pkey.DEBUG=paramiko.pkey-module.html#DEBUG,Variable paramiko.rsakey.DEBUG=paramiko.rsakey-module.html#DEBUG,Variable paramiko.server.DEBUG=paramiko.server-module.html#DEBUG,Variable paramiko.sftp.DEBUG=paramiko.sftp-module.html#DEBUG,Variable paramiko.sftp_attr.DEBUG=paramiko.sftp_attr-module.html#DEBUG,Variable paramiko.sftp_client.DEBUG=paramiko.sftp_client-module.html#DEBUG,Variable paramiko.sftp_file.DEBUG=paramiko.sftp_file-module.html#DEBUG,Variable paramiko.sftp_handle.DEBUG=paramiko.sftp_handle-module.html#DEBUG,Variable paramiko.sftp_server.DEBUG=paramiko.sftp_server-module.html#DEBUG,Variable paramiko.sftp_si.DEBUG=paramiko.sftp_si-module.html#DEBUG,Variable paramiko.transport.DEBUG=paramiko.transport-module.html#DEBUG,Variable paramiko.util.DEBUG=paramiko.util-module.html#DEBUG"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-106', 'DEBUG', 'link-106');">DEBUG</a></tt><tt class="py-op">,</tt> <tt id="link-107" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-107', 'util', 'link-3');">util</a></tt><tt class="py-op">.</tt><tt id="link-108" class="py-name" targets="Function paramiko.util.format_binary()=paramiko.util-module.html#format_binary"><a title="paramiko.util.format_binary" class="py-name" href="#" onclick="return doclink('link-108', 'format_binary', 'link-108');">format_binary</a></tt><tt class="py-op">(</tt><tt class="py-name">out</tt><tt class="py-op">,</tt> <tt class="py-string">'OUT: '</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_write_all</tt><tt class="py-op">(</tt><tt class="py-name">out</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> </tt>
-<a name="BaseSFTP._read_packet"></a><div id="BaseSFTP._read_packet-def"><a name="L174"></a><tt class="py-lineno">174</tt> <a class="py-toggle" href="#" id="BaseSFTP._read_packet-toggle" onclick="return toggle('BaseSFTP._read_packet');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp.BaseSFTP-class.html#_read_packet">_read_packet</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BaseSFTP._read_packet-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BaseSFTP._read_packet-expanded"><a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt class="py-name">x</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_read_all</tt><tt class="py-op">(</tt><tt class="py-number">4</tt><tt class="py-op">)</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> <tt class="py-comment"># most sftp servers won't accept packets larger than about 32k, so</tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> <tt class="py-comment"># anything with the high byte set (&gt; 16MB) is just garbage.</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">x</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">!=</tt> <tt class="py-string">'\x00'</tt><tt class="py-op">:</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-109" class="py-name"><a title="paramiko.SFTPError" class="py-name" href="#" onclick="return doclink('link-109', 'SFTPError', 'link-88');">SFTPError</a></tt><tt class="py-op">(</tt><tt class="py-string">'Garbage packet received'</tt><tt class="py-op">)</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">struct</tt><tt class="py-op">.</tt><tt class="py-name">unpack</tt><tt class="py-op">(</tt><tt class="py-string">'&gt;I'</tt><tt class="py-op">,</tt> <tt class="py-name">x</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_read_all</tt><tt class="py-op">(</tt><tt class="py-name">size</tt><tt class="py-op">)</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ultra_debug</tt><tt class="py-op">:</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-110" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-110', 'DEBUG', 'link-106');">DEBUG</a></tt><tt class="py-op">,</tt> <tt id="link-111" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-111', 'util', 'link-3');">util</a></tt><tt class="py-op">.</tt><tt id="link-112" class="py-name"><a title="paramiko.util.format_binary" class="py-name" href="#" onclick="return doclink('link-112', 'format_binary', 'link-108');">format_binary</a></tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">,</tt> <tt class="py-string">'IN: '</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">;</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">ord</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> <tt class="py-comment">#self._log(DEBUG2, 'read: %s (len=%d)' % (CMD_NAMES.get(t), '0x%02x' % t, len(data)-1))</tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">t</tt><tt class="py-op">,</tt> <tt class="py-name">data</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">:</tt><tt class="py-op">]</tt> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt> </tt>
-</div></div><a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:07 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.sftp_attr-module.html b/docs/paramiko.sftp_attr-module.html
deleted file mode 100644
index 72994b1..0000000
--- a/docs/paramiko.sftp_attr-module.html
+++ /dev/null
@@ -1,905 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.sftp_attr</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;sftp_attr
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.sftp_attr-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module sftp_attr</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.sftp_attr-pysrc.html">source&nbsp;code</a></span></p>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_FAILED"></a><span class="summary-name">AUTH_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_PARTIALLY_SUCCESSFUL"></a><span class="summary-name">AUTH_PARTIALLY_SUCCESSFUL</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_SUCCESSFUL"></a><span class="summary-name">AUTH_SUCCESSFUL</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_ATTRS"></a><span class="summary-name">CMD_ATTRS</span> = <code title="105">105</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_CLOSE"></a><span class="summary-name">CMD_CLOSE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_DATA"></a><span class="summary-name">CMD_DATA</span> = <code title="103">103</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_EXTENDED"></a><span class="summary-name">CMD_EXTENDED</span> = <code title="200">200</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_EXTENDED_REPLY"></a><span class="summary-name">CMD_EXTENDED_REPLY</span> = <code title="201">201</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_FSETSTAT"></a><span class="summary-name">CMD_FSETSTAT</span> = <code title="10">10</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_FSTAT"></a><span class="summary-name">CMD_FSTAT</span> = <code title="8">8</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_HANDLE"></a><span class="summary-name">CMD_HANDLE</span> = <code title="102">102</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_INIT"></a><span class="summary-name">CMD_INIT</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_LSTAT"></a><span class="summary-name">CMD_LSTAT</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_MKDIR"></a><span class="summary-name">CMD_MKDIR</span> = <code title="14">14</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_NAME"></a><span class="summary-name">CMD_NAME</span> = <code title="104">104</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.sftp_attr-module.html#CMD_NAMES" class="summary-name">CMD_NAMES</a> = <code title="{1: 'init',
- 2: 'version',
- 3: 'open',
- 4: 'close',
- 5: 'read',
- 6: 'write',
- 7: 'lstat',
- 8: 'fstat',
-..."><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">init</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">version</code><code class="variable-quote">'</code><code class="variable-op">, </code>3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">open</code><code class="variable-quote">'</code><code class="variable-op">, </code>4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">close</code><code class="variable-quote">'</code><code class="variable-op">, </code>5<code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_OPEN"></a><span class="summary-name">CMD_OPEN</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_OPENDIR"></a><span class="summary-name">CMD_OPENDIR</span> = <code title="11">11</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_READ"></a><span class="summary-name">CMD_READ</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_READDIR"></a><span class="summary-name">CMD_READDIR</span> = <code title="12">12</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_READLINK"></a><span class="summary-name">CMD_READLINK</span> = <code title="19">19</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_REALPATH"></a><span class="summary-name">CMD_REALPATH</span> = <code title="16">16</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_REMOVE"></a><span class="summary-name">CMD_REMOVE</span> = <code title="13">13</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_RENAME"></a><span class="summary-name">CMD_RENAME</span> = <code title="18">18</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_RMDIR"></a><span class="summary-name">CMD_RMDIR</span> = <code title="15">15</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_SETSTAT"></a><span class="summary-name">CMD_SETSTAT</span> = <code title="9">9</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_STAT"></a><span class="summary-name">CMD_STAT</span> = <code title="17">17</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_STATUS"></a><span class="summary-name">CMD_STATUS</span> = <code title="101">101</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_SYMLINK"></a><span class="summary-name">CMD_SYMLINK</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_VERSION"></a><span class="summary-name">CMD_VERSION</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_WRITE"></a><span class="summary-name">CMD_WRITE</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.sftp_attr-module.html#CONNECTION_FAILED_CODE" class="summary-name">CONNECTION_FAILED_CODE</a> = <code title="{1: 'Administratively prohibited',
- 2: 'Connect failed',
- 3: 'Unknown channel type',
- 4: 'Resource shortage'}"><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">:</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CRITICAL"></a><span class="summary-name">CRITICAL</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DEBUG"></a><span class="summary-name">DEBUG</span> = <code title="10">10</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_AUTH_CANCELLED_BY_USER"></a><span class="summary-name">DISCONNECT_AUTH_CANCELLED_BY_USER</span> = <code title="13">13</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE"></a><span class="summary-name">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</span> = <code title="14">14</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_SERVICE_NOT_AVAILABLE"></a><span class="summary-name">DISCONNECT_SERVICE_NOT_AVAILABLE</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="ERROR"></a><span class="summary-name">ERROR</span> = <code title="40">40</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="INFO"></a><span class="summary-name">INFO</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_CLOSE"></a><span class="summary-name">MSG_CHANNEL_CLOSE</span> = <code title="97">97</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_DATA"></a><span class="summary-name">MSG_CHANNEL_DATA</span> = <code title="94">94</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EOF"></a><span class="summary-name">MSG_CHANNEL_EOF</span> = <code title="96">96</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EXTENDED_DATA"></a><span class="summary-name">MSG_CHANNEL_EXTENDED_DATA</span> = <code title="95">95</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_FAILURE"></a><span class="summary-name">MSG_CHANNEL_FAILURE</span> = <code title="100">100</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN"></a><span class="summary-name">MSG_CHANNEL_OPEN</span> = <code title="90">90</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_FAILURE"></a><span class="summary-name">MSG_CHANNEL_OPEN_FAILURE</span> = <code title="92">92</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_OPEN_SUCCESS</span> = <code title="91">91</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_REQUEST"></a><span class="summary-name">MSG_CHANNEL_REQUEST</span> = <code title="98">98</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_SUCCESS</span> = <code title="99">99</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_WINDOW_ADJUST"></a><span class="summary-name">MSG_CHANNEL_WINDOW_ADJUST</span> = <code title="93">93</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DEBUG"></a><span class="summary-name">MSG_DEBUG</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DISCONNECT"></a><span class="summary-name">MSG_DISCONNECT</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_GLOBAL_REQUEST"></a><span class="summary-name">MSG_GLOBAL_REQUEST</span> = <code title="80">80</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_IGNORE"></a><span class="summary-name">MSG_IGNORE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_KEXINIT"></a><span class="summary-name">MSG_KEXINIT</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.sftp_attr-module.html#MSG_NAMES" class="summary-name">MSG_NAMES</a> = <code title="{1: 'disconnect',
- 2: 'ignore',
- 3: 'unimplemented',
- 4: 'debug',
- 5: 'service-request',
- 6: 'service-accept',
- 20: 'kexinit',
- 21: 'newkeys',
-..."><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">, </code>3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_NEWKEYS"></a><span class="summary-name">MSG_NEWKEYS</span> = <code title="21">21</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_FAILURE"></a><span class="summary-name">MSG_REQUEST_FAILURE</span> = <code title="82">82</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_SUCCESS"></a><span class="summary-name">MSG_REQUEST_SUCCESS</span> = <code title="81">81</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_ACCEPT"></a><span class="summary-name">MSG_SERVICE_ACCEPT</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_REQUEST"></a><span class="summary-name">MSG_SERVICE_REQUEST</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_UNIMPLEMENTED"></a><span class="summary-name">MSG_UNIMPLEMENTED</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_BANNER"></a><span class="summary-name">MSG_USERAUTH_BANNER</span> = <code title="53">53</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_FAILURE"></a><span class="summary-name">MSG_USERAUTH_FAILURE</span> = <code title="51">51</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_REQUEST"></a><span class="summary-name">MSG_USERAUTH_INFO_REQUEST</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_RESPONSE"></a><span class="summary-name">MSG_USERAUTH_INFO_RESPONSE</span> = <code title="61">61</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_PK_OK"></a><span class="summary-name">MSG_USERAUTH_PK_OK</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_REQUEST"></a><span class="summary-name">MSG_USERAUTH_REQUEST</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_SUCCESS"></a><span class="summary-name">MSG_USERAUTH_SUCCESS</span> = <code title="52">52</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED"></a><span class="summary-name">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_CONNECT_FAILED"></a><span class="summary-name">OPEN_FAILED_CONNECT_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_RESOURCE_SHORTAGE"></a><span class="summary-name">OPEN_FAILED_RESOURCE_SHORTAGE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_UNKNOWN_CHANNEL_TYPE"></a><span class="summary-name">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_SUCCEEDED"></a><span class="summary-name">OPEN_SUCCEEDED</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="PY22"></a><span class="summary-name">PY22</span> = <code title="False">False</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_BAD_MESSAGE"></a><span class="summary-name">SFTP_BAD_MESSAGE</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_CONNECTION_LOST"></a><span class="summary-name">SFTP_CONNECTION_LOST</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.sftp_attr-module.html#SFTP_DESC" class="summary-name">SFTP_DESC</a> = <code title="['Success',
- 'End of file',
- 'No such file',
- 'Permission denied',
- 'Failure',
- 'Bad message',
- 'No connection',
- 'Connection lost',
-..."><code class="variable-group">[</code><code class="variable-quote">'</code><code class="variable-string">Success</code><code class="variable-quote">'</code><code class="variable-op">, </code><code class="variable-quote">'</code><code class="variable-string">End of file</code><code class="variable-quote">'</code><code class="variable-op">, </code><code class="variable-quote">'</code><code class="variable-string">No such file</code><code class="variable-quote">'</code><code class="variable-op">, </code><code class="variable-quote">'</code><code class="variable-string">Permis</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_EOF"></a><span class="summary-name">SFTP_EOF</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FAILURE"></a><span class="summary-name">SFTP_FAILURE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_APPEND"></a><span class="summary-name">SFTP_FLAG_APPEND</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_CREATE"></a><span class="summary-name">SFTP_FLAG_CREATE</span> = <code title="8">8</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_EXCL"></a><span class="summary-name">SFTP_FLAG_EXCL</span> = <code title="32">32</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_READ"></a><span class="summary-name">SFTP_FLAG_READ</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_TRUNC"></a><span class="summary-name">SFTP_FLAG_TRUNC</span> = <code title="16">16</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_WRITE"></a><span class="summary-name">SFTP_FLAG_WRITE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_NO_CONNECTION"></a><span class="summary-name">SFTP_NO_CONNECTION</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_NO_SUCH_FILE"></a><span class="summary-name">SFTP_NO_SUCH_FILE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_OK"></a><span class="summary-name">SFTP_OK</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_OP_UNSUPPORTED"></a><span class="summary-name">SFTP_OP_UNSUPPORTED</span> = <code title="8">8</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_PERMISSION_DENIED"></a><span class="summary-name">SFTP_PERMISSION_DENIED</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="WARNING"></a><span class="summary-name">WARNING</span> = <code title="30">30</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'paramiko'"><code class="variable-quote">'</code><code class="variable-string">paramiko</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="rng"></a><span class="summary-name">rng</span> = <code title="Random.new()">Random.new()</code>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES DETAILS ==================== -->
-<a name="section-VariablesDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables Details</span></td>
-</tr>
-</table>
-<a name="CMD_NAMES"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">CMD_NAMES</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">init</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">version</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">open</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">close</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 5<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">read</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 6<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">write</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 7<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">lstat</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 8<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">fstat</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="CONNECTION_FAILED_CODE"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">CONNECTION_FAILED_CODE</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Connect failed</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Unknown channel type</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Resource shortage</code><code class="variable-quote">'</code><code class="variable-group">}</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="MSG_NAMES"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">MSG_NAMES</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">debug</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 5<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-request</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 6<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-accept</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 20<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">kexinit</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 21<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">newkeys</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="SFTP_DESC"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">SFTP_DESC</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">[</code><code class="variable-quote">'</code><code class="variable-string">Success</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">End of file</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">No such file</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">Permission denied</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">Failure</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">Bad message</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">No connection</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">Connection lost</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:02 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.sftp_attr-pysrc.html b/docs/paramiko.sftp_attr-pysrc.html
deleted file mode 100644
index 84af991..0000000
--- a/docs/paramiko.sftp_attr-pysrc.html
+++ /dev/null
@@ -1,367 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.sftp_attr</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;sftp_attr
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.sftp_attr-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.sftp_attr-module.html" onclick="show_private();">Module paramiko.sftp_attr</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2003-2006 Robey Pointer &lt;robeypointer@gmail.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt id="link-0" class="py-name" targets="Method paramiko.SFTPClient.stat()=paramiko.SFTPClient-class.html#stat,Method paramiko.SFTPFile.stat()=paramiko.SFTPFile-class.html#stat,Method paramiko.SFTPHandle.stat()=paramiko.SFTPHandle-class.html#stat,Method paramiko.SFTPServerInterface.stat()=paramiko.SFTPServerInterface-class.html#stat"><a title="paramiko.SFTPClient.stat
-paramiko.SFTPFile.stat
-paramiko.SFTPHandle.stat
-paramiko.SFTPServerInterface.stat" class="py-name" href="#" onclick="return doclink('link-0', 'stat', 'link-0');">stat</a></tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-1" class="py-name" targets="Package paramiko=paramiko-module.html"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-1', 'paramiko', 'link-1');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Module paramiko.common=paramiko.common-module.html"><a title="paramiko.common" class="py-name" href="#" onclick="return doclink('link-2', 'common', 'link-2');">common</a></tt> <tt class="py-keyword">import</tt> <tt class="py-op">*</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-3" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-3', 'paramiko', 'link-1');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-4" class="py-name" targets="Module paramiko.sftp=paramiko.sftp-module.html"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-4', 'sftp', 'link-4');">sftp</a></tt> <tt class="py-keyword">import</tt> <tt class="py-op">*</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"> </tt>
-<a name="SFTPAttributes"></a><div id="SFTPAttributes-def"><a name="L25"></a><tt class="py-lineno"> 25</tt> <a class="py-toggle" href="#" id="SFTPAttributes-toggle" onclick="return toggle('SFTPAttributes');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.sftp_attr.SFTPAttributes-class.html">SFTPAttributes</a> <tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPAttributes-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="SFTPAttributes-expanded"><a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"><tt class="py-docstring"> Representation of the attributes of a file (or proxied file) for SFTP in</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"><tt class="py-docstring"> client or server mode. It attemps to mirror the object returned by</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"><tt class="py-docstring"> C{os.stat} as closely as possible, so it may have the following fields,</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"><tt class="py-docstring"> with the same meanings as those returned by an C{os.stat} object:</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"><tt class="py-docstring"> - st_size</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"><tt class="py-docstring"> - st_uid</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"><tt class="py-docstring"> - st_gid</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"><tt class="py-docstring"> - st_mode</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"><tt class="py-docstring"> - st_atime</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"><tt class="py-docstring"> - st_mtime</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"><tt class="py-docstring"> Because SFTP allows flags to have other arbitrary named attributes, these</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"><tt class="py-docstring"> are stored in a dict named C{attr}. Occasionally, the filename is also</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"><tt class="py-docstring"> stored, in C{filename}.</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt id="link-5" class="py-name" targets="Variable paramiko.SFTPAttributes.FLAG_SIZE=paramiko.SFTPAttributes-class.html#FLAG_SIZE"><a title="paramiko.SFTPAttributes.FLAG_SIZE" class="py-name" href="#" onclick="return doclink('link-5', 'FLAG_SIZE', 'link-5');">FLAG_SIZE</a></tt> <tt class="py-op">=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt id="link-6" class="py-name" targets="Variable paramiko.SFTPAttributes.FLAG_UIDGID=paramiko.SFTPAttributes-class.html#FLAG_UIDGID"><a title="paramiko.SFTPAttributes.FLAG_UIDGID" class="py-name" href="#" onclick="return doclink('link-6', 'FLAG_UIDGID', 'link-6');">FLAG_UIDGID</a></tt> <tt class="py-op">=</tt> <tt class="py-number">2</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt id="link-7" class="py-name" targets="Variable paramiko.SFTPAttributes.FLAG_PERMISSIONS=paramiko.SFTPAttributes-class.html#FLAG_PERMISSIONS"><a title="paramiko.SFTPAttributes.FLAG_PERMISSIONS" class="py-name" href="#" onclick="return doclink('link-7', 'FLAG_PERMISSIONS', 'link-7');">FLAG_PERMISSIONS</a></tt> <tt class="py-op">=</tt> <tt class="py-number">4</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt id="link-8" class="py-name" targets="Variable paramiko.SFTPAttributes.FLAG_AMTIME=paramiko.SFTPAttributes-class.html#FLAG_AMTIME"><a title="paramiko.SFTPAttributes.FLAG_AMTIME" class="py-name" href="#" onclick="return doclink('link-8', 'FLAG_AMTIME', 'link-8');">FLAG_AMTIME</a></tt> <tt class="py-op">=</tt> <tt class="py-number">8</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt id="link-9" class="py-name" targets="Variable paramiko.SFTPAttributes.FLAG_EXTENDED=paramiko.SFTPAttributes-class.html#FLAG_EXTENDED"><a title="paramiko.SFTPAttributes.FLAG_EXTENDED" class="py-name" href="#" onclick="return doclink('link-9', 'FLAG_EXTENDED', 'link-9');">FLAG_EXTENDED</a></tt> <tt class="py-op">=</tt> <tt class="py-number">0x80000000L</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> </tt>
-<a name="SFTPAttributes.__init__"></a><div id="SFTPAttributes.__init__-def"><a name="L49"></a><tt class="py-lineno"> 49</tt> <a class="py-toggle" href="#" id="SFTPAttributes.__init__-toggle" onclick="return toggle('SFTPAttributes.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_attr.SFTPAttributes-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPAttributes.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPAttributes.__init__-expanded"><a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"><tt class="py-docstring"> Create a new (empty) SFTPAttributes object. All fields will be empty.</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_size</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_uid</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_gid</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_mode</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_atime</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_mtime</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">attr</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-</div><a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> </tt>
-<a name="SFTPAttributes.from_stat"></a><div id="SFTPAttributes.from_stat-def"><a name="L62"></a><tt class="py-lineno"> 62</tt> <a class="py-toggle" href="#" id="SFTPAttributes.from_stat-toggle" onclick="return toggle('SFTPAttributes.from_stat');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_attr.SFTPAttributes-class.html#from_stat">from_stat</a><tt class="py-op">(</tt><tt class="py-param">cls</tt><tt class="py-op">,</tt> <tt class="py-param">obj</tt><tt class="py-op">,</tt> <tt class="py-param">filename</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPAttributes.from_stat-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPAttributes.from_stat-expanded"><a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"><tt class="py-docstring"> Create an SFTPAttributes object from an existing C{stat} object (an</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"><tt class="py-docstring"> object returned by C{os.stat}).</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"><tt class="py-docstring"> @param obj: an object returned by C{os.stat} (or equivalent).</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"><tt class="py-docstring"> @type obj: object</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"><tt class="py-docstring"> @param filename: the filename associated with this file.</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"><tt class="py-docstring"> @type filename: str</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"><tt class="py-docstring"> @return: new L{SFTPAttributes} object with the same attribute fields.</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: L{SFTPAttributes}</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-name">attr</tt> <tt class="py-op">=</tt> <tt class="py-name">cls</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">st_size</tt> <tt class="py-op">=</tt> <tt class="py-name">obj</tt><tt class="py-op">.</tt><tt class="py-name">st_size</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">st_uid</tt> <tt class="py-op">=</tt> <tt class="py-name">obj</tt><tt class="py-op">.</tt><tt class="py-name">st_uid</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">st_gid</tt> <tt class="py-op">=</tt> <tt class="py-name">obj</tt><tt class="py-op">.</tt><tt class="py-name">st_gid</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">st_mode</tt> <tt class="py-op">=</tt> <tt class="py-name">obj</tt><tt class="py-op">.</tt><tt class="py-name">st_mode</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">st_atime</tt> <tt class="py-op">=</tt> <tt class="py-name">obj</tt><tt class="py-op">.</tt><tt class="py-name">st_atime</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">st_mtime</tt> <tt class="py-op">=</tt> <tt class="py-name">obj</tt><tt class="py-op">.</tt><tt class="py-name">st_mtime</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">filename</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">filename</tt> <tt class="py-op">=</tt> <tt class="py-name">filename</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">attr</tt> </tt>
-</div><a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt id="link-10" class="py-name" targets="Class Method paramiko.SFTPAttributes.from_stat()=paramiko.SFTPAttributes-class.html#from_stat"><a title="paramiko.SFTPAttributes.from_stat" class="py-name" href="#" onclick="return doclink('link-10', 'from_stat', 'link-10');">from_stat</a></tt> <tt class="py-op">=</tt> <tt class="py-name">classmethod</tt><tt class="py-op">(</tt><tt id="link-11" class="py-name"><a title="paramiko.SFTPAttributes.from_stat" class="py-name" href="#" onclick="return doclink('link-11', 'from_stat', 'link-10');">from_stat</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> </tt>
-<a name="SFTPAttributes.__repr__"></a><div id="SFTPAttributes.__repr__-def"><a name="L86"></a><tt class="py-lineno"> 86</tt> <a class="py-toggle" href="#" id="SFTPAttributes.__repr__-toggle" onclick="return toggle('SFTPAttributes.__repr__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_attr.SFTPAttributes-class.html#__repr__">__repr__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPAttributes.__repr__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPAttributes.__repr__-expanded"><a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">'&lt;SFTPAttributes: %s&gt;'</tt> <tt class="py-op">%</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_debug_str</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-comment">### internals...</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> </tt>
-<a name="SFTPAttributes._from_msg"></a><div id="SFTPAttributes._from_msg-def"><a name="L93"></a><tt class="py-lineno"> 93</tt> <a class="py-toggle" href="#" id="SFTPAttributes._from_msg-toggle" onclick="return toggle('SFTPAttributes._from_msg');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_attr.SFTPAttributes-class.html#_from_msg">_from_msg</a><tt class="py-op">(</tt><tt class="py-param">cls</tt><tt class="py-op">,</tt> <tt class="py-param">msg</tt><tt class="py-op">,</tt> <tt class="py-param">filename</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">longname</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPAttributes._from_msg-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPAttributes._from_msg-expanded"><a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-name">attr</tt> <tt class="py-op">=</tt> <tt class="py-name">cls</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">_unpack</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">)</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">filename</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">filename</tt> <tt class="py-op">=</tt> <tt class="py-name">filename</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">longname</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">longname</tt> <tt class="py-op">=</tt> <tt class="py-name">longname</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">attr</tt> </tt>
-</div><a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-name">_from_msg</tt> <tt class="py-op">=</tt> <tt class="py-name">classmethod</tt><tt class="py-op">(</tt><tt class="py-name">_from_msg</tt><tt class="py-op">)</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> </tt>
-<a name="SFTPAttributes._unpack"></a><div id="SFTPAttributes._unpack-def"><a name="L103"></a><tt class="py-lineno">103</tt> <a class="py-toggle" href="#" id="SFTPAttributes._unpack-toggle" onclick="return toggle('SFTPAttributes._unpack');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_attr.SFTPAttributes-class.html#_unpack">_unpack</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">msg</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPAttributes._unpack-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPAttributes._unpack-expanded"><a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name" targets="Method paramiko.Message.get_int()=paramiko.Message-class.html#get_int"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-12', 'get_int', 'link-12');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">&amp;</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="paramiko.SFTPAttributes.FLAG_SIZE" class="py-name" href="#" onclick="return doclink('link-13', 'FLAG_SIZE', 'link-5');">FLAG_SIZE</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_size</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name" targets="Method paramiko.Message.get_int64()=paramiko.Message-class.html#get_int64"><a title="paramiko.Message.get_int64" class="py-name" href="#" onclick="return doclink('link-14', 'get_int64', 'link-14');">get_int64</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">&amp;</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name"><a title="paramiko.SFTPAttributes.FLAG_UIDGID" class="py-name" href="#" onclick="return doclink('link-15', 'FLAG_UIDGID', 'link-6');">FLAG_UIDGID</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_uid</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-16', 'get_int', 'link-12');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_gid</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-17', 'get_int', 'link-12');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">&amp;</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="paramiko.SFTPAttributes.FLAG_PERMISSIONS" class="py-name" href="#" onclick="return doclink('link-18', 'FLAG_PERMISSIONS', 'link-7');">FLAG_PERMISSIONS</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_mode</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-19', 'get_int', 'link-12');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">&amp;</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-20" class="py-name"><a title="paramiko.SFTPAttributes.FLAG_AMTIME" class="py-name" href="#" onclick="return doclink('link-20', 'FLAG_AMTIME', 'link-8');">FLAG_AMTIME</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_atime</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-21', 'get_int', 'link-12');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_mtime</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-22', 'get_int', 'link-12');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">&amp;</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="paramiko.SFTPAttributes.FLAG_EXTENDED" class="py-name" href="#" onclick="return doclink('link-23', 'FLAG_EXTENDED', 'link-9');">FLAG_EXTENDED</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-24', 'get_int', 'link-12');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-name">count</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">attr</tt><tt class="py-op">[</tt><tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name" targets="Method paramiko.Message.get_string()=paramiko.Message-class.html#get_string"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-25', 'get_string', 'link-25');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-26', 'get_string', 'link-25');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> </tt>
-<a name="SFTPAttributes._pack"></a><div id="SFTPAttributes._pack-def"><a name="L120"></a><tt class="py-lineno">120</tt> <a class="py-toggle" href="#" id="SFTPAttributes._pack-toggle" onclick="return toggle('SFTPAttributes._pack');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_attr.SFTPAttributes-class.html#_pack">_pack</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">msg</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPAttributes._pack-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPAttributes._pack-expanded"><a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_size</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">|=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name"><a title="paramiko.SFTPAttributes.FLAG_SIZE" class="py-name" href="#" onclick="return doclink('link-27', 'FLAG_SIZE', 'link-5');">FLAG_SIZE</a></tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_uid</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_gid</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">|=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="paramiko.SFTPAttributes.FLAG_UIDGID" class="py-name" href="#" onclick="return doclink('link-28', 'FLAG_UIDGID', 'link-6');">FLAG_UIDGID</a></tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_mode</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">|=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name"><a title="paramiko.SFTPAttributes.FLAG_PERMISSIONS" class="py-name" href="#" onclick="return doclink('link-29', 'FLAG_PERMISSIONS', 'link-7');">FLAG_PERMISSIONS</a></tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_atime</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_mtime</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">|=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name"><a title="paramiko.SFTPAttributes.FLAG_AMTIME" class="py-name" href="#" onclick="return doclink('link-30', 'FLAG_AMTIME', 'link-8');">FLAG_AMTIME</a></tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">attr</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">|=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-31" class="py-name"><a title="paramiko.SFTPAttributes.FLAG_EXTENDED" class="py-name" href="#" onclick="return doclink('link-31', 'FLAG_EXTENDED', 'link-9');">FLAG_EXTENDED</a></tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name" targets="Method paramiko.Message.add_int()=paramiko.Message-class.html#add_int"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-32', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt><tt class="py-op">)</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">&amp;</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name"><a title="paramiko.SFTPAttributes.FLAG_SIZE" class="py-name" href="#" onclick="return doclink('link-33', 'FLAG_SIZE', 'link-5');">FLAG_SIZE</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name" targets="Method paramiko.Message.add_int64()=paramiko.Message-class.html#add_int64"><a title="paramiko.Message.add_int64" class="py-name" href="#" onclick="return doclink('link-34', 'add_int64', 'link-34');">add_int64</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_size</tt><tt class="py-op">)</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">&amp;</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name"><a title="paramiko.SFTPAttributes.FLAG_UIDGID" class="py-name" href="#" onclick="return doclink('link-35', 'FLAG_UIDGID', 'link-6');">FLAG_UIDGID</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-36', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_uid</tt><tt class="py-op">)</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-37', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_gid</tt><tt class="py-op">)</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">&amp;</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="paramiko.SFTPAttributes.FLAG_PERMISSIONS" class="py-name" href="#" onclick="return doclink('link-38', 'FLAG_PERMISSIONS', 'link-7');">FLAG_PERMISSIONS</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-39', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_mode</tt><tt class="py-op">)</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">&amp;</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name"><a title="paramiko.SFTPAttributes.FLAG_AMTIME" class="py-name" href="#" onclick="return doclink('link-40', 'FLAG_AMTIME', 'link-8');">FLAG_AMTIME</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-comment"># throw away any fractional seconds</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-41', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">long</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_atime</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-42" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-42', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">long</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_mtime</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">&amp;</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-43" class="py-name"><a title="paramiko.SFTPAttributes.FLAG_EXTENDED" class="py-name" href="#" onclick="return doclink('link-43', 'FLAG_EXTENDED', 'link-9');">FLAG_EXTENDED</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-44" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-44', 'add_int', 'link-32');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">attr</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">key</tt><tt class="py-op">,</tt> <tt class="py-name">val</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">iteritems</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-45" class="py-name" targets="Method paramiko.Message.add_string()=paramiko.Message-class.html#add_string"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-45', 'add_string', 'link-45');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">)</tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-46" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-46', 'add_string', 'link-45');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">val</tt><tt class="py-op">)</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-</div><a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> </tt>
-<a name="SFTPAttributes._debug_str"></a><div id="SFTPAttributes._debug_str-def"><a name="L151"></a><tt class="py-lineno">151</tt> <a class="py-toggle" href="#" id="SFTPAttributes._debug_str-toggle" onclick="return toggle('SFTPAttributes._debug_str');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_attr.SFTPAttributes-class.html#_debug_str">_debug_str</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPAttributes._debug_str-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPAttributes._debug_str-expanded"><a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt class="py-string">'[ '</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_size</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">+=</tt> <tt class="py-string">'size=%d '</tt> <tt class="py-op">%</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_size</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_uid</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_gid</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">+=</tt> <tt class="py-string">'uid=%d gid=%d '</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_uid</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_gid</tt><tt class="py-op">)</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_mode</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">+=</tt> <tt class="py-string">'mode='</tt> <tt class="py-op">+</tt> <tt class="py-name">oct</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_mode</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_atime</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_mtime</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">+=</tt> <tt class="py-string">'atime=%d mtime=%d '</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_atime</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_mtime</tt><tt class="py-op">)</tt> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">k</tt><tt class="py-op">,</tt> <tt class="py-name">v</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">iteritems</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">+=</tt> <tt class="py-string">'"%s"=%r '</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">k</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">v</tt><tt class="py-op">)</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">+=</tt> <tt class="py-string">']'</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">out</tt> </tt>
-</div><a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> </tt>
-<a name="SFTPAttributes._rwx"></a><div id="SFTPAttributes._rwx-def"><a name="L166"></a><tt class="py-lineno">166</tt> <a class="py-toggle" href="#" id="SFTPAttributes._rwx-toggle" onclick="return toggle('SFTPAttributes._rwx');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_attr.SFTPAttributes-class.html#_rwx">_rwx</a><tt class="py-op">(</tt><tt class="py-param">n</tt><tt class="py-op">,</tt> <tt class="py-param">suid</tt><tt class="py-op">,</tt> <tt class="py-param">sticky</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPAttributes._rwx-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPAttributes._rwx-expanded"><a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">suid</tt><tt class="py-op">:</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt class="py-name">suid</tt> <tt class="py-op">=</tt> <tt class="py-number">2</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt class="py-string">'-r'</tt><tt class="py-op">[</tt><tt class="py-name">n</tt> <tt class="py-op">&gt;&gt;</tt> <tt class="py-number">2</tt><tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-string">'-w'</tt><tt class="py-op">[</tt><tt class="py-op">(</tt><tt class="py-name">n</tt> <tt class="py-op">&gt;&gt;</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-op">&amp;</tt> <tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">sticky</tt><tt class="py-op">:</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">+=</tt> <tt class="py-string">'-xTt'</tt><tt class="py-op">[</tt><tt class="py-name">suid</tt> <tt class="py-op">+</tt> <tt class="py-op">(</tt><tt class="py-name">n</tt> <tt class="py-op">&amp;</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">]</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">+=</tt> <tt class="py-string">'-xSs'</tt><tt class="py-op">[</tt><tt class="py-name">suid</tt> <tt class="py-op">+</tt> <tt class="py-op">(</tt><tt class="py-name">n</tt> <tt class="py-op">&amp;</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">]</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">out</tt> </tt>
-</div><a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt class="py-name">_rwx</tt> <tt class="py-op">=</tt> <tt class="py-name">staticmethod</tt><tt class="py-op">(</tt><tt class="py-name">_rwx</tt><tt class="py-op">)</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> </tt>
-<a name="SFTPAttributes.__str__"></a><div id="SFTPAttributes.__str__-def"><a name="L177"></a><tt class="py-lineno">177</tt> <a class="py-toggle" href="#" id="SFTPAttributes.__str__-toggle" onclick="return toggle('SFTPAttributes.__str__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_attr.SFTPAttributes-class.html#__str__">__str__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPAttributes.__str__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPAttributes.__str__-expanded"><a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt class="py-docstring">"create a unix-style long description of the file (like ls -l)"</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_mode</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-name">kind</tt> <tt class="py-op">=</tt> <tt id="link-47" class="py-name"><a title="paramiko.SFTPClient.stat
-paramiko.SFTPFile.stat
-paramiko.SFTPHandle.stat
-paramiko.SFTPServerInterface.stat" class="py-name" href="#" onclick="return doclink('link-47', 'stat', 'link-0');">stat</a></tt><tt class="py-op">.</tt><tt class="py-name">S_IFMT</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_mode</tt><tt class="py-op">)</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">kind</tt> <tt class="py-op">==</tt> <tt id="link-48" class="py-name"><a title="paramiko.SFTPClient.stat
-paramiko.SFTPFile.stat
-paramiko.SFTPHandle.stat
-paramiko.SFTPServerInterface.stat" class="py-name" href="#" onclick="return doclink('link-48', 'stat', 'link-0');">stat</a></tt><tt class="py-op">.</tt><tt class="py-name">S_IFIFO</tt><tt class="py-op">:</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> <tt class="py-name">ks</tt> <tt class="py-op">=</tt> <tt class="py-string">'p'</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">kind</tt> <tt class="py-op">==</tt> <tt id="link-49" class="py-name"><a title="paramiko.SFTPClient.stat
-paramiko.SFTPFile.stat
-paramiko.SFTPHandle.stat
-paramiko.SFTPServerInterface.stat" class="py-name" href="#" onclick="return doclink('link-49', 'stat', 'link-0');">stat</a></tt><tt class="py-op">.</tt><tt class="py-name">S_IFCHR</tt><tt class="py-op">:</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-name">ks</tt> <tt class="py-op">=</tt> <tt class="py-string">'c'</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">kind</tt> <tt class="py-op">==</tt> <tt id="link-50" class="py-name"><a title="paramiko.SFTPClient.stat
-paramiko.SFTPFile.stat
-paramiko.SFTPHandle.stat
-paramiko.SFTPServerInterface.stat" class="py-name" href="#" onclick="return doclink('link-50', 'stat', 'link-0');">stat</a></tt><tt class="py-op">.</tt><tt class="py-name">S_IFDIR</tt><tt class="py-op">:</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> <tt class="py-name">ks</tt> <tt class="py-op">=</tt> <tt class="py-string">'d'</tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">kind</tt> <tt class="py-op">==</tt> <tt id="link-51" class="py-name"><a title="paramiko.SFTPClient.stat
-paramiko.SFTPFile.stat
-paramiko.SFTPHandle.stat
-paramiko.SFTPServerInterface.stat" class="py-name" href="#" onclick="return doclink('link-51', 'stat', 'link-0');">stat</a></tt><tt class="py-op">.</tt><tt class="py-name">S_IFBLK</tt><tt class="py-op">:</tt> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"> <tt class="py-name">ks</tt> <tt class="py-op">=</tt> <tt class="py-string">'b'</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">kind</tt> <tt class="py-op">==</tt> <tt id="link-52" class="py-name"><a title="paramiko.SFTPClient.stat
-paramiko.SFTPFile.stat
-paramiko.SFTPHandle.stat
-paramiko.SFTPServerInterface.stat" class="py-name" href="#" onclick="return doclink('link-52', 'stat', 'link-0');">stat</a></tt><tt class="py-op">.</tt><tt class="py-name">S_IFREG</tt><tt class="py-op">:</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"> <tt class="py-name">ks</tt> <tt class="py-op">=</tt> <tt class="py-string">'-'</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">kind</tt> <tt class="py-op">==</tt> <tt id="link-53" class="py-name"><a title="paramiko.SFTPClient.stat
-paramiko.SFTPFile.stat
-paramiko.SFTPHandle.stat
-paramiko.SFTPServerInterface.stat" class="py-name" href="#" onclick="return doclink('link-53', 'stat', 'link-0');">stat</a></tt><tt class="py-op">.</tt><tt class="py-name">S_IFLNK</tt><tt class="py-op">:</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"> <tt class="py-name">ks</tt> <tt class="py-op">=</tt> <tt class="py-string">'l'</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">kind</tt> <tt class="py-op">==</tt> <tt id="link-54" class="py-name"><a title="paramiko.SFTPClient.stat
-paramiko.SFTPFile.stat
-paramiko.SFTPHandle.stat
-paramiko.SFTPServerInterface.stat" class="py-name" href="#" onclick="return doclink('link-54', 'stat', 'link-0');">stat</a></tt><tt class="py-op">.</tt><tt class="py-name">S_IFSOCK</tt><tt class="py-op">:</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> <tt class="py-name">ks</tt> <tt class="py-op">=</tt> <tt class="py-string">'s'</tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"> <tt class="py-name">ks</tt> <tt class="py-op">=</tt> <tt class="py-string">'?'</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> <tt class="py-name">ks</tt> <tt class="py-op">+=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_rwx</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_mode</tt> <tt class="py-op">&amp;</tt> <tt class="py-number">0700</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;&gt;</tt> <tt class="py-number">6</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_mode</tt> <tt class="py-op">&amp;</tt> <tt id="link-55" class="py-name"><a title="paramiko.SFTPClient.stat
-paramiko.SFTPFile.stat
-paramiko.SFTPHandle.stat
-paramiko.SFTPServerInterface.stat" class="py-name" href="#" onclick="return doclink('link-55', 'stat', 'link-0');">stat</a></tt><tt class="py-op">.</tt><tt class="py-name">S_ISUID</tt><tt class="py-op">)</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"> <tt class="py-name">ks</tt> <tt class="py-op">+=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_rwx</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_mode</tt> <tt class="py-op">&amp;</tt> <tt class="py-number">070</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;&gt;</tt> <tt class="py-number">3</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_mode</tt> <tt class="py-op">&amp;</tt> <tt id="link-56" class="py-name"><a title="paramiko.SFTPClient.stat
-paramiko.SFTPFile.stat
-paramiko.SFTPHandle.stat
-paramiko.SFTPServerInterface.stat" class="py-name" href="#" onclick="return doclink('link-56', 'stat', 'link-0');">stat</a></tt><tt class="py-op">.</tt><tt class="py-name">S_ISGID</tt><tt class="py-op">)</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"> <tt class="py-name">ks</tt> <tt class="py-op">+=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_rwx</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_mode</tt> <tt class="py-op">&amp;</tt> <tt class="py-number">7</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_mode</tt> <tt class="py-op">&amp;</tt> <tt id="link-57" class="py-name"><a title="paramiko.SFTPClient.stat
-paramiko.SFTPFile.stat
-paramiko.SFTPHandle.stat
-paramiko.SFTPServerInterface.stat" class="py-name" href="#" onclick="return doclink('link-57', 'stat', 'link-0');">stat</a></tt><tt class="py-op">.</tt><tt class="py-name">S_ISVTX</tt><tt class="py-op">,</tt> <tt class="py-name">True</tt><tt class="py-op">)</tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"> <tt class="py-name">ks</tt> <tt class="py-op">=</tt> <tt class="py-string">'?---------'</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"> <tt class="py-comment"># compute display date</tt> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_mtime</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_mtime</tt> <tt class="py-op">==</tt> <tt class="py-number">0xffffffffL</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"> <tt class="py-comment"># shouldn't really happen</tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"> <tt class="py-name">datestr</tt> <tt class="py-op">=</tt> <tt class="py-string">'(unknown date)'</tt> </tt>
-<a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">abs</tt><tt class="py-op">(</tt><tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">-</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_mtime</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">15552000</tt><tt class="py-op">:</tt> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"> <tt class="py-comment"># (15552000 = 6 months)</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"> <tt class="py-name">datestr</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">strftime</tt><tt class="py-op">(</tt><tt class="py-string">'%d %b %Y'</tt><tt class="py-op">,</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">localtime</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_mtime</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"> <tt class="py-name">datestr</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">strftime</tt><tt class="py-op">(</tt><tt class="py-string">'%d %b %H:%M'</tt><tt class="py-op">,</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">localtime</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_mtime</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"> <tt class="py-name">filename</tt> <tt class="py-op">=</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-string">'filename'</tt><tt class="py-op">,</tt> <tt class="py-string">'?'</tt><tt class="py-op">)</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"> <tt class="py-comment"># not all servers support uid/gid</tt> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"> <tt class="py-name">uid</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_uid</tt> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"> <tt class="py-name">gid</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_gid</tt> </tt>
-<a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">uid</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"> <tt class="py-name">uid</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">gid</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"> <tt class="py-name">gid</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"> </tt>
-<a name="L222"></a><tt class="py-lineno">222</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">'%s 1 %-8d %-8d %8d %-12s %s'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">ks</tt><tt class="py-op">,</tt> <tt class="py-name">uid</tt><tt class="py-op">,</tt> <tt class="py-name">gid</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">st_size</tt><tt class="py-op">,</tt> <tt class="py-name">datestr</tt><tt class="py-op">,</tt> <tt class="py-name">filename</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:04 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.sftp_client-module.html b/docs/paramiko.sftp_client-module.html
deleted file mode 100644
index 36ac458..0000000
--- a/docs/paramiko.sftp_client-module.html
+++ /dev/null
@@ -1,907 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.sftp_client</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;sftp_client
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.sftp_client-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module sftp_client</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.sftp_client-pysrc.html">source&nbsp;code</a></span></p>
-<p>Client-mode SFTP support.</p>
-
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_FAILED"></a><span class="summary-name">AUTH_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_PARTIALLY_SUCCESSFUL"></a><span class="summary-name">AUTH_PARTIALLY_SUCCESSFUL</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_SUCCESSFUL"></a><span class="summary-name">AUTH_SUCCESSFUL</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_ATTRS"></a><span class="summary-name">CMD_ATTRS</span> = <code title="105">105</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_CLOSE"></a><span class="summary-name">CMD_CLOSE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_DATA"></a><span class="summary-name">CMD_DATA</span> = <code title="103">103</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_EXTENDED"></a><span class="summary-name">CMD_EXTENDED</span> = <code title="200">200</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_EXTENDED_REPLY"></a><span class="summary-name">CMD_EXTENDED_REPLY</span> = <code title="201">201</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_FSETSTAT"></a><span class="summary-name">CMD_FSETSTAT</span> = <code title="10">10</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_FSTAT"></a><span class="summary-name">CMD_FSTAT</span> = <code title="8">8</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_HANDLE"></a><span class="summary-name">CMD_HANDLE</span> = <code title="102">102</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_INIT"></a><span class="summary-name">CMD_INIT</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_LSTAT"></a><span class="summary-name">CMD_LSTAT</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_MKDIR"></a><span class="summary-name">CMD_MKDIR</span> = <code title="14">14</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_NAME"></a><span class="summary-name">CMD_NAME</span> = <code title="104">104</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.sftp_client-module.html#CMD_NAMES" class="summary-name">CMD_NAMES</a> = <code title="{1: 'init',
- 2: 'version',
- 3: 'open',
- 4: 'close',
- 5: 'read',
- 6: 'write',
- 7: 'lstat',
- 8: 'fstat',
-..."><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">init</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">version</code><code class="variable-quote">'</code><code class="variable-op">, </code>3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">open</code><code class="variable-quote">'</code><code class="variable-op">, </code>4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">close</code><code class="variable-quote">'</code><code class="variable-op">, </code>5<code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_OPEN"></a><span class="summary-name">CMD_OPEN</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_OPENDIR"></a><span class="summary-name">CMD_OPENDIR</span> = <code title="11">11</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_READ"></a><span class="summary-name">CMD_READ</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_READDIR"></a><span class="summary-name">CMD_READDIR</span> = <code title="12">12</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_READLINK"></a><span class="summary-name">CMD_READLINK</span> = <code title="19">19</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_REALPATH"></a><span class="summary-name">CMD_REALPATH</span> = <code title="16">16</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_REMOVE"></a><span class="summary-name">CMD_REMOVE</span> = <code title="13">13</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_RENAME"></a><span class="summary-name">CMD_RENAME</span> = <code title="18">18</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_RMDIR"></a><span class="summary-name">CMD_RMDIR</span> = <code title="15">15</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_SETSTAT"></a><span class="summary-name">CMD_SETSTAT</span> = <code title="9">9</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_STAT"></a><span class="summary-name">CMD_STAT</span> = <code title="17">17</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_STATUS"></a><span class="summary-name">CMD_STATUS</span> = <code title="101">101</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_SYMLINK"></a><span class="summary-name">CMD_SYMLINK</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_VERSION"></a><span class="summary-name">CMD_VERSION</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_WRITE"></a><span class="summary-name">CMD_WRITE</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.sftp_client-module.html#CONNECTION_FAILED_CODE" class="summary-name">CONNECTION_FAILED_CODE</a> = <code title="{1: 'Administratively prohibited',
- 2: 'Connect failed',
- 3: 'Unknown channel type',
- 4: 'Resource shortage'}"><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">:</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CRITICAL"></a><span class="summary-name">CRITICAL</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DEBUG"></a><span class="summary-name">DEBUG</span> = <code title="10">10</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_AUTH_CANCELLED_BY_USER"></a><span class="summary-name">DISCONNECT_AUTH_CANCELLED_BY_USER</span> = <code title="13">13</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE"></a><span class="summary-name">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</span> = <code title="14">14</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_SERVICE_NOT_AVAILABLE"></a><span class="summary-name">DISCONNECT_SERVICE_NOT_AVAILABLE</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="ERROR"></a><span class="summary-name">ERROR</span> = <code title="40">40</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="INFO"></a><span class="summary-name">INFO</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_CLOSE"></a><span class="summary-name">MSG_CHANNEL_CLOSE</span> = <code title="97">97</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_DATA"></a><span class="summary-name">MSG_CHANNEL_DATA</span> = <code title="94">94</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EOF"></a><span class="summary-name">MSG_CHANNEL_EOF</span> = <code title="96">96</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EXTENDED_DATA"></a><span class="summary-name">MSG_CHANNEL_EXTENDED_DATA</span> = <code title="95">95</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_FAILURE"></a><span class="summary-name">MSG_CHANNEL_FAILURE</span> = <code title="100">100</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN"></a><span class="summary-name">MSG_CHANNEL_OPEN</span> = <code title="90">90</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_FAILURE"></a><span class="summary-name">MSG_CHANNEL_OPEN_FAILURE</span> = <code title="92">92</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_OPEN_SUCCESS</span> = <code title="91">91</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_REQUEST"></a><span class="summary-name">MSG_CHANNEL_REQUEST</span> = <code title="98">98</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_SUCCESS</span> = <code title="99">99</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_WINDOW_ADJUST"></a><span class="summary-name">MSG_CHANNEL_WINDOW_ADJUST</span> = <code title="93">93</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DEBUG"></a><span class="summary-name">MSG_DEBUG</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DISCONNECT"></a><span class="summary-name">MSG_DISCONNECT</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_GLOBAL_REQUEST"></a><span class="summary-name">MSG_GLOBAL_REQUEST</span> = <code title="80">80</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_IGNORE"></a><span class="summary-name">MSG_IGNORE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_KEXINIT"></a><span class="summary-name">MSG_KEXINIT</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.sftp_client-module.html#MSG_NAMES" class="summary-name">MSG_NAMES</a> = <code title="{1: 'disconnect',
- 2: 'ignore',
- 3: 'unimplemented',
- 4: 'debug',
- 5: 'service-request',
- 6: 'service-accept',
- 20: 'kexinit',
- 21: 'newkeys',
-..."><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">, </code>3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_NEWKEYS"></a><span class="summary-name">MSG_NEWKEYS</span> = <code title="21">21</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_FAILURE"></a><span class="summary-name">MSG_REQUEST_FAILURE</span> = <code title="82">82</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_SUCCESS"></a><span class="summary-name">MSG_REQUEST_SUCCESS</span> = <code title="81">81</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_ACCEPT"></a><span class="summary-name">MSG_SERVICE_ACCEPT</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_REQUEST"></a><span class="summary-name">MSG_SERVICE_REQUEST</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_UNIMPLEMENTED"></a><span class="summary-name">MSG_UNIMPLEMENTED</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_BANNER"></a><span class="summary-name">MSG_USERAUTH_BANNER</span> = <code title="53">53</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_FAILURE"></a><span class="summary-name">MSG_USERAUTH_FAILURE</span> = <code title="51">51</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_REQUEST"></a><span class="summary-name">MSG_USERAUTH_INFO_REQUEST</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_RESPONSE"></a><span class="summary-name">MSG_USERAUTH_INFO_RESPONSE</span> = <code title="61">61</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_PK_OK"></a><span class="summary-name">MSG_USERAUTH_PK_OK</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_REQUEST"></a><span class="summary-name">MSG_USERAUTH_REQUEST</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_SUCCESS"></a><span class="summary-name">MSG_USERAUTH_SUCCESS</span> = <code title="52">52</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED"></a><span class="summary-name">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_CONNECT_FAILED"></a><span class="summary-name">OPEN_FAILED_CONNECT_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_RESOURCE_SHORTAGE"></a><span class="summary-name">OPEN_FAILED_RESOURCE_SHORTAGE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_UNKNOWN_CHANNEL_TYPE"></a><span class="summary-name">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_SUCCEEDED"></a><span class="summary-name">OPEN_SUCCEEDED</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="PY22"></a><span class="summary-name">PY22</span> = <code title="False">False</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_BAD_MESSAGE"></a><span class="summary-name">SFTP_BAD_MESSAGE</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_CONNECTION_LOST"></a><span class="summary-name">SFTP_CONNECTION_LOST</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.sftp_client-module.html#SFTP_DESC" class="summary-name">SFTP_DESC</a> = <code title="['Success',
- 'End of file',
- 'No such file',
- 'Permission denied',
- 'Failure',
- 'Bad message',
- 'No connection',
- 'Connection lost',
-..."><code class="variable-group">[</code><code class="variable-quote">'</code><code class="variable-string">Success</code><code class="variable-quote">'</code><code class="variable-op">, </code><code class="variable-quote">'</code><code class="variable-string">End of file</code><code class="variable-quote">'</code><code class="variable-op">, </code><code class="variable-quote">'</code><code class="variable-string">No such file</code><code class="variable-quote">'</code><code class="variable-op">, </code><code class="variable-quote">'</code><code class="variable-string">Permis</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_EOF"></a><span class="summary-name">SFTP_EOF</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FAILURE"></a><span class="summary-name">SFTP_FAILURE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_APPEND"></a><span class="summary-name">SFTP_FLAG_APPEND</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_CREATE"></a><span class="summary-name">SFTP_FLAG_CREATE</span> = <code title="8">8</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_EXCL"></a><span class="summary-name">SFTP_FLAG_EXCL</span> = <code title="32">32</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_READ"></a><span class="summary-name">SFTP_FLAG_READ</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_TRUNC"></a><span class="summary-name">SFTP_FLAG_TRUNC</span> = <code title="16">16</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_WRITE"></a><span class="summary-name">SFTP_FLAG_WRITE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_NO_CONNECTION"></a><span class="summary-name">SFTP_NO_CONNECTION</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_NO_SUCH_FILE"></a><span class="summary-name">SFTP_NO_SUCH_FILE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_OK"></a><span class="summary-name">SFTP_OK</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_OP_UNSUPPORTED"></a><span class="summary-name">SFTP_OP_UNSUPPORTED</span> = <code title="8">8</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_PERMISSION_DENIED"></a><span class="summary-name">SFTP_PERMISSION_DENIED</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="WARNING"></a><span class="summary-name">WARNING</span> = <code title="30">30</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'paramiko'"><code class="variable-quote">'</code><code class="variable-string">paramiko</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="rng"></a><span class="summary-name">rng</span> = <code title="Random.new()">Random.new()</code>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES DETAILS ==================== -->
-<a name="section-VariablesDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables Details</span></td>
-</tr>
-</table>
-<a name="CMD_NAMES"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">CMD_NAMES</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">init</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">version</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">open</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">close</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 5<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">read</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 6<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">write</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 7<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">lstat</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 8<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">fstat</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="CONNECTION_FAILED_CODE"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">CONNECTION_FAILED_CODE</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Connect failed</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Unknown channel type</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Resource shortage</code><code class="variable-quote">'</code><code class="variable-group">}</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="MSG_NAMES"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">MSG_NAMES</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">debug</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 5<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-request</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 6<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-accept</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 20<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">kexinit</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 21<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">newkeys</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="SFTP_DESC"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">SFTP_DESC</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">[</code><code class="variable-quote">'</code><code class="variable-string">Success</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">End of file</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">No such file</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">Permission denied</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">Failure</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">Bad message</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">No connection</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">Connection lost</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:02 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.sftp_client-pysrc.html b/docs/paramiko.sftp_client-pysrc.html
deleted file mode 100644
index f55736a..0000000
--- a/docs/paramiko.sftp_client-pysrc.html
+++ /dev/null
@@ -1,1602 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.sftp_client</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;sftp_client
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.sftp_client-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.sftp_client-module.html" onclick="show_private();">Module paramiko.sftp_client</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2003-2007 Robey Pointer &lt;robeypointer@gmail.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring">Client-mode SFTP support.</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">binascii</tt> <tt class="py-keyword">import</tt> <tt class="py-name">hexlify</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">errno</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt id="link-0" class="py-name" targets="Method paramiko.SFTPClient.stat()=paramiko.SFTPClient-class.html#stat,Method paramiko.SFTPFile.stat()=paramiko.SFTPFile-class.html#stat,Method paramiko.SFTPHandle.stat()=paramiko.SFTPHandle-class.html#stat,Method paramiko.SFTPServerInterface.stat()=paramiko.SFTPServerInterface-class.html#stat"><a title="paramiko.SFTPClient.stat
-paramiko.SFTPFile.stat
-paramiko.SFTPHandle.stat
-paramiko.SFTPServerInterface.stat" class="py-name" href="#" onclick="return doclink('link-0', 'stat', 'link-0');">stat</a></tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">threading</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">weakref</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-1" class="py-name" targets="Package paramiko=paramiko-module.html"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-1', 'paramiko', 'link-1');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Module paramiko.sftp=paramiko.sftp-module.html"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-2', 'sftp', 'link-2');">sftp</a></tt> <tt class="py-keyword">import</tt> <tt class="py-op">*</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-3" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-3', 'paramiko', 'link-1');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-4" class="py-name" targets="Module paramiko.sftp_attr=paramiko.sftp_attr-module.html"><a title="paramiko.sftp_attr" class="py-name" href="#" onclick="return doclink('link-4', 'sftp_attr', 'link-4');">sftp_attr</a></tt> <tt class="py-keyword">import</tt> <tt id="link-5" class="py-name" targets="Class paramiko.SFTPAttributes=paramiko.SFTPAttributes-class.html"><a title="paramiko.SFTPAttributes" class="py-name" href="#" onclick="return doclink('link-5', 'SFTPAttributes', 'link-5');">SFTPAttributes</a></tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-6" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-6', 'paramiko', 'link-1');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Module paramiko.ssh_exception=paramiko.ssh_exception-module.html"><a title="paramiko.ssh_exception" class="py-name" href="#" onclick="return doclink('link-7', 'ssh_exception', 'link-7');">ssh_exception</a></tt> <tt class="py-keyword">import</tt> <tt id="link-8" class="py-name" targets="Class paramiko.SSHException=paramiko.SSHException-class.html"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-8', 'SSHException', 'link-8');">SSHException</a></tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-9" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-9', 'paramiko', 'link-1');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-10" class="py-name" targets="Module paramiko.sftp_file=paramiko.sftp_file-module.html"><a title="paramiko.sftp_file" class="py-name" href="#" onclick="return doclink('link-10', 'sftp_file', 'link-10');">sftp_file</a></tt> <tt class="py-keyword">import</tt> <tt id="link-11" class="py-name" targets="Class paramiko.SFTPFile=paramiko.SFTPFile-class.html"><a title="paramiko.SFTPFile" class="py-name" href="#" onclick="return doclink('link-11', 'SFTPFile', 'link-11');">SFTPFile</a></tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> </tt>
-<a name="_to_unicode"></a><div id="_to_unicode-def"><a name="L37"></a><tt class="py-lineno"> 37</tt> <a class="py-toggle" href="#" id="_to_unicode-toggle" onclick="return toggle('_to_unicode');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_client-module.html#_to_unicode">_to_unicode</a><tt class="py-op">(</tt><tt class="py-param">s</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="_to_unicode-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="_to_unicode-expanded"><a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"><tt class="py-docstring"> decode a string as ascii or utf8 if possible (as required by the sftp</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"><tt class="py-docstring"> protocol). if neither works, just return a byte string because the server</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"><tt class="py-docstring"> probably doesn't know the filename's encoding.</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">s</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name" targets="Method paramiko.ber.BER.encode()=paramiko.ber.BER-class.html#encode"><a title="paramiko.ber.BER.encode" class="py-name" href="#" onclick="return doclink('link-12', 'encode', 'link-12');">encode</a></tt><tt class="py-op">(</tt><tt class="py-string">'ascii'</tt><tt class="py-op">)</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">UnicodeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">s</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name" targets="Method paramiko.ber.BER.decode()=paramiko.ber.BER-class.html#decode"><a title="paramiko.ber.BER.decode" class="py-name" href="#" onclick="return doclink('link-13', 'decode', 'link-13');">decode</a></tt><tt class="py-op">(</tt><tt class="py-string">'utf-8'</tt><tt class="py-op">)</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">UnicodeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">s</tt> </tt>
-</div><a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> </tt>
-<a name="SFTPClient"></a><div id="SFTPClient-def"><a name="L52"></a><tt class="py-lineno"> 52</tt> <a class="py-toggle" href="#" id="SFTPClient-toggle" onclick="return toggle('SFTPClient');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.sftp_client.SFTPClient-class.html">SFTPClient</a> <tt class="py-op">(</tt><tt class="py-base-class">BaseSFTP</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPClient-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="SFTPClient-expanded"><a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"><tt class="py-docstring"> SFTP client object. C{SFTPClient} is used to open an sftp session across</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"><tt class="py-docstring"> an open ssh L{Transport} and do remote file operations.</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> </tt>
-<a name="SFTPClient.__init__"></a><div id="SFTPClient.__init__-def"><a name="L58"></a><tt class="py-lineno"> 58</tt> <a class="py-toggle" href="#" id="SFTPClient.__init__-toggle" onclick="return toggle('SFTPClient.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_client.SFTPClient-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">sock</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPClient.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPClient.__init__-expanded"><a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"><tt class="py-docstring"> Create an SFTP client from an existing L{Channel}. The channel</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"><tt class="py-docstring"> should already have requested the C{"sftp"} subsystem.</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"><tt class="py-docstring"> An alternate way to create an SFTP client context is by using</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"><tt class="py-docstring"> L{from_transport}.</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"><tt class="py-docstring"> @param sock: an open L{Channel} using the C{"sftp"} subsystem</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"><tt class="py-docstring"> @type sock: L{Channel}</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"><tt class="py-docstring"> @raise SSHException: if there's an exception while negotiating</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"><tt class="py-docstring"> sftp</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-name">BaseSFTP</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name" targets="Method paramiko.Agent.__init__()=paramiko.Agent-class.html#__init__,Method paramiko.AgentKey.__init__()=paramiko.AgentKey-class.html#__init__,Method paramiko.BadAuthenticationType.__init__()=paramiko.BadAuthenticationType-class.html#__init__,Method paramiko.BadHostKeyException.__init__()=paramiko.BadHostKeyException-class.html#__init__,Method paramiko.BufferedFile.__init__()=paramiko.BufferedFile-class.html#__init__,Method paramiko.Channel.__init__()=paramiko.Channel-class.html#__init__,Method paramiko.ChannelException.__init__()=paramiko.ChannelException-class.html#__init__,Method paramiko.DSSKey.__init__()=paramiko.DSSKey-class.html#__init__,Method paramiko.HostKeys.__init__()=paramiko.HostKeys-class.html#__init__,Method paramiko.Message.__init__()=paramiko.Message-class.html#__init__,Method paramiko.PKey.__init__()=paramiko.PKey-class.html#__init__,Method paramiko.RSAKey.__init__()=paramiko.RSAKey-class.html#__init__,Method paramiko.SFTPAttributes.__init__()=paramiko.SFTPAttributes-class.html#__init__,Method paramiko.SFTPClient.__init__()=paramiko.SFTPClient-class.html#__init__,Method paramiko.SFTPFile.__init__()=paramiko.SFTPFile-class.html#__init__,Method paramiko.SFTPHandle.__init__()=paramiko.SFTPHandle-class.html#__init__,Method paramiko.SFTPServer.__init__()=paramiko.SFTPServer-class.html#__init__,Method paramiko.SFTPServerInterface.__init__()=paramiko.SFTPServerInterface-class.html#__init__,Method paramiko.SSHClient.__init__()=paramiko.SSHClient-class.html#__init__,Method paramiko.SSHConfig.__init__()=paramiko.SSHConfig-class.html#__init__,Method paramiko.SecurityOptions.__init__()=paramiko.SecurityOptions-class.html#__init__,Method paramiko.SubsystemHandler.__init__()=paramiko.SubsystemHandler-class.html#__init__,Method paramiko.Transport.__init__()=paramiko.Transport-class.html#__init__,Method paramiko.ber.BER.__init__()=paramiko.ber.BER-class.html#__init__,Method paramiko.buffered_pipe.BufferedPipe.__init__()=paramiko.buffered_pipe.BufferedPipe-class.html#__init__,Method paramiko.channel.ChannelStderrFile.__init__()=paramiko.channel.ChannelStderrFile-class.html#__init__,Method paramiko.compress.ZlibCompressor.__init__()=paramiko.compress.ZlibCompressor-class.html#__init__,Method paramiko.compress.ZlibDecompressor.__init__()=paramiko.compress.ZlibDecompressor-class.html#__init__,Method paramiko.hostkeys.HostKeyEntry.__init__()=paramiko.hostkeys.HostKeyEntry-class.html#__init__,Method paramiko.kex_gex.KexGex.__init__()=paramiko.kex_gex.KexGex-class.html#__init__,Method paramiko.kex_group1.KexGroup1.__init__()=paramiko.kex_group1.KexGroup1-class.html#__init__,Method paramiko.logging22.Formatter.__init__()=paramiko.logging22.Formatter-class.html#__init__,Method paramiko.logging22.StreamHandler.__init__()=paramiko.logging22.StreamHandler-class.html#__init__,Method paramiko.logging22.logger.__init__()=paramiko.logging22.logger-class.html#__init__,Method paramiko.pipe.OrPipe.__init__()=paramiko.pipe.OrPipe-class.html#__init__,Method paramiko.pipe.PosixPipe.__init__()=paramiko.pipe.PosixPipe-class.html#__init__,Method paramiko.pipe.WindowsPipe.__init__()=paramiko.pipe.WindowsPipe-class.html#__init__,Method paramiko.primes.ModulusPack.__init__()=paramiko.primes.ModulusPack-class.html#__init__,Method paramiko.ssh_exception.PartialAuthentication.__init__()=paramiko.ssh_exception.PartialAuthentication-class.html#__init__,Method paramiko.transport.ChannelMap.__init__()=paramiko.transport.ChannelMap-class.html#__init__,Method paramiko.util.Counter.__init__()=paramiko.util.Counter-class.html#__init__,Method paramiko.util.enumerate.__init__()=paramiko.util.enumerate-class.html#__init__,Method paramiko.win_pageant.PageantConnection.__init__()=paramiko.win_pageant.PageantConnection-class.html#__init__"><a title="paramiko.Agent.__init__
-paramiko.AgentKey.__init__
-paramiko.BadAuthenticationType.__init__
-paramiko.BadHostKeyException.__init__
-paramiko.BufferedFile.__init__
-paramiko.Channel.__init__
-paramiko.ChannelException.__init__
-paramiko.DSSKey.__init__
-paramiko.HostKeys.__init__
-paramiko.Message.__init__
-paramiko.PKey.__init__
-paramiko.RSAKey.__init__
-paramiko.SFTPAttributes.__init__
-paramiko.SFTPClient.__init__
-paramiko.SFTPFile.__init__
-paramiko.SFTPHandle.__init__
-paramiko.SFTPServer.__init__
-paramiko.SFTPServerInterface.__init__
-paramiko.SSHClient.__init__
-paramiko.SSHConfig.__init__
-paramiko.SecurityOptions.__init__
-paramiko.SubsystemHandler.__init__
-paramiko.Transport.__init__
-paramiko.ber.BER.__init__
-paramiko.buffered_pipe.BufferedPipe.__init__
-paramiko.channel.ChannelStderrFile.__init__
-paramiko.compress.ZlibCompressor.__init__
-paramiko.compress.ZlibDecompressor.__init__
-paramiko.hostkeys.HostKeyEntry.__init__
-paramiko.kex_gex.KexGex.__init__
-paramiko.kex_group1.KexGroup1.__init__
-paramiko.logging22.Formatter.__init__
-paramiko.logging22.StreamHandler.__init__
-paramiko.logging22.logger.__init__
-paramiko.pipe.OrPipe.__init__
-paramiko.pipe.PosixPipe.__init__
-paramiko.pipe.WindowsPipe.__init__
-paramiko.primes.ModulusPack.__init__
-paramiko.ssh_exception.PartialAuthentication.__init__
-paramiko.transport.ChannelMap.__init__
-paramiko.util.Counter.__init__
-paramiko.util.enumerate.__init__
-paramiko.win_pageant.PageantConnection.__init__" class="py-name" href="#" onclick="return doclink('link-14', '__init__', 'link-14');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">sock</tt> <tt class="py-op">=</tt> <tt class="py-name">sock</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ultra_debug</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">request_number</tt> <tt class="py-op">=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-comment"># lock for request_number</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_lock</tt> <tt class="py-op">=</tt> <tt class="py-name">threading</tt><tt class="py-op">.</tt><tt class="py-name">Lock</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_cwd</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-comment"># request # -&gt; SFTPFile</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_expecting</tt> <tt class="py-op">=</tt> <tt class="py-name">weakref</tt><tt class="py-op">.</tt><tt class="py-name">WeakValueDictionary</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">sock</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt id="link-15" class="py-name" targets="Class paramiko.Channel=paramiko.Channel-class.html"><a title="paramiko.Channel" class="py-name" href="#" onclick="return doclink('link-15', 'Channel', 'link-15');">Channel</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-comment"># override default logger</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt id="link-16" class="py-name" targets="Module paramiko.transport=paramiko.transport-module.html"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-16', 'transport', 'link-16');">transport</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">sock</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name" targets="Method paramiko.Channel.get_transport()=paramiko.Channel-class.html#get_transport,Method paramiko.SSHClient.get_transport()=paramiko.SSHClient-class.html#get_transport"><a title="paramiko.Channel.get_transport
-paramiko.SSHClient.get_transport" class="py-name" href="#" onclick="return doclink('link-17', 'get_transport', 'link-17');">get_transport</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name" targets="Class paramiko.logging22.logger=paramiko.logging22.logger-class.html"><a title="paramiko.logging22.logger" class="py-name" href="#" onclick="return doclink('link-18', 'logger', 'link-18');">logger</a></tt> <tt class="py-op">=</tt> <tt id="link-19" class="py-name" targets="Module paramiko.util=paramiko.util-module.html"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-19', 'util', 'link-19');">util</a></tt><tt class="py-op">.</tt><tt id="link-20" class="py-name" targets="Function paramiko.util.get_logger()=paramiko.util-module.html#get_logger"><a title="paramiko.util.get_logger" class="py-name" href="#" onclick="return doclink('link-20', 'get_logger', 'link-20');">get_logger</a></tt><tt class="py-op">(</tt><tt id="link-21" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-21', 'transport', 'link-16');">transport</a></tt><tt class="py-op">.</tt><tt id="link-22" class="py-name" targets="Method paramiko.Transport.get_log_channel()=paramiko.Transport-class.html#get_log_channel"><a title="paramiko.Transport.get_log_channel" class="py-name" href="#" onclick="return doclink('link-22', 'get_log_channel', 'link-22');">get_log_channel</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">'.sftp'</tt><tt class="py-op">)</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ultra_debug</tt> <tt class="py-op">=</tt> <tt id="link-23" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-23', 'transport', 'link-16');">transport</a></tt><tt class="py-op">.</tt><tt id="link-24" class="py-name" targets="Method paramiko.Transport.get_hexdump()=paramiko.Transport-class.html#get_hexdump"><a title="paramiko.Transport.get_hexdump" class="py-name" href="#" onclick="return doclink('link-24', 'get_hexdump', 'link-24');">get_hexdump</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-name">server_version</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_version</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">EOFError</tt><tt class="py-op">,</tt> <tt class="py-name">x</tt><tt class="py-op">:</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-25" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-25', 'SSHException', 'link-8');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'EOF during negotiation'</tt><tt class="py-op">)</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-26" class="py-name" targets="Variable paramiko.auth_handler.INFO=paramiko.auth_handler-module.html#INFO,Variable paramiko.channel.INFO=paramiko.channel-module.html#INFO,Variable paramiko.client.INFO=paramiko.client-module.html#INFO,Variable paramiko.common.INFO=paramiko.common-module.html#INFO,Variable paramiko.dsskey.INFO=paramiko.dsskey-module.html#INFO,Variable paramiko.hostkeys.INFO=paramiko.hostkeys-module.html#INFO,Variable paramiko.kex_gex.INFO=paramiko.kex_gex-module.html#INFO,Variable paramiko.kex_group1.INFO=paramiko.kex_group1-module.html#INFO,Variable paramiko.logging22.INFO=paramiko.logging22-module.html#INFO,Variable paramiko.packet.INFO=paramiko.packet-module.html#INFO,Variable paramiko.pkey.INFO=paramiko.pkey-module.html#INFO,Variable paramiko.rsakey.INFO=paramiko.rsakey-module.html#INFO,Variable paramiko.server.INFO=paramiko.server-module.html#INFO,Variable paramiko.sftp.INFO=paramiko.sftp-module.html#INFO,Variable paramiko.sftp_attr.INFO=paramiko.sftp_attr-module.html#INFO,Variable paramiko.sftp_client.INFO=paramiko.sftp_client-module.html#INFO,Variable paramiko.sftp_file.INFO=paramiko.sftp_file-module.html#INFO,Variable paramiko.sftp_handle.INFO=paramiko.sftp_handle-module.html#INFO,Variable paramiko.sftp_server.INFO=paramiko.sftp_server-module.html#INFO,Variable paramiko.sftp_si.INFO=paramiko.sftp_si-module.html#INFO,Variable paramiko.transport.INFO=paramiko.transport-module.html#INFO,Variable paramiko.util.INFO=paramiko.util-module.html#INFO"><a title="paramiko.auth_handler.INFO
-paramiko.channel.INFO
-paramiko.client.INFO
-paramiko.common.INFO
-paramiko.dsskey.INFO
-paramiko.hostkeys.INFO
-paramiko.kex_gex.INFO
-paramiko.kex_group1.INFO
-paramiko.logging22.INFO
-paramiko.packet.INFO
-paramiko.pkey.INFO
-paramiko.rsakey.INFO
-paramiko.server.INFO
-paramiko.sftp.INFO
-paramiko.sftp_attr.INFO
-paramiko.sftp_client.INFO
-paramiko.sftp_file.INFO
-paramiko.sftp_handle.INFO
-paramiko.sftp_server.INFO
-paramiko.sftp_si.INFO
-paramiko.transport.INFO
-paramiko.util.INFO" class="py-name" href="#" onclick="return doclink('link-26', 'INFO', 'link-26');">INFO</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Opened sftp connection (server version %d)'</tt> <tt class="py-op">%</tt> <tt class="py-name">server_version</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> </tt>
-<a name="SFTPClient.from_transport"></a><div id="SFTPClient.from_transport-def"><a name="L92"></a><tt class="py-lineno"> 92</tt> <a class="py-toggle" href="#" id="SFTPClient.from_transport-toggle" onclick="return toggle('SFTPClient.from_transport');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_client.SFTPClient-class.html#from_transport">from_transport</a><tt class="py-op">(</tt><tt class="py-param">cls</tt><tt class="py-op">,</tt> <tt class="py-param">t</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPClient.from_transport-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPClient.from_transport-expanded"><a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"><tt class="py-docstring"> Create an SFTP client channel from an open L{Transport}.</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"><tt class="py-docstring"> @param t: an open L{Transport} which is already authenticated</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"><tt class="py-docstring"> @type t: L{Transport}</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"><tt class="py-docstring"> @return: a new L{SFTPClient} object, referring to an sftp session</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"><tt class="py-docstring"> (channel) across the transport</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: L{SFTPClient}</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt class="py-name">chan</tt> <tt class="py-op">=</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name" targets="Method paramiko.Transport.open_session()=paramiko.Transport-class.html#open_session"><a title="paramiko.Transport.open_session" class="py-name" href="#" onclick="return doclink('link-27', 'open_session', 'link-27');">open_session</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">chan</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-name">chan</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name" targets="Method paramiko.Channel.invoke_subsystem()=paramiko.Channel-class.html#invoke_subsystem"><a title="paramiko.Channel.invoke_subsystem" class="py-name" href="#" onclick="return doclink('link-28', 'invoke_subsystem', 'link-28');">invoke_subsystem</a></tt><tt class="py-op">(</tt><tt class="py-string">'sftp'</tt><tt class="py-op">)</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">cls</tt><tt class="py-op">(</tt><tt class="py-name">chan</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt id="link-29" class="py-name" targets="Class Method paramiko.SFTPClient.from_transport()=paramiko.SFTPClient-class.html#from_transport"><a title="paramiko.SFTPClient.from_transport" class="py-name" href="#" onclick="return doclink('link-29', 'from_transport', 'link-29');">from_transport</a></tt> <tt class="py-op">=</tt> <tt class="py-name">classmethod</tt><tt class="py-op">(</tt><tt id="link-30" class="py-name"><a title="paramiko.SFTPClient.from_transport" class="py-name" href="#" onclick="return doclink('link-30', 'from_transport', 'link-29');">from_transport</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> </tt>
-<a name="SFTPClient._log"></a><div id="SFTPClient._log-def"><a name="L109"></a><tt class="py-lineno">109</tt> <a class="py-toggle" href="#" id="SFTPClient._log-toggle" onclick="return toggle('SFTPClient._log');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_client.SFTPClient-class.html#_log">_log</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">level</tt><tt class="py-op">,</tt> <tt class="py-param">msg</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">args</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPClient._log-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPClient._log-expanded"><a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">m</tt> <tt class="py-keyword">in</tt> <tt class="py-name">msg</tt><tt class="py-op">:</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-name">super</tt><tt class="py-op">(</tt><tt id="link-31" class="py-name" targets="Class paramiko.SFTPClient=paramiko.SFTPClient-class.html"><a title="paramiko.SFTPClient" class="py-name" href="#" onclick="return doclink('link-31', 'SFTPClient', 'link-31');">SFTPClient</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt class="py-name">level</tt><tt class="py-op">,</tt> <tt class="py-string">"[chan %s] "</tt> <tt class="py-op">+</tt> <tt class="py-name">m</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-op">(</tt><tt class="py-op">[</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">sock</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name" targets="Method paramiko.AgentKey.get_name()=paramiko.AgentKey-class.html#get_name,Method paramiko.Channel.get_name()=paramiko.Channel-class.html#get_name,Method paramiko.DSSKey.get_name()=paramiko.DSSKey-class.html#get_name,Method paramiko.PKey.get_name()=paramiko.PKey-class.html#get_name,Method paramiko.RSAKey.get_name()=paramiko.RSAKey-class.html#get_name"><a title="paramiko.AgentKey.get_name
-paramiko.Channel.get_name
-paramiko.DSSKey.get_name
-paramiko.PKey.get_name
-paramiko.RSAKey.get_name" class="py-name" href="#" onclick="return doclink('link-32', 'get_name', 'link-32');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-name">list</tt><tt class="py-op">(</tt><tt class="py-name">args</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-name">super</tt><tt class="py-op">(</tt><tt id="link-33" class="py-name"><a title="paramiko.SFTPClient" class="py-name" href="#" onclick="return doclink('link-33', 'SFTPClient', 'link-31');">SFTPClient</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt class="py-name">level</tt><tt class="py-op">,</tt> <tt class="py-string">"[chan %s] "</tt> <tt class="py-op">+</tt> <tt class="py-name">msg</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-op">(</tt><tt class="py-op">[</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">sock</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="paramiko.AgentKey.get_name
-paramiko.Channel.get_name
-paramiko.DSSKey.get_name
-paramiko.PKey.get_name
-paramiko.RSAKey.get_name" class="py-name" href="#" onclick="return doclink('link-34', 'get_name', 'link-32');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">]</tt> <tt class="py-op">+</tt> <tt class="py-name">list</tt><tt class="py-op">(</tt><tt class="py-name">args</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> </tt>
-<a name="SFTPClient.close"></a><div id="SFTPClient.close-def"><a name="L116"></a><tt class="py-lineno">116</tt> <a class="py-toggle" href="#" id="SFTPClient.close-toggle" onclick="return toggle('SFTPClient.close');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_client.SFTPClient-class.html#close">close</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPClient.close-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPClient.close-expanded"><a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"><tt class="py-docstring"> Close the SFTP session and its underlying channel.</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.4</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-35" class="py-name"><a title="paramiko.auth_handler.INFO
-paramiko.channel.INFO
-paramiko.client.INFO
-paramiko.common.INFO
-paramiko.dsskey.INFO
-paramiko.hostkeys.INFO
-paramiko.kex_gex.INFO
-paramiko.kex_group1.INFO
-paramiko.logging22.INFO
-paramiko.packet.INFO
-paramiko.pkey.INFO
-paramiko.rsakey.INFO
-paramiko.server.INFO
-paramiko.sftp.INFO
-paramiko.sftp_attr.INFO
-paramiko.sftp_client.INFO
-paramiko.sftp_file.INFO
-paramiko.sftp_handle.INFO
-paramiko.sftp_server.INFO
-paramiko.sftp_si.INFO
-paramiko.transport.INFO
-paramiko.util.INFO" class="py-name" href="#" onclick="return doclink('link-35', 'INFO', 'link-26');">INFO</a></tt><tt class="py-op">,</tt> <tt class="py-string">'sftp session closed.'</tt><tt class="py-op">)</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">sock</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name" targets="Method paramiko.Agent.close()=paramiko.Agent-class.html#close,Method paramiko.BufferedFile.close()=paramiko.BufferedFile-class.html#close,Method paramiko.Channel.close()=paramiko.Channel-class.html#close,Method paramiko.SFTPClient.close()=paramiko.SFTPClient-class.html#close,Method paramiko.SFTPFile.close()=paramiko.SFTPFile-class.html#close,Method paramiko.SFTPHandle.close()=paramiko.SFTPHandle-class.html#close,Method paramiko.SSHClient.close()=paramiko.SSHClient-class.html#close,Method paramiko.Transport.close()=paramiko.Transport-class.html#close,Method paramiko.buffered_pipe.BufferedPipe.close()=paramiko.buffered_pipe.BufferedPipe-class.html#close,Method paramiko.pipe.PosixPipe.close()=paramiko.pipe.PosixPipe-class.html#close,Method paramiko.pipe.WindowsPipe.close()=paramiko.pipe.WindowsPipe-class.html#close,Method paramiko.win_pageant.PageantConnection.close()=paramiko.win_pageant.PageantConnection-class.html#close"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-36', 'close', 'link-36');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> </tt>
-<a name="SFTPClient.get_channel"></a><div id="SFTPClient.get_channel-def"><a name="L125"></a><tt class="py-lineno">125</tt> <a class="py-toggle" href="#" id="SFTPClient.get_channel-toggle" onclick="return toggle('SFTPClient.get_channel');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_client.SFTPClient-class.html#get_channel">get_channel</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPClient.get_channel-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPClient.get_channel-expanded"><a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"><tt class="py-docstring"> Return the underlying L{Channel} object for this SFTP session. This</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"><tt class="py-docstring"> might be useful for doing things like setting a timeout on the channel.</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"><tt class="py-docstring"> @return: the SSH channel</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: L{Channel}</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.7.1</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">sock</tt> </tt>
-</div><a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> </tt>
-<a name="SFTPClient.listdir"></a><div id="SFTPClient.listdir-def"><a name="L137"></a><tt class="py-lineno">137</tt> <a class="py-toggle" href="#" id="SFTPClient.listdir-toggle" onclick="return toggle('SFTPClient.listdir');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_client.SFTPClient-class.html#listdir">listdir</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">path</tt><tt class="py-op">=</tt><tt class="py-string">'.'</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPClient.listdir-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPClient.listdir-expanded"><a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"><tt class="py-docstring"> Return a list containing the names of the entries in the given C{path}.</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"><tt class="py-docstring"> The list is in arbitrary order. It does not include the special</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"><tt class="py-docstring"> entries C{'.'} and C{'..'} even if they are present in the folder.</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"><tt class="py-docstring"> This method is meant to mirror C{os.listdir} as closely as possible.</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"><tt class="py-docstring"> For a list of full L{SFTPAttributes} objects, see L{listdir_attr}.</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"><tt class="py-docstring"> @param path: path to list (defaults to C{'.'})</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"><tt class="py-docstring"> @type path: str</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"><tt class="py-docstring"> @return: list of filenames</tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: list of str</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-op">[</tt><tt class="py-name">f</tt><tt class="py-op">.</tt><tt class="py-name">filename</tt> <tt class="py-keyword">for</tt> <tt class="py-name">f</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name" targets="Method paramiko.SFTPClient.listdir_attr()=paramiko.SFTPClient-class.html#listdir_attr"><a title="paramiko.SFTPClient.listdir_attr" class="py-name" href="#" onclick="return doclink('link-37', 'listdir_attr', 'link-37');">listdir_attr</a></tt><tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">)</tt><tt class="py-op">]</tt> </tt>
-</div><a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> </tt>
-<a name="SFTPClient.listdir_attr"></a><div id="SFTPClient.listdir_attr-def"><a name="L152"></a><tt class="py-lineno">152</tt> <a class="py-toggle" href="#" id="SFTPClient.listdir_attr-toggle" onclick="return toggle('SFTPClient.listdir_attr');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_client.SFTPClient-class.html#listdir_attr">listdir_attr</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">path</tt><tt class="py-op">=</tt><tt class="py-string">'.'</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPClient.listdir_attr-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPClient.listdir_attr-expanded"><a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"><tt class="py-docstring"> Return a list containing L{SFTPAttributes} objects corresponding to</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"><tt class="py-docstring"> files in the given C{path}. The list is in arbitrary order. It does</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"><tt class="py-docstring"> not include the special entries C{'.'} and C{'..'} even if they are</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"><tt class="py-docstring"> present in the folder.</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"><tt class="py-docstring"> The returned L{SFTPAttributes} objects will each have an additional</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"><tt class="py-docstring"> field: C{longname}, which may contain a formatted string of the file's</tt> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"><tt class="py-docstring"> attributes, in unix format. The content of this string will probably</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"><tt class="py-docstring"> depend on the SFTP server implementation.</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"><tt class="py-docstring"> @param path: path to list (defaults to C{'.'})</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"><tt class="py-docstring"> @type path: str</tt> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"><tt class="py-docstring"> @return: list of attributes</tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: list of L{SFTPAttributes}</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.2</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> <tt class="py-name">path</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_adjust_cwd</tt><tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-38" class="py-name" targets="Variable paramiko.auth_handler.DEBUG=paramiko.auth_handler-module.html#DEBUG,Variable paramiko.channel.DEBUG=paramiko.channel-module.html#DEBUG,Variable paramiko.client.DEBUG=paramiko.client-module.html#DEBUG,Variable paramiko.common.DEBUG=paramiko.common-module.html#DEBUG,Variable paramiko.dsskey.DEBUG=paramiko.dsskey-module.html#DEBUG,Variable paramiko.hostkeys.DEBUG=paramiko.hostkeys-module.html#DEBUG,Variable paramiko.kex_gex.DEBUG=paramiko.kex_gex-module.html#DEBUG,Variable paramiko.kex_group1.DEBUG=paramiko.kex_group1-module.html#DEBUG,Variable paramiko.logging22.DEBUG=paramiko.logging22-module.html#DEBUG,Variable paramiko.packet.DEBUG=paramiko.packet-module.html#DEBUG,Variable paramiko.pkey.DEBUG=paramiko.pkey-module.html#DEBUG,Variable paramiko.rsakey.DEBUG=paramiko.rsakey-module.html#DEBUG,Variable paramiko.server.DEBUG=paramiko.server-module.html#DEBUG,Variable paramiko.sftp.DEBUG=paramiko.sftp-module.html#DEBUG,Variable paramiko.sftp_attr.DEBUG=paramiko.sftp_attr-module.html#DEBUG,Variable paramiko.sftp_client.DEBUG=paramiko.sftp_client-module.html#DEBUG,Variable paramiko.sftp_file.DEBUG=paramiko.sftp_file-module.html#DEBUG,Variable paramiko.sftp_handle.DEBUG=paramiko.sftp_handle-module.html#DEBUG,Variable paramiko.sftp_server.DEBUG=paramiko.sftp_server-module.html#DEBUG,Variable paramiko.sftp_si.DEBUG=paramiko.sftp_si-module.html#DEBUG,Variable paramiko.transport.DEBUG=paramiko.transport-module.html#DEBUG,Variable paramiko.util.DEBUG=paramiko.util-module.html#DEBUG"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-38', 'DEBUG', 'link-38');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'listdir(%r)'</tt> <tt class="py-op">%</tt> <tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">,</tt> <tt class="py-name">msg</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_request</tt><tt class="py-op">(</tt><tt id="link-39" class="py-name" targets="Variable paramiko.sftp.CMD_OPENDIR=paramiko.sftp-module.html#CMD_OPENDIR,Variable paramiko.sftp_attr.CMD_OPENDIR=paramiko.sftp_attr-module.html#CMD_OPENDIR,Variable paramiko.sftp_client.CMD_OPENDIR=paramiko.sftp_client-module.html#CMD_OPENDIR,Variable paramiko.sftp_file.CMD_OPENDIR=paramiko.sftp_file-module.html#CMD_OPENDIR,Variable paramiko.sftp_handle.CMD_OPENDIR=paramiko.sftp_handle-module.html#CMD_OPENDIR,Variable paramiko.sftp_server.CMD_OPENDIR=paramiko.sftp_server-module.html#CMD_OPENDIR,Variable paramiko.sftp_si.CMD_OPENDIR=paramiko.sftp_si-module.html#CMD_OPENDIR"><a title="paramiko.sftp.CMD_OPENDIR
-paramiko.sftp_attr.CMD_OPENDIR
-paramiko.sftp_client.CMD_OPENDIR
-paramiko.sftp_file.CMD_OPENDIR
-paramiko.sftp_handle.CMD_OPENDIR
-paramiko.sftp_server.CMD_OPENDIR
-paramiko.sftp_si.CMD_OPENDIR" class="py-name" href="#" onclick="return doclink('link-39', 'CMD_OPENDIR', 'link-39');">CMD_OPENDIR</a></tt><tt class="py-op">,</tt> <tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">t</tt> <tt class="py-op">!=</tt> <tt id="link-40" class="py-name" targets="Variable paramiko.sftp.CMD_HANDLE=paramiko.sftp-module.html#CMD_HANDLE,Variable paramiko.sftp_attr.CMD_HANDLE=paramiko.sftp_attr-module.html#CMD_HANDLE,Variable paramiko.sftp_client.CMD_HANDLE=paramiko.sftp_client-module.html#CMD_HANDLE,Variable paramiko.sftp_file.CMD_HANDLE=paramiko.sftp_file-module.html#CMD_HANDLE,Variable paramiko.sftp_handle.CMD_HANDLE=paramiko.sftp_handle-module.html#CMD_HANDLE,Variable paramiko.sftp_server.CMD_HANDLE=paramiko.sftp_server-module.html#CMD_HANDLE,Variable paramiko.sftp_si.CMD_HANDLE=paramiko.sftp_si-module.html#CMD_HANDLE"><a title="paramiko.sftp.CMD_HANDLE
-paramiko.sftp_attr.CMD_HANDLE
-paramiko.sftp_client.CMD_HANDLE
-paramiko.sftp_file.CMD_HANDLE
-paramiko.sftp_handle.CMD_HANDLE
-paramiko.sftp_server.CMD_HANDLE
-paramiko.sftp_si.CMD_HANDLE" class="py-name" href="#" onclick="return doclink('link-40', 'CMD_HANDLE', 'link-40');">CMD_HANDLE</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-41" class="py-name" targets="Class paramiko.SFTPError=paramiko.SFTPError-class.html"><a title="paramiko.SFTPError" class="py-name" href="#" onclick="return doclink('link-41', 'SFTPError', 'link-41');">SFTPError</a></tt><tt class="py-op">(</tt><tt class="py-string">'Expected handle'</tt><tt class="py-op">)</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-42" class="py-name" targets="Method paramiko.Message.get_string()=paramiko.Message-class.html#get_string"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-42', 'get_string', 'link-42');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> <tt class="py-name">filelist</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">,</tt> <tt class="py-name">msg</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_request</tt><tt class="py-op">(</tt><tt id="link-43" class="py-name" targets="Variable paramiko.sftp.CMD_READDIR=paramiko.sftp-module.html#CMD_READDIR,Variable paramiko.sftp_attr.CMD_READDIR=paramiko.sftp_attr-module.html#CMD_READDIR,Variable paramiko.sftp_client.CMD_READDIR=paramiko.sftp_client-module.html#CMD_READDIR,Variable paramiko.sftp_file.CMD_READDIR=paramiko.sftp_file-module.html#CMD_READDIR,Variable paramiko.sftp_handle.CMD_READDIR=paramiko.sftp_handle-module.html#CMD_READDIR,Variable paramiko.sftp_server.CMD_READDIR=paramiko.sftp_server-module.html#CMD_READDIR,Variable paramiko.sftp_si.CMD_READDIR=paramiko.sftp_si-module.html#CMD_READDIR"><a title="paramiko.sftp.CMD_READDIR
-paramiko.sftp_attr.CMD_READDIR
-paramiko.sftp_client.CMD_READDIR
-paramiko.sftp_file.CMD_READDIR
-paramiko.sftp_handle.CMD_READDIR
-paramiko.sftp_server.CMD_READDIR
-paramiko.sftp_si.CMD_READDIR" class="py-name" href="#" onclick="return doclink('link-43', 'CMD_READDIR', 'link-43');">CMD_READDIR</a></tt><tt class="py-op">,</tt> <tt class="py-name">handle</tt><tt class="py-op">)</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">EOFError</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> <tt class="py-comment"># done with handle</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">t</tt> <tt class="py-op">!=</tt> <tt id="link-44" class="py-name" targets="Variable paramiko.sftp.CMD_NAME=paramiko.sftp-module.html#CMD_NAME,Variable paramiko.sftp_attr.CMD_NAME=paramiko.sftp_attr-module.html#CMD_NAME,Variable paramiko.sftp_client.CMD_NAME=paramiko.sftp_client-module.html#CMD_NAME,Variable paramiko.sftp_file.CMD_NAME=paramiko.sftp_file-module.html#CMD_NAME,Variable paramiko.sftp_handle.CMD_NAME=paramiko.sftp_handle-module.html#CMD_NAME,Variable paramiko.sftp_server.CMD_NAME=paramiko.sftp_server-module.html#CMD_NAME,Variable paramiko.sftp_si.CMD_NAME=paramiko.sftp_si-module.html#CMD_NAME"><a title="paramiko.sftp.CMD_NAME
-paramiko.sftp_attr.CMD_NAME
-paramiko.sftp_client.CMD_NAME
-paramiko.sftp_file.CMD_NAME
-paramiko.sftp_handle.CMD_NAME
-paramiko.sftp_server.CMD_NAME
-paramiko.sftp_si.CMD_NAME" class="py-name" href="#" onclick="return doclink('link-44', 'CMD_NAME', 'link-44');">CMD_NAME</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-45" class="py-name"><a title="paramiko.SFTPError" class="py-name" href="#" onclick="return doclink('link-45', 'SFTPError', 'link-41');">SFTPError</a></tt><tt class="py-op">(</tt><tt class="py-string">'Expected name response'</tt><tt class="py-op">)</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-46" class="py-name" targets="Method paramiko.Message.get_int()=paramiko.Message-class.html#get_int"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-46', 'get_int', 'link-46');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-name">count</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"> <tt class="py-name">filename</tt> <tt class="py-op">=</tt> <tt class="py-name">_to_unicode</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-47" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-47', 'get_string', 'link-42');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"> <tt class="py-name">longname</tt> <tt class="py-op">=</tt> <tt class="py-name">_to_unicode</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-48" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-48', 'get_string', 'link-42');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"> <tt class="py-name">attr</tt> <tt class="py-op">=</tt> <tt id="link-49" class="py-name"><a title="paramiko.SFTPAttributes" class="py-name" href="#" onclick="return doclink('link-49', 'SFTPAttributes', 'link-5');">SFTPAttributes</a></tt><tt class="py-op">.</tt><tt class="py-name">_from_msg</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">,</tt> <tt class="py-name">filename</tt><tt class="py-op">,</tt> <tt class="py-name">longname</tt><tt class="py-op">)</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">filename</tt> <tt class="py-op">!=</tt> <tt class="py-string">'.'</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">filename</tt> <tt class="py-op">!=</tt> <tt class="py-string">'..'</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"> <tt class="py-name">filelist</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">attr</tt><tt class="py-op">)</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_request</tt><tt class="py-op">(</tt><tt id="link-50" class="py-name" targets="Variable paramiko.sftp.CMD_CLOSE=paramiko.sftp-module.html#CMD_CLOSE,Variable paramiko.sftp_attr.CMD_CLOSE=paramiko.sftp_attr-module.html#CMD_CLOSE,Variable paramiko.sftp_client.CMD_CLOSE=paramiko.sftp_client-module.html#CMD_CLOSE,Variable paramiko.sftp_file.CMD_CLOSE=paramiko.sftp_file-module.html#CMD_CLOSE,Variable paramiko.sftp_handle.CMD_CLOSE=paramiko.sftp_handle-module.html#CMD_CLOSE,Variable paramiko.sftp_server.CMD_CLOSE=paramiko.sftp_server-module.html#CMD_CLOSE,Variable paramiko.sftp_si.CMD_CLOSE=paramiko.sftp_si-module.html#CMD_CLOSE"><a title="paramiko.sftp.CMD_CLOSE
-paramiko.sftp_attr.CMD_CLOSE
-paramiko.sftp_client.CMD_CLOSE
-paramiko.sftp_file.CMD_CLOSE
-paramiko.sftp_handle.CMD_CLOSE
-paramiko.sftp_server.CMD_CLOSE
-paramiko.sftp_si.CMD_CLOSE" class="py-name" href="#" onclick="return doclink('link-50', 'CMD_CLOSE', 'link-50');">CMD_CLOSE</a></tt><tt class="py-op">,</tt> <tt class="py-name">handle</tt><tt class="py-op">)</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">filelist</tt> </tt>
-</div><a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"> </tt>
-<a name="SFTPClient.open"></a><div id="SFTPClient.open-def"><a name="L196"></a><tt class="py-lineno">196</tt> <a class="py-toggle" href="#" id="SFTPClient.open-toggle" onclick="return toggle('SFTPClient.open');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_client.SFTPClient-class.html#open">open</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">filename</tt><tt class="py-op">,</tt> <tt class="py-param">mode</tt><tt class="py-op">=</tt><tt class="py-string">'r'</tt><tt class="py-op">,</tt> <tt class="py-param">bufsize</tt><tt class="py-op">=</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPClient.open-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPClient.open-expanded"><a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"><tt class="py-docstring"> Open a file on the remote server. The arguments are the same as for</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"><tt class="py-docstring"> python's built-in C{file} (aka C{open}). A file-like object is</tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"><tt class="py-docstring"> returned, which closely mimics the behavior of a normal python file</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"><tt class="py-docstring"> object.</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"><tt class="py-docstring"> The mode indicates how the file is to be opened: C{'r'} for reading,</tt> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"><tt class="py-docstring"> C{'w'} for writing (truncating an existing file), C{'a'} for appending,</tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"><tt class="py-docstring"> C{'r+'} for reading/writing, C{'w+'} for reading/writing (truncating an</tt> </tt>
-<a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"><tt class="py-docstring"> existing file), C{'a+'} for reading/appending. The python C{'b'} flag</tt> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"><tt class="py-docstring"> is ignored, since SSH treats all files as binary. The C{'U'} flag is</tt> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"><tt class="py-docstring"> supported in a compatible way.</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"><tt class="py-docstring"> Since 1.5.2, an C{'x'} flag indicates that the operation should only</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"><tt class="py-docstring"> succeed if the file was created and did not previously exist. This has</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"><tt class="py-docstring"> no direct mapping to python's file flags, but is commonly known as the</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"><tt class="py-docstring"> C{O_EXCL} flag in posix.</tt> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"><tt class="py-docstring"> The file will be buffered in standard python style by default, but</tt> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"><tt class="py-docstring"> can be altered with the C{bufsize} parameter. C{0} turns off</tt> </tt>
-<a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"><tt class="py-docstring"> buffering, C{1} uses line buffering, and any number greater than 1</tt> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"><tt class="py-docstring"> (C{&gt;1}) uses that specific buffer size.</tt> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"><tt class="py-docstring"> @param filename: name of the file to open</tt> </tt>
-<a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"><tt class="py-docstring"> @type filename: str</tt> </tt>
-<a name="L222"></a><tt class="py-lineno">222</tt> <tt class="py-line"><tt class="py-docstring"> @param mode: mode (python-style) to open in</tt> </tt>
-<a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"><tt class="py-docstring"> @type mode: str</tt> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"><tt class="py-docstring"> @param bufsize: desired buffering (-1 = default buffer size)</tt> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"><tt class="py-docstring"> @type bufsize: int</tt> </tt>
-<a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"><tt class="py-docstring"> @return: a file object representing the open file</tt> </tt>
-<a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: SFTPFile</tt> </tt>
-<a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L229"></a><tt class="py-lineno">229</tt> <tt class="py-line"><tt class="py-docstring"> @raise IOError: if the file could not be opened.</tt> </tt>
-<a name="L230"></a><tt class="py-lineno">230</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"> <tt class="py-name">filename</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_adjust_cwd</tt><tt class="py-op">(</tt><tt class="py-name">filename</tt><tt class="py-op">)</tt> </tt>
-<a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-51" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-51', 'DEBUG', 'link-38');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'open(%r, %r)'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">filename</tt><tt class="py-op">,</tt> <tt class="py-name">mode</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"> <tt class="py-name">imode</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-string">'r'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">mode</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-string">'+'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">mode</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"> <tt class="py-name">imode</tt> <tt class="py-op">|=</tt> <tt id="link-52" class="py-name" targets="Variable paramiko.sftp.SFTP_FLAG_READ=paramiko.sftp-module.html#SFTP_FLAG_READ,Variable paramiko.sftp_attr.SFTP_FLAG_READ=paramiko.sftp_attr-module.html#SFTP_FLAG_READ,Variable paramiko.sftp_client.SFTP_FLAG_READ=paramiko.sftp_client-module.html#SFTP_FLAG_READ,Variable paramiko.sftp_file.SFTP_FLAG_READ=paramiko.sftp_file-module.html#SFTP_FLAG_READ,Variable paramiko.sftp_handle.SFTP_FLAG_READ=paramiko.sftp_handle-module.html#SFTP_FLAG_READ,Variable paramiko.sftp_server.SFTP_FLAG_READ=paramiko.sftp_server-module.html#SFTP_FLAG_READ,Variable paramiko.sftp_si.SFTP_FLAG_READ=paramiko.sftp_si-module.html#SFTP_FLAG_READ"><a title="paramiko.sftp.SFTP_FLAG_READ
-paramiko.sftp_attr.SFTP_FLAG_READ
-paramiko.sftp_client.SFTP_FLAG_READ
-paramiko.sftp_file.SFTP_FLAG_READ
-paramiko.sftp_handle.SFTP_FLAG_READ
-paramiko.sftp_server.SFTP_FLAG_READ
-paramiko.sftp_si.SFTP_FLAG_READ" class="py-name" href="#" onclick="return doclink('link-52', 'SFTP_FLAG_READ', 'link-52');">SFTP_FLAG_READ</a></tt> </tt>
-<a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-string">'w'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">mode</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-string">'+'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">mode</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-string">'a'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">mode</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"> <tt class="py-name">imode</tt> <tt class="py-op">|=</tt> <tt id="link-53" class="py-name" targets="Variable paramiko.sftp.SFTP_FLAG_WRITE=paramiko.sftp-module.html#SFTP_FLAG_WRITE,Variable paramiko.sftp_attr.SFTP_FLAG_WRITE=paramiko.sftp_attr-module.html#SFTP_FLAG_WRITE,Variable paramiko.sftp_client.SFTP_FLAG_WRITE=paramiko.sftp_client-module.html#SFTP_FLAG_WRITE,Variable paramiko.sftp_file.SFTP_FLAG_WRITE=paramiko.sftp_file-module.html#SFTP_FLAG_WRITE,Variable paramiko.sftp_handle.SFTP_FLAG_WRITE=paramiko.sftp_handle-module.html#SFTP_FLAG_WRITE,Variable paramiko.sftp_server.SFTP_FLAG_WRITE=paramiko.sftp_server-module.html#SFTP_FLAG_WRITE,Variable paramiko.sftp_si.SFTP_FLAG_WRITE=paramiko.sftp_si-module.html#SFTP_FLAG_WRITE"><a title="paramiko.sftp.SFTP_FLAG_WRITE
-paramiko.sftp_attr.SFTP_FLAG_WRITE
-paramiko.sftp_client.SFTP_FLAG_WRITE
-paramiko.sftp_file.SFTP_FLAG_WRITE
-paramiko.sftp_handle.SFTP_FLAG_WRITE
-paramiko.sftp_server.SFTP_FLAG_WRITE
-paramiko.sftp_si.SFTP_FLAG_WRITE" class="py-name" href="#" onclick="return doclink('link-53', 'SFTP_FLAG_WRITE', 'link-53');">SFTP_FLAG_WRITE</a></tt> </tt>
-<a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-string">'w'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">mode</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L239"></a><tt class="py-lineno">239</tt> <tt class="py-line"> <tt class="py-name">imode</tt> <tt class="py-op">|=</tt> <tt id="link-54" class="py-name" targets="Variable paramiko.sftp.SFTP_FLAG_CREATE=paramiko.sftp-module.html#SFTP_FLAG_CREATE,Variable paramiko.sftp_attr.SFTP_FLAG_CREATE=paramiko.sftp_attr-module.html#SFTP_FLAG_CREATE,Variable paramiko.sftp_client.SFTP_FLAG_CREATE=paramiko.sftp_client-module.html#SFTP_FLAG_CREATE,Variable paramiko.sftp_file.SFTP_FLAG_CREATE=paramiko.sftp_file-module.html#SFTP_FLAG_CREATE,Variable paramiko.sftp_handle.SFTP_FLAG_CREATE=paramiko.sftp_handle-module.html#SFTP_FLAG_CREATE,Variable paramiko.sftp_server.SFTP_FLAG_CREATE=paramiko.sftp_server-module.html#SFTP_FLAG_CREATE,Variable paramiko.sftp_si.SFTP_FLAG_CREATE=paramiko.sftp_si-module.html#SFTP_FLAG_CREATE"><a title="paramiko.sftp.SFTP_FLAG_CREATE
-paramiko.sftp_attr.SFTP_FLAG_CREATE
-paramiko.sftp_client.SFTP_FLAG_CREATE
-paramiko.sftp_file.SFTP_FLAG_CREATE
-paramiko.sftp_handle.SFTP_FLAG_CREATE
-paramiko.sftp_server.SFTP_FLAG_CREATE
-paramiko.sftp_si.SFTP_FLAG_CREATE" class="py-name" href="#" onclick="return doclink('link-54', 'SFTP_FLAG_CREATE', 'link-54');">SFTP_FLAG_CREATE</a></tt> <tt class="py-op">|</tt> <tt id="link-55" class="py-name" targets="Variable paramiko.sftp.SFTP_FLAG_TRUNC=paramiko.sftp-module.html#SFTP_FLAG_TRUNC,Variable paramiko.sftp_attr.SFTP_FLAG_TRUNC=paramiko.sftp_attr-module.html#SFTP_FLAG_TRUNC,Variable paramiko.sftp_client.SFTP_FLAG_TRUNC=paramiko.sftp_client-module.html#SFTP_FLAG_TRUNC,Variable paramiko.sftp_file.SFTP_FLAG_TRUNC=paramiko.sftp_file-module.html#SFTP_FLAG_TRUNC,Variable paramiko.sftp_handle.SFTP_FLAG_TRUNC=paramiko.sftp_handle-module.html#SFTP_FLAG_TRUNC,Variable paramiko.sftp_server.SFTP_FLAG_TRUNC=paramiko.sftp_server-module.html#SFTP_FLAG_TRUNC,Variable paramiko.sftp_si.SFTP_FLAG_TRUNC=paramiko.sftp_si-module.html#SFTP_FLAG_TRUNC"><a title="paramiko.sftp.SFTP_FLAG_TRUNC
-paramiko.sftp_attr.SFTP_FLAG_TRUNC
-paramiko.sftp_client.SFTP_FLAG_TRUNC
-paramiko.sftp_file.SFTP_FLAG_TRUNC
-paramiko.sftp_handle.SFTP_FLAG_TRUNC
-paramiko.sftp_server.SFTP_FLAG_TRUNC
-paramiko.sftp_si.SFTP_FLAG_TRUNC" class="py-name" href="#" onclick="return doclink('link-55', 'SFTP_FLAG_TRUNC', 'link-55');">SFTP_FLAG_TRUNC</a></tt> </tt>
-<a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-string">'a'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">mode</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"> <tt class="py-name">imode</tt> <tt class="py-op">|=</tt> <tt id="link-56" class="py-name"><a title="paramiko.sftp.SFTP_FLAG_CREATE
-paramiko.sftp_attr.SFTP_FLAG_CREATE
-paramiko.sftp_client.SFTP_FLAG_CREATE
-paramiko.sftp_file.SFTP_FLAG_CREATE
-paramiko.sftp_handle.SFTP_FLAG_CREATE
-paramiko.sftp_server.SFTP_FLAG_CREATE
-paramiko.sftp_si.SFTP_FLAG_CREATE" class="py-name" href="#" onclick="return doclink('link-56', 'SFTP_FLAG_CREATE', 'link-54');">SFTP_FLAG_CREATE</a></tt> <tt class="py-op">|</tt> <tt id="link-57" class="py-name" targets="Variable paramiko.sftp.SFTP_FLAG_APPEND=paramiko.sftp-module.html#SFTP_FLAG_APPEND,Variable paramiko.sftp_attr.SFTP_FLAG_APPEND=paramiko.sftp_attr-module.html#SFTP_FLAG_APPEND,Variable paramiko.sftp_client.SFTP_FLAG_APPEND=paramiko.sftp_client-module.html#SFTP_FLAG_APPEND,Variable paramiko.sftp_file.SFTP_FLAG_APPEND=paramiko.sftp_file-module.html#SFTP_FLAG_APPEND,Variable paramiko.sftp_handle.SFTP_FLAG_APPEND=paramiko.sftp_handle-module.html#SFTP_FLAG_APPEND,Variable paramiko.sftp_server.SFTP_FLAG_APPEND=paramiko.sftp_server-module.html#SFTP_FLAG_APPEND,Variable paramiko.sftp_si.SFTP_FLAG_APPEND=paramiko.sftp_si-module.html#SFTP_FLAG_APPEND"><a title="paramiko.sftp.SFTP_FLAG_APPEND
-paramiko.sftp_attr.SFTP_FLAG_APPEND
-paramiko.sftp_client.SFTP_FLAG_APPEND
-paramiko.sftp_file.SFTP_FLAG_APPEND
-paramiko.sftp_handle.SFTP_FLAG_APPEND
-paramiko.sftp_server.SFTP_FLAG_APPEND
-paramiko.sftp_si.SFTP_FLAG_APPEND" class="py-name" href="#" onclick="return doclink('link-57', 'SFTP_FLAG_APPEND', 'link-57');">SFTP_FLAG_APPEND</a></tt> </tt>
-<a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-string">'x'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">mode</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L243"></a><tt class="py-lineno">243</tt> <tt class="py-line"> <tt class="py-name">imode</tt> <tt class="py-op">|=</tt> <tt id="link-58" class="py-name"><a title="paramiko.sftp.SFTP_FLAG_CREATE
-paramiko.sftp_attr.SFTP_FLAG_CREATE
-paramiko.sftp_client.SFTP_FLAG_CREATE
-paramiko.sftp_file.SFTP_FLAG_CREATE
-paramiko.sftp_handle.SFTP_FLAG_CREATE
-paramiko.sftp_server.SFTP_FLAG_CREATE
-paramiko.sftp_si.SFTP_FLAG_CREATE" class="py-name" href="#" onclick="return doclink('link-58', 'SFTP_FLAG_CREATE', 'link-54');">SFTP_FLAG_CREATE</a></tt> <tt class="py-op">|</tt> <tt id="link-59" class="py-name" targets="Variable paramiko.sftp.SFTP_FLAG_EXCL=paramiko.sftp-module.html#SFTP_FLAG_EXCL,Variable paramiko.sftp_attr.SFTP_FLAG_EXCL=paramiko.sftp_attr-module.html#SFTP_FLAG_EXCL,Variable paramiko.sftp_client.SFTP_FLAG_EXCL=paramiko.sftp_client-module.html#SFTP_FLAG_EXCL,Variable paramiko.sftp_file.SFTP_FLAG_EXCL=paramiko.sftp_file-module.html#SFTP_FLAG_EXCL,Variable paramiko.sftp_handle.SFTP_FLAG_EXCL=paramiko.sftp_handle-module.html#SFTP_FLAG_EXCL,Variable paramiko.sftp_server.SFTP_FLAG_EXCL=paramiko.sftp_server-module.html#SFTP_FLAG_EXCL,Variable paramiko.sftp_si.SFTP_FLAG_EXCL=paramiko.sftp_si-module.html#SFTP_FLAG_EXCL"><a title="paramiko.sftp.SFTP_FLAG_EXCL
-paramiko.sftp_attr.SFTP_FLAG_EXCL
-paramiko.sftp_client.SFTP_FLAG_EXCL
-paramiko.sftp_file.SFTP_FLAG_EXCL
-paramiko.sftp_handle.SFTP_FLAG_EXCL
-paramiko.sftp_server.SFTP_FLAG_EXCL
-paramiko.sftp_si.SFTP_FLAG_EXCL" class="py-name" href="#" onclick="return doclink('link-59', 'SFTP_FLAG_EXCL', 'link-59');">SFTP_FLAG_EXCL</a></tt> </tt>
-<a name="L244"></a><tt class="py-lineno">244</tt> <tt class="py-line"> <tt class="py-name">attrblock</tt> <tt class="py-op">=</tt> <tt id="link-60" class="py-name"><a title="paramiko.SFTPAttributes" class="py-name" href="#" onclick="return doclink('link-60', 'SFTPAttributes', 'link-5');">SFTPAttributes</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L245"></a><tt class="py-lineno">245</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">,</tt> <tt class="py-name">msg</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_request</tt><tt class="py-op">(</tt><tt id="link-61" class="py-name" targets="Variable paramiko.sftp.CMD_OPEN=paramiko.sftp-module.html#CMD_OPEN,Variable paramiko.sftp_attr.CMD_OPEN=paramiko.sftp_attr-module.html#CMD_OPEN,Variable paramiko.sftp_client.CMD_OPEN=paramiko.sftp_client-module.html#CMD_OPEN,Variable paramiko.sftp_file.CMD_OPEN=paramiko.sftp_file-module.html#CMD_OPEN,Variable paramiko.sftp_handle.CMD_OPEN=paramiko.sftp_handle-module.html#CMD_OPEN,Variable paramiko.sftp_server.CMD_OPEN=paramiko.sftp_server-module.html#CMD_OPEN,Variable paramiko.sftp_si.CMD_OPEN=paramiko.sftp_si-module.html#CMD_OPEN"><a title="paramiko.sftp.CMD_OPEN
-paramiko.sftp_attr.CMD_OPEN
-paramiko.sftp_client.CMD_OPEN
-paramiko.sftp_file.CMD_OPEN
-paramiko.sftp_handle.CMD_OPEN
-paramiko.sftp_server.CMD_OPEN
-paramiko.sftp_si.CMD_OPEN" class="py-name" href="#" onclick="return doclink('link-61', 'CMD_OPEN', 'link-61');">CMD_OPEN</a></tt><tt class="py-op">,</tt> <tt class="py-name">filename</tt><tt class="py-op">,</tt> <tt class="py-name">imode</tt><tt class="py-op">,</tt> <tt class="py-name">attrblock</tt><tt class="py-op">)</tt> </tt>
-<a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">t</tt> <tt class="py-op">!=</tt> <tt id="link-62" class="py-name"><a title="paramiko.sftp.CMD_HANDLE
-paramiko.sftp_attr.CMD_HANDLE
-paramiko.sftp_client.CMD_HANDLE
-paramiko.sftp_file.CMD_HANDLE
-paramiko.sftp_handle.CMD_HANDLE
-paramiko.sftp_server.CMD_HANDLE
-paramiko.sftp_si.CMD_HANDLE" class="py-name" href="#" onclick="return doclink('link-62', 'CMD_HANDLE', 'link-40');">CMD_HANDLE</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L247"></a><tt class="py-lineno">247</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-63" class="py-name"><a title="paramiko.SFTPError" class="py-name" href="#" onclick="return doclink('link-63', 'SFTPError', 'link-41');">SFTPError</a></tt><tt class="py-op">(</tt><tt class="py-string">'Expected handle'</tt><tt class="py-op">)</tt> </tt>
-<a name="L248"></a><tt class="py-lineno">248</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-64" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-64', 'get_string', 'link-42');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L249"></a><tt class="py-lineno">249</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-65" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-65', 'DEBUG', 'link-38');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'open(%r, %r) -&gt; %s'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">filename</tt><tt class="py-op">,</tt> <tt class="py-name">mode</tt><tt class="py-op">,</tt> <tt class="py-name">hexlify</tt><tt class="py-op">(</tt><tt class="py-name">handle</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L250"></a><tt class="py-lineno">250</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-66" class="py-name"><a title="paramiko.SFTPFile" class="py-name" href="#" onclick="return doclink('link-66', 'SFTPFile', 'link-11');">SFTPFile</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-name">handle</tt><tt class="py-op">,</tt> <tt class="py-name">mode</tt><tt class="py-op">,</tt> <tt class="py-name">bufsize</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L251"></a><tt class="py-lineno">251</tt> <tt class="py-line"> </tt>
-<a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"> <tt class="py-comment"># python continues to vacillate about "open" vs "file"...</tt> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt> <tt class="py-line"> <tt id="link-67" class="py-name" targets="Method paramiko.SFTPClient.file()=paramiko.SFTPClient-class.html#file,Module paramiko.file=paramiko.file-module.html"><a title="paramiko.SFTPClient.file
-paramiko.file" class="py-name" href="#" onclick="return doclink('link-67', 'file', 'link-67');">file</a></tt> <tt class="py-op">=</tt> <tt id="link-68" class="py-name" targets="Method paramiko.SFTPServerInterface.open()=paramiko.SFTPServerInterface-class.html#open"><a title="paramiko.SFTPServerInterface.open" class="py-name" href="#" onclick="return doclink('link-68', 'open', 'link-68');">open</a></tt> </tt>
-<a name="L254"></a><tt class="py-lineno">254</tt> <tt class="py-line"> </tt>
-<a name="SFTPClient.remove"></a><div id="SFTPClient.remove-def"><a name="L255"></a><tt class="py-lineno">255</tt> <a class="py-toggle" href="#" id="SFTPClient.remove-toggle" onclick="return toggle('SFTPClient.remove');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_client.SFTPClient-class.html#remove">remove</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">path</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPClient.remove-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPClient.remove-expanded"><a name="L256"></a><tt class="py-lineno">256</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L257"></a><tt class="py-lineno">257</tt> <tt class="py-line"><tt class="py-docstring"> Remove the file at the given path. This only works on files; for</tt> </tt>
-<a name="L258"></a><tt class="py-lineno">258</tt> <tt class="py-line"><tt class="py-docstring"> removing folders (directories), use L{rmdir}.</tt> </tt>
-<a name="L259"></a><tt class="py-lineno">259</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"><tt class="py-docstring"> @param path: path (absolute or relative) of the file to remove</tt> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt> <tt class="py-line"><tt class="py-docstring"> @type path: str</tt> </tt>
-<a name="L262"></a><tt class="py-lineno">262</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L263"></a><tt class="py-lineno">263</tt> <tt class="py-line"><tt class="py-docstring"> @raise IOError: if the path refers to a folder (directory)</tt> </tt>
-<a name="L264"></a><tt class="py-lineno">264</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"> <tt class="py-name">path</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_adjust_cwd</tt><tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-<a name="L266"></a><tt class="py-lineno">266</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-69" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-69', 'DEBUG', 'link-38');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'remove(%r)'</tt> <tt class="py-op">%</tt> <tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-<a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_request</tt><tt class="py-op">(</tt><tt id="link-70" class="py-name" targets="Variable paramiko.sftp.CMD_REMOVE=paramiko.sftp-module.html#CMD_REMOVE,Variable paramiko.sftp_attr.CMD_REMOVE=paramiko.sftp_attr-module.html#CMD_REMOVE,Variable paramiko.sftp_client.CMD_REMOVE=paramiko.sftp_client-module.html#CMD_REMOVE,Variable paramiko.sftp_file.CMD_REMOVE=paramiko.sftp_file-module.html#CMD_REMOVE,Variable paramiko.sftp_handle.CMD_REMOVE=paramiko.sftp_handle-module.html#CMD_REMOVE,Variable paramiko.sftp_server.CMD_REMOVE=paramiko.sftp_server-module.html#CMD_REMOVE,Variable paramiko.sftp_si.CMD_REMOVE=paramiko.sftp_si-module.html#CMD_REMOVE"><a title="paramiko.sftp.CMD_REMOVE
-paramiko.sftp_attr.CMD_REMOVE
-paramiko.sftp_client.CMD_REMOVE
-paramiko.sftp_file.CMD_REMOVE
-paramiko.sftp_handle.CMD_REMOVE
-paramiko.sftp_server.CMD_REMOVE
-paramiko.sftp_si.CMD_REMOVE" class="py-name" href="#" onclick="return doclink('link-70', 'CMD_REMOVE', 'link-70');">CMD_REMOVE</a></tt><tt class="py-op">,</tt> <tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L268"></a><tt class="py-lineno">268</tt> <tt class="py-line"> </tt>
-<a name="L269"></a><tt class="py-lineno">269</tt> <tt class="py-line"> <tt id="link-71" class="py-name" targets="Method paramiko.SFTPClient.unlink()=paramiko.SFTPClient-class.html#unlink"><a title="paramiko.SFTPClient.unlink" class="py-name" href="#" onclick="return doclink('link-71', 'unlink', 'link-71');">unlink</a></tt> <tt class="py-op">=</tt> <tt id="link-72" class="py-name" targets="Method paramiko.SFTPServerInterface.remove()=paramiko.SFTPServerInterface-class.html#remove"><a title="paramiko.SFTPServerInterface.remove" class="py-name" href="#" onclick="return doclink('link-72', 'remove', 'link-72');">remove</a></tt> </tt>
-<a name="L270"></a><tt class="py-lineno">270</tt> <tt class="py-line"> </tt>
-<a name="SFTPClient.rename"></a><div id="SFTPClient.rename-def"><a name="L271"></a><tt class="py-lineno">271</tt> <a class="py-toggle" href="#" id="SFTPClient.rename-toggle" onclick="return toggle('SFTPClient.rename');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_client.SFTPClient-class.html#rename">rename</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">oldpath</tt><tt class="py-op">,</tt> <tt class="py-param">newpath</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPClient.rename-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPClient.rename-expanded"><a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L273"></a><tt class="py-lineno">273</tt> <tt class="py-line"><tt class="py-docstring"> Rename a file or folder from C{oldpath} to C{newpath}.</tt> </tt>
-<a name="L274"></a><tt class="py-lineno">274</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"><tt class="py-docstring"> @param oldpath: existing name of the file or folder</tt> </tt>
-<a name="L276"></a><tt class="py-lineno">276</tt> <tt class="py-line"><tt class="py-docstring"> @type oldpath: str</tt> </tt>
-<a name="L277"></a><tt class="py-lineno">277</tt> <tt class="py-line"><tt class="py-docstring"> @param newpath: new name for the file or folder</tt> </tt>
-<a name="L278"></a><tt class="py-lineno">278</tt> <tt class="py-line"><tt class="py-docstring"> @type newpath: str</tt> </tt>
-<a name="L279"></a><tt class="py-lineno">279</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L280"></a><tt class="py-lineno">280</tt> <tt class="py-line"><tt class="py-docstring"> @raise IOError: if C{newpath} is a folder, or something else goes</tt> </tt>
-<a name="L281"></a><tt class="py-lineno">281</tt> <tt class="py-line"><tt class="py-docstring"> wrong</tt> </tt>
-<a name="L282"></a><tt class="py-lineno">282</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L283"></a><tt class="py-lineno">283</tt> <tt class="py-line"> <tt class="py-name">oldpath</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_adjust_cwd</tt><tt class="py-op">(</tt><tt class="py-name">oldpath</tt><tt class="py-op">)</tt> </tt>
-<a name="L284"></a><tt class="py-lineno">284</tt> <tt class="py-line"> <tt class="py-name">newpath</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_adjust_cwd</tt><tt class="py-op">(</tt><tt class="py-name">newpath</tt><tt class="py-op">)</tt> </tt>
-<a name="L285"></a><tt class="py-lineno">285</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-73" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-73', 'DEBUG', 'link-38');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'rename(%r, %r)'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">oldpath</tt><tt class="py-op">,</tt> <tt class="py-name">newpath</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L286"></a><tt class="py-lineno">286</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_request</tt><tt class="py-op">(</tt><tt id="link-74" class="py-name" targets="Variable paramiko.sftp.CMD_RENAME=paramiko.sftp-module.html#CMD_RENAME,Variable paramiko.sftp_attr.CMD_RENAME=paramiko.sftp_attr-module.html#CMD_RENAME,Variable paramiko.sftp_client.CMD_RENAME=paramiko.sftp_client-module.html#CMD_RENAME,Variable paramiko.sftp_file.CMD_RENAME=paramiko.sftp_file-module.html#CMD_RENAME,Variable paramiko.sftp_handle.CMD_RENAME=paramiko.sftp_handle-module.html#CMD_RENAME,Variable paramiko.sftp_server.CMD_RENAME=paramiko.sftp_server-module.html#CMD_RENAME,Variable paramiko.sftp_si.CMD_RENAME=paramiko.sftp_si-module.html#CMD_RENAME"><a title="paramiko.sftp.CMD_RENAME
-paramiko.sftp_attr.CMD_RENAME
-paramiko.sftp_client.CMD_RENAME
-paramiko.sftp_file.CMD_RENAME
-paramiko.sftp_handle.CMD_RENAME
-paramiko.sftp_server.CMD_RENAME
-paramiko.sftp_si.CMD_RENAME" class="py-name" href="#" onclick="return doclink('link-74', 'CMD_RENAME', 'link-74');">CMD_RENAME</a></tt><tt class="py-op">,</tt> <tt class="py-name">oldpath</tt><tt class="py-op">,</tt> <tt class="py-name">newpath</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L287"></a><tt class="py-lineno">287</tt> <tt class="py-line"> </tt>
-<a name="SFTPClient.mkdir"></a><div id="SFTPClient.mkdir-def"><a name="L288"></a><tt class="py-lineno">288</tt> <a class="py-toggle" href="#" id="SFTPClient.mkdir-toggle" onclick="return toggle('SFTPClient.mkdir');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_client.SFTPClient-class.html#mkdir">mkdir</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">path</tt><tt class="py-op">,</tt> <tt class="py-param">mode</tt><tt class="py-op">=</tt><tt class="py-number">0777</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPClient.mkdir-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPClient.mkdir-expanded"><a name="L289"></a><tt class="py-lineno">289</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L290"></a><tt class="py-lineno">290</tt> <tt class="py-line"><tt class="py-docstring"> Create a folder (directory) named C{path} with numeric mode C{mode}.</tt> </tt>
-<a name="L291"></a><tt class="py-lineno">291</tt> <tt class="py-line"><tt class="py-docstring"> The default mode is 0777 (octal). On some systems, mode is ignored.</tt> </tt>
-<a name="L292"></a><tt class="py-lineno">292</tt> <tt class="py-line"><tt class="py-docstring"> Where it is used, the current umask value is first masked out.</tt> </tt>
-<a name="L293"></a><tt class="py-lineno">293</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L294"></a><tt class="py-lineno">294</tt> <tt class="py-line"><tt class="py-docstring"> @param path: name of the folder to create</tt> </tt>
-<a name="L295"></a><tt class="py-lineno">295</tt> <tt class="py-line"><tt class="py-docstring"> @type path: str</tt> </tt>
-<a name="L296"></a><tt class="py-lineno">296</tt> <tt class="py-line"><tt class="py-docstring"> @param mode: permissions (posix-style) for the newly-created folder</tt> </tt>
-<a name="L297"></a><tt class="py-lineno">297</tt> <tt class="py-line"><tt class="py-docstring"> @type mode: int</tt> </tt>
-<a name="L298"></a><tt class="py-lineno">298</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L299"></a><tt class="py-lineno">299</tt> <tt class="py-line"> <tt class="py-name">path</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_adjust_cwd</tt><tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-<a name="L300"></a><tt class="py-lineno">300</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-75" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-75', 'DEBUG', 'link-38');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'mkdir(%r, %r)'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">,</tt> <tt class="py-name">mode</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L301"></a><tt class="py-lineno">301</tt> <tt class="py-line"> <tt class="py-name">attr</tt> <tt class="py-op">=</tt> <tt id="link-76" class="py-name"><a title="paramiko.SFTPAttributes" class="py-name" href="#" onclick="return doclink('link-76', 'SFTPAttributes', 'link-5');">SFTPAttributes</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L302"></a><tt class="py-lineno">302</tt> <tt class="py-line"> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">st_mode</tt> <tt class="py-op">=</tt> <tt class="py-name">mode</tt> </tt>
-<a name="L303"></a><tt class="py-lineno">303</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_request</tt><tt class="py-op">(</tt><tt id="link-77" class="py-name" targets="Variable paramiko.sftp.CMD_MKDIR=paramiko.sftp-module.html#CMD_MKDIR,Variable paramiko.sftp_attr.CMD_MKDIR=paramiko.sftp_attr-module.html#CMD_MKDIR,Variable paramiko.sftp_client.CMD_MKDIR=paramiko.sftp_client-module.html#CMD_MKDIR,Variable paramiko.sftp_file.CMD_MKDIR=paramiko.sftp_file-module.html#CMD_MKDIR,Variable paramiko.sftp_handle.CMD_MKDIR=paramiko.sftp_handle-module.html#CMD_MKDIR,Variable paramiko.sftp_server.CMD_MKDIR=paramiko.sftp_server-module.html#CMD_MKDIR,Variable paramiko.sftp_si.CMD_MKDIR=paramiko.sftp_si-module.html#CMD_MKDIR"><a title="paramiko.sftp.CMD_MKDIR
-paramiko.sftp_attr.CMD_MKDIR
-paramiko.sftp_client.CMD_MKDIR
-paramiko.sftp_file.CMD_MKDIR
-paramiko.sftp_handle.CMD_MKDIR
-paramiko.sftp_server.CMD_MKDIR
-paramiko.sftp_si.CMD_MKDIR" class="py-name" href="#" onclick="return doclink('link-77', 'CMD_MKDIR', 'link-77');">CMD_MKDIR</a></tt><tt class="py-op">,</tt> <tt class="py-name">path</tt><tt class="py-op">,</tt> <tt class="py-name">attr</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L304"></a><tt class="py-lineno">304</tt> <tt class="py-line"> </tt>
-<a name="SFTPClient.rmdir"></a><div id="SFTPClient.rmdir-def"><a name="L305"></a><tt class="py-lineno">305</tt> <a class="py-toggle" href="#" id="SFTPClient.rmdir-toggle" onclick="return toggle('SFTPClient.rmdir');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_client.SFTPClient-class.html#rmdir">rmdir</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">path</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPClient.rmdir-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPClient.rmdir-expanded"><a name="L306"></a><tt class="py-lineno">306</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L307"></a><tt class="py-lineno">307</tt> <tt class="py-line"><tt class="py-docstring"> Remove the folder named C{path}.</tt> </tt>
-<a name="L308"></a><tt class="py-lineno">308</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L309"></a><tt class="py-lineno">309</tt> <tt class="py-line"><tt class="py-docstring"> @param path: name of the folder to remove</tt> </tt>
-<a name="L310"></a><tt class="py-lineno">310</tt> <tt class="py-line"><tt class="py-docstring"> @type path: str</tt> </tt>
-<a name="L311"></a><tt class="py-lineno">311</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L312"></a><tt class="py-lineno">312</tt> <tt class="py-line"> <tt class="py-name">path</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_adjust_cwd</tt><tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-<a name="L313"></a><tt class="py-lineno">313</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-78" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-78', 'DEBUG', 'link-38');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'rmdir(%r)'</tt> <tt class="py-op">%</tt> <tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-<a name="L314"></a><tt class="py-lineno">314</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_request</tt><tt class="py-op">(</tt><tt id="link-79" class="py-name" targets="Variable paramiko.sftp.CMD_RMDIR=paramiko.sftp-module.html#CMD_RMDIR,Variable paramiko.sftp_attr.CMD_RMDIR=paramiko.sftp_attr-module.html#CMD_RMDIR,Variable paramiko.sftp_client.CMD_RMDIR=paramiko.sftp_client-module.html#CMD_RMDIR,Variable paramiko.sftp_file.CMD_RMDIR=paramiko.sftp_file-module.html#CMD_RMDIR,Variable paramiko.sftp_handle.CMD_RMDIR=paramiko.sftp_handle-module.html#CMD_RMDIR,Variable paramiko.sftp_server.CMD_RMDIR=paramiko.sftp_server-module.html#CMD_RMDIR,Variable paramiko.sftp_si.CMD_RMDIR=paramiko.sftp_si-module.html#CMD_RMDIR"><a title="paramiko.sftp.CMD_RMDIR
-paramiko.sftp_attr.CMD_RMDIR
-paramiko.sftp_client.CMD_RMDIR
-paramiko.sftp_file.CMD_RMDIR
-paramiko.sftp_handle.CMD_RMDIR
-paramiko.sftp_server.CMD_RMDIR
-paramiko.sftp_si.CMD_RMDIR" class="py-name" href="#" onclick="return doclink('link-79', 'CMD_RMDIR', 'link-79');">CMD_RMDIR</a></tt><tt class="py-op">,</tt> <tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L315"></a><tt class="py-lineno">315</tt> <tt class="py-line"> </tt>
-<a name="SFTPClient.stat"></a><div id="SFTPClient.stat-def"><a name="L316"></a><tt class="py-lineno">316</tt> <a class="py-toggle" href="#" id="SFTPClient.stat-toggle" onclick="return toggle('SFTPClient.stat');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_client.SFTPClient-class.html#stat">stat</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">path</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPClient.stat-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPClient.stat-expanded"><a name="L317"></a><tt class="py-lineno">317</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L318"></a><tt class="py-lineno">318</tt> <tt class="py-line"><tt class="py-docstring"> Retrieve information about a file on the remote system. The return</tt> </tt>
-<a name="L319"></a><tt class="py-lineno">319</tt> <tt class="py-line"><tt class="py-docstring"> value is an object whose attributes correspond to the attributes of</tt> </tt>
-<a name="L320"></a><tt class="py-lineno">320</tt> <tt class="py-line"><tt class="py-docstring"> python's C{stat} structure as returned by C{os.stat}, except that it</tt> </tt>
-<a name="L321"></a><tt class="py-lineno">321</tt> <tt class="py-line"><tt class="py-docstring"> contains fewer fields. An SFTP server may return as much or as little</tt> </tt>
-<a name="L322"></a><tt class="py-lineno">322</tt> <tt class="py-line"><tt class="py-docstring"> info as it wants, so the results may vary from server to server.</tt> </tt>
-<a name="L323"></a><tt class="py-lineno">323</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L324"></a><tt class="py-lineno">324</tt> <tt class="py-line"><tt class="py-docstring"> Unlike a python C{stat} object, the result may not be accessed as a</tt> </tt>
-<a name="L325"></a><tt class="py-lineno">325</tt> <tt class="py-line"><tt class="py-docstring"> tuple. This is mostly due to the author's slack factor.</tt> </tt>
-<a name="L326"></a><tt class="py-lineno">326</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L327"></a><tt class="py-lineno">327</tt> <tt class="py-line"><tt class="py-docstring"> The fields supported are: C{st_mode}, C{st_size}, C{st_uid}, C{st_gid},</tt> </tt>
-<a name="L328"></a><tt class="py-lineno">328</tt> <tt class="py-line"><tt class="py-docstring"> C{st_atime}, and C{st_mtime}.</tt> </tt>
-<a name="L329"></a><tt class="py-lineno">329</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L330"></a><tt class="py-lineno">330</tt> <tt class="py-line"><tt class="py-docstring"> @param path: the filename to stat</tt> </tt>
-<a name="L331"></a><tt class="py-lineno">331</tt> <tt class="py-line"><tt class="py-docstring"> @type path: str</tt> </tt>
-<a name="L332"></a><tt class="py-lineno">332</tt> <tt class="py-line"><tt class="py-docstring"> @return: an object containing attributes about the given file</tt> </tt>
-<a name="L333"></a><tt class="py-lineno">333</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: SFTPAttributes</tt> </tt>
-<a name="L334"></a><tt class="py-lineno">334</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L335"></a><tt class="py-lineno">335</tt> <tt class="py-line"> <tt class="py-name">path</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_adjust_cwd</tt><tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-<a name="L336"></a><tt class="py-lineno">336</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-80" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-80', 'DEBUG', 'link-38');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'stat(%r)'</tt> <tt class="py-op">%</tt> <tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-<a name="L337"></a><tt class="py-lineno">337</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">,</tt> <tt class="py-name">msg</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_request</tt><tt class="py-op">(</tt><tt id="link-81" class="py-name" targets="Variable paramiko.sftp.CMD_STAT=paramiko.sftp-module.html#CMD_STAT,Variable paramiko.sftp_attr.CMD_STAT=paramiko.sftp_attr-module.html#CMD_STAT,Variable paramiko.sftp_client.CMD_STAT=paramiko.sftp_client-module.html#CMD_STAT,Variable paramiko.sftp_file.CMD_STAT=paramiko.sftp_file-module.html#CMD_STAT,Variable paramiko.sftp_handle.CMD_STAT=paramiko.sftp_handle-module.html#CMD_STAT,Variable paramiko.sftp_server.CMD_STAT=paramiko.sftp_server-module.html#CMD_STAT,Variable paramiko.sftp_si.CMD_STAT=paramiko.sftp_si-module.html#CMD_STAT"><a title="paramiko.sftp.CMD_STAT
-paramiko.sftp_attr.CMD_STAT
-paramiko.sftp_client.CMD_STAT
-paramiko.sftp_file.CMD_STAT
-paramiko.sftp_handle.CMD_STAT
-paramiko.sftp_server.CMD_STAT
-paramiko.sftp_si.CMD_STAT" class="py-name" href="#" onclick="return doclink('link-81', 'CMD_STAT', 'link-81');">CMD_STAT</a></tt><tt class="py-op">,</tt> <tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-<a name="L338"></a><tt class="py-lineno">338</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">t</tt> <tt class="py-op">!=</tt> <tt id="link-82" class="py-name" targets="Variable paramiko.sftp.CMD_ATTRS=paramiko.sftp-module.html#CMD_ATTRS,Variable paramiko.sftp_attr.CMD_ATTRS=paramiko.sftp_attr-module.html#CMD_ATTRS,Variable paramiko.sftp_client.CMD_ATTRS=paramiko.sftp_client-module.html#CMD_ATTRS,Variable paramiko.sftp_file.CMD_ATTRS=paramiko.sftp_file-module.html#CMD_ATTRS,Variable paramiko.sftp_handle.CMD_ATTRS=paramiko.sftp_handle-module.html#CMD_ATTRS,Variable paramiko.sftp_server.CMD_ATTRS=paramiko.sftp_server-module.html#CMD_ATTRS,Variable paramiko.sftp_si.CMD_ATTRS=paramiko.sftp_si-module.html#CMD_ATTRS"><a title="paramiko.sftp.CMD_ATTRS
-paramiko.sftp_attr.CMD_ATTRS
-paramiko.sftp_client.CMD_ATTRS
-paramiko.sftp_file.CMD_ATTRS
-paramiko.sftp_handle.CMD_ATTRS
-paramiko.sftp_server.CMD_ATTRS
-paramiko.sftp_si.CMD_ATTRS" class="py-name" href="#" onclick="return doclink('link-82', 'CMD_ATTRS', 'link-82');">CMD_ATTRS</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L339"></a><tt class="py-lineno">339</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-83" class="py-name"><a title="paramiko.SFTPError" class="py-name" href="#" onclick="return doclink('link-83', 'SFTPError', 'link-41');">SFTPError</a></tt><tt class="py-op">(</tt><tt class="py-string">'Expected attributes'</tt><tt class="py-op">)</tt> </tt>
-<a name="L340"></a><tt class="py-lineno">340</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-84" class="py-name"><a title="paramiko.SFTPAttributes" class="py-name" href="#" onclick="return doclink('link-84', 'SFTPAttributes', 'link-5');">SFTPAttributes</a></tt><tt class="py-op">.</tt><tt class="py-name">_from_msg</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L341"></a><tt class="py-lineno">341</tt> <tt class="py-line"> </tt>
-<a name="SFTPClient.lstat"></a><div id="SFTPClient.lstat-def"><a name="L342"></a><tt class="py-lineno">342</tt> <a class="py-toggle" href="#" id="SFTPClient.lstat-toggle" onclick="return toggle('SFTPClient.lstat');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_client.SFTPClient-class.html#lstat">lstat</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">path</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPClient.lstat-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPClient.lstat-expanded"><a name="L343"></a><tt class="py-lineno">343</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L344"></a><tt class="py-lineno">344</tt> <tt class="py-line"><tt class="py-docstring"> Retrieve information about a file on the remote system, without</tt> </tt>
-<a name="L345"></a><tt class="py-lineno">345</tt> <tt class="py-line"><tt class="py-docstring"> following symbolic links (shortcuts). This otherwise behaves exactly</tt> </tt>
-<a name="L346"></a><tt class="py-lineno">346</tt> <tt class="py-line"><tt class="py-docstring"> the same as L{stat}.</tt> </tt>
-<a name="L347"></a><tt class="py-lineno">347</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L348"></a><tt class="py-lineno">348</tt> <tt class="py-line"><tt class="py-docstring"> @param path: the filename to stat</tt> </tt>
-<a name="L349"></a><tt class="py-lineno">349</tt> <tt class="py-line"><tt class="py-docstring"> @type path: str</tt> </tt>
-<a name="L350"></a><tt class="py-lineno">350</tt> <tt class="py-line"><tt class="py-docstring"> @return: an object containing attributes about the given file</tt> </tt>
-<a name="L351"></a><tt class="py-lineno">351</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: SFTPAttributes</tt> </tt>
-<a name="L352"></a><tt class="py-lineno">352</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L353"></a><tt class="py-lineno">353</tt> <tt class="py-line"> <tt class="py-name">path</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_adjust_cwd</tt><tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-<a name="L354"></a><tt class="py-lineno">354</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-85" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-85', 'DEBUG', 'link-38');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'lstat(%r)'</tt> <tt class="py-op">%</tt> <tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-<a name="L355"></a><tt class="py-lineno">355</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">,</tt> <tt class="py-name">msg</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_request</tt><tt class="py-op">(</tt><tt id="link-86" class="py-name" targets="Variable paramiko.sftp.CMD_LSTAT=paramiko.sftp-module.html#CMD_LSTAT,Variable paramiko.sftp_attr.CMD_LSTAT=paramiko.sftp_attr-module.html#CMD_LSTAT,Variable paramiko.sftp_client.CMD_LSTAT=paramiko.sftp_client-module.html#CMD_LSTAT,Variable paramiko.sftp_file.CMD_LSTAT=paramiko.sftp_file-module.html#CMD_LSTAT,Variable paramiko.sftp_handle.CMD_LSTAT=paramiko.sftp_handle-module.html#CMD_LSTAT,Variable paramiko.sftp_server.CMD_LSTAT=paramiko.sftp_server-module.html#CMD_LSTAT,Variable paramiko.sftp_si.CMD_LSTAT=paramiko.sftp_si-module.html#CMD_LSTAT"><a title="paramiko.sftp.CMD_LSTAT
-paramiko.sftp_attr.CMD_LSTAT
-paramiko.sftp_client.CMD_LSTAT
-paramiko.sftp_file.CMD_LSTAT
-paramiko.sftp_handle.CMD_LSTAT
-paramiko.sftp_server.CMD_LSTAT
-paramiko.sftp_si.CMD_LSTAT" class="py-name" href="#" onclick="return doclink('link-86', 'CMD_LSTAT', 'link-86');">CMD_LSTAT</a></tt><tt class="py-op">,</tt> <tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-<a name="L356"></a><tt class="py-lineno">356</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">t</tt> <tt class="py-op">!=</tt> <tt id="link-87" class="py-name"><a title="paramiko.sftp.CMD_ATTRS
-paramiko.sftp_attr.CMD_ATTRS
-paramiko.sftp_client.CMD_ATTRS
-paramiko.sftp_file.CMD_ATTRS
-paramiko.sftp_handle.CMD_ATTRS
-paramiko.sftp_server.CMD_ATTRS
-paramiko.sftp_si.CMD_ATTRS" class="py-name" href="#" onclick="return doclink('link-87', 'CMD_ATTRS', 'link-82');">CMD_ATTRS</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L357"></a><tt class="py-lineno">357</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-88" class="py-name"><a title="paramiko.SFTPError" class="py-name" href="#" onclick="return doclink('link-88', 'SFTPError', 'link-41');">SFTPError</a></tt><tt class="py-op">(</tt><tt class="py-string">'Expected attributes'</tt><tt class="py-op">)</tt> </tt>
-<a name="L358"></a><tt class="py-lineno">358</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-89" class="py-name"><a title="paramiko.SFTPAttributes" class="py-name" href="#" onclick="return doclink('link-89', 'SFTPAttributes', 'link-5');">SFTPAttributes</a></tt><tt class="py-op">.</tt><tt class="py-name">_from_msg</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L359"></a><tt class="py-lineno">359</tt> <tt class="py-line"> </tt>
-<a name="SFTPClient.symlink"></a><div id="SFTPClient.symlink-def"><a name="L360"></a><tt class="py-lineno">360</tt> <a class="py-toggle" href="#" id="SFTPClient.symlink-toggle" onclick="return toggle('SFTPClient.symlink');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_client.SFTPClient-class.html#symlink">symlink</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">source</tt><tt class="py-op">,</tt> <tt class="py-param">dest</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPClient.symlink-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPClient.symlink-expanded"><a name="L361"></a><tt class="py-lineno">361</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L362"></a><tt class="py-lineno">362</tt> <tt class="py-line"><tt class="py-docstring"> Create a symbolic link (shortcut) of the C{source} path at</tt> </tt>
-<a name="L363"></a><tt class="py-lineno">363</tt> <tt class="py-line"><tt class="py-docstring"> C{destination}.</tt> </tt>
-<a name="L364"></a><tt class="py-lineno">364</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L365"></a><tt class="py-lineno">365</tt> <tt class="py-line"><tt class="py-docstring"> @param source: path of the original file</tt> </tt>
-<a name="L366"></a><tt class="py-lineno">366</tt> <tt class="py-line"><tt class="py-docstring"> @type source: str</tt> </tt>
-<a name="L367"></a><tt class="py-lineno">367</tt> <tt class="py-line"><tt class="py-docstring"> @param dest: path of the newly created symlink</tt> </tt>
-<a name="L368"></a><tt class="py-lineno">368</tt> <tt class="py-line"><tt class="py-docstring"> @type dest: str</tt> </tt>
-<a name="L369"></a><tt class="py-lineno">369</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L370"></a><tt class="py-lineno">370</tt> <tt class="py-line"> <tt class="py-name">dest</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_adjust_cwd</tt><tt class="py-op">(</tt><tt class="py-name">dest</tt><tt class="py-op">)</tt> </tt>
-<a name="L371"></a><tt class="py-lineno">371</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-90" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-90', 'DEBUG', 'link-38');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'symlink(%r, %r)'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">source</tt><tt class="py-op">,</tt> <tt class="py-name">dest</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L372"></a><tt class="py-lineno">372</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">source</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">unicode</tt><tt class="py-op">:</tt> </tt>
-<a name="L373"></a><tt class="py-lineno">373</tt> <tt class="py-line"> <tt class="py-name">source</tt> <tt class="py-op">=</tt> <tt class="py-name">source</tt><tt class="py-op">.</tt><tt id="link-91" class="py-name"><a title="paramiko.ber.BER.encode" class="py-name" href="#" onclick="return doclink('link-91', 'encode', 'link-12');">encode</a></tt><tt class="py-op">(</tt><tt class="py-string">'utf-8'</tt><tt class="py-op">)</tt> </tt>
-<a name="L374"></a><tt class="py-lineno">374</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_request</tt><tt class="py-op">(</tt><tt id="link-92" class="py-name" targets="Variable paramiko.sftp.CMD_SYMLINK=paramiko.sftp-module.html#CMD_SYMLINK,Variable paramiko.sftp_attr.CMD_SYMLINK=paramiko.sftp_attr-module.html#CMD_SYMLINK,Variable paramiko.sftp_client.CMD_SYMLINK=paramiko.sftp_client-module.html#CMD_SYMLINK,Variable paramiko.sftp_file.CMD_SYMLINK=paramiko.sftp_file-module.html#CMD_SYMLINK,Variable paramiko.sftp_handle.CMD_SYMLINK=paramiko.sftp_handle-module.html#CMD_SYMLINK,Variable paramiko.sftp_server.CMD_SYMLINK=paramiko.sftp_server-module.html#CMD_SYMLINK,Variable paramiko.sftp_si.CMD_SYMLINK=paramiko.sftp_si-module.html#CMD_SYMLINK"><a title="paramiko.sftp.CMD_SYMLINK
-paramiko.sftp_attr.CMD_SYMLINK
-paramiko.sftp_client.CMD_SYMLINK
-paramiko.sftp_file.CMD_SYMLINK
-paramiko.sftp_handle.CMD_SYMLINK
-paramiko.sftp_server.CMD_SYMLINK
-paramiko.sftp_si.CMD_SYMLINK" class="py-name" href="#" onclick="return doclink('link-92', 'CMD_SYMLINK', 'link-92');">CMD_SYMLINK</a></tt><tt class="py-op">,</tt> <tt class="py-name">source</tt><tt class="py-op">,</tt> <tt class="py-name">dest</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L375"></a><tt class="py-lineno">375</tt> <tt class="py-line"> </tt>
-<a name="SFTPClient.chmod"></a><div id="SFTPClient.chmod-def"><a name="L376"></a><tt class="py-lineno">376</tt> <a class="py-toggle" href="#" id="SFTPClient.chmod-toggle" onclick="return toggle('SFTPClient.chmod');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_client.SFTPClient-class.html#chmod">chmod</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">path</tt><tt class="py-op">,</tt> <tt class="py-param">mode</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPClient.chmod-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPClient.chmod-expanded"><a name="L377"></a><tt class="py-lineno">377</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L378"></a><tt class="py-lineno">378</tt> <tt class="py-line"><tt class="py-docstring"> Change the mode (permissions) of a file. The permissions are</tt> </tt>
-<a name="L379"></a><tt class="py-lineno">379</tt> <tt class="py-line"><tt class="py-docstring"> unix-style and identical to those used by python's C{os.chmod}</tt> </tt>
-<a name="L380"></a><tt class="py-lineno">380</tt> <tt class="py-line"><tt class="py-docstring"> function.</tt> </tt>
-<a name="L381"></a><tt class="py-lineno">381</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L382"></a><tt class="py-lineno">382</tt> <tt class="py-line"><tt class="py-docstring"> @param path: path of the file to change the permissions of</tt> </tt>
-<a name="L383"></a><tt class="py-lineno">383</tt> <tt class="py-line"><tt class="py-docstring"> @type path: str</tt> </tt>
-<a name="L384"></a><tt class="py-lineno">384</tt> <tt class="py-line"><tt class="py-docstring"> @param mode: new permissions</tt> </tt>
-<a name="L385"></a><tt class="py-lineno">385</tt> <tt class="py-line"><tt class="py-docstring"> @type mode: int</tt> </tt>
-<a name="L386"></a><tt class="py-lineno">386</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L387"></a><tt class="py-lineno">387</tt> <tt class="py-line"> <tt class="py-name">path</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_adjust_cwd</tt><tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-<a name="L388"></a><tt class="py-lineno">388</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-93" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-93', 'DEBUG', 'link-38');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'chmod(%r, %r)'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">,</tt> <tt class="py-name">mode</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L389"></a><tt class="py-lineno">389</tt> <tt class="py-line"> <tt class="py-name">attr</tt> <tt class="py-op">=</tt> <tt id="link-94" class="py-name"><a title="paramiko.SFTPAttributes" class="py-name" href="#" onclick="return doclink('link-94', 'SFTPAttributes', 'link-5');">SFTPAttributes</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L390"></a><tt class="py-lineno">390</tt> <tt class="py-line"> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">st_mode</tt> <tt class="py-op">=</tt> <tt class="py-name">mode</tt> </tt>
-<a name="L391"></a><tt class="py-lineno">391</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_request</tt><tt class="py-op">(</tt><tt id="link-95" class="py-name" targets="Variable paramiko.sftp.CMD_SETSTAT=paramiko.sftp-module.html#CMD_SETSTAT,Variable paramiko.sftp_attr.CMD_SETSTAT=paramiko.sftp_attr-module.html#CMD_SETSTAT,Variable paramiko.sftp_client.CMD_SETSTAT=paramiko.sftp_client-module.html#CMD_SETSTAT,Variable paramiko.sftp_file.CMD_SETSTAT=paramiko.sftp_file-module.html#CMD_SETSTAT,Variable paramiko.sftp_handle.CMD_SETSTAT=paramiko.sftp_handle-module.html#CMD_SETSTAT,Variable paramiko.sftp_server.CMD_SETSTAT=paramiko.sftp_server-module.html#CMD_SETSTAT,Variable paramiko.sftp_si.CMD_SETSTAT=paramiko.sftp_si-module.html#CMD_SETSTAT"><a title="paramiko.sftp.CMD_SETSTAT
-paramiko.sftp_attr.CMD_SETSTAT
-paramiko.sftp_client.CMD_SETSTAT
-paramiko.sftp_file.CMD_SETSTAT
-paramiko.sftp_handle.CMD_SETSTAT
-paramiko.sftp_server.CMD_SETSTAT
-paramiko.sftp_si.CMD_SETSTAT" class="py-name" href="#" onclick="return doclink('link-95', 'CMD_SETSTAT', 'link-95');">CMD_SETSTAT</a></tt><tt class="py-op">,</tt> <tt class="py-name">path</tt><tt class="py-op">,</tt> <tt class="py-name">attr</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L392"></a><tt class="py-lineno">392</tt> <tt class="py-line"> </tt>
-<a name="SFTPClient.chown"></a><div id="SFTPClient.chown-def"><a name="L393"></a><tt class="py-lineno">393</tt> <a class="py-toggle" href="#" id="SFTPClient.chown-toggle" onclick="return toggle('SFTPClient.chown');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_client.SFTPClient-class.html#chown">chown</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">path</tt><tt class="py-op">,</tt> <tt class="py-param">uid</tt><tt class="py-op">,</tt> <tt class="py-param">gid</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPClient.chown-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPClient.chown-expanded"><a name="L394"></a><tt class="py-lineno">394</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L395"></a><tt class="py-lineno">395</tt> <tt class="py-line"><tt class="py-docstring"> Change the owner (C{uid}) and group (C{gid}) of a file. As with</tt> </tt>
-<a name="L396"></a><tt class="py-lineno">396</tt> <tt class="py-line"><tt class="py-docstring"> python's C{os.chown} function, you must pass both arguments, so if you</tt> </tt>
-<a name="L397"></a><tt class="py-lineno">397</tt> <tt class="py-line"><tt class="py-docstring"> only want to change one, use L{stat} first to retrieve the current</tt> </tt>
-<a name="L398"></a><tt class="py-lineno">398</tt> <tt class="py-line"><tt class="py-docstring"> owner and group.</tt> </tt>
-<a name="L399"></a><tt class="py-lineno">399</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L400"></a><tt class="py-lineno">400</tt> <tt class="py-line"><tt class="py-docstring"> @param path: path of the file to change the owner and group of</tt> </tt>
-<a name="L401"></a><tt class="py-lineno">401</tt> <tt class="py-line"><tt class="py-docstring"> @type path: str</tt> </tt>
-<a name="L402"></a><tt class="py-lineno">402</tt> <tt class="py-line"><tt class="py-docstring"> @param uid: new owner's uid</tt> </tt>
-<a name="L403"></a><tt class="py-lineno">403</tt> <tt class="py-line"><tt class="py-docstring"> @type uid: int</tt> </tt>
-<a name="L404"></a><tt class="py-lineno">404</tt> <tt class="py-line"><tt class="py-docstring"> @param gid: new group id</tt> </tt>
-<a name="L405"></a><tt class="py-lineno">405</tt> <tt class="py-line"><tt class="py-docstring"> @type gid: int</tt> </tt>
-<a name="L406"></a><tt class="py-lineno">406</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L407"></a><tt class="py-lineno">407</tt> <tt class="py-line"> <tt class="py-name">path</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_adjust_cwd</tt><tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-<a name="L408"></a><tt class="py-lineno">408</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-96" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-96', 'DEBUG', 'link-38');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'chown(%r, %r, %r)'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">,</tt> <tt class="py-name">uid</tt><tt class="py-op">,</tt> <tt class="py-name">gid</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L409"></a><tt class="py-lineno">409</tt> <tt class="py-line"> <tt class="py-name">attr</tt> <tt class="py-op">=</tt> <tt id="link-97" class="py-name"><a title="paramiko.SFTPAttributes" class="py-name" href="#" onclick="return doclink('link-97', 'SFTPAttributes', 'link-5');">SFTPAttributes</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L410"></a><tt class="py-lineno">410</tt> <tt class="py-line"> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">st_uid</tt><tt class="py-op">,</tt> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">st_gid</tt> <tt class="py-op">=</tt> <tt class="py-name">uid</tt><tt class="py-op">,</tt> <tt class="py-name">gid</tt> </tt>
-<a name="L411"></a><tt class="py-lineno">411</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_request</tt><tt class="py-op">(</tt><tt id="link-98" class="py-name"><a title="paramiko.sftp.CMD_SETSTAT
-paramiko.sftp_attr.CMD_SETSTAT
-paramiko.sftp_client.CMD_SETSTAT
-paramiko.sftp_file.CMD_SETSTAT
-paramiko.sftp_handle.CMD_SETSTAT
-paramiko.sftp_server.CMD_SETSTAT
-paramiko.sftp_si.CMD_SETSTAT" class="py-name" href="#" onclick="return doclink('link-98', 'CMD_SETSTAT', 'link-95');">CMD_SETSTAT</a></tt><tt class="py-op">,</tt> <tt class="py-name">path</tt><tt class="py-op">,</tt> <tt class="py-name">attr</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L412"></a><tt class="py-lineno">412</tt> <tt class="py-line"> </tt>
-<a name="SFTPClient.utime"></a><div id="SFTPClient.utime-def"><a name="L413"></a><tt class="py-lineno">413</tt> <a class="py-toggle" href="#" id="SFTPClient.utime-toggle" onclick="return toggle('SFTPClient.utime');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_client.SFTPClient-class.html#utime">utime</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">path</tt><tt class="py-op">,</tt> <tt class="py-param">times</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPClient.utime-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPClient.utime-expanded"><a name="L414"></a><tt class="py-lineno">414</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L415"></a><tt class="py-lineno">415</tt> <tt class="py-line"><tt class="py-docstring"> Set the access and modified times of the file specified by C{path}. If</tt> </tt>
-<a name="L416"></a><tt class="py-lineno">416</tt> <tt class="py-line"><tt class="py-docstring"> C{times} is C{None}, then the file's access and modified times are set</tt> </tt>
-<a name="L417"></a><tt class="py-lineno">417</tt> <tt class="py-line"><tt class="py-docstring"> to the current time. Otherwise, C{times} must be a 2-tuple of numbers,</tt> </tt>
-<a name="L418"></a><tt class="py-lineno">418</tt> <tt class="py-line"><tt class="py-docstring"> of the form C{(atime, mtime)}, which is used to set the access and</tt> </tt>
-<a name="L419"></a><tt class="py-lineno">419</tt> <tt class="py-line"><tt class="py-docstring"> modified times, respectively. This bizarre API is mimicked from python</tt> </tt>
-<a name="L420"></a><tt class="py-lineno">420</tt> <tt class="py-line"><tt class="py-docstring"> for the sake of consistency -- I apologize.</tt> </tt>
-<a name="L421"></a><tt class="py-lineno">421</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L422"></a><tt class="py-lineno">422</tt> <tt class="py-line"><tt class="py-docstring"> @param path: path of the file to modify</tt> </tt>
-<a name="L423"></a><tt class="py-lineno">423</tt> <tt class="py-line"><tt class="py-docstring"> @type path: str</tt> </tt>
-<a name="L424"></a><tt class="py-lineno">424</tt> <tt class="py-line"><tt class="py-docstring"> @param times: C{None} or a tuple of (access time, modified time) in</tt> </tt>
-<a name="L425"></a><tt class="py-lineno">425</tt> <tt class="py-line"><tt class="py-docstring"> standard internet epoch time (seconds since 01 January 1970 GMT)</tt> </tt>
-<a name="L426"></a><tt class="py-lineno">426</tt> <tt class="py-line"><tt class="py-docstring"> @type times: tuple(int)</tt> </tt>
-<a name="L427"></a><tt class="py-lineno">427</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L428"></a><tt class="py-lineno">428</tt> <tt class="py-line"> <tt class="py-name">path</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_adjust_cwd</tt><tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-<a name="L429"></a><tt class="py-lineno">429</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">times</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L430"></a><tt class="py-lineno">430</tt> <tt class="py-line"> <tt class="py-name">times</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L431"></a><tt class="py-lineno">431</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-99" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-99', 'DEBUG', 'link-38');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'utime(%r, %r)'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">,</tt> <tt class="py-name">times</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L432"></a><tt class="py-lineno">432</tt> <tt class="py-line"> <tt class="py-name">attr</tt> <tt class="py-op">=</tt> <tt id="link-100" class="py-name"><a title="paramiko.SFTPAttributes" class="py-name" href="#" onclick="return doclink('link-100', 'SFTPAttributes', 'link-5');">SFTPAttributes</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L433"></a><tt class="py-lineno">433</tt> <tt class="py-line"> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">st_atime</tt><tt class="py-op">,</tt> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">st_mtime</tt> <tt class="py-op">=</tt> <tt class="py-name">times</tt> </tt>
-<a name="L434"></a><tt class="py-lineno">434</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_request</tt><tt class="py-op">(</tt><tt id="link-101" class="py-name"><a title="paramiko.sftp.CMD_SETSTAT
-paramiko.sftp_attr.CMD_SETSTAT
-paramiko.sftp_client.CMD_SETSTAT
-paramiko.sftp_file.CMD_SETSTAT
-paramiko.sftp_handle.CMD_SETSTAT
-paramiko.sftp_server.CMD_SETSTAT
-paramiko.sftp_si.CMD_SETSTAT" class="py-name" href="#" onclick="return doclink('link-101', 'CMD_SETSTAT', 'link-95');">CMD_SETSTAT</a></tt><tt class="py-op">,</tt> <tt class="py-name">path</tt><tt class="py-op">,</tt> <tt class="py-name">attr</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L435"></a><tt class="py-lineno">435</tt> <tt class="py-line"> </tt>
-<a name="SFTPClient.truncate"></a><div id="SFTPClient.truncate-def"><a name="L436"></a><tt class="py-lineno">436</tt> <a class="py-toggle" href="#" id="SFTPClient.truncate-toggle" onclick="return toggle('SFTPClient.truncate');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_client.SFTPClient-class.html#truncate">truncate</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">path</tt><tt class="py-op">,</tt> <tt class="py-param">size</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPClient.truncate-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPClient.truncate-expanded"><a name="L437"></a><tt class="py-lineno">437</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L438"></a><tt class="py-lineno">438</tt> <tt class="py-line"><tt class="py-docstring"> Change the size of the file specified by C{path}. This usually extends</tt> </tt>
-<a name="L439"></a><tt class="py-lineno">439</tt> <tt class="py-line"><tt class="py-docstring"> or shrinks the size of the file, just like the C{truncate()} method on</tt> </tt>
-<a name="L440"></a><tt class="py-lineno">440</tt> <tt class="py-line"><tt class="py-docstring"> python file objects.</tt> </tt>
-<a name="L441"></a><tt class="py-lineno">441</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L442"></a><tt class="py-lineno">442</tt> <tt class="py-line"><tt class="py-docstring"> @param path: path of the file to modify</tt> </tt>
-<a name="L443"></a><tt class="py-lineno">443</tt> <tt class="py-line"><tt class="py-docstring"> @type path: str</tt> </tt>
-<a name="L444"></a><tt class="py-lineno">444</tt> <tt class="py-line"><tt class="py-docstring"> @param size: the new size of the file</tt> </tt>
-<a name="L445"></a><tt class="py-lineno">445</tt> <tt class="py-line"><tt class="py-docstring"> @type size: int or long</tt> </tt>
-<a name="L446"></a><tt class="py-lineno">446</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L447"></a><tt class="py-lineno">447</tt> <tt class="py-line"> <tt class="py-name">path</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_adjust_cwd</tt><tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-<a name="L448"></a><tt class="py-lineno">448</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-102" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-102', 'DEBUG', 'link-38');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'truncate(%r, %r)'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">,</tt> <tt class="py-name">size</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L449"></a><tt class="py-lineno">449</tt> <tt class="py-line"> <tt class="py-name">attr</tt> <tt class="py-op">=</tt> <tt id="link-103" class="py-name"><a title="paramiko.SFTPAttributes" class="py-name" href="#" onclick="return doclink('link-103', 'SFTPAttributes', 'link-5');">SFTPAttributes</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L450"></a><tt class="py-lineno">450</tt> <tt class="py-line"> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">st_size</tt> <tt class="py-op">=</tt> <tt class="py-name">size</tt> </tt>
-<a name="L451"></a><tt class="py-lineno">451</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_request</tt><tt class="py-op">(</tt><tt id="link-104" class="py-name"><a title="paramiko.sftp.CMD_SETSTAT
-paramiko.sftp_attr.CMD_SETSTAT
-paramiko.sftp_client.CMD_SETSTAT
-paramiko.sftp_file.CMD_SETSTAT
-paramiko.sftp_handle.CMD_SETSTAT
-paramiko.sftp_server.CMD_SETSTAT
-paramiko.sftp_si.CMD_SETSTAT" class="py-name" href="#" onclick="return doclink('link-104', 'CMD_SETSTAT', 'link-95');">CMD_SETSTAT</a></tt><tt class="py-op">,</tt> <tt class="py-name">path</tt><tt class="py-op">,</tt> <tt class="py-name">attr</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L452"></a><tt class="py-lineno">452</tt> <tt class="py-line"> </tt>
-<a name="SFTPClient.readlink"></a><div id="SFTPClient.readlink-def"><a name="L453"></a><tt class="py-lineno">453</tt> <a class="py-toggle" href="#" id="SFTPClient.readlink-toggle" onclick="return toggle('SFTPClient.readlink');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_client.SFTPClient-class.html#readlink">readlink</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">path</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPClient.readlink-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPClient.readlink-expanded"><a name="L454"></a><tt class="py-lineno">454</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L455"></a><tt class="py-lineno">455</tt> <tt class="py-line"><tt class="py-docstring"> Return the target of a symbolic link (shortcut). You can use</tt> </tt>
-<a name="L456"></a><tt class="py-lineno">456</tt> <tt class="py-line"><tt class="py-docstring"> L{symlink} to create these. The result may be either an absolute or</tt> </tt>
-<a name="L457"></a><tt class="py-lineno">457</tt> <tt class="py-line"><tt class="py-docstring"> relative pathname.</tt> </tt>
-<a name="L458"></a><tt class="py-lineno">458</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L459"></a><tt class="py-lineno">459</tt> <tt class="py-line"><tt class="py-docstring"> @param path: path of the symbolic link file</tt> </tt>
-<a name="L460"></a><tt class="py-lineno">460</tt> <tt class="py-line"><tt class="py-docstring"> @type path: str</tt> </tt>
-<a name="L461"></a><tt class="py-lineno">461</tt> <tt class="py-line"><tt class="py-docstring"> @return: target path</tt> </tt>
-<a name="L462"></a><tt class="py-lineno">462</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: str</tt> </tt>
-<a name="L463"></a><tt class="py-lineno">463</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L464"></a><tt class="py-lineno">464</tt> <tt class="py-line"> <tt class="py-name">path</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_adjust_cwd</tt><tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-<a name="L465"></a><tt class="py-lineno">465</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-105" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-105', 'DEBUG', 'link-38');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'readlink(%r)'</tt> <tt class="py-op">%</tt> <tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-<a name="L466"></a><tt class="py-lineno">466</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">,</tt> <tt class="py-name">msg</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_request</tt><tt class="py-op">(</tt><tt id="link-106" class="py-name" targets="Variable paramiko.sftp.CMD_READLINK=paramiko.sftp-module.html#CMD_READLINK,Variable paramiko.sftp_attr.CMD_READLINK=paramiko.sftp_attr-module.html#CMD_READLINK,Variable paramiko.sftp_client.CMD_READLINK=paramiko.sftp_client-module.html#CMD_READLINK,Variable paramiko.sftp_file.CMD_READLINK=paramiko.sftp_file-module.html#CMD_READLINK,Variable paramiko.sftp_handle.CMD_READLINK=paramiko.sftp_handle-module.html#CMD_READLINK,Variable paramiko.sftp_server.CMD_READLINK=paramiko.sftp_server-module.html#CMD_READLINK,Variable paramiko.sftp_si.CMD_READLINK=paramiko.sftp_si-module.html#CMD_READLINK"><a title="paramiko.sftp.CMD_READLINK
-paramiko.sftp_attr.CMD_READLINK
-paramiko.sftp_client.CMD_READLINK
-paramiko.sftp_file.CMD_READLINK
-paramiko.sftp_handle.CMD_READLINK
-paramiko.sftp_server.CMD_READLINK
-paramiko.sftp_si.CMD_READLINK" class="py-name" href="#" onclick="return doclink('link-106', 'CMD_READLINK', 'link-106');">CMD_READLINK</a></tt><tt class="py-op">,</tt> <tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-<a name="L467"></a><tt class="py-lineno">467</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">t</tt> <tt class="py-op">!=</tt> <tt id="link-107" class="py-name"><a title="paramiko.sftp.CMD_NAME
-paramiko.sftp_attr.CMD_NAME
-paramiko.sftp_client.CMD_NAME
-paramiko.sftp_file.CMD_NAME
-paramiko.sftp_handle.CMD_NAME
-paramiko.sftp_server.CMD_NAME
-paramiko.sftp_si.CMD_NAME" class="py-name" href="#" onclick="return doclink('link-107', 'CMD_NAME', 'link-44');">CMD_NAME</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L468"></a><tt class="py-lineno">468</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-108" class="py-name"><a title="paramiko.SFTPError" class="py-name" href="#" onclick="return doclink('link-108', 'SFTPError', 'link-41');">SFTPError</a></tt><tt class="py-op">(</tt><tt class="py-string">'Expected name response'</tt><tt class="py-op">)</tt> </tt>
-<a name="L469"></a><tt class="py-lineno">469</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-109" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-109', 'get_int', 'link-46');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L470"></a><tt class="py-lineno">470</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">count</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L471"></a><tt class="py-lineno">471</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L472"></a><tt class="py-lineno">472</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">count</tt> <tt class="py-op">!=</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L473"></a><tt class="py-lineno">473</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-110" class="py-name"><a title="paramiko.SFTPError" class="py-name" href="#" onclick="return doclink('link-110', 'SFTPError', 'link-41');">SFTPError</a></tt><tt class="py-op">(</tt><tt class="py-string">'Readlink returned %d results'</tt> <tt class="py-op">%</tt> <tt class="py-name">count</tt><tt class="py-op">)</tt> </tt>
-<a name="L474"></a><tt class="py-lineno">474</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">_to_unicode</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-111" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-111', 'get_string', 'link-42');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L475"></a><tt class="py-lineno">475</tt> <tt class="py-line"> </tt>
-<a name="SFTPClient.normalize"></a><div id="SFTPClient.normalize-def"><a name="L476"></a><tt class="py-lineno">476</tt> <a class="py-toggle" href="#" id="SFTPClient.normalize-toggle" onclick="return toggle('SFTPClient.normalize');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_client.SFTPClient-class.html#normalize">normalize</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">path</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPClient.normalize-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPClient.normalize-expanded"><a name="L477"></a><tt class="py-lineno">477</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L478"></a><tt class="py-lineno">478</tt> <tt class="py-line"><tt class="py-docstring"> Return the normalized path (on the server) of a given path. This</tt> </tt>
-<a name="L479"></a><tt class="py-lineno">479</tt> <tt class="py-line"><tt class="py-docstring"> can be used to quickly resolve symbolic links or determine what the</tt> </tt>
-<a name="L480"></a><tt class="py-lineno">480</tt> <tt class="py-line"><tt class="py-docstring"> server is considering to be the "current folder" (by passing C{'.'}</tt> </tt>
-<a name="L481"></a><tt class="py-lineno">481</tt> <tt class="py-line"><tt class="py-docstring"> as C{path}).</tt> </tt>
-<a name="L482"></a><tt class="py-lineno">482</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L483"></a><tt class="py-lineno">483</tt> <tt class="py-line"><tt class="py-docstring"> @param path: path to be normalized</tt> </tt>
-<a name="L484"></a><tt class="py-lineno">484</tt> <tt class="py-line"><tt class="py-docstring"> @type path: str</tt> </tt>
-<a name="L485"></a><tt class="py-lineno">485</tt> <tt class="py-line"><tt class="py-docstring"> @return: normalized form of the given path</tt> </tt>
-<a name="L486"></a><tt class="py-lineno">486</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: str</tt> </tt>
-<a name="L487"></a><tt class="py-lineno">487</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L488"></a><tt class="py-lineno">488</tt> <tt class="py-line"><tt class="py-docstring"> @raise IOError: if the path can't be resolved on the server</tt> </tt>
-<a name="L489"></a><tt class="py-lineno">489</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L490"></a><tt class="py-lineno">490</tt> <tt class="py-line"> <tt class="py-name">path</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_adjust_cwd</tt><tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-<a name="L491"></a><tt class="py-lineno">491</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-112" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-112', 'DEBUG', 'link-38');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'normalize(%r)'</tt> <tt class="py-op">%</tt> <tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-<a name="L492"></a><tt class="py-lineno">492</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">,</tt> <tt class="py-name">msg</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_request</tt><tt class="py-op">(</tt><tt id="link-113" class="py-name" targets="Variable paramiko.sftp.CMD_REALPATH=paramiko.sftp-module.html#CMD_REALPATH,Variable paramiko.sftp_attr.CMD_REALPATH=paramiko.sftp_attr-module.html#CMD_REALPATH,Variable paramiko.sftp_client.CMD_REALPATH=paramiko.sftp_client-module.html#CMD_REALPATH,Variable paramiko.sftp_file.CMD_REALPATH=paramiko.sftp_file-module.html#CMD_REALPATH,Variable paramiko.sftp_handle.CMD_REALPATH=paramiko.sftp_handle-module.html#CMD_REALPATH,Variable paramiko.sftp_server.CMD_REALPATH=paramiko.sftp_server-module.html#CMD_REALPATH,Variable paramiko.sftp_si.CMD_REALPATH=paramiko.sftp_si-module.html#CMD_REALPATH"><a title="paramiko.sftp.CMD_REALPATH
-paramiko.sftp_attr.CMD_REALPATH
-paramiko.sftp_client.CMD_REALPATH
-paramiko.sftp_file.CMD_REALPATH
-paramiko.sftp_handle.CMD_REALPATH
-paramiko.sftp_server.CMD_REALPATH
-paramiko.sftp_si.CMD_REALPATH" class="py-name" href="#" onclick="return doclink('link-113', 'CMD_REALPATH', 'link-113');">CMD_REALPATH</a></tt><tt class="py-op">,</tt> <tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-<a name="L493"></a><tt class="py-lineno">493</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">t</tt> <tt class="py-op">!=</tt> <tt id="link-114" class="py-name"><a title="paramiko.sftp.CMD_NAME
-paramiko.sftp_attr.CMD_NAME
-paramiko.sftp_client.CMD_NAME
-paramiko.sftp_file.CMD_NAME
-paramiko.sftp_handle.CMD_NAME
-paramiko.sftp_server.CMD_NAME
-paramiko.sftp_si.CMD_NAME" class="py-name" href="#" onclick="return doclink('link-114', 'CMD_NAME', 'link-44');">CMD_NAME</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L494"></a><tt class="py-lineno">494</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-115" class="py-name"><a title="paramiko.SFTPError" class="py-name" href="#" onclick="return doclink('link-115', 'SFTPError', 'link-41');">SFTPError</a></tt><tt class="py-op">(</tt><tt class="py-string">'Expected name response'</tt><tt class="py-op">)</tt> </tt>
-<a name="L495"></a><tt class="py-lineno">495</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-116" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-116', 'get_int', 'link-46');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L496"></a><tt class="py-lineno">496</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">count</tt> <tt class="py-op">!=</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L497"></a><tt class="py-lineno">497</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-117" class="py-name"><a title="paramiko.SFTPError" class="py-name" href="#" onclick="return doclink('link-117', 'SFTPError', 'link-41');">SFTPError</a></tt><tt class="py-op">(</tt><tt class="py-string">'Realpath returned %d results'</tt> <tt class="py-op">%</tt> <tt class="py-name">count</tt><tt class="py-op">)</tt> </tt>
-<a name="L498"></a><tt class="py-lineno">498</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">_to_unicode</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-118" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-118', 'get_string', 'link-42');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L499"></a><tt class="py-lineno">499</tt> <tt class="py-line"> </tt>
-<a name="SFTPClient.chdir"></a><div id="SFTPClient.chdir-def"><a name="L500"></a><tt class="py-lineno">500</tt> <a class="py-toggle" href="#" id="SFTPClient.chdir-toggle" onclick="return toggle('SFTPClient.chdir');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_client.SFTPClient-class.html#chdir">chdir</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">path</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPClient.chdir-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPClient.chdir-expanded"><a name="L501"></a><tt class="py-lineno">501</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L502"></a><tt class="py-lineno">502</tt> <tt class="py-line"><tt class="py-docstring"> Change the "current directory" of this SFTP session. Since SFTP</tt> </tt>
-<a name="L503"></a><tt class="py-lineno">503</tt> <tt class="py-line"><tt class="py-docstring"> doesn't really have the concept of a current working directory, this</tt> </tt>
-<a name="L504"></a><tt class="py-lineno">504</tt> <tt class="py-line"><tt class="py-docstring"> is emulated by paramiko. Once you use this method to set a working</tt> </tt>
-<a name="L505"></a><tt class="py-lineno">505</tt> <tt class="py-line"><tt class="py-docstring"> directory, all operations on this SFTPClient object will be relative</tt> </tt>
-<a name="L506"></a><tt class="py-lineno">506</tt> <tt class="py-line"><tt class="py-docstring"> to that path. You can pass in C{None} to stop using a current working</tt> </tt>
-<a name="L507"></a><tt class="py-lineno">507</tt> <tt class="py-line"><tt class="py-docstring"> directory.</tt> </tt>
-<a name="L508"></a><tt class="py-lineno">508</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L509"></a><tt class="py-lineno">509</tt> <tt class="py-line"><tt class="py-docstring"> @param path: new current working directory</tt> </tt>
-<a name="L510"></a><tt class="py-lineno">510</tt> <tt class="py-line"><tt class="py-docstring"> @type path: str</tt> </tt>
-<a name="L511"></a><tt class="py-lineno">511</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L512"></a><tt class="py-lineno">512</tt> <tt class="py-line"><tt class="py-docstring"> @raise IOError: if the requested path doesn't exist on the server</tt> </tt>
-<a name="L513"></a><tt class="py-lineno">513</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L514"></a><tt class="py-lineno">514</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.4</tt> </tt>
-<a name="L515"></a><tt class="py-lineno">515</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L516"></a><tt class="py-lineno">516</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">path</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L517"></a><tt class="py-lineno">517</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_cwd</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L518"></a><tt class="py-lineno">518</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L519"></a><tt class="py-lineno">519</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt id="link-119" class="py-name"><a title="paramiko.SFTPClient.stat
-paramiko.SFTPFile.stat
-paramiko.SFTPHandle.stat
-paramiko.SFTPServerInterface.stat" class="py-name" href="#" onclick="return doclink('link-119', 'stat', 'link-0');">stat</a></tt><tt class="py-op">.</tt><tt class="py-name">S_ISDIR</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-120" class="py-name"><a title="paramiko.SFTPClient.stat
-paramiko.SFTPFile.stat
-paramiko.SFTPHandle.stat
-paramiko.SFTPServerInterface.stat" class="py-name" href="#" onclick="return doclink('link-120', 'stat', 'link-0');">stat</a></tt><tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">st_mode</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L520"></a><tt class="py-lineno">520</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-121" class="py-name"><a title="paramiko.SFTPError" class="py-name" href="#" onclick="return doclink('link-121', 'SFTPError', 'link-41');">SFTPError</a></tt><tt class="py-op">(</tt><tt class="py-name">errno</tt><tt class="py-op">.</tt><tt class="py-name">ENOTDIR</tt><tt class="py-op">,</tt> <tt class="py-string">"%s: %s"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">strerror</tt><tt class="py-op">(</tt><tt class="py-name">errno</tt><tt class="py-op">.</tt><tt class="py-name">ENOTDIR</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">path</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L521"></a><tt class="py-lineno">521</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_cwd</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-122" class="py-name" targets="Method paramiko.SFTPClient.normalize()=paramiko.SFTPClient-class.html#normalize"><a title="paramiko.SFTPClient.normalize" class="py-name" href="#" onclick="return doclink('link-122', 'normalize', 'link-122');">normalize</a></tt><tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-123" class="py-name"><a title="paramiko.ber.BER.encode" class="py-name" href="#" onclick="return doclink('link-123', 'encode', 'link-12');">encode</a></tt><tt class="py-op">(</tt><tt class="py-string">'utf-8'</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L522"></a><tt class="py-lineno">522</tt> <tt class="py-line"> </tt>
-<a name="SFTPClient.getcwd"></a><div id="SFTPClient.getcwd-def"><a name="L523"></a><tt class="py-lineno">523</tt> <a class="py-toggle" href="#" id="SFTPClient.getcwd-toggle" onclick="return toggle('SFTPClient.getcwd');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_client.SFTPClient-class.html#getcwd">getcwd</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPClient.getcwd-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPClient.getcwd-expanded"><a name="L524"></a><tt class="py-lineno">524</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L525"></a><tt class="py-lineno">525</tt> <tt class="py-line"><tt class="py-docstring"> Return the "current working directory" for this SFTP session, as</tt> </tt>
-<a name="L526"></a><tt class="py-lineno">526</tt> <tt class="py-line"><tt class="py-docstring"> emulated by paramiko. If no directory has been set with L{chdir},</tt> </tt>
-<a name="L527"></a><tt class="py-lineno">527</tt> <tt class="py-line"><tt class="py-docstring"> this method will return C{None}.</tt> </tt>
-<a name="L528"></a><tt class="py-lineno">528</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L529"></a><tt class="py-lineno">529</tt> <tt class="py-line"><tt class="py-docstring"> @return: the current working directory on the server, or C{None}</tt> </tt>
-<a name="L530"></a><tt class="py-lineno">530</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: str</tt> </tt>
-<a name="L531"></a><tt class="py-lineno">531</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L532"></a><tt class="py-lineno">532</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.4</tt> </tt>
-<a name="L533"></a><tt class="py-lineno">533</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L534"></a><tt class="py-lineno">534</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_cwd</tt> </tt>
-</div><a name="L535"></a><tt class="py-lineno">535</tt> <tt class="py-line"> </tt>
-<a name="SFTPClient.put"></a><div id="SFTPClient.put-def"><a name="L536"></a><tt class="py-lineno">536</tt> <a class="py-toggle" href="#" id="SFTPClient.put-toggle" onclick="return toggle('SFTPClient.put');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_client.SFTPClient-class.html#put">put</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">localpath</tt><tt class="py-op">,</tt> <tt class="py-param">remotepath</tt><tt class="py-op">,</tt> <tt class="py-param">callback</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">confirm</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPClient.put-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPClient.put-expanded"><a name="L537"></a><tt class="py-lineno">537</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L538"></a><tt class="py-lineno">538</tt> <tt class="py-line"><tt class="py-docstring"> Copy a local file (C{localpath}) to the SFTP server as C{remotepath}.</tt> </tt>
-<a name="L539"></a><tt class="py-lineno">539</tt> <tt class="py-line"><tt class="py-docstring"> Any exception raised by operations will be passed through. This</tt> </tt>
-<a name="L540"></a><tt class="py-lineno">540</tt> <tt class="py-line"><tt class="py-docstring"> method is primarily provided as a convenience.</tt> </tt>
-<a name="L541"></a><tt class="py-lineno">541</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L542"></a><tt class="py-lineno">542</tt> <tt class="py-line"><tt class="py-docstring"> The SFTP operations use pipelining for speed.</tt> </tt>
-<a name="L543"></a><tt class="py-lineno">543</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L544"></a><tt class="py-lineno">544</tt> <tt class="py-line"><tt class="py-docstring"> @param localpath: the local file to copy</tt> </tt>
-<a name="L545"></a><tt class="py-lineno">545</tt> <tt class="py-line"><tt class="py-docstring"> @type localpath: str</tt> </tt>
-<a name="L546"></a><tt class="py-lineno">546</tt> <tt class="py-line"><tt class="py-docstring"> @param remotepath: the destination path on the SFTP server</tt> </tt>
-<a name="L547"></a><tt class="py-lineno">547</tt> <tt class="py-line"><tt class="py-docstring"> @type remotepath: str</tt> </tt>
-<a name="L548"></a><tt class="py-lineno">548</tt> <tt class="py-line"><tt class="py-docstring"> @param callback: optional callback function that accepts the bytes</tt> </tt>
-<a name="L549"></a><tt class="py-lineno">549</tt> <tt class="py-line"><tt class="py-docstring"> transferred so far and the total bytes to be transferred</tt> </tt>
-<a name="L550"></a><tt class="py-lineno">550</tt> <tt class="py-line"><tt class="py-docstring"> (since 1.7.4)</tt> </tt>
-<a name="L551"></a><tt class="py-lineno">551</tt> <tt class="py-line"><tt class="py-docstring"> @type callback: function(int, int)</tt> </tt>
-<a name="L552"></a><tt class="py-lineno">552</tt> <tt class="py-line"><tt class="py-docstring"> @param confirm: whether to do a stat() on the file afterwards to</tt> </tt>
-<a name="L553"></a><tt class="py-lineno">553</tt> <tt class="py-line"><tt class="py-docstring"> confirm the file size (since 1.7.7)</tt> </tt>
-<a name="L554"></a><tt class="py-lineno">554</tt> <tt class="py-line"><tt class="py-docstring"> @type confirm: bool</tt> </tt>
-<a name="L555"></a><tt class="py-lineno">555</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L556"></a><tt class="py-lineno">556</tt> <tt class="py-line"><tt class="py-docstring"> @return: an object containing attributes about the given file</tt> </tt>
-<a name="L557"></a><tt class="py-lineno">557</tt> <tt class="py-line"><tt class="py-docstring"> (since 1.7.4)</tt> </tt>
-<a name="L558"></a><tt class="py-lineno">558</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: SFTPAttributes</tt> </tt>
-<a name="L559"></a><tt class="py-lineno">559</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L560"></a><tt class="py-lineno">560</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.4</tt> </tt>
-<a name="L561"></a><tt class="py-lineno">561</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L562"></a><tt class="py-lineno">562</tt> <tt class="py-line"> <tt class="py-name">file_size</tt> <tt class="py-op">=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-124" class="py-name"><a title="paramiko.SFTPClient.stat
-paramiko.SFTPFile.stat
-paramiko.SFTPHandle.stat
-paramiko.SFTPServerInterface.stat" class="py-name" href="#" onclick="return doclink('link-124', 'stat', 'link-0');">stat</a></tt><tt class="py-op">(</tt><tt class="py-name">localpath</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">st_size</tt> </tt>
-<a name="L563"></a><tt class="py-lineno">563</tt> <tt class="py-line"> <tt class="py-name">fl</tt> <tt class="py-op">=</tt> <tt id="link-125" class="py-name"><a title="paramiko.SFTPClient.file
-paramiko.file" class="py-name" href="#" onclick="return doclink('link-125', 'file', 'link-67');">file</a></tt><tt class="py-op">(</tt><tt class="py-name">localpath</tt><tt class="py-op">,</tt> <tt class="py-string">'rb'</tt><tt class="py-op">)</tt> </tt>
-<a name="L564"></a><tt class="py-lineno">564</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L565"></a><tt class="py-lineno">565</tt> <tt class="py-line"> <tt class="py-name">fr</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-126" class="py-name"><a title="paramiko.SFTPClient.file
-paramiko.file" class="py-name" href="#" onclick="return doclink('link-126', 'file', 'link-67');">file</a></tt><tt class="py-op">(</tt><tt class="py-name">remotepath</tt><tt class="py-op">,</tt> <tt class="py-string">'wb'</tt><tt class="py-op">)</tt> </tt>
-<a name="L566"></a><tt class="py-lineno">566</tt> <tt class="py-line"> <tt class="py-name">fr</tt><tt class="py-op">.</tt><tt id="link-127" class="py-name" targets="Method paramiko.SFTPFile.set_pipelined()=paramiko.SFTPFile-class.html#set_pipelined"><a title="paramiko.SFTPFile.set_pipelined" class="py-name" href="#" onclick="return doclink('link-127', 'set_pipelined', 'link-127');">set_pipelined</a></tt><tt class="py-op">(</tt><tt class="py-name">True</tt><tt class="py-op">)</tt> </tt>
-<a name="L567"></a><tt class="py-lineno">567</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L568"></a><tt class="py-lineno">568</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L569"></a><tt class="py-lineno">569</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L570"></a><tt class="py-lineno">570</tt> <tt class="py-line"> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-name">fl</tt><tt class="py-op">.</tt><tt id="link-128" class="py-name" targets="Method paramiko.BufferedFile.read()=paramiko.BufferedFile-class.html#read,Method paramiko.SFTPHandle.read()=paramiko.SFTPHandle-class.html#read,Method paramiko.buffered_pipe.BufferedPipe.read()=paramiko.buffered_pipe.BufferedPipe-class.html#read"><a title="paramiko.BufferedFile.read
-paramiko.SFTPHandle.read
-paramiko.buffered_pipe.BufferedPipe.read" class="py-name" href="#" onclick="return doclink('link-128', 'read', 'link-128');">read</a></tt><tt class="py-op">(</tt><tt class="py-number">32768</tt><tt class="py-op">)</tt> </tt>
-<a name="L571"></a><tt class="py-lineno">571</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L572"></a><tt class="py-lineno">572</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L573"></a><tt class="py-lineno">573</tt> <tt class="py-line"> <tt class="py-name">fr</tt><tt class="py-op">.</tt><tt id="link-129" class="py-name" targets="Method paramiko.BufferedFile.write()=paramiko.BufferedFile-class.html#write,Method paramiko.SFTPHandle.write()=paramiko.SFTPHandle-class.html#write"><a title="paramiko.BufferedFile.write
-paramiko.SFTPHandle.write" class="py-name" href="#" onclick="return doclink('link-129', 'write', 'link-129');">write</a></tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L574"></a><tt class="py-lineno">574</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">+=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L575"></a><tt class="py-lineno">575</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">callback</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L576"></a><tt class="py-lineno">576</tt> <tt class="py-line"> <tt class="py-name">callback</tt><tt class="py-op">(</tt><tt class="py-name">size</tt><tt class="py-op">,</tt> <tt class="py-name">file_size</tt><tt class="py-op">)</tt> </tt>
-<a name="L577"></a><tt class="py-lineno">577</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L578"></a><tt class="py-lineno">578</tt> <tt class="py-line"> <tt class="py-name">fr</tt><tt class="py-op">.</tt><tt id="link-130" class="py-name"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-130', 'close', 'link-36');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L579"></a><tt class="py-lineno">579</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L580"></a><tt class="py-lineno">580</tt> <tt class="py-line"> <tt class="py-name">fl</tt><tt class="py-op">.</tt><tt id="link-131" class="py-name"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-131', 'close', 'link-36');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L581"></a><tt class="py-lineno">581</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">confirm</tt><tt class="py-op">:</tt> </tt>
-<a name="L582"></a><tt class="py-lineno">582</tt> <tt class="py-line"> <tt class="py-name">s</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-132" class="py-name"><a title="paramiko.SFTPClient.stat
-paramiko.SFTPFile.stat
-paramiko.SFTPHandle.stat
-paramiko.SFTPServerInterface.stat" class="py-name" href="#" onclick="return doclink('link-132', 'stat', 'link-0');">stat</a></tt><tt class="py-op">(</tt><tt class="py-name">remotepath</tt><tt class="py-op">)</tt> </tt>
-<a name="L583"></a><tt class="py-lineno">583</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">s</tt><tt class="py-op">.</tt><tt class="py-name">st_size</tt> <tt class="py-op">!=</tt> <tt class="py-name">size</tt><tt class="py-op">:</tt> </tt>
-<a name="L584"></a><tt class="py-lineno">584</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">IOError</tt><tt class="py-op">(</tt><tt class="py-string">'size mismatch in put! %d != %d'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">.</tt><tt class="py-name">st_size</tt><tt class="py-op">,</tt> <tt class="py-name">size</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L585"></a><tt class="py-lineno">585</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L586"></a><tt class="py-lineno">586</tt> <tt class="py-line"> <tt class="py-name">s</tt> <tt class="py-op">=</tt> <tt id="link-133" class="py-name"><a title="paramiko.SFTPAttributes" class="py-name" href="#" onclick="return doclink('link-133', 'SFTPAttributes', 'link-5');">SFTPAttributes</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L587"></a><tt class="py-lineno">587</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">s</tt> </tt>
-</div><a name="L588"></a><tt class="py-lineno">588</tt> <tt class="py-line"> </tt>
-<a name="SFTPClient.get"></a><div id="SFTPClient.get-def"><a name="L589"></a><tt class="py-lineno">589</tt> <a class="py-toggle" href="#" id="SFTPClient.get-toggle" onclick="return toggle('SFTPClient.get');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_client.SFTPClient-class.html#get">get</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">remotepath</tt><tt class="py-op">,</tt> <tt class="py-param">localpath</tt><tt class="py-op">,</tt> <tt class="py-param">callback</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPClient.get-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPClient.get-expanded"><a name="L590"></a><tt class="py-lineno">590</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L591"></a><tt class="py-lineno">591</tt> <tt class="py-line"><tt class="py-docstring"> Copy a remote file (C{remotepath}) from the SFTP server to the local</tt> </tt>
-<a name="L592"></a><tt class="py-lineno">592</tt> <tt class="py-line"><tt class="py-docstring"> host as C{localpath}. Any exception raised by operations will be</tt> </tt>
-<a name="L593"></a><tt class="py-lineno">593</tt> <tt class="py-line"><tt class="py-docstring"> passed through. This method is primarily provided as a convenience.</tt> </tt>
-<a name="L594"></a><tt class="py-lineno">594</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L595"></a><tt class="py-lineno">595</tt> <tt class="py-line"><tt class="py-docstring"> @param remotepath: the remote file to copy</tt> </tt>
-<a name="L596"></a><tt class="py-lineno">596</tt> <tt class="py-line"><tt class="py-docstring"> @type remotepath: str</tt> </tt>
-<a name="L597"></a><tt class="py-lineno">597</tt> <tt class="py-line"><tt class="py-docstring"> @param localpath: the destination path on the local host</tt> </tt>
-<a name="L598"></a><tt class="py-lineno">598</tt> <tt class="py-line"><tt class="py-docstring"> @type localpath: str</tt> </tt>
-<a name="L599"></a><tt class="py-lineno">599</tt> <tt class="py-line"><tt class="py-docstring"> @param callback: optional callback function that accepts the bytes</tt> </tt>
-<a name="L600"></a><tt class="py-lineno">600</tt> <tt class="py-line"><tt class="py-docstring"> transferred so far and the total bytes to be transferred</tt> </tt>
-<a name="L601"></a><tt class="py-lineno">601</tt> <tt class="py-line"><tt class="py-docstring"> (since 1.7.4)</tt> </tt>
-<a name="L602"></a><tt class="py-lineno">602</tt> <tt class="py-line"><tt class="py-docstring"> @type callback: function(int, int)</tt> </tt>
-<a name="L603"></a><tt class="py-lineno">603</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L604"></a><tt class="py-lineno">604</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.4</tt> </tt>
-<a name="L605"></a><tt class="py-lineno">605</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L606"></a><tt class="py-lineno">606</tt> <tt class="py-line"> <tt class="py-name">fr</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-134" class="py-name"><a title="paramiko.SFTPClient.file
-paramiko.file" class="py-name" href="#" onclick="return doclink('link-134', 'file', 'link-67');">file</a></tt><tt class="py-op">(</tt><tt class="py-name">remotepath</tt><tt class="py-op">,</tt> <tt class="py-string">'rb'</tt><tt class="py-op">)</tt> </tt>
-<a name="L607"></a><tt class="py-lineno">607</tt> <tt class="py-line"> <tt class="py-name">file_size</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-135" class="py-name"><a title="paramiko.SFTPClient.stat
-paramiko.SFTPFile.stat
-paramiko.SFTPHandle.stat
-paramiko.SFTPServerInterface.stat" class="py-name" href="#" onclick="return doclink('link-135', 'stat', 'link-0');">stat</a></tt><tt class="py-op">(</tt><tt class="py-name">remotepath</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">st_size</tt> </tt>
-<a name="L608"></a><tt class="py-lineno">608</tt> <tt class="py-line"> <tt class="py-name">fr</tt><tt class="py-op">.</tt><tt id="link-136" class="py-name" targets="Method paramiko.SFTPFile.prefetch()=paramiko.SFTPFile-class.html#prefetch"><a title="paramiko.SFTPFile.prefetch" class="py-name" href="#" onclick="return doclink('link-136', 'prefetch', 'link-136');">prefetch</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L609"></a><tt class="py-lineno">609</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L610"></a><tt class="py-lineno">610</tt> <tt class="py-line"> <tt class="py-name">fl</tt> <tt class="py-op">=</tt> <tt id="link-137" class="py-name"><a title="paramiko.SFTPClient.file
-paramiko.file" class="py-name" href="#" onclick="return doclink('link-137', 'file', 'link-67');">file</a></tt><tt class="py-op">(</tt><tt class="py-name">localpath</tt><tt class="py-op">,</tt> <tt class="py-string">'wb'</tt><tt class="py-op">)</tt> </tt>
-<a name="L611"></a><tt class="py-lineno">611</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L612"></a><tt class="py-lineno">612</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L613"></a><tt class="py-lineno">613</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L614"></a><tt class="py-lineno">614</tt> <tt class="py-line"> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-name">fr</tt><tt class="py-op">.</tt><tt id="link-138" class="py-name"><a title="paramiko.BufferedFile.read
-paramiko.SFTPHandle.read
-paramiko.buffered_pipe.BufferedPipe.read" class="py-name" href="#" onclick="return doclink('link-138', 'read', 'link-128');">read</a></tt><tt class="py-op">(</tt><tt class="py-number">32768</tt><tt class="py-op">)</tt> </tt>
-<a name="L615"></a><tt class="py-lineno">615</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L616"></a><tt class="py-lineno">616</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L617"></a><tt class="py-lineno">617</tt> <tt class="py-line"> <tt class="py-name">fl</tt><tt class="py-op">.</tt><tt id="link-139" class="py-name"><a title="paramiko.BufferedFile.write
-paramiko.SFTPHandle.write" class="py-name" href="#" onclick="return doclink('link-139', 'write', 'link-129');">write</a></tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L618"></a><tt class="py-lineno">618</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">+=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L619"></a><tt class="py-lineno">619</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">callback</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L620"></a><tt class="py-lineno">620</tt> <tt class="py-line"> <tt class="py-name">callback</tt><tt class="py-op">(</tt><tt class="py-name">size</tt><tt class="py-op">,</tt> <tt class="py-name">file_size</tt><tt class="py-op">)</tt> </tt>
-<a name="L621"></a><tt class="py-lineno">621</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L622"></a><tt class="py-lineno">622</tt> <tt class="py-line"> <tt class="py-name">fl</tt><tt class="py-op">.</tt><tt id="link-140" class="py-name"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-140', 'close', 'link-36');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L623"></a><tt class="py-lineno">623</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L624"></a><tt class="py-lineno">624</tt> <tt class="py-line"> <tt class="py-name">fr</tt><tt class="py-op">.</tt><tt id="link-141" class="py-name"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-141', 'close', 'link-36');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L625"></a><tt class="py-lineno">625</tt> <tt class="py-line"> <tt class="py-name">s</tt> <tt class="py-op">=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-142" class="py-name"><a title="paramiko.SFTPClient.stat
-paramiko.SFTPFile.stat
-paramiko.SFTPHandle.stat
-paramiko.SFTPServerInterface.stat" class="py-name" href="#" onclick="return doclink('link-142', 'stat', 'link-0');">stat</a></tt><tt class="py-op">(</tt><tt class="py-name">localpath</tt><tt class="py-op">)</tt> </tt>
-<a name="L626"></a><tt class="py-lineno">626</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">s</tt><tt class="py-op">.</tt><tt class="py-name">st_size</tt> <tt class="py-op">!=</tt> <tt class="py-name">size</tt><tt class="py-op">:</tt> </tt>
-<a name="L627"></a><tt class="py-lineno">627</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">IOError</tt><tt class="py-op">(</tt><tt class="py-string">'size mismatch in get! %d != %d'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">.</tt><tt class="py-name">st_size</tt><tt class="py-op">,</tt> <tt class="py-name">size</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L628"></a><tt class="py-lineno">628</tt> <tt class="py-line"> </tt>
-<a name="L629"></a><tt class="py-lineno">629</tt> <tt class="py-line"> </tt>
-<a name="L630"></a><tt class="py-lineno">630</tt> <tt class="py-line"> <tt class="py-comment">### internals...</tt> </tt>
-<a name="L631"></a><tt class="py-lineno">631</tt> <tt class="py-line"> </tt>
-<a name="L632"></a><tt class="py-lineno">632</tt> <tt class="py-line"> </tt>
-<a name="SFTPClient._request"></a><div id="SFTPClient._request-def"><a name="L633"></a><tt class="py-lineno">633</tt> <a class="py-toggle" href="#" id="SFTPClient._request-toggle" onclick="return toggle('SFTPClient._request');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_client.SFTPClient-class.html#_request">_request</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">t</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">arg</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPClient._request-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPClient._request-expanded"><a name="L634"></a><tt class="py-lineno">634</tt> <tt class="py-line"> <tt class="py-name">num</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_async_request</tt><tt class="py-op">(</tt><tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">t</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-name">arg</tt><tt class="py-op">)</tt> </tt>
-<a name="L635"></a><tt class="py-lineno">635</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_read_response</tt><tt class="py-op">(</tt><tt class="py-name">num</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L636"></a><tt class="py-lineno">636</tt> <tt class="py-line"> </tt>
-<a name="SFTPClient._async_request"></a><div id="SFTPClient._async_request-def"><a name="L637"></a><tt class="py-lineno">637</tt> <a class="py-toggle" href="#" id="SFTPClient._async_request-toggle" onclick="return toggle('SFTPClient._async_request');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_client.SFTPClient-class.html#_async_request">_async_request</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">fileobj</tt><tt class="py-op">,</tt> <tt class="py-param">t</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">arg</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPClient._async_request-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPClient._async_request-expanded"><a name="L638"></a><tt class="py-lineno">638</tt> <tt class="py-line"> <tt class="py-comment"># this method may be called from other threads (prefetch)</tt> </tt>
-<a name="L639"></a><tt class="py-lineno">639</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L640"></a><tt class="py-lineno">640</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L641"></a><tt class="py-lineno">641</tt> <tt class="py-line"> <tt class="py-name">msg</tt> <tt class="py-op">=</tt> <tt id="link-143" class="py-name" targets="Class paramiko.Message=paramiko.Message-class.html"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-143', 'Message', 'link-143');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L642"></a><tt class="py-lineno">642</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-144" class="py-name" targets="Method paramiko.Message.add_int()=paramiko.Message-class.html#add_int"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-144', 'add_int', 'link-144');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">request_number</tt><tt class="py-op">)</tt> </tt>
-<a name="L643"></a><tt class="py-lineno">643</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">item</tt> <tt class="py-keyword">in</tt> <tt class="py-name">arg</tt><tt class="py-op">:</tt> </tt>
-<a name="L644"></a><tt class="py-lineno">644</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">int</tt><tt class="py-op">:</tt> </tt>
-<a name="L645"></a><tt class="py-lineno">645</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-145" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-145', 'add_int', 'link-144');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> </tt>
-<a name="L646"></a><tt class="py-lineno">646</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">long</tt><tt class="py-op">:</tt> </tt>
-<a name="L647"></a><tt class="py-lineno">647</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-146" class="py-name" targets="Method paramiko.Message.add_int64()=paramiko.Message-class.html#add_int64"><a title="paramiko.Message.add_int64" class="py-name" href="#" onclick="return doclink('link-146', 'add_int64', 'link-146');">add_int64</a></tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> </tt>
-<a name="L648"></a><tt class="py-lineno">648</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">str</tt><tt class="py-op">:</tt> </tt>
-<a name="L649"></a><tt class="py-lineno">649</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-147" class="py-name" targets="Method paramiko.Message.add_string()=paramiko.Message-class.html#add_string"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-147', 'add_string', 'link-147');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> </tt>
-<a name="L650"></a><tt class="py-lineno">650</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt id="link-148" class="py-name"><a title="paramiko.SFTPAttributes" class="py-name" href="#" onclick="return doclink('link-148', 'SFTPAttributes', 'link-5');">SFTPAttributes</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L651"></a><tt class="py-lineno">651</tt> <tt class="py-line"> <tt class="py-name">item</tt><tt class="py-op">.</tt><tt class="py-name">_pack</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">)</tt> </tt>
-<a name="L652"></a><tt class="py-lineno">652</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L653"></a><tt class="py-lineno">653</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">Exception</tt><tt class="py-op">(</tt><tt class="py-string">'unknown type for %r type %r'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">,</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L654"></a><tt class="py-lineno">654</tt> <tt class="py-line"> <tt class="py-name">num</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">request_number</tt> </tt>
-<a name="L655"></a><tt class="py-lineno">655</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_expecting</tt><tt class="py-op">[</tt><tt class="py-name">num</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">fileobj</tt> </tt>
-<a name="L656"></a><tt class="py-lineno">656</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_packet</tt><tt class="py-op">(</tt><tt class="py-name">t</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L657"></a><tt class="py-lineno">657</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">request_number</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L658"></a><tt class="py-lineno">658</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L659"></a><tt class="py-lineno">659</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L660"></a><tt class="py-lineno">660</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">num</tt> </tt>
-</div><a name="L661"></a><tt class="py-lineno">661</tt> <tt class="py-line"> </tt>
-<a name="SFTPClient._read_response"></a><div id="SFTPClient._read_response-def"><a name="L662"></a><tt class="py-lineno">662</tt> <a class="py-toggle" href="#" id="SFTPClient._read_response-toggle" onclick="return toggle('SFTPClient._read_response');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_client.SFTPClient-class.html#_read_response">_read_response</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">waitfor</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPClient._read_response-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPClient._read_response-expanded"><a name="L663"></a><tt class="py-lineno">663</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L664"></a><tt class="py-lineno">664</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L665"></a><tt class="py-lineno">665</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">,</tt> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_read_packet</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L666"></a><tt class="py-lineno">666</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">EOFError</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L667"></a><tt class="py-lineno">667</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-149" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-149', 'SSHException', 'link-8');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Server connection dropped: %s'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">)</tt><tt class="py-op">,</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L668"></a><tt class="py-lineno">668</tt> <tt class="py-line"> <tt class="py-name">msg</tt> <tt class="py-op">=</tt> <tt id="link-150" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-150', 'Message', 'link-143');">Message</a></tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L669"></a><tt class="py-lineno">669</tt> <tt class="py-line"> <tt class="py-name">num</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-151" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-151', 'get_int', 'link-46');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L670"></a><tt class="py-lineno">670</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">num</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_expecting</tt><tt class="py-op">:</tt> </tt>
-<a name="L671"></a><tt class="py-lineno">671</tt> <tt class="py-line"> <tt class="py-comment"># might be response for a file that was closed before responses came back</tt> </tt>
-<a name="L672"></a><tt class="py-lineno">672</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-152" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-152', 'DEBUG', 'link-38');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Unexpected response #%d'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">num</tt><tt class="py-op">,</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L673"></a><tt class="py-lineno">673</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">waitfor</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L674"></a><tt class="py-lineno">674</tt> <tt class="py-line"> <tt class="py-comment"># just doing a single check</tt> </tt>
-<a name="L675"></a><tt class="py-lineno">675</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L676"></a><tt class="py-lineno">676</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L677"></a><tt class="py-lineno">677</tt> <tt class="py-line"> <tt class="py-name">fileobj</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_expecting</tt><tt class="py-op">[</tt><tt class="py-name">num</tt><tt class="py-op">]</tt> </tt>
-<a name="L678"></a><tt class="py-lineno">678</tt> <tt class="py-line"> <tt class="py-keyword">del</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_expecting</tt><tt class="py-op">[</tt><tt class="py-name">num</tt><tt class="py-op">]</tt> </tt>
-<a name="L679"></a><tt class="py-lineno">679</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">num</tt> <tt class="py-op">==</tt> <tt class="py-name">waitfor</tt><tt class="py-op">:</tt> </tt>
-<a name="L680"></a><tt class="py-lineno">680</tt> <tt class="py-line"> <tt class="py-comment"># synchronous</tt> </tt>
-<a name="L681"></a><tt class="py-lineno">681</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">t</tt> <tt class="py-op">==</tt> <tt id="link-153" class="py-name" targets="Variable paramiko.sftp.CMD_STATUS=paramiko.sftp-module.html#CMD_STATUS,Variable paramiko.sftp_attr.CMD_STATUS=paramiko.sftp_attr-module.html#CMD_STATUS,Variable paramiko.sftp_client.CMD_STATUS=paramiko.sftp_client-module.html#CMD_STATUS,Variable paramiko.sftp_file.CMD_STATUS=paramiko.sftp_file-module.html#CMD_STATUS,Variable paramiko.sftp_handle.CMD_STATUS=paramiko.sftp_handle-module.html#CMD_STATUS,Variable paramiko.sftp_server.CMD_STATUS=paramiko.sftp_server-module.html#CMD_STATUS,Variable paramiko.sftp_si.CMD_STATUS=paramiko.sftp_si-module.html#CMD_STATUS"><a title="paramiko.sftp.CMD_STATUS
-paramiko.sftp_attr.CMD_STATUS
-paramiko.sftp_client.CMD_STATUS
-paramiko.sftp_file.CMD_STATUS
-paramiko.sftp_handle.CMD_STATUS
-paramiko.sftp_server.CMD_STATUS
-paramiko.sftp_si.CMD_STATUS" class="py-name" href="#" onclick="return doclink('link-153', 'CMD_STATUS', 'link-153');">CMD_STATUS</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L682"></a><tt class="py-lineno">682</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_convert_status</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">)</tt> </tt>
-<a name="L683"></a><tt class="py-lineno">683</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">t</tt><tt class="py-op">,</tt> <tt class="py-name">msg</tt> </tt>
-<a name="L684"></a><tt class="py-lineno">684</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">fileobj</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L685"></a><tt class="py-lineno">685</tt> <tt class="py-line"> <tt class="py-name">fileobj</tt><tt class="py-op">.</tt><tt class="py-name">_async_response</tt><tt class="py-op">(</tt><tt class="py-name">t</tt><tt class="py-op">,</tt> <tt class="py-name">msg</tt><tt class="py-op">)</tt> </tt>
-<a name="L686"></a><tt class="py-lineno">686</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">waitfor</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L687"></a><tt class="py-lineno">687</tt> <tt class="py-line"> <tt class="py-comment"># just doing a single check</tt> </tt>
-<a name="L688"></a><tt class="py-lineno">688</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L689"></a><tt class="py-lineno">689</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-op">(</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L690"></a><tt class="py-lineno">690</tt> <tt class="py-line"> </tt>
-<a name="SFTPClient._finish_responses"></a><div id="SFTPClient._finish_responses-def"><a name="L691"></a><tt class="py-lineno">691</tt> <a class="py-toggle" href="#" id="SFTPClient._finish_responses-toggle" onclick="return toggle('SFTPClient._finish_responses');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_client.SFTPClient-class.html#_finish_responses">_finish_responses</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">fileobj</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPClient._finish_responses-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPClient._finish_responses-expanded"><a name="L692"></a><tt class="py-lineno">692</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">fileobj</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_expecting</tt><tt class="py-op">.</tt><tt id="link-154" class="py-name" targets="Method paramiko.HostKeys.values()=paramiko.HostKeys-class.html#values,Method paramiko.transport.ChannelMap.values()=paramiko.transport.ChannelMap-class.html#values"><a title="paramiko.HostKeys.values
-paramiko.transport.ChannelMap.values" class="py-name" href="#" onclick="return doclink('link-154', 'values', 'link-154');">values</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L693"></a><tt class="py-lineno">693</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_read_response</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L694"></a><tt class="py-lineno">694</tt> <tt class="py-line"> <tt class="py-name">fileobj</tt><tt class="py-op">.</tt><tt class="py-name">_check_exception</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L695"></a><tt class="py-lineno">695</tt> <tt class="py-line"> </tt>
-<a name="SFTPClient._convert_status"></a><div id="SFTPClient._convert_status-def"><a name="L696"></a><tt class="py-lineno">696</tt> <a class="py-toggle" href="#" id="SFTPClient._convert_status-toggle" onclick="return toggle('SFTPClient._convert_status');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_client.SFTPClient-class.html#_convert_status">_convert_status</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">msg</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPClient._convert_status-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPClient._convert_status-expanded"><a name="L697"></a><tt class="py-lineno">697</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L698"></a><tt class="py-lineno">698</tt> <tt class="py-line"><tt class="py-docstring"> Raises EOFError or IOError on error status; otherwise does nothing.</tt> </tt>
-<a name="L699"></a><tt class="py-lineno">699</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L700"></a><tt class="py-lineno">700</tt> <tt class="py-line"> <tt class="py-name">code</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-155" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-155', 'get_int', 'link-46');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L701"></a><tt class="py-lineno">701</tt> <tt class="py-line"> <tt class="py-name">text</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-156" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-156', 'get_string', 'link-42');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L702"></a><tt class="py-lineno">702</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">code</tt> <tt class="py-op">==</tt> <tt id="link-157" class="py-name" targets="Variable paramiko.sftp.SFTP_OK=paramiko.sftp-module.html#SFTP_OK,Variable paramiko.sftp_attr.SFTP_OK=paramiko.sftp_attr-module.html#SFTP_OK,Variable paramiko.sftp_client.SFTP_OK=paramiko.sftp_client-module.html#SFTP_OK,Variable paramiko.sftp_file.SFTP_OK=paramiko.sftp_file-module.html#SFTP_OK,Variable paramiko.sftp_handle.SFTP_OK=paramiko.sftp_handle-module.html#SFTP_OK,Variable paramiko.sftp_server.SFTP_OK=paramiko.sftp_server-module.html#SFTP_OK,Variable paramiko.sftp_si.SFTP_OK=paramiko.sftp_si-module.html#SFTP_OK"><a title="paramiko.sftp.SFTP_OK
-paramiko.sftp_attr.SFTP_OK
-paramiko.sftp_client.SFTP_OK
-paramiko.sftp_file.SFTP_OK
-paramiko.sftp_handle.SFTP_OK
-paramiko.sftp_server.SFTP_OK
-paramiko.sftp_si.SFTP_OK" class="py-name" href="#" onclick="return doclink('link-157', 'SFTP_OK', 'link-157');">SFTP_OK</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L703"></a><tt class="py-lineno">703</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L704"></a><tt class="py-lineno">704</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">code</tt> <tt class="py-op">==</tt> <tt id="link-158" class="py-name" targets="Variable paramiko.sftp.SFTP_EOF=paramiko.sftp-module.html#SFTP_EOF,Variable paramiko.sftp_attr.SFTP_EOF=paramiko.sftp_attr-module.html#SFTP_EOF,Variable paramiko.sftp_client.SFTP_EOF=paramiko.sftp_client-module.html#SFTP_EOF,Variable paramiko.sftp_file.SFTP_EOF=paramiko.sftp_file-module.html#SFTP_EOF,Variable paramiko.sftp_handle.SFTP_EOF=paramiko.sftp_handle-module.html#SFTP_EOF,Variable paramiko.sftp_server.SFTP_EOF=paramiko.sftp_server-module.html#SFTP_EOF,Variable paramiko.sftp_si.SFTP_EOF=paramiko.sftp_si-module.html#SFTP_EOF"><a title="paramiko.sftp.SFTP_EOF
-paramiko.sftp_attr.SFTP_EOF
-paramiko.sftp_client.SFTP_EOF
-paramiko.sftp_file.SFTP_EOF
-paramiko.sftp_handle.SFTP_EOF
-paramiko.sftp_server.SFTP_EOF
-paramiko.sftp_si.SFTP_EOF" class="py-name" href="#" onclick="return doclink('link-158', 'SFTP_EOF', 'link-158');">SFTP_EOF</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L705"></a><tt class="py-lineno">705</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">EOFError</tt><tt class="py-op">(</tt><tt class="py-name">text</tt><tt class="py-op">)</tt> </tt>
-<a name="L706"></a><tt class="py-lineno">706</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">code</tt> <tt class="py-op">==</tt> <tt id="link-159" class="py-name" targets="Variable paramiko.sftp.SFTP_NO_SUCH_FILE=paramiko.sftp-module.html#SFTP_NO_SUCH_FILE,Variable paramiko.sftp_attr.SFTP_NO_SUCH_FILE=paramiko.sftp_attr-module.html#SFTP_NO_SUCH_FILE,Variable paramiko.sftp_client.SFTP_NO_SUCH_FILE=paramiko.sftp_client-module.html#SFTP_NO_SUCH_FILE,Variable paramiko.sftp_file.SFTP_NO_SUCH_FILE=paramiko.sftp_file-module.html#SFTP_NO_SUCH_FILE,Variable paramiko.sftp_handle.SFTP_NO_SUCH_FILE=paramiko.sftp_handle-module.html#SFTP_NO_SUCH_FILE,Variable paramiko.sftp_server.SFTP_NO_SUCH_FILE=paramiko.sftp_server-module.html#SFTP_NO_SUCH_FILE,Variable paramiko.sftp_si.SFTP_NO_SUCH_FILE=paramiko.sftp_si-module.html#SFTP_NO_SUCH_FILE"><a title="paramiko.sftp.SFTP_NO_SUCH_FILE
-paramiko.sftp_attr.SFTP_NO_SUCH_FILE
-paramiko.sftp_client.SFTP_NO_SUCH_FILE
-paramiko.sftp_file.SFTP_NO_SUCH_FILE
-paramiko.sftp_handle.SFTP_NO_SUCH_FILE
-paramiko.sftp_server.SFTP_NO_SUCH_FILE
-paramiko.sftp_si.SFTP_NO_SUCH_FILE" class="py-name" href="#" onclick="return doclink('link-159', 'SFTP_NO_SUCH_FILE', 'link-159');">SFTP_NO_SUCH_FILE</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L707"></a><tt class="py-lineno">707</tt> <tt class="py-line"> <tt class="py-comment"># clever idea from john a. meinel: map the error codes to errno</tt> </tt>
-<a name="L708"></a><tt class="py-lineno">708</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">IOError</tt><tt class="py-op">(</tt><tt class="py-name">errno</tt><tt class="py-op">.</tt><tt class="py-name">ENOENT</tt><tt class="py-op">,</tt> <tt class="py-name">text</tt><tt class="py-op">)</tt> </tt>
-<a name="L709"></a><tt class="py-lineno">709</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">code</tt> <tt class="py-op">==</tt> <tt id="link-160" class="py-name" targets="Variable paramiko.sftp.SFTP_PERMISSION_DENIED=paramiko.sftp-module.html#SFTP_PERMISSION_DENIED,Variable paramiko.sftp_attr.SFTP_PERMISSION_DENIED=paramiko.sftp_attr-module.html#SFTP_PERMISSION_DENIED,Variable paramiko.sftp_client.SFTP_PERMISSION_DENIED=paramiko.sftp_client-module.html#SFTP_PERMISSION_DENIED,Variable paramiko.sftp_file.SFTP_PERMISSION_DENIED=paramiko.sftp_file-module.html#SFTP_PERMISSION_DENIED,Variable paramiko.sftp_handle.SFTP_PERMISSION_DENIED=paramiko.sftp_handle-module.html#SFTP_PERMISSION_DENIED,Variable paramiko.sftp_server.SFTP_PERMISSION_DENIED=paramiko.sftp_server-module.html#SFTP_PERMISSION_DENIED,Variable paramiko.sftp_si.SFTP_PERMISSION_DENIED=paramiko.sftp_si-module.html#SFTP_PERMISSION_DENIED"><a title="paramiko.sftp.SFTP_PERMISSION_DENIED
-paramiko.sftp_attr.SFTP_PERMISSION_DENIED
-paramiko.sftp_client.SFTP_PERMISSION_DENIED
-paramiko.sftp_file.SFTP_PERMISSION_DENIED
-paramiko.sftp_handle.SFTP_PERMISSION_DENIED
-paramiko.sftp_server.SFTP_PERMISSION_DENIED
-paramiko.sftp_si.SFTP_PERMISSION_DENIED" class="py-name" href="#" onclick="return doclink('link-160', 'SFTP_PERMISSION_DENIED', 'link-160');">SFTP_PERMISSION_DENIED</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L710"></a><tt class="py-lineno">710</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">IOError</tt><tt class="py-op">(</tt><tt class="py-name">errno</tt><tt class="py-op">.</tt><tt class="py-name">EACCES</tt><tt class="py-op">,</tt> <tt class="py-name">text</tt><tt class="py-op">)</tt> </tt>
-<a name="L711"></a><tt class="py-lineno">711</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L712"></a><tt class="py-lineno">712</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">IOError</tt><tt class="py-op">(</tt><tt class="py-name">text</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L713"></a><tt class="py-lineno">713</tt> <tt class="py-line"> </tt>
-<a name="SFTPClient._adjust_cwd"></a><div id="SFTPClient._adjust_cwd-def"><a name="L714"></a><tt class="py-lineno">714</tt> <a class="py-toggle" href="#" id="SFTPClient._adjust_cwd-toggle" onclick="return toggle('SFTPClient._adjust_cwd');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_client.SFTPClient-class.html#_adjust_cwd">_adjust_cwd</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">path</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPClient._adjust_cwd-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPClient._adjust_cwd-expanded"><a name="L715"></a><tt class="py-lineno">715</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L716"></a><tt class="py-lineno">716</tt> <tt class="py-line"><tt class="py-docstring"> Return an adjusted path if we're emulating a "current working</tt> </tt>
-<a name="L717"></a><tt class="py-lineno">717</tt> <tt class="py-line"><tt class="py-docstring"> directory" for the server.</tt> </tt>
-<a name="L718"></a><tt class="py-lineno">718</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L719"></a><tt class="py-lineno">719</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">unicode</tt><tt class="py-op">:</tt> </tt>
-<a name="L720"></a><tt class="py-lineno">720</tt> <tt class="py-line"> <tt class="py-name">path</tt> <tt class="py-op">=</tt> <tt class="py-name">path</tt><tt class="py-op">.</tt><tt id="link-161" class="py-name"><a title="paramiko.ber.BER.encode" class="py-name" href="#" onclick="return doclink('link-161', 'encode', 'link-12');">encode</a></tt><tt class="py-op">(</tt><tt class="py-string">'utf-8'</tt><tt class="py-op">)</tt> </tt>
-<a name="L721"></a><tt class="py-lineno">721</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_cwd</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L722"></a><tt class="py-lineno">722</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">path</tt> </tt>
-<a name="L723"></a><tt class="py-lineno">723</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">'/'</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L724"></a><tt class="py-lineno">724</tt> <tt class="py-line"> <tt class="py-comment"># absolute path</tt> </tt>
-<a name="L725"></a><tt class="py-lineno">725</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">path</tt> </tt>
-<a name="L726"></a><tt class="py-lineno">726</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_cwd</tt> <tt class="py-op">==</tt> <tt class="py-string">'/'</tt><tt class="py-op">:</tt> </tt>
-<a name="L727"></a><tt class="py-lineno">727</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_cwd</tt> <tt class="py-op">+</tt> <tt class="py-name">path</tt> </tt>
-<a name="L728"></a><tt class="py-lineno">728</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_cwd</tt> <tt class="py-op">+</tt> <tt class="py-string">'/'</tt> <tt class="py-op">+</tt> <tt class="py-name">path</tt> </tt>
-</div></div><a name="L729"></a><tt class="py-lineno">729</tt> <tt class="py-line"> </tt>
-<a name="L730"></a><tt class="py-lineno">730</tt> <tt class="py-line"> </tt>
-<a name="SFTP"></a><div id="SFTP-def"><a name="L731"></a><tt class="py-lineno">731</tt> <a class="py-toggle" href="#" id="SFTP-toggle" onclick="return toggle('SFTP');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.sftp_client.SFTP-class.html">SFTP</a> <tt class="py-op">(</tt><tt class="py-base-class">SFTPClient</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTP-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="SFTP-expanded"><a name="L732"></a><tt class="py-lineno">732</tt> <tt class="py-line"> <tt class="py-docstring">"an alias for L{SFTPClient} for backwards compatability"</tt> </tt>
-<a name="L733"></a><tt class="py-lineno">733</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-</div><a name="L734"></a><tt class="py-lineno">734</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:04 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.sftp_file-module.html b/docs/paramiko.sftp_file-module.html
deleted file mode 100644
index 2d63a78..0000000
--- a/docs/paramiko.sftp_file-module.html
+++ /dev/null
@@ -1,907 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.sftp_file</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;sftp_file
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.sftp_file-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module sftp_file</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.sftp_file-pysrc.html">source&nbsp;code</a></span></p>
-<p><a href="paramiko.SFTPFile-class.html" class="link">SFTPFile</a></p>
-
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_FAILED"></a><span class="summary-name">AUTH_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_PARTIALLY_SUCCESSFUL"></a><span class="summary-name">AUTH_PARTIALLY_SUCCESSFUL</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_SUCCESSFUL"></a><span class="summary-name">AUTH_SUCCESSFUL</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_ATTRS"></a><span class="summary-name">CMD_ATTRS</span> = <code title="105">105</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_CLOSE"></a><span class="summary-name">CMD_CLOSE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_DATA"></a><span class="summary-name">CMD_DATA</span> = <code title="103">103</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_EXTENDED"></a><span class="summary-name">CMD_EXTENDED</span> = <code title="200">200</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_EXTENDED_REPLY"></a><span class="summary-name">CMD_EXTENDED_REPLY</span> = <code title="201">201</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_FSETSTAT"></a><span class="summary-name">CMD_FSETSTAT</span> = <code title="10">10</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_FSTAT"></a><span class="summary-name">CMD_FSTAT</span> = <code title="8">8</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_HANDLE"></a><span class="summary-name">CMD_HANDLE</span> = <code title="102">102</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_INIT"></a><span class="summary-name">CMD_INIT</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_LSTAT"></a><span class="summary-name">CMD_LSTAT</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_MKDIR"></a><span class="summary-name">CMD_MKDIR</span> = <code title="14">14</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_NAME"></a><span class="summary-name">CMD_NAME</span> = <code title="104">104</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.sftp_file-module.html#CMD_NAMES" class="summary-name">CMD_NAMES</a> = <code title="{1: 'init',
- 2: 'version',
- 3: 'open',
- 4: 'close',
- 5: 'read',
- 6: 'write',
- 7: 'lstat',
- 8: 'fstat',
-..."><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">init</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">version</code><code class="variable-quote">'</code><code class="variable-op">, </code>3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">open</code><code class="variable-quote">'</code><code class="variable-op">, </code>4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">close</code><code class="variable-quote">'</code><code class="variable-op">, </code>5<code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_OPEN"></a><span class="summary-name">CMD_OPEN</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_OPENDIR"></a><span class="summary-name">CMD_OPENDIR</span> = <code title="11">11</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_READ"></a><span class="summary-name">CMD_READ</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_READDIR"></a><span class="summary-name">CMD_READDIR</span> = <code title="12">12</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_READLINK"></a><span class="summary-name">CMD_READLINK</span> = <code title="19">19</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_REALPATH"></a><span class="summary-name">CMD_REALPATH</span> = <code title="16">16</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_REMOVE"></a><span class="summary-name">CMD_REMOVE</span> = <code title="13">13</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_RENAME"></a><span class="summary-name">CMD_RENAME</span> = <code title="18">18</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_RMDIR"></a><span class="summary-name">CMD_RMDIR</span> = <code title="15">15</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_SETSTAT"></a><span class="summary-name">CMD_SETSTAT</span> = <code title="9">9</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_STAT"></a><span class="summary-name">CMD_STAT</span> = <code title="17">17</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_STATUS"></a><span class="summary-name">CMD_STATUS</span> = <code title="101">101</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_SYMLINK"></a><span class="summary-name">CMD_SYMLINK</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_VERSION"></a><span class="summary-name">CMD_VERSION</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_WRITE"></a><span class="summary-name">CMD_WRITE</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.sftp_file-module.html#CONNECTION_FAILED_CODE" class="summary-name">CONNECTION_FAILED_CODE</a> = <code title="{1: 'Administratively prohibited',
- 2: 'Connect failed',
- 3: 'Unknown channel type',
- 4: 'Resource shortage'}"><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">:</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CRITICAL"></a><span class="summary-name">CRITICAL</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DEBUG"></a><span class="summary-name">DEBUG</span> = <code title="10">10</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_AUTH_CANCELLED_BY_USER"></a><span class="summary-name">DISCONNECT_AUTH_CANCELLED_BY_USER</span> = <code title="13">13</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE"></a><span class="summary-name">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</span> = <code title="14">14</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_SERVICE_NOT_AVAILABLE"></a><span class="summary-name">DISCONNECT_SERVICE_NOT_AVAILABLE</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="ERROR"></a><span class="summary-name">ERROR</span> = <code title="40">40</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="INFO"></a><span class="summary-name">INFO</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_CLOSE"></a><span class="summary-name">MSG_CHANNEL_CLOSE</span> = <code title="97">97</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_DATA"></a><span class="summary-name">MSG_CHANNEL_DATA</span> = <code title="94">94</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EOF"></a><span class="summary-name">MSG_CHANNEL_EOF</span> = <code title="96">96</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EXTENDED_DATA"></a><span class="summary-name">MSG_CHANNEL_EXTENDED_DATA</span> = <code title="95">95</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_FAILURE"></a><span class="summary-name">MSG_CHANNEL_FAILURE</span> = <code title="100">100</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN"></a><span class="summary-name">MSG_CHANNEL_OPEN</span> = <code title="90">90</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_FAILURE"></a><span class="summary-name">MSG_CHANNEL_OPEN_FAILURE</span> = <code title="92">92</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_OPEN_SUCCESS</span> = <code title="91">91</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_REQUEST"></a><span class="summary-name">MSG_CHANNEL_REQUEST</span> = <code title="98">98</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_SUCCESS</span> = <code title="99">99</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_WINDOW_ADJUST"></a><span class="summary-name">MSG_CHANNEL_WINDOW_ADJUST</span> = <code title="93">93</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DEBUG"></a><span class="summary-name">MSG_DEBUG</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DISCONNECT"></a><span class="summary-name">MSG_DISCONNECT</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_GLOBAL_REQUEST"></a><span class="summary-name">MSG_GLOBAL_REQUEST</span> = <code title="80">80</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_IGNORE"></a><span class="summary-name">MSG_IGNORE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_KEXINIT"></a><span class="summary-name">MSG_KEXINIT</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.sftp_file-module.html#MSG_NAMES" class="summary-name">MSG_NAMES</a> = <code title="{1: 'disconnect',
- 2: 'ignore',
- 3: 'unimplemented',
- 4: 'debug',
- 5: 'service-request',
- 6: 'service-accept',
- 20: 'kexinit',
- 21: 'newkeys',
-..."><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">, </code>3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_NEWKEYS"></a><span class="summary-name">MSG_NEWKEYS</span> = <code title="21">21</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_FAILURE"></a><span class="summary-name">MSG_REQUEST_FAILURE</span> = <code title="82">82</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_SUCCESS"></a><span class="summary-name">MSG_REQUEST_SUCCESS</span> = <code title="81">81</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_ACCEPT"></a><span class="summary-name">MSG_SERVICE_ACCEPT</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_REQUEST"></a><span class="summary-name">MSG_SERVICE_REQUEST</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_UNIMPLEMENTED"></a><span class="summary-name">MSG_UNIMPLEMENTED</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_BANNER"></a><span class="summary-name">MSG_USERAUTH_BANNER</span> = <code title="53">53</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_FAILURE"></a><span class="summary-name">MSG_USERAUTH_FAILURE</span> = <code title="51">51</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_REQUEST"></a><span class="summary-name">MSG_USERAUTH_INFO_REQUEST</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_RESPONSE"></a><span class="summary-name">MSG_USERAUTH_INFO_RESPONSE</span> = <code title="61">61</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_PK_OK"></a><span class="summary-name">MSG_USERAUTH_PK_OK</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_REQUEST"></a><span class="summary-name">MSG_USERAUTH_REQUEST</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_SUCCESS"></a><span class="summary-name">MSG_USERAUTH_SUCCESS</span> = <code title="52">52</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED"></a><span class="summary-name">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_CONNECT_FAILED"></a><span class="summary-name">OPEN_FAILED_CONNECT_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_RESOURCE_SHORTAGE"></a><span class="summary-name">OPEN_FAILED_RESOURCE_SHORTAGE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_UNKNOWN_CHANNEL_TYPE"></a><span class="summary-name">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_SUCCEEDED"></a><span class="summary-name">OPEN_SUCCEEDED</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="PY22"></a><span class="summary-name">PY22</span> = <code title="False">False</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_BAD_MESSAGE"></a><span class="summary-name">SFTP_BAD_MESSAGE</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_CONNECTION_LOST"></a><span class="summary-name">SFTP_CONNECTION_LOST</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.sftp_file-module.html#SFTP_DESC" class="summary-name">SFTP_DESC</a> = <code title="['Success',
- 'End of file',
- 'No such file',
- 'Permission denied',
- 'Failure',
- 'Bad message',
- 'No connection',
- 'Connection lost',
-..."><code class="variable-group">[</code><code class="variable-quote">'</code><code class="variable-string">Success</code><code class="variable-quote">'</code><code class="variable-op">, </code><code class="variable-quote">'</code><code class="variable-string">End of file</code><code class="variable-quote">'</code><code class="variable-op">, </code><code class="variable-quote">'</code><code class="variable-string">No such file</code><code class="variable-quote">'</code><code class="variable-op">, </code><code class="variable-quote">'</code><code class="variable-string">Permis</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_EOF"></a><span class="summary-name">SFTP_EOF</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FAILURE"></a><span class="summary-name">SFTP_FAILURE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_APPEND"></a><span class="summary-name">SFTP_FLAG_APPEND</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_CREATE"></a><span class="summary-name">SFTP_FLAG_CREATE</span> = <code title="8">8</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_EXCL"></a><span class="summary-name">SFTP_FLAG_EXCL</span> = <code title="32">32</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_READ"></a><span class="summary-name">SFTP_FLAG_READ</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_TRUNC"></a><span class="summary-name">SFTP_FLAG_TRUNC</span> = <code title="16">16</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_WRITE"></a><span class="summary-name">SFTP_FLAG_WRITE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_NO_CONNECTION"></a><span class="summary-name">SFTP_NO_CONNECTION</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_NO_SUCH_FILE"></a><span class="summary-name">SFTP_NO_SUCH_FILE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_OK"></a><span class="summary-name">SFTP_OK</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_OP_UNSUPPORTED"></a><span class="summary-name">SFTP_OP_UNSUPPORTED</span> = <code title="8">8</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_PERMISSION_DENIED"></a><span class="summary-name">SFTP_PERMISSION_DENIED</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="WARNING"></a><span class="summary-name">WARNING</span> = <code title="30">30</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'paramiko'"><code class="variable-quote">'</code><code class="variable-string">paramiko</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="rng"></a><span class="summary-name">rng</span> = <code title="Random.new()">Random.new()</code>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES DETAILS ==================== -->
-<a name="section-VariablesDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables Details</span></td>
-</tr>
-</table>
-<a name="CMD_NAMES"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">CMD_NAMES</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">init</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">version</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">open</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">close</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 5<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">read</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 6<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">write</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 7<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">lstat</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 8<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">fstat</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="CONNECTION_FAILED_CODE"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">CONNECTION_FAILED_CODE</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Connect failed</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Unknown channel type</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Resource shortage</code><code class="variable-quote">'</code><code class="variable-group">}</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="MSG_NAMES"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">MSG_NAMES</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">debug</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 5<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-request</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 6<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-accept</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 20<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">kexinit</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 21<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">newkeys</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="SFTP_DESC"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">SFTP_DESC</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">[</code><code class="variable-quote">'</code><code class="variable-string">Success</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">End of file</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">No such file</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">Permission denied</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">Failure</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">Bad message</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">No connection</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">Connection lost</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:02 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.sftp_file-pysrc.html b/docs/paramiko.sftp_file-pysrc.html
deleted file mode 100644
index f4791fa..0000000
--- a/docs/paramiko.sftp_file-pysrc.html
+++ /dev/null
@@ -1,873 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.sftp_file</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;sftp_file
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.sftp_file-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.sftp_file-module.html" onclick="show_private();">Module paramiko.sftp_file</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2003-2007 Robey Pointer &lt;robeypointer@gmail.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring">L{SFTPFile}</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">binascii</tt> <tt class="py-keyword">import</tt> <tt class="py-name">hexlify</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">socket</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">threading</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package paramiko=paramiko-module.html"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-0', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Module paramiko.common=paramiko.common-module.html"><a title="paramiko.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt> <tt class="py-keyword">import</tt> <tt class="py-op">*</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-2" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-2', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Module paramiko.sftp=paramiko.sftp-module.html"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-3', 'sftp', 'link-3');">sftp</a></tt> <tt class="py-keyword">import</tt> <tt class="py-op">*</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-4" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-4', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Method paramiko.SFTPClient.file()=paramiko.SFTPClient-class.html#file,Module paramiko.file=paramiko.file-module.html"><a title="paramiko.SFTPClient.file
-paramiko.file" class="py-name" href="#" onclick="return doclink('link-5', 'file', 'link-5');">file</a></tt> <tt class="py-keyword">import</tt> <tt id="link-6" class="py-name" targets="Class paramiko.BufferedFile=paramiko.BufferedFile-class.html"><a title="paramiko.BufferedFile" class="py-name" href="#" onclick="return doclink('link-6', 'BufferedFile', 'link-6');">BufferedFile</a></tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-7" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-7', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Module paramiko.sftp_attr=paramiko.sftp_attr-module.html"><a title="paramiko.sftp_attr" class="py-name" href="#" onclick="return doclink('link-8', 'sftp_attr', 'link-8');">sftp_attr</a></tt> <tt class="py-keyword">import</tt> <tt id="link-9" class="py-name" targets="Class paramiko.SFTPAttributes=paramiko.SFTPAttributes-class.html"><a title="paramiko.SFTPAttributes" class="py-name" href="#" onclick="return doclink('link-9', 'SFTPAttributes', 'link-9');">SFTPAttributes</a></tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> </tt>
-<a name="SFTPFile"></a><div id="SFTPFile-def"><a name="L34"></a><tt class="py-lineno"> 34</tt> <a class="py-toggle" href="#" id="SFTPFile-toggle" onclick="return toggle('SFTPFile');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.sftp_file.SFTPFile-class.html">SFTPFile</a> <tt class="py-op">(</tt><tt class="py-base-class">BufferedFile</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPFile-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="SFTPFile-expanded"><a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"><tt class="py-docstring"> Proxy object for a file on the remote server, in client mode SFTP.</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> <tt class="py-comment"># Some sftp servers will choke if you send read/write requests larger than</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt class="py-comment"># this size.</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt id="link-10" class="py-name" targets="Variable paramiko.SFTPFile.MAX_REQUEST_SIZE=paramiko.SFTPFile-class.html#MAX_REQUEST_SIZE"><a title="paramiko.SFTPFile.MAX_REQUEST_SIZE" class="py-name" href="#" onclick="return doclink('link-10', 'MAX_REQUEST_SIZE', 'link-10');">MAX_REQUEST_SIZE</a></tt> <tt class="py-op">=</tt> <tt class="py-number">32768</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> </tt>
-<a name="SFTPFile.__init__"></a><div id="SFTPFile.__init__-def"><a name="L43"></a><tt class="py-lineno"> 43</tt> <a class="py-toggle" href="#" id="SFTPFile.__init__-toggle" onclick="return toggle('SFTPFile.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_file.SFTPFile-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">sftp</tt><tt class="py-op">,</tt> <tt class="py-param">handle</tt><tt class="py-op">,</tt> <tt class="py-param">mode</tt><tt class="py-op">=</tt><tt class="py-string">'r'</tt><tt class="py-op">,</tt> <tt class="py-param">bufsize</tt><tt class="py-op">=</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPFile.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPFile.__init__-expanded"><a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt id="link-11" class="py-name"><a title="paramiko.BufferedFile" class="py-name" href="#" onclick="return doclink('link-11', 'BufferedFile', 'link-6');">BufferedFile</a></tt><tt class="py-op">.</tt><tt id="link-12" class="py-name" targets="Method paramiko.Agent.__init__()=paramiko.Agent-class.html#__init__,Method paramiko.AgentKey.__init__()=paramiko.AgentKey-class.html#__init__,Method paramiko.BadAuthenticationType.__init__()=paramiko.BadAuthenticationType-class.html#__init__,Method paramiko.BadHostKeyException.__init__()=paramiko.BadHostKeyException-class.html#__init__,Method paramiko.BufferedFile.__init__()=paramiko.BufferedFile-class.html#__init__,Method paramiko.Channel.__init__()=paramiko.Channel-class.html#__init__,Method paramiko.ChannelException.__init__()=paramiko.ChannelException-class.html#__init__,Method paramiko.DSSKey.__init__()=paramiko.DSSKey-class.html#__init__,Method paramiko.HostKeys.__init__()=paramiko.HostKeys-class.html#__init__,Method paramiko.Message.__init__()=paramiko.Message-class.html#__init__,Method paramiko.PKey.__init__()=paramiko.PKey-class.html#__init__,Method paramiko.RSAKey.__init__()=paramiko.RSAKey-class.html#__init__,Method paramiko.SFTPAttributes.__init__()=paramiko.SFTPAttributes-class.html#__init__,Method paramiko.SFTPClient.__init__()=paramiko.SFTPClient-class.html#__init__,Method paramiko.SFTPFile.__init__()=paramiko.SFTPFile-class.html#__init__,Method paramiko.SFTPHandle.__init__()=paramiko.SFTPHandle-class.html#__init__,Method paramiko.SFTPServer.__init__()=paramiko.SFTPServer-class.html#__init__,Method paramiko.SFTPServerInterface.__init__()=paramiko.SFTPServerInterface-class.html#__init__,Method paramiko.SSHClient.__init__()=paramiko.SSHClient-class.html#__init__,Method paramiko.SSHConfig.__init__()=paramiko.SSHConfig-class.html#__init__,Method paramiko.SecurityOptions.__init__()=paramiko.SecurityOptions-class.html#__init__,Method paramiko.SubsystemHandler.__init__()=paramiko.SubsystemHandler-class.html#__init__,Method paramiko.Transport.__init__()=paramiko.Transport-class.html#__init__,Method paramiko.ber.BER.__init__()=paramiko.ber.BER-class.html#__init__,Method paramiko.buffered_pipe.BufferedPipe.__init__()=paramiko.buffered_pipe.BufferedPipe-class.html#__init__,Method paramiko.channel.ChannelStderrFile.__init__()=paramiko.channel.ChannelStderrFile-class.html#__init__,Method paramiko.compress.ZlibCompressor.__init__()=paramiko.compress.ZlibCompressor-class.html#__init__,Method paramiko.compress.ZlibDecompressor.__init__()=paramiko.compress.ZlibDecompressor-class.html#__init__,Method paramiko.hostkeys.HostKeyEntry.__init__()=paramiko.hostkeys.HostKeyEntry-class.html#__init__,Method paramiko.kex_gex.KexGex.__init__()=paramiko.kex_gex.KexGex-class.html#__init__,Method paramiko.kex_group1.KexGroup1.__init__()=paramiko.kex_group1.KexGroup1-class.html#__init__,Method paramiko.logging22.Formatter.__init__()=paramiko.logging22.Formatter-class.html#__init__,Method paramiko.logging22.StreamHandler.__init__()=paramiko.logging22.StreamHandler-class.html#__init__,Method paramiko.logging22.logger.__init__()=paramiko.logging22.logger-class.html#__init__,Method paramiko.pipe.OrPipe.__init__()=paramiko.pipe.OrPipe-class.html#__init__,Method paramiko.pipe.PosixPipe.__init__()=paramiko.pipe.PosixPipe-class.html#__init__,Method paramiko.pipe.WindowsPipe.__init__()=paramiko.pipe.WindowsPipe-class.html#__init__,Method paramiko.primes.ModulusPack.__init__()=paramiko.primes.ModulusPack-class.html#__init__,Method paramiko.ssh_exception.PartialAuthentication.__init__()=paramiko.ssh_exception.PartialAuthentication-class.html#__init__,Method paramiko.transport.ChannelMap.__init__()=paramiko.transport.ChannelMap-class.html#__init__,Method paramiko.util.Counter.__init__()=paramiko.util.Counter-class.html#__init__,Method paramiko.util.enumerate.__init__()=paramiko.util.enumerate-class.html#__init__,Method paramiko.win_pageant.PageantConnection.__init__()=paramiko.win_pageant.PageantConnection-class.html#__init__"><a title="paramiko.Agent.__init__
-paramiko.AgentKey.__init__
-paramiko.BadAuthenticationType.__init__
-paramiko.BadHostKeyException.__init__
-paramiko.BufferedFile.__init__
-paramiko.Channel.__init__
-paramiko.ChannelException.__init__
-paramiko.DSSKey.__init__
-paramiko.HostKeys.__init__
-paramiko.Message.__init__
-paramiko.PKey.__init__
-paramiko.RSAKey.__init__
-paramiko.SFTPAttributes.__init__
-paramiko.SFTPClient.__init__
-paramiko.SFTPFile.__init__
-paramiko.SFTPHandle.__init__
-paramiko.SFTPServer.__init__
-paramiko.SFTPServerInterface.__init__
-paramiko.SSHClient.__init__
-paramiko.SSHConfig.__init__
-paramiko.SecurityOptions.__init__
-paramiko.SubsystemHandler.__init__
-paramiko.Transport.__init__
-paramiko.ber.BER.__init__
-paramiko.buffered_pipe.BufferedPipe.__init__
-paramiko.channel.ChannelStderrFile.__init__
-paramiko.compress.ZlibCompressor.__init__
-paramiko.compress.ZlibDecompressor.__init__
-paramiko.hostkeys.HostKeyEntry.__init__
-paramiko.kex_gex.KexGex.__init__
-paramiko.kex_group1.KexGroup1.__init__
-paramiko.logging22.Formatter.__init__
-paramiko.logging22.StreamHandler.__init__
-paramiko.logging22.logger.__init__
-paramiko.pipe.OrPipe.__init__
-paramiko.pipe.PosixPipe.__init__
-paramiko.pipe.WindowsPipe.__init__
-paramiko.primes.ModulusPack.__init__
-paramiko.ssh_exception.PartialAuthentication.__init__
-paramiko.transport.ChannelMap.__init__
-paramiko.util.Counter.__init__
-paramiko.util.enumerate.__init__
-paramiko.win_pageant.PageantConnection.__init__" class="py-name" href="#" onclick="return doclink('link-12', '__init__', 'link-12');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-13', 'sftp', 'link-3');">sftp</a></tt> <tt class="py-op">=</tt> <tt id="link-14" class="py-name"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-14', 'sftp', 'link-3');">sftp</a></tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">handle</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt id="link-15" class="py-name"><a title="paramiko.BufferedFile" class="py-name" href="#" onclick="return doclink('link-15', 'BufferedFile', 'link-6');">BufferedFile</a></tt><tt class="py-op">.</tt><tt class="py-name">_set_mode</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-name">mode</tt><tt class="py-op">,</tt> <tt class="py-name">bufsize</tt><tt class="py-op">)</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pipelined</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_prefetching</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_prefetch_done</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_prefetch_data</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_prefetch_reads</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_saved_exception</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> </tt>
-<a name="SFTPFile.__del__"></a><div id="SFTPFile.__del__-def"><a name="L55"></a><tt class="py-lineno"> 55</tt> <a class="py-toggle" href="#" id="SFTPFile.__del__-toggle" onclick="return toggle('SFTPFile.__del__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_file.SFTPFile-class.html#__del__">__del__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPFile.__del__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPFile.__del__-expanded"><a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_close</tt><tt class="py-op">(</tt><tt class="py-name">async</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> </tt>
-<a name="SFTPFile.close"></a><div id="SFTPFile.close-def"><a name="L58"></a><tt class="py-lineno"> 58</tt> <a class="py-toggle" href="#" id="SFTPFile.close-toggle" onclick="return toggle('SFTPFile.close');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_file.SFTPFile-class.html#close">close</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPFile.close-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPFile.close-expanded"><a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_close</tt><tt class="py-op">(</tt><tt class="py-name">async</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> </tt>
-<a name="SFTPFile._close"></a><div id="SFTPFile._close-def"><a name="L61"></a><tt class="py-lineno"> 61</tt> <a class="py-toggle" href="#" id="SFTPFile._close-toggle" onclick="return toggle('SFTPFile._close');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_file.SFTPFile-class.html#_close">_close</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">async</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPFile._close-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPFile._close-expanded"><a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-comment"># We allow double-close without signaling an error, because real</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-comment"># Python file objects do. However, we must protect against actually</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-comment"># sending multiple CMD_CLOSE packets, because after we close our</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-comment"># handle, the same handle may be re-allocated by the server, and we</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-comment"># may end up mysteriously closing some random other file. (This is</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-comment"># especially important because we unconditionally call close() from</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-comment"># __del__.)</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_closed</tt><tt class="py-op">:</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-16', 'sftp', 'link-3');">sftp</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-17" class="py-name" targets="Variable paramiko.auth_handler.DEBUG=paramiko.auth_handler-module.html#DEBUG,Variable paramiko.channel.DEBUG=paramiko.channel-module.html#DEBUG,Variable paramiko.client.DEBUG=paramiko.client-module.html#DEBUG,Variable paramiko.common.DEBUG=paramiko.common-module.html#DEBUG,Variable paramiko.dsskey.DEBUG=paramiko.dsskey-module.html#DEBUG,Variable paramiko.hostkeys.DEBUG=paramiko.hostkeys-module.html#DEBUG,Variable paramiko.kex_gex.DEBUG=paramiko.kex_gex-module.html#DEBUG,Variable paramiko.kex_group1.DEBUG=paramiko.kex_group1-module.html#DEBUG,Variable paramiko.logging22.DEBUG=paramiko.logging22-module.html#DEBUG,Variable paramiko.packet.DEBUG=paramiko.packet-module.html#DEBUG,Variable paramiko.pkey.DEBUG=paramiko.pkey-module.html#DEBUG,Variable paramiko.rsakey.DEBUG=paramiko.rsakey-module.html#DEBUG,Variable paramiko.server.DEBUG=paramiko.server-module.html#DEBUG,Variable paramiko.sftp.DEBUG=paramiko.sftp-module.html#DEBUG,Variable paramiko.sftp_attr.DEBUG=paramiko.sftp_attr-module.html#DEBUG,Variable paramiko.sftp_client.DEBUG=paramiko.sftp_client-module.html#DEBUG,Variable paramiko.sftp_file.DEBUG=paramiko.sftp_file-module.html#DEBUG,Variable paramiko.sftp_handle.DEBUG=paramiko.sftp_handle-module.html#DEBUG,Variable paramiko.sftp_server.DEBUG=paramiko.sftp_server-module.html#DEBUG,Variable paramiko.sftp_si.DEBUG=paramiko.sftp_si-module.html#DEBUG,Variable paramiko.transport.DEBUG=paramiko.transport-module.html#DEBUG,Variable paramiko.util.DEBUG=paramiko.util-module.html#DEBUG"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-17', 'DEBUG', 'link-17');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'close(%s)'</tt> <tt class="py-op">%</tt> <tt class="py-name">hexlify</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pipelined</tt><tt class="py-op">:</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-18', 'sftp', 'link-3');">sftp</a></tt><tt class="py-op">.</tt><tt class="py-name">_finish_responses</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt id="link-19" class="py-name"><a title="paramiko.BufferedFile" class="py-name" href="#" onclick="return doclink('link-19', 'BufferedFile', 'link-6');">BufferedFile</a></tt><tt class="py-op">.</tt><tt id="link-20" class="py-name" targets="Method paramiko.Agent.close()=paramiko.Agent-class.html#close,Method paramiko.BufferedFile.close()=paramiko.BufferedFile-class.html#close,Method paramiko.Channel.close()=paramiko.Channel-class.html#close,Method paramiko.SFTPClient.close()=paramiko.SFTPClient-class.html#close,Method paramiko.SFTPFile.close()=paramiko.SFTPFile-class.html#close,Method paramiko.SFTPHandle.close()=paramiko.SFTPHandle-class.html#close,Method paramiko.SSHClient.close()=paramiko.SSHClient-class.html#close,Method paramiko.Transport.close()=paramiko.Transport-class.html#close,Method paramiko.buffered_pipe.BufferedPipe.close()=paramiko.buffered_pipe.BufferedPipe-class.html#close,Method paramiko.pipe.PosixPipe.close()=paramiko.pipe.PosixPipe-class.html#close,Method paramiko.pipe.WindowsPipe.close()=paramiko.pipe.WindowsPipe-class.html#close,Method paramiko.win_pageant.PageantConnection.close()=paramiko.win_pageant.PageantConnection-class.html#close"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-20', 'close', 'link-20');">close</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">async</tt><tt class="py-op">:</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-comment"># GC'd file handle could be called from an arbitrary thread -- don't wait for a response</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-21" class="py-name"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-21', 'sftp', 'link-3');">sftp</a></tt><tt class="py-op">.</tt><tt class="py-name">_async_request</tt><tt class="py-op">(</tt><tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt id="link-22" class="py-name" targets="Variable paramiko.sftp.CMD_CLOSE=paramiko.sftp-module.html#CMD_CLOSE,Variable paramiko.sftp_attr.CMD_CLOSE=paramiko.sftp_attr-module.html#CMD_CLOSE,Variable paramiko.sftp_client.CMD_CLOSE=paramiko.sftp_client-module.html#CMD_CLOSE,Variable paramiko.sftp_file.CMD_CLOSE=paramiko.sftp_file-module.html#CMD_CLOSE,Variable paramiko.sftp_handle.CMD_CLOSE=paramiko.sftp_handle-module.html#CMD_CLOSE,Variable paramiko.sftp_server.CMD_CLOSE=paramiko.sftp_server-module.html#CMD_CLOSE,Variable paramiko.sftp_si.CMD_CLOSE=paramiko.sftp_si-module.html#CMD_CLOSE"><a title="paramiko.sftp.CMD_CLOSE
-paramiko.sftp_attr.CMD_CLOSE
-paramiko.sftp_client.CMD_CLOSE
-paramiko.sftp_file.CMD_CLOSE
-paramiko.sftp_handle.CMD_CLOSE
-paramiko.sftp_server.CMD_CLOSE
-paramiko.sftp_si.CMD_CLOSE" class="py-name" href="#" onclick="return doclink('link-22', 'CMD_CLOSE', 'link-22');">CMD_CLOSE</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">)</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-23', 'sftp', 'link-3');">sftp</a></tt><tt class="py-op">.</tt><tt class="py-name">_request</tt><tt class="py-op">(</tt><tt id="link-24" class="py-name"><a title="paramiko.sftp.CMD_CLOSE
-paramiko.sftp_attr.CMD_CLOSE
-paramiko.sftp_client.CMD_CLOSE
-paramiko.sftp_file.CMD_CLOSE
-paramiko.sftp_handle.CMD_CLOSE
-paramiko.sftp_server.CMD_CLOSE
-paramiko.sftp_si.CMD_CLOSE" class="py-name" href="#" onclick="return doclink('link-24', 'CMD_CLOSE', 'link-22');">CMD_CLOSE</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">)</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">EOFError</tt><tt class="py-op">:</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-comment"># may have outlived the Transport connection</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-op">(</tt><tt class="py-name">IOError</tt><tt class="py-op">,</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">error</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-comment"># may have outlived the Transport connection</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-</div><a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> </tt>
-<a name="SFTPFile._data_in_prefetch_requests"></a><div id="SFTPFile._data_in_prefetch_requests-def"><a name="L88"></a><tt class="py-lineno"> 88</tt> <a class="py-toggle" href="#" id="SFTPFile._data_in_prefetch_requests-toggle" onclick="return toggle('SFTPFile._data_in_prefetch_requests');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_file.SFTPFile-class.html#_data_in_prefetch_requests">_data_in_prefetch_requests</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">offset</tt><tt class="py-op">,</tt> <tt class="py-param">size</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPFile._data_in_prefetch_requests-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPFile._data_in_prefetch_requests-expanded"><a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-name">k</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-name">i</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_prefetch_reads</tt> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">&lt;=</tt> <tt class="py-name">offset</tt><tt class="py-op">]</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">k</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">False</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-name">k</tt><tt class="py-op">.</tt><tt class="py-name">sort</tt><tt class="py-op">(</tt><tt class="py-keyword">lambda</tt> <tt class="py-name">x</tt><tt class="py-op">,</tt> <tt class="py-name">y</tt><tt class="py-op">:</tt> <tt class="py-name">cmp</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">y</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-name">buf_offset</tt><tt class="py-op">,</tt> <tt class="py-name">buf_size</tt> <tt class="py-op">=</tt> <tt class="py-name">k</tt><tt class="py-op">[</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">buf_offset</tt> <tt class="py-op">+</tt> <tt class="py-name">buf_size</tt> <tt class="py-op">&lt;=</tt> <tt class="py-name">offset</tt><tt class="py-op">:</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-comment"># prefetch request ends before this one begins</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">False</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">buf_offset</tt> <tt class="py-op">+</tt> <tt class="py-name">buf_size</tt> <tt class="py-op">&gt;=</tt> <tt class="py-name">offset</tt> <tt class="py-op">+</tt> <tt class="py-name">size</tt><tt class="py-op">:</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-comment"># inclusive</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">True</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-comment"># well, we have part of the request. see if another chunk has the rest.</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_data_in_prefetch_requests</tt><tt class="py-op">(</tt><tt class="py-name">buf_offset</tt> <tt class="py-op">+</tt> <tt class="py-name">buf_size</tt><tt class="py-op">,</tt> <tt class="py-name">offset</tt> <tt class="py-op">+</tt> <tt class="py-name">size</tt> <tt class="py-op">-</tt> <tt class="py-name">buf_offset</tt> <tt class="py-op">-</tt> <tt class="py-name">buf_size</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> </tt>
-<a name="SFTPFile._data_in_prefetch_buffers"></a><div id="SFTPFile._data_in_prefetch_buffers-def"><a name="L103"></a><tt class="py-lineno">103</tt> <a class="py-toggle" href="#" id="SFTPFile._data_in_prefetch_buffers-toggle" onclick="return toggle('SFTPFile._data_in_prefetch_buffers');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_file.SFTPFile-class.html#_data_in_prefetch_buffers">_data_in_prefetch_buffers</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">offset</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPFile._data_in_prefetch_buffers-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPFile._data_in_prefetch_buffers-expanded"><a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"><tt class="py-docstring"> if a block of data is present in the prefetch buffers, at the given</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"><tt class="py-docstring"> offset, return the offset of the relevant prefetch buffer. otherwise,</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"><tt class="py-docstring"> return None. this guarantees nothing about the number of bytes</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"><tt class="py-docstring"> collected in the prefetch buffer so far.</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-name">k</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-name">i</tt> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_prefetch_data</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name" targets="Method paramiko.HostKeys.keys()=paramiko.HostKeys-class.html#keys"><a title="paramiko.HostKeys.keys" class="py-name" href="#" onclick="return doclink('link-25', 'keys', 'link-25');">keys</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">&lt;=</tt> <tt class="py-name">offset</tt><tt class="py-op">]</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">k</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-name">index</tt> <tt class="py-op">=</tt> <tt class="py-name">max</tt><tt class="py-op">(</tt><tt class="py-name">k</tt><tt class="py-op">)</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-name">buf_offset</tt> <tt class="py-op">=</tt> <tt class="py-name">offset</tt> <tt class="py-op">-</tt> <tt class="py-name">index</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">buf_offset</tt> <tt class="py-op">&gt;=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_prefetch_data</tt><tt class="py-op">[</tt><tt class="py-name">index</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-comment"># it's not here</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">index</tt> </tt>
-</div><a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> </tt>
-<a name="SFTPFile._read_prefetch"></a><div id="SFTPFile._read_prefetch-def"><a name="L120"></a><tt class="py-lineno">120</tt> <a class="py-toggle" href="#" id="SFTPFile._read_prefetch-toggle" onclick="return toggle('SFTPFile._read_prefetch');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_file.SFTPFile-class.html#_read_prefetch">_read_prefetch</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">size</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPFile._read_prefetch-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPFile._read_prefetch-expanded"><a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"><tt class="py-docstring"> read data out of the prefetch buffer, if possible. if the data isn't</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"><tt class="py-docstring"> in the buffer, return None. otherwise, behaves like a normal read.</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt class="py-comment"># while not closed, and haven't fetched past the current position, and haven't reached EOF...</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-name">offset</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_data_in_prefetch_buffers</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_realpos</tt><tt class="py-op">)</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">offset</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_prefetch_done</tt> <tt class="py-keyword">or</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_closed</tt><tt class="py-op">:</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-26', 'sftp', 'link-3');">sftp</a></tt><tt class="py-op">.</tt><tt class="py-name">_read_response</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_check_exception</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">offset</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_prefetching</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt id="link-27" class="py-name" targets="Method paramiko.SFTPFile.prefetch()=paramiko.SFTPFile-class.html#prefetch"><a title="paramiko.SFTPFile.prefetch" class="py-name" href="#" onclick="return doclink('link-27', 'prefetch', 'link-27');">prefetch</a></tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_prefetch_data</tt><tt class="py-op">[</tt><tt class="py-name">offset</tt><tt class="py-op">]</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-keyword">del</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_prefetch_data</tt><tt class="py-op">[</tt><tt class="py-name">offset</tt><tt class="py-op">]</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-name">buf_offset</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_realpos</tt> <tt class="py-op">-</tt> <tt class="py-name">offset</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">buf_offset</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_prefetch_data</tt><tt class="py-op">[</tt><tt class="py-name">offset</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt id="link-28" class="py-name"><a title="paramiko.SFTPFile.prefetch" class="py-name" href="#" onclick="return doclink('link-28', 'prefetch', 'link-27');">prefetch</a></tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-name">buf_offset</tt><tt class="py-op">]</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> <tt id="link-29" class="py-name"><a title="paramiko.SFTPFile.prefetch" class="py-name" href="#" onclick="return doclink('link-29', 'prefetch', 'link-27');">prefetch</a></tt> <tt class="py-op">=</tt> <tt id="link-30" class="py-name"><a title="paramiko.SFTPFile.prefetch" class="py-name" href="#" onclick="return doclink('link-30', 'prefetch', 'link-27');">prefetch</a></tt><tt class="py-op">[</tt><tt class="py-name">buf_offset</tt><tt class="py-op">:</tt><tt class="py-op">]</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">size</tt> <tt class="py-op">&lt;</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt id="link-31" class="py-name"><a title="paramiko.SFTPFile.prefetch" class="py-name" href="#" onclick="return doclink('link-31', 'prefetch', 'link-27');">prefetch</a></tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_prefetch_data</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_realpos</tt> <tt class="py-op">+</tt> <tt class="py-name">size</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt id="link-32" class="py-name"><a title="paramiko.SFTPFile.prefetch" class="py-name" href="#" onclick="return doclink('link-32', 'prefetch', 'link-27');">prefetch</a></tt><tt class="py-op">[</tt><tt class="py-name">size</tt><tt class="py-op">:</tt><tt class="py-op">]</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt id="link-33" class="py-name"><a title="paramiko.SFTPFile.prefetch" class="py-name" href="#" onclick="return doclink('link-33', 'prefetch', 'link-27');">prefetch</a></tt> <tt class="py-op">=</tt> <tt id="link-34" class="py-name"><a title="paramiko.SFTPFile.prefetch" class="py-name" href="#" onclick="return doclink('link-34', 'prefetch', 'link-27');">prefetch</a></tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-name">size</tt><tt class="py-op">]</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-35" class="py-name"><a title="paramiko.SFTPFile.prefetch" class="py-name" href="#" onclick="return doclink('link-35', 'prefetch', 'link-27');">prefetch</a></tt> </tt>
-</div><a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> </tt>
-<a name="SFTPFile._read"></a><div id="SFTPFile._read-def"><a name="L149"></a><tt class="py-lineno">149</tt> <a class="py-toggle" href="#" id="SFTPFile._read-toggle" onclick="return toggle('SFTPFile._read');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_file.SFTPFile-class.html#_read">_read</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">size</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPFile._read-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPFile._read-expanded"><a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">min</tt><tt class="py-op">(</tt><tt class="py-name">size</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="paramiko.SFTPFile.MAX_REQUEST_SIZE" class="py-name" href="#" onclick="return doclink('link-36', 'MAX_REQUEST_SIZE', 'link-10');">MAX_REQUEST_SIZE</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_prefetching</tt><tt class="py-op">:</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_read_prefetch</tt><tt class="py-op">(</tt><tt class="py-name">size</tt><tt class="py-op">)</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">data</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">data</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">,</tt> <tt class="py-name">msg</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-37" class="py-name"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-37', 'sftp', 'link-3');">sftp</a></tt><tt class="py-op">.</tt><tt class="py-name">_request</tt><tt class="py-op">(</tt><tt id="link-38" class="py-name" targets="Variable paramiko.sftp.CMD_READ=paramiko.sftp-module.html#CMD_READ,Variable paramiko.sftp_attr.CMD_READ=paramiko.sftp_attr-module.html#CMD_READ,Variable paramiko.sftp_client.CMD_READ=paramiko.sftp_client-module.html#CMD_READ,Variable paramiko.sftp_file.CMD_READ=paramiko.sftp_file-module.html#CMD_READ,Variable paramiko.sftp_handle.CMD_READ=paramiko.sftp_handle-module.html#CMD_READ,Variable paramiko.sftp_server.CMD_READ=paramiko.sftp_server-module.html#CMD_READ,Variable paramiko.sftp_si.CMD_READ=paramiko.sftp_si-module.html#CMD_READ"><a title="paramiko.sftp.CMD_READ
-paramiko.sftp_attr.CMD_READ
-paramiko.sftp_client.CMD_READ
-paramiko.sftp_file.CMD_READ
-paramiko.sftp_handle.CMD_READ
-paramiko.sftp_server.CMD_READ
-paramiko.sftp_si.CMD_READ" class="py-name" href="#" onclick="return doclink('link-38', 'CMD_READ', 'link-38');">CMD_READ</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">,</tt> <tt class="py-name">long</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_realpos</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">size</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">t</tt> <tt class="py-op">!=</tt> <tt id="link-39" class="py-name" targets="Variable paramiko.sftp.CMD_DATA=paramiko.sftp-module.html#CMD_DATA,Variable paramiko.sftp_attr.CMD_DATA=paramiko.sftp_attr-module.html#CMD_DATA,Variable paramiko.sftp_client.CMD_DATA=paramiko.sftp_client-module.html#CMD_DATA,Variable paramiko.sftp_file.CMD_DATA=paramiko.sftp_file-module.html#CMD_DATA,Variable paramiko.sftp_handle.CMD_DATA=paramiko.sftp_handle-module.html#CMD_DATA,Variable paramiko.sftp_server.CMD_DATA=paramiko.sftp_server-module.html#CMD_DATA,Variable paramiko.sftp_si.CMD_DATA=paramiko.sftp_si-module.html#CMD_DATA"><a title="paramiko.sftp.CMD_DATA
-paramiko.sftp_attr.CMD_DATA
-paramiko.sftp_client.CMD_DATA
-paramiko.sftp_file.CMD_DATA
-paramiko.sftp_handle.CMD_DATA
-paramiko.sftp_server.CMD_DATA
-paramiko.sftp_si.CMD_DATA" class="py-name" href="#" onclick="return doclink('link-39', 'CMD_DATA', 'link-39');">CMD_DATA</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-40" class="py-name" targets="Class paramiko.SFTPError=paramiko.SFTPError-class.html"><a title="paramiko.SFTPError" class="py-name" href="#" onclick="return doclink('link-40', 'SFTPError', 'link-40');">SFTPError</a></tt><tt class="py-op">(</tt><tt class="py-string">'Expected data'</tt><tt class="py-op">)</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name" targets="Method paramiko.Message.get_string()=paramiko.Message-class.html#get_string"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-41', 'get_string', 'link-41');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> </tt>
-<a name="SFTPFile._write"></a><div id="SFTPFile._write-def"><a name="L160"></a><tt class="py-lineno">160</tt> <a class="py-toggle" href="#" id="SFTPFile._write-toggle" onclick="return toggle('SFTPFile._write');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_file.SFTPFile-class.html#_write">_write</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">data</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPFile._write-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPFile._write-expanded"><a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt class="py-comment"># may write less than requested if it would exceed max packet size</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> <tt class="py-name">chunk</tt> <tt class="py-op">=</tt> <tt class="py-name">min</tt><tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-42" class="py-name"><a title="paramiko.SFTPFile.MAX_REQUEST_SIZE" class="py-name" href="#" onclick="return doclink('link-42', 'MAX_REQUEST_SIZE', 'link-10');">MAX_REQUEST_SIZE</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"> <tt class="py-name">req</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-43" class="py-name"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-43', 'sftp', 'link-3');">sftp</a></tt><tt class="py-op">.</tt><tt class="py-name">_async_request</tt><tt class="py-op">(</tt><tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt id="link-44" class="py-name" targets="Variable paramiko.sftp.CMD_WRITE=paramiko.sftp-module.html#CMD_WRITE,Variable paramiko.sftp_attr.CMD_WRITE=paramiko.sftp_attr-module.html#CMD_WRITE,Variable paramiko.sftp_client.CMD_WRITE=paramiko.sftp_client-module.html#CMD_WRITE,Variable paramiko.sftp_file.CMD_WRITE=paramiko.sftp_file-module.html#CMD_WRITE,Variable paramiko.sftp_handle.CMD_WRITE=paramiko.sftp_handle-module.html#CMD_WRITE,Variable paramiko.sftp_server.CMD_WRITE=paramiko.sftp_server-module.html#CMD_WRITE,Variable paramiko.sftp_si.CMD_WRITE=paramiko.sftp_si-module.html#CMD_WRITE"><a title="paramiko.sftp.CMD_WRITE
-paramiko.sftp_attr.CMD_WRITE
-paramiko.sftp_client.CMD_WRITE
-paramiko.sftp_file.CMD_WRITE
-paramiko.sftp_handle.CMD_WRITE
-paramiko.sftp_server.CMD_WRITE
-paramiko.sftp_si.CMD_WRITE" class="py-name" href="#" onclick="return doclink('link-44', 'CMD_WRITE', 'link-44');">CMD_WRITE</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">,</tt> <tt class="py-name">long</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_realpos</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-name">chunk</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pipelined</tt> <tt class="py-keyword">or</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-45" class="py-name"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-45', 'sftp', 'link-3');">sftp</a></tt><tt class="py-op">.</tt><tt class="py-name">sock</tt><tt class="py-op">.</tt><tt id="link-46" class="py-name" targets="Method paramiko.Channel.recv_ready()=paramiko.Channel-class.html#recv_ready"><a title="paramiko.Channel.recv_ready" class="py-name" href="#" onclick="return doclink('link-46', 'recv_ready', 'link-46');">recv_ready</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">,</tt> <tt class="py-name">msg</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-47" class="py-name"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-47', 'sftp', 'link-3');">sftp</a></tt><tt class="py-op">.</tt><tt class="py-name">_read_response</tt><tt class="py-op">(</tt><tt class="py-name">req</tt><tt class="py-op">)</tt> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">t</tt> <tt class="py-op">!=</tt> <tt id="link-48" class="py-name" targets="Variable paramiko.sftp.CMD_STATUS=paramiko.sftp-module.html#CMD_STATUS,Variable paramiko.sftp_attr.CMD_STATUS=paramiko.sftp_attr-module.html#CMD_STATUS,Variable paramiko.sftp_client.CMD_STATUS=paramiko.sftp_client-module.html#CMD_STATUS,Variable paramiko.sftp_file.CMD_STATUS=paramiko.sftp_file-module.html#CMD_STATUS,Variable paramiko.sftp_handle.CMD_STATUS=paramiko.sftp_handle-module.html#CMD_STATUS,Variable paramiko.sftp_server.CMD_STATUS=paramiko.sftp_server-module.html#CMD_STATUS,Variable paramiko.sftp_si.CMD_STATUS=paramiko.sftp_si-module.html#CMD_STATUS"><a title="paramiko.sftp.CMD_STATUS
-paramiko.sftp_attr.CMD_STATUS
-paramiko.sftp_client.CMD_STATUS
-paramiko.sftp_file.CMD_STATUS
-paramiko.sftp_handle.CMD_STATUS
-paramiko.sftp_server.CMD_STATUS
-paramiko.sftp_si.CMD_STATUS" class="py-name" href="#" onclick="return doclink('link-48', 'CMD_STATUS', 'link-48');">CMD_STATUS</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-49" class="py-name"><a title="paramiko.SFTPError" class="py-name" href="#" onclick="return doclink('link-49', 'SFTPError', 'link-40');">SFTPError</a></tt><tt class="py-op">(</tt><tt class="py-string">'Expected status'</tt><tt class="py-op">)</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt class="py-comment"># convert_status already called</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">chunk</tt> </tt>
-</div><a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"> </tt>
-<a name="SFTPFile.settimeout"></a><div id="SFTPFile.settimeout-def"><a name="L171"></a><tt class="py-lineno">171</tt> <a class="py-toggle" href="#" id="SFTPFile.settimeout-toggle" onclick="return toggle('SFTPFile.settimeout');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_file.SFTPFile-class.html#settimeout">settimeout</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">timeout</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPFile.settimeout-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPFile.settimeout-expanded"><a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"><tt class="py-docstring"> Set a timeout on read/write operations on the underlying socket or</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"><tt class="py-docstring"> ssh L{Channel}.</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"><tt class="py-docstring"> @see: L{Channel.settimeout}</tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"><tt class="py-docstring"> @param timeout: seconds to wait for a pending read/write operation</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"><tt class="py-docstring"> before raising C{socket.timeout}, or C{None} for no timeout</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"><tt class="py-docstring"> @type timeout: float</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-50" class="py-name"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-50', 'sftp', 'link-3');">sftp</a></tt><tt class="py-op">.</tt><tt class="py-name">sock</tt><tt class="py-op">.</tt><tt id="link-51" class="py-name" targets="Method paramiko.Channel.settimeout()=paramiko.Channel-class.html#settimeout,Method paramiko.SFTPFile.settimeout()=paramiko.SFTPFile-class.html#settimeout"><a title="paramiko.Channel.settimeout
-paramiko.SFTPFile.settimeout" class="py-name" href="#" onclick="return doclink('link-51', 'settimeout', 'link-51');">settimeout</a></tt><tt class="py-op">(</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> </tt>
-<a name="SFTPFile.gettimeout"></a><div id="SFTPFile.gettimeout-def"><a name="L183"></a><tt class="py-lineno">183</tt> <a class="py-toggle" href="#" id="SFTPFile.gettimeout-toggle" onclick="return toggle('SFTPFile.gettimeout');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_file.SFTPFile-class.html#gettimeout">gettimeout</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPFile.gettimeout-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPFile.gettimeout-expanded"><a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"><tt class="py-docstring"> Returns the timeout in seconds (as a float) associated with the socket</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"><tt class="py-docstring"> or ssh L{Channel} used for this file.</tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"><tt class="py-docstring"> @see: L{Channel.gettimeout}</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: float</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-52" class="py-name"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-52', 'sftp', 'link-3');">sftp</a></tt><tt class="py-op">.</tt><tt class="py-name">sock</tt><tt class="py-op">.</tt><tt id="link-53" class="py-name" targets="Method paramiko.Channel.gettimeout()=paramiko.Channel-class.html#gettimeout,Method paramiko.SFTPFile.gettimeout()=paramiko.SFTPFile-class.html#gettimeout"><a title="paramiko.Channel.gettimeout
-paramiko.SFTPFile.gettimeout" class="py-name" href="#" onclick="return doclink('link-53', 'gettimeout', 'link-53');">gettimeout</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"> </tt>
-<a name="SFTPFile.setblocking"></a><div id="SFTPFile.setblocking-def"><a name="L193"></a><tt class="py-lineno">193</tt> <a class="py-toggle" href="#" id="SFTPFile.setblocking-toggle" onclick="return toggle('SFTPFile.setblocking');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_file.SFTPFile-class.html#setblocking">setblocking</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">blocking</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPFile.setblocking-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPFile.setblocking-expanded"><a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"><tt class="py-docstring"> Set blocking or non-blocking mode on the underiying socket or ssh</tt> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"><tt class="py-docstring"> L{Channel}.</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"><tt class="py-docstring"> @see: L{Channel.setblocking}</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"><tt class="py-docstring"> @param blocking: 0 to set non-blocking mode; non-0 to set blocking</tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"><tt class="py-docstring"> mode.</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"><tt class="py-docstring"> @type blocking: int</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-54" class="py-name"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-54', 'sftp', 'link-3');">sftp</a></tt><tt class="py-op">.</tt><tt class="py-name">sock</tt><tt class="py-op">.</tt><tt id="link-55" class="py-name" targets="Method paramiko.Channel.setblocking()=paramiko.Channel-class.html#setblocking,Method paramiko.SFTPFile.setblocking()=paramiko.SFTPFile-class.html#setblocking"><a title="paramiko.Channel.setblocking
-paramiko.SFTPFile.setblocking" class="py-name" href="#" onclick="return doclink('link-55', 'setblocking', 'link-55');">setblocking</a></tt><tt class="py-op">(</tt><tt class="py-name">blocking</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"> </tt>
-<a name="SFTPFile.seek"></a><div id="SFTPFile.seek-def"><a name="L205"></a><tt class="py-lineno">205</tt> <a class="py-toggle" href="#" id="SFTPFile.seek-toggle" onclick="return toggle('SFTPFile.seek');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_file.SFTPFile-class.html#seek">seek</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">offset</tt><tt class="py-op">,</tt> <tt class="py-param">whence</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPFile.seek-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPFile.seek-expanded"><a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-56" class="py-name" targets="Method paramiko.BufferedFile.flush()=paramiko.BufferedFile-class.html#flush"><a title="paramiko.BufferedFile.flush" class="py-name" href="#" onclick="return doclink('link-56', 'flush', 'link-56');">flush</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">whence</tt> <tt class="py-op">==</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-57" class="py-name" targets="Variable paramiko.BufferedFile.SEEK_SET=paramiko.BufferedFile-class.html#SEEK_SET"><a title="paramiko.BufferedFile.SEEK_SET" class="py-name" href="#" onclick="return doclink('link-57', 'SEEK_SET', 'link-57');">SEEK_SET</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_realpos</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pos</tt> <tt class="py-op">=</tt> <tt class="py-name">offset</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">whence</tt> <tt class="py-op">==</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-58" class="py-name" targets="Variable paramiko.BufferedFile.SEEK_CUR=paramiko.BufferedFile-class.html#SEEK_CUR"><a title="paramiko.BufferedFile.SEEK_CUR" class="py-name" href="#" onclick="return doclink('link-58', 'SEEK_CUR', 'link-58');">SEEK_CUR</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pos</tt> <tt class="py-op">+=</tt> <tt class="py-name">offset</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_realpos</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pos</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_realpos</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_pos</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_get_size</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-name">offset</tt> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_rbuffer</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-</div><a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"> </tt>
-<a name="SFTPFile.stat"></a><div id="SFTPFile.stat-def"><a name="L216"></a><tt class="py-lineno">216</tt> <a class="py-toggle" href="#" id="SFTPFile.stat-toggle" onclick="return toggle('SFTPFile.stat');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_file.SFTPFile-class.html#stat">stat</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPFile.stat-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPFile.stat-expanded"><a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"><tt class="py-docstring"> Retrieve information about this file from the remote system. This is</tt> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"><tt class="py-docstring"> exactly like L{SFTP.stat}, except that it operates on an already-open</tt> </tt>
-<a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"><tt class="py-docstring"> file.</tt> </tt>
-<a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L222"></a><tt class="py-lineno">222</tt> <tt class="py-line"><tt class="py-docstring"> @return: an object containing attributes about this file.</tt> </tt>
-<a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: SFTPAttributes</tt> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">,</tt> <tt class="py-name">msg</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-59" class="py-name"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-59', 'sftp', 'link-3');">sftp</a></tt><tt class="py-op">.</tt><tt class="py-name">_request</tt><tt class="py-op">(</tt><tt id="link-60" class="py-name" targets="Variable paramiko.sftp.CMD_FSTAT=paramiko.sftp-module.html#CMD_FSTAT,Variable paramiko.sftp_attr.CMD_FSTAT=paramiko.sftp_attr-module.html#CMD_FSTAT,Variable paramiko.sftp_client.CMD_FSTAT=paramiko.sftp_client-module.html#CMD_FSTAT,Variable paramiko.sftp_file.CMD_FSTAT=paramiko.sftp_file-module.html#CMD_FSTAT,Variable paramiko.sftp_handle.CMD_FSTAT=paramiko.sftp_handle-module.html#CMD_FSTAT,Variable paramiko.sftp_server.CMD_FSTAT=paramiko.sftp_server-module.html#CMD_FSTAT,Variable paramiko.sftp_si.CMD_FSTAT=paramiko.sftp_si-module.html#CMD_FSTAT"><a title="paramiko.sftp.CMD_FSTAT
-paramiko.sftp_attr.CMD_FSTAT
-paramiko.sftp_client.CMD_FSTAT
-paramiko.sftp_file.CMD_FSTAT
-paramiko.sftp_handle.CMD_FSTAT
-paramiko.sftp_server.CMD_FSTAT
-paramiko.sftp_si.CMD_FSTAT" class="py-name" href="#" onclick="return doclink('link-60', 'CMD_FSTAT', 'link-60');">CMD_FSTAT</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">)</tt> </tt>
-<a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">t</tt> <tt class="py-op">!=</tt> <tt id="link-61" class="py-name" targets="Variable paramiko.sftp.CMD_ATTRS=paramiko.sftp-module.html#CMD_ATTRS,Variable paramiko.sftp_attr.CMD_ATTRS=paramiko.sftp_attr-module.html#CMD_ATTRS,Variable paramiko.sftp_client.CMD_ATTRS=paramiko.sftp_client-module.html#CMD_ATTRS,Variable paramiko.sftp_file.CMD_ATTRS=paramiko.sftp_file-module.html#CMD_ATTRS,Variable paramiko.sftp_handle.CMD_ATTRS=paramiko.sftp_handle-module.html#CMD_ATTRS,Variable paramiko.sftp_server.CMD_ATTRS=paramiko.sftp_server-module.html#CMD_ATTRS,Variable paramiko.sftp_si.CMD_ATTRS=paramiko.sftp_si-module.html#CMD_ATTRS"><a title="paramiko.sftp.CMD_ATTRS
-paramiko.sftp_attr.CMD_ATTRS
-paramiko.sftp_client.CMD_ATTRS
-paramiko.sftp_file.CMD_ATTRS
-paramiko.sftp_handle.CMD_ATTRS
-paramiko.sftp_server.CMD_ATTRS
-paramiko.sftp_si.CMD_ATTRS" class="py-name" href="#" onclick="return doclink('link-61', 'CMD_ATTRS', 'link-61');">CMD_ATTRS</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-62" class="py-name"><a title="paramiko.SFTPError" class="py-name" href="#" onclick="return doclink('link-62', 'SFTPError', 'link-40');">SFTPError</a></tt><tt class="py-op">(</tt><tt class="py-string">'Expected attributes'</tt><tt class="py-op">)</tt> </tt>
-<a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-63" class="py-name"><a title="paramiko.SFTPAttributes" class="py-name" href="#" onclick="return doclink('link-63', 'SFTPAttributes', 'link-9');">SFTPAttributes</a></tt><tt class="py-op">.</tt><tt class="py-name">_from_msg</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L229"></a><tt class="py-lineno">229</tt> <tt class="py-line"> </tt>
-<a name="SFTPFile.chmod"></a><div id="SFTPFile.chmod-def"><a name="L230"></a><tt class="py-lineno">230</tt> <a class="py-toggle" href="#" id="SFTPFile.chmod-toggle" onclick="return toggle('SFTPFile.chmod');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_file.SFTPFile-class.html#chmod">chmod</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">mode</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPFile.chmod-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPFile.chmod-expanded"><a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"><tt class="py-docstring"> Change the mode (permissions) of this file. The permissions are</tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"><tt class="py-docstring"> unix-style and identical to those used by python's C{os.chmod}</tt> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"><tt class="py-docstring"> function.</tt> </tt>
-<a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"><tt class="py-docstring"> @param mode: new permissions</tt> </tt>
-<a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"><tt class="py-docstring"> @type mode: int</tt> </tt>
-<a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L239"></a><tt class="py-lineno">239</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-64" class="py-name"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-64', 'sftp', 'link-3');">sftp</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-65" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-65', 'DEBUG', 'link-17');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'chmod(%s, %r)'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">hexlify</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">mode</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"> <tt class="py-name">attr</tt> <tt class="py-op">=</tt> <tt id="link-66" class="py-name"><a title="paramiko.SFTPAttributes" class="py-name" href="#" onclick="return doclink('link-66', 'SFTPAttributes', 'link-9');">SFTPAttributes</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">st_mode</tt> <tt class="py-op">=</tt> <tt class="py-name">mode</tt> </tt>
-<a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-67" class="py-name"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-67', 'sftp', 'link-3');">sftp</a></tt><tt class="py-op">.</tt><tt class="py-name">_request</tt><tt class="py-op">(</tt><tt id="link-68" class="py-name" targets="Variable paramiko.sftp.CMD_FSETSTAT=paramiko.sftp-module.html#CMD_FSETSTAT,Variable paramiko.sftp_attr.CMD_FSETSTAT=paramiko.sftp_attr-module.html#CMD_FSETSTAT,Variable paramiko.sftp_client.CMD_FSETSTAT=paramiko.sftp_client-module.html#CMD_FSETSTAT,Variable paramiko.sftp_file.CMD_FSETSTAT=paramiko.sftp_file-module.html#CMD_FSETSTAT,Variable paramiko.sftp_handle.CMD_FSETSTAT=paramiko.sftp_handle-module.html#CMD_FSETSTAT,Variable paramiko.sftp_server.CMD_FSETSTAT=paramiko.sftp_server-module.html#CMD_FSETSTAT,Variable paramiko.sftp_si.CMD_FSETSTAT=paramiko.sftp_si-module.html#CMD_FSETSTAT"><a title="paramiko.sftp.CMD_FSETSTAT
-paramiko.sftp_attr.CMD_FSETSTAT
-paramiko.sftp_client.CMD_FSETSTAT
-paramiko.sftp_file.CMD_FSETSTAT
-paramiko.sftp_handle.CMD_FSETSTAT
-paramiko.sftp_server.CMD_FSETSTAT
-paramiko.sftp_si.CMD_FSETSTAT" class="py-name" href="#" onclick="return doclink('link-68', 'CMD_FSETSTAT', 'link-68');">CMD_FSETSTAT</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">,</tt> <tt class="py-name">attr</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L243"></a><tt class="py-lineno">243</tt> <tt class="py-line"> </tt>
-<a name="SFTPFile.chown"></a><div id="SFTPFile.chown-def"><a name="L244"></a><tt class="py-lineno">244</tt> <a class="py-toggle" href="#" id="SFTPFile.chown-toggle" onclick="return toggle('SFTPFile.chown');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_file.SFTPFile-class.html#chown">chown</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">uid</tt><tt class="py-op">,</tt> <tt class="py-param">gid</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPFile.chown-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPFile.chown-expanded"><a name="L245"></a><tt class="py-lineno">245</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"><tt class="py-docstring"> Change the owner (C{uid}) and group (C{gid}) of this file. As with</tt> </tt>
-<a name="L247"></a><tt class="py-lineno">247</tt> <tt class="py-line"><tt class="py-docstring"> python's C{os.chown} function, you must pass both arguments, so if you</tt> </tt>
-<a name="L248"></a><tt class="py-lineno">248</tt> <tt class="py-line"><tt class="py-docstring"> only want to change one, use L{stat} first to retrieve the current</tt> </tt>
-<a name="L249"></a><tt class="py-lineno">249</tt> <tt class="py-line"><tt class="py-docstring"> owner and group.</tt> </tt>
-<a name="L250"></a><tt class="py-lineno">250</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L251"></a><tt class="py-lineno">251</tt> <tt class="py-line"><tt class="py-docstring"> @param uid: new owner's uid</tt> </tt>
-<a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"><tt class="py-docstring"> @type uid: int</tt> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt> <tt class="py-line"><tt class="py-docstring"> @param gid: new group id</tt> </tt>
-<a name="L254"></a><tt class="py-lineno">254</tt> <tt class="py-line"><tt class="py-docstring"> @type gid: int</tt> </tt>
-<a name="L255"></a><tt class="py-lineno">255</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L256"></a><tt class="py-lineno">256</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-69" class="py-name"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-69', 'sftp', 'link-3');">sftp</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-70" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-70', 'DEBUG', 'link-17');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'chown(%s, %r, %r)'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">hexlify</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">uid</tt><tt class="py-op">,</tt> <tt class="py-name">gid</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L257"></a><tt class="py-lineno">257</tt> <tt class="py-line"> <tt class="py-name">attr</tt> <tt class="py-op">=</tt> <tt id="link-71" class="py-name"><a title="paramiko.SFTPAttributes" class="py-name" href="#" onclick="return doclink('link-71', 'SFTPAttributes', 'link-9');">SFTPAttributes</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L258"></a><tt class="py-lineno">258</tt> <tt class="py-line"> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">st_uid</tt><tt class="py-op">,</tt> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">st_gid</tt> <tt class="py-op">=</tt> <tt class="py-name">uid</tt><tt class="py-op">,</tt> <tt class="py-name">gid</tt> </tt>
-<a name="L259"></a><tt class="py-lineno">259</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-72" class="py-name"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-72', 'sftp', 'link-3');">sftp</a></tt><tt class="py-op">.</tt><tt class="py-name">_request</tt><tt class="py-op">(</tt><tt id="link-73" class="py-name"><a title="paramiko.sftp.CMD_FSETSTAT
-paramiko.sftp_attr.CMD_FSETSTAT
-paramiko.sftp_client.CMD_FSETSTAT
-paramiko.sftp_file.CMD_FSETSTAT
-paramiko.sftp_handle.CMD_FSETSTAT
-paramiko.sftp_server.CMD_FSETSTAT
-paramiko.sftp_si.CMD_FSETSTAT" class="py-name" href="#" onclick="return doclink('link-73', 'CMD_FSETSTAT', 'link-68');">CMD_FSETSTAT</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">,</tt> <tt class="py-name">attr</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"> </tt>
-<a name="SFTPFile.utime"></a><div id="SFTPFile.utime-def"><a name="L261"></a><tt class="py-lineno">261</tt> <a class="py-toggle" href="#" id="SFTPFile.utime-toggle" onclick="return toggle('SFTPFile.utime');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_file.SFTPFile-class.html#utime">utime</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">times</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPFile.utime-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPFile.utime-expanded"><a name="L262"></a><tt class="py-lineno">262</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L263"></a><tt class="py-lineno">263</tt> <tt class="py-line"><tt class="py-docstring"> Set the access and modified times of this file. If</tt> </tt>
-<a name="L264"></a><tt class="py-lineno">264</tt> <tt class="py-line"><tt class="py-docstring"> C{times} is C{None}, then the file's access and modified times are set</tt> </tt>
-<a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"><tt class="py-docstring"> to the current time. Otherwise, C{times} must be a 2-tuple of numbers,</tt> </tt>
-<a name="L266"></a><tt class="py-lineno">266</tt> <tt class="py-line"><tt class="py-docstring"> of the form C{(atime, mtime)}, which is used to set the access and</tt> </tt>
-<a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"><tt class="py-docstring"> modified times, respectively. This bizarre API is mimicked from python</tt> </tt>
-<a name="L268"></a><tt class="py-lineno">268</tt> <tt class="py-line"><tt class="py-docstring"> for the sake of consistency -- I apologize.</tt> </tt>
-<a name="L269"></a><tt class="py-lineno">269</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L270"></a><tt class="py-lineno">270</tt> <tt class="py-line"><tt class="py-docstring"> @param times: C{None} or a tuple of (access time, modified time) in</tt> </tt>
-<a name="L271"></a><tt class="py-lineno">271</tt> <tt class="py-line"><tt class="py-docstring"> standard internet epoch time (seconds since 01 January 1970 GMT)</tt> </tt>
-<a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"><tt class="py-docstring"> @type times: tuple(int)</tt> </tt>
-<a name="L273"></a><tt class="py-lineno">273</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L274"></a><tt class="py-lineno">274</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">times</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"> <tt class="py-name">times</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L276"></a><tt class="py-lineno">276</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-74" class="py-name"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-74', 'sftp', 'link-3');">sftp</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-75" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-75', 'DEBUG', 'link-17');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'utime(%s, %r)'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">hexlify</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">times</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L277"></a><tt class="py-lineno">277</tt> <tt class="py-line"> <tt class="py-name">attr</tt> <tt class="py-op">=</tt> <tt id="link-76" class="py-name"><a title="paramiko.SFTPAttributes" class="py-name" href="#" onclick="return doclink('link-76', 'SFTPAttributes', 'link-9');">SFTPAttributes</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L278"></a><tt class="py-lineno">278</tt> <tt class="py-line"> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">st_atime</tt><tt class="py-op">,</tt> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">st_mtime</tt> <tt class="py-op">=</tt> <tt class="py-name">times</tt> </tt>
-<a name="L279"></a><tt class="py-lineno">279</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-77" class="py-name"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-77', 'sftp', 'link-3');">sftp</a></tt><tt class="py-op">.</tt><tt class="py-name">_request</tt><tt class="py-op">(</tt><tt id="link-78" class="py-name"><a title="paramiko.sftp.CMD_FSETSTAT
-paramiko.sftp_attr.CMD_FSETSTAT
-paramiko.sftp_client.CMD_FSETSTAT
-paramiko.sftp_file.CMD_FSETSTAT
-paramiko.sftp_handle.CMD_FSETSTAT
-paramiko.sftp_server.CMD_FSETSTAT
-paramiko.sftp_si.CMD_FSETSTAT" class="py-name" href="#" onclick="return doclink('link-78', 'CMD_FSETSTAT', 'link-68');">CMD_FSETSTAT</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">,</tt> <tt class="py-name">attr</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L280"></a><tt class="py-lineno">280</tt> <tt class="py-line"> </tt>
-<a name="SFTPFile.truncate"></a><div id="SFTPFile.truncate-def"><a name="L281"></a><tt class="py-lineno">281</tt> <a class="py-toggle" href="#" id="SFTPFile.truncate-toggle" onclick="return toggle('SFTPFile.truncate');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_file.SFTPFile-class.html#truncate">truncate</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">size</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPFile.truncate-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPFile.truncate-expanded"><a name="L282"></a><tt class="py-lineno">282</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L283"></a><tt class="py-lineno">283</tt> <tt class="py-line"><tt class="py-docstring"> Change the size of this file. This usually extends</tt> </tt>
-<a name="L284"></a><tt class="py-lineno">284</tt> <tt class="py-line"><tt class="py-docstring"> or shrinks the size of the file, just like the C{truncate()} method on</tt> </tt>
-<a name="L285"></a><tt class="py-lineno">285</tt> <tt class="py-line"><tt class="py-docstring"> python file objects.</tt> </tt>
-<a name="L286"></a><tt class="py-lineno">286</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L287"></a><tt class="py-lineno">287</tt> <tt class="py-line"><tt class="py-docstring"> @param size: the new size of the file</tt> </tt>
-<a name="L288"></a><tt class="py-lineno">288</tt> <tt class="py-line"><tt class="py-docstring"> @type size: int or long</tt> </tt>
-<a name="L289"></a><tt class="py-lineno">289</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L290"></a><tt class="py-lineno">290</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-79" class="py-name"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-79', 'sftp', 'link-3');">sftp</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-80" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-80', 'DEBUG', 'link-17');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'truncate(%s, %r)'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">hexlify</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">size</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L291"></a><tt class="py-lineno">291</tt> <tt class="py-line"> <tt class="py-name">attr</tt> <tt class="py-op">=</tt> <tt id="link-81" class="py-name"><a title="paramiko.SFTPAttributes" class="py-name" href="#" onclick="return doclink('link-81', 'SFTPAttributes', 'link-9');">SFTPAttributes</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L292"></a><tt class="py-lineno">292</tt> <tt class="py-line"> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">st_size</tt> <tt class="py-op">=</tt> <tt class="py-name">size</tt> </tt>
-<a name="L293"></a><tt class="py-lineno">293</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-82" class="py-name"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-82', 'sftp', 'link-3');">sftp</a></tt><tt class="py-op">.</tt><tt class="py-name">_request</tt><tt class="py-op">(</tt><tt id="link-83" class="py-name"><a title="paramiko.sftp.CMD_FSETSTAT
-paramiko.sftp_attr.CMD_FSETSTAT
-paramiko.sftp_client.CMD_FSETSTAT
-paramiko.sftp_file.CMD_FSETSTAT
-paramiko.sftp_handle.CMD_FSETSTAT
-paramiko.sftp_server.CMD_FSETSTAT
-paramiko.sftp_si.CMD_FSETSTAT" class="py-name" href="#" onclick="return doclink('link-83', 'CMD_FSETSTAT', 'link-68');">CMD_FSETSTAT</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">,</tt> <tt class="py-name">attr</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L294"></a><tt class="py-lineno">294</tt> <tt class="py-line"> </tt>
-<a name="SFTPFile.check"></a><div id="SFTPFile.check-def"><a name="L295"></a><tt class="py-lineno">295</tt> <a class="py-toggle" href="#" id="SFTPFile.check-toggle" onclick="return toggle('SFTPFile.check');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_file.SFTPFile-class.html#check">check</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">hash_algorithm</tt><tt class="py-op">,</tt> <tt class="py-param">offset</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-param">length</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-param">block_size</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPFile.check-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPFile.check-expanded"><a name="L296"></a><tt class="py-lineno">296</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L297"></a><tt class="py-lineno">297</tt> <tt class="py-line"><tt class="py-docstring"> Ask the server for a hash of a section of this file. This can be used</tt> </tt>
-<a name="L298"></a><tt class="py-lineno">298</tt> <tt class="py-line"><tt class="py-docstring"> to verify a successful upload or download, or for various rsync-like</tt> </tt>
-<a name="L299"></a><tt class="py-lineno">299</tt> <tt class="py-line"><tt class="py-docstring"> operations.</tt> </tt>
-<a name="L300"></a><tt class="py-lineno">300</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L301"></a><tt class="py-lineno">301</tt> <tt class="py-line"><tt class="py-docstring"> The file is hashed from C{offset}, for C{length} bytes. If C{length}</tt> </tt>
-<a name="L302"></a><tt class="py-lineno">302</tt> <tt class="py-line"><tt class="py-docstring"> is 0, the remainder of the file is hashed. Thus, if both C{offset}</tt> </tt>
-<a name="L303"></a><tt class="py-lineno">303</tt> <tt class="py-line"><tt class="py-docstring"> and C{length} are zero, the entire file is hashed.</tt> </tt>
-<a name="L304"></a><tt class="py-lineno">304</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L305"></a><tt class="py-lineno">305</tt> <tt class="py-line"><tt class="py-docstring"> Normally, C{block_size} will be 0 (the default), and this method will</tt> </tt>
-<a name="L306"></a><tt class="py-lineno">306</tt> <tt class="py-line"><tt class="py-docstring"> return a byte string representing the requested hash (for example, a</tt> </tt>
-<a name="L307"></a><tt class="py-lineno">307</tt> <tt class="py-line"><tt class="py-docstring"> string of length 16 for MD5, or 20 for SHA-1). If a non-zero</tt> </tt>
-<a name="L308"></a><tt class="py-lineno">308</tt> <tt class="py-line"><tt class="py-docstring"> C{block_size} is given, each chunk of the file (from C{offset} to</tt> </tt>
-<a name="L309"></a><tt class="py-lineno">309</tt> <tt class="py-line"><tt class="py-docstring"> C{offset + length}) of C{block_size} bytes is computed as a separate</tt> </tt>
-<a name="L310"></a><tt class="py-lineno">310</tt> <tt class="py-line"><tt class="py-docstring"> hash. The hash results are all concatenated and returned as a single</tt> </tt>
-<a name="L311"></a><tt class="py-lineno">311</tt> <tt class="py-line"><tt class="py-docstring"> string.</tt> </tt>
-<a name="L312"></a><tt class="py-lineno">312</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L313"></a><tt class="py-lineno">313</tt> <tt class="py-line"><tt class="py-docstring"> For example, C{check('sha1', 0, 1024, 512)} will return a string of</tt> </tt>
-<a name="L314"></a><tt class="py-lineno">314</tt> <tt class="py-line"><tt class="py-docstring"> length 40. The first 20 bytes will be the SHA-1 of the first 512 bytes</tt> </tt>
-<a name="L315"></a><tt class="py-lineno">315</tt> <tt class="py-line"><tt class="py-docstring"> of the file, and the last 20 bytes will be the SHA-1 of the next 512</tt> </tt>
-<a name="L316"></a><tt class="py-lineno">316</tt> <tt class="py-line"><tt class="py-docstring"> bytes.</tt> </tt>
-<a name="L317"></a><tt class="py-lineno">317</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L318"></a><tt class="py-lineno">318</tt> <tt class="py-line"><tt class="py-docstring"> @param hash_algorithm: the name of the hash algorithm to use (normally</tt> </tt>
-<a name="L319"></a><tt class="py-lineno">319</tt> <tt class="py-line"><tt class="py-docstring"> C{"sha1"} or C{"md5"})</tt> </tt>
-<a name="L320"></a><tt class="py-lineno">320</tt> <tt class="py-line"><tt class="py-docstring"> @type hash_algorithm: str</tt> </tt>
-<a name="L321"></a><tt class="py-lineno">321</tt> <tt class="py-line"><tt class="py-docstring"> @param offset: offset into the file to begin hashing (0 means to start</tt> </tt>
-<a name="L322"></a><tt class="py-lineno">322</tt> <tt class="py-line"><tt class="py-docstring"> from the beginning)</tt> </tt>
-<a name="L323"></a><tt class="py-lineno">323</tt> <tt class="py-line"><tt class="py-docstring"> @type offset: int or long</tt> </tt>
-<a name="L324"></a><tt class="py-lineno">324</tt> <tt class="py-line"><tt class="py-docstring"> @param length: number of bytes to hash (0 means continue to the end of</tt> </tt>
-<a name="L325"></a><tt class="py-lineno">325</tt> <tt class="py-line"><tt class="py-docstring"> the file)</tt> </tt>
-<a name="L326"></a><tt class="py-lineno">326</tt> <tt class="py-line"><tt class="py-docstring"> @type length: int or long</tt> </tt>
-<a name="L327"></a><tt class="py-lineno">327</tt> <tt class="py-line"><tt class="py-docstring"> @param block_size: number of bytes to hash per result (must not be less</tt> </tt>
-<a name="L328"></a><tt class="py-lineno">328</tt> <tt class="py-line"><tt class="py-docstring"> than 256; 0 means to compute only one hash of the entire segment)</tt> </tt>
-<a name="L329"></a><tt class="py-lineno">329</tt> <tt class="py-line"><tt class="py-docstring"> @type block_size: int</tt> </tt>
-<a name="L330"></a><tt class="py-lineno">330</tt> <tt class="py-line"><tt class="py-docstring"> @return: string of bytes representing the hash of each block,</tt> </tt>
-<a name="L331"></a><tt class="py-lineno">331</tt> <tt class="py-line"><tt class="py-docstring"> concatenated together</tt> </tt>
-<a name="L332"></a><tt class="py-lineno">332</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: str</tt> </tt>
-<a name="L333"></a><tt class="py-lineno">333</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L334"></a><tt class="py-lineno">334</tt> <tt class="py-line"><tt class="py-docstring"> @note: Many (most?) servers don't support this extension yet.</tt> </tt>
-<a name="L335"></a><tt class="py-lineno">335</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L336"></a><tt class="py-lineno">336</tt> <tt class="py-line"><tt class="py-docstring"> @raise IOError: if the server doesn't support the "check-file"</tt> </tt>
-<a name="L337"></a><tt class="py-lineno">337</tt> <tt class="py-line"><tt class="py-docstring"> extension, or possibly doesn't support the hash algorithm</tt> </tt>
-<a name="L338"></a><tt class="py-lineno">338</tt> <tt class="py-line"><tt class="py-docstring"> requested</tt> </tt>
-<a name="L339"></a><tt class="py-lineno">339</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L340"></a><tt class="py-lineno">340</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.4</tt> </tt>
-<a name="L341"></a><tt class="py-lineno">341</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L342"></a><tt class="py-lineno">342</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">,</tt> <tt class="py-name">msg</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-84" class="py-name"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-84', 'sftp', 'link-3');">sftp</a></tt><tt class="py-op">.</tt><tt class="py-name">_request</tt><tt class="py-op">(</tt><tt id="link-85" class="py-name" targets="Variable paramiko.sftp.CMD_EXTENDED=paramiko.sftp-module.html#CMD_EXTENDED,Variable paramiko.sftp_attr.CMD_EXTENDED=paramiko.sftp_attr-module.html#CMD_EXTENDED,Variable paramiko.sftp_client.CMD_EXTENDED=paramiko.sftp_client-module.html#CMD_EXTENDED,Variable paramiko.sftp_file.CMD_EXTENDED=paramiko.sftp_file-module.html#CMD_EXTENDED,Variable paramiko.sftp_handle.CMD_EXTENDED=paramiko.sftp_handle-module.html#CMD_EXTENDED,Variable paramiko.sftp_server.CMD_EXTENDED=paramiko.sftp_server-module.html#CMD_EXTENDED,Variable paramiko.sftp_si.CMD_EXTENDED=paramiko.sftp_si-module.html#CMD_EXTENDED"><a title="paramiko.sftp.CMD_EXTENDED
-paramiko.sftp_attr.CMD_EXTENDED
-paramiko.sftp_client.CMD_EXTENDED
-paramiko.sftp_file.CMD_EXTENDED
-paramiko.sftp_handle.CMD_EXTENDED
-paramiko.sftp_server.CMD_EXTENDED
-paramiko.sftp_si.CMD_EXTENDED" class="py-name" href="#" onclick="return doclink('link-85', 'CMD_EXTENDED', 'link-85');">CMD_EXTENDED</a></tt><tt class="py-op">,</tt> <tt class="py-string">'check-file'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">,</tt> </tt>
-<a name="L343"></a><tt class="py-lineno">343</tt> <tt class="py-line"> <tt class="py-name">hash_algorithm</tt><tt class="py-op">,</tt> <tt class="py-name">long</tt><tt class="py-op">(</tt><tt class="py-name">offset</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">long</tt><tt class="py-op">(</tt><tt class="py-name">length</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">block_size</tt><tt class="py-op">)</tt> </tt>
-<a name="L344"></a><tt class="py-lineno">344</tt> <tt class="py-line"> <tt class="py-name">ext</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-86" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-86', 'get_string', 'link-41');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L345"></a><tt class="py-lineno">345</tt> <tt class="py-line"> <tt class="py-name">alg</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-87" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-87', 'get_string', 'link-41');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L346"></a><tt class="py-lineno">346</tt> <tt class="py-line"> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-88" class="py-name" targets="Method paramiko.Message.get_remainder()=paramiko.Message-class.html#get_remainder"><a title="paramiko.Message.get_remainder" class="py-name" href="#" onclick="return doclink('link-88', 'get_remainder', 'link-88');">get_remainder</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L347"></a><tt class="py-lineno">347</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">data</tt> </tt>
-</div><a name="L348"></a><tt class="py-lineno">348</tt> <tt class="py-line"> </tt>
-<a name="SFTPFile.set_pipelined"></a><div id="SFTPFile.set_pipelined-def"><a name="L349"></a><tt class="py-lineno">349</tt> <a class="py-toggle" href="#" id="SFTPFile.set_pipelined-toggle" onclick="return toggle('SFTPFile.set_pipelined');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_file.SFTPFile-class.html#set_pipelined">set_pipelined</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">pipelined</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPFile.set_pipelined-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPFile.set_pipelined-expanded"><a name="L350"></a><tt class="py-lineno">350</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L351"></a><tt class="py-lineno">351</tt> <tt class="py-line"><tt class="py-docstring"> Turn on/off the pipelining of write operations to this file. When</tt> </tt>
-<a name="L352"></a><tt class="py-lineno">352</tt> <tt class="py-line"><tt class="py-docstring"> pipelining is on, paramiko won't wait for the server response after</tt> </tt>
-<a name="L353"></a><tt class="py-lineno">353</tt> <tt class="py-line"><tt class="py-docstring"> each write operation. Instead, they're collected as they come in.</tt> </tt>
-<a name="L354"></a><tt class="py-lineno">354</tt> <tt class="py-line"><tt class="py-docstring"> At the first non-write operation (including L{close}), all remaining</tt> </tt>
-<a name="L355"></a><tt class="py-lineno">355</tt> <tt class="py-line"><tt class="py-docstring"> server responses are collected. This means that if there was an error</tt> </tt>
-<a name="L356"></a><tt class="py-lineno">356</tt> <tt class="py-line"><tt class="py-docstring"> with one of your later writes, an exception might be thrown from</tt> </tt>
-<a name="L357"></a><tt class="py-lineno">357</tt> <tt class="py-line"><tt class="py-docstring"> within L{close} instead of L{write}.</tt> </tt>
-<a name="L358"></a><tt class="py-lineno">358</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L359"></a><tt class="py-lineno">359</tt> <tt class="py-line"><tt class="py-docstring"> By default, files are I{not} pipelined.</tt> </tt>
-<a name="L360"></a><tt class="py-lineno">360</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L361"></a><tt class="py-lineno">361</tt> <tt class="py-line"><tt class="py-docstring"> @param pipelined: C{True} if pipelining should be turned on for this</tt> </tt>
-<a name="L362"></a><tt class="py-lineno">362</tt> <tt class="py-line"><tt class="py-docstring"> file; C{False} otherwise</tt> </tt>
-<a name="L363"></a><tt class="py-lineno">363</tt> <tt class="py-line"><tt class="py-docstring"> @type pipelined: bool</tt> </tt>
-<a name="L364"></a><tt class="py-lineno">364</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L365"></a><tt class="py-lineno">365</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.5</tt> </tt>
-<a name="L366"></a><tt class="py-lineno">366</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L367"></a><tt class="py-lineno">367</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pipelined</tt> <tt class="py-op">=</tt> <tt class="py-name">pipelined</tt> </tt>
-</div><a name="L368"></a><tt class="py-lineno">368</tt> <tt class="py-line"> </tt>
-<a name="SFTPFile.prefetch"></a><div id="SFTPFile.prefetch-def"><a name="L369"></a><tt class="py-lineno">369</tt> <a class="py-toggle" href="#" id="SFTPFile.prefetch-toggle" onclick="return toggle('SFTPFile.prefetch');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_file.SFTPFile-class.html#prefetch">prefetch</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPFile.prefetch-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPFile.prefetch-expanded"><a name="L370"></a><tt class="py-lineno">370</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L371"></a><tt class="py-lineno">371</tt> <tt class="py-line"><tt class="py-docstring"> Pre-fetch the remaining contents of this file in anticipation of</tt> </tt>
-<a name="L372"></a><tt class="py-lineno">372</tt> <tt class="py-line"><tt class="py-docstring"> future L{read} calls. If reading the entire file, pre-fetching can</tt> </tt>
-<a name="L373"></a><tt class="py-lineno">373</tt> <tt class="py-line"><tt class="py-docstring"> dramatically improve the download speed by avoiding roundtrip latency.</tt> </tt>
-<a name="L374"></a><tt class="py-lineno">374</tt> <tt class="py-line"><tt class="py-docstring"> The file's contents are incrementally buffered in a background thread.</tt> </tt>
-<a name="L375"></a><tt class="py-lineno">375</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L376"></a><tt class="py-lineno">376</tt> <tt class="py-line"><tt class="py-docstring"> The prefetched data is stored in a buffer until read via the L{read}</tt> </tt>
-<a name="L377"></a><tt class="py-lineno">377</tt> <tt class="py-line"><tt class="py-docstring"> method. Once data has been read, it's removed from the buffer. The</tt> </tt>
-<a name="L378"></a><tt class="py-lineno">378</tt> <tt class="py-line"><tt class="py-docstring"> data may be read in a random order (using L{seek}); chunks of the</tt> </tt>
-<a name="L379"></a><tt class="py-lineno">379</tt> <tt class="py-line"><tt class="py-docstring"> buffer that haven't been read will continue to be buffered.</tt> </tt>
-<a name="L380"></a><tt class="py-lineno">380</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L381"></a><tt class="py-lineno">381</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.5.1</tt> </tt>
-<a name="L382"></a><tt class="py-lineno">382</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L383"></a><tt class="py-lineno">383</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-89" class="py-name" targets="Method paramiko.SFTPClient.stat()=paramiko.SFTPClient-class.html#stat,Method paramiko.SFTPFile.stat()=paramiko.SFTPFile-class.html#stat,Method paramiko.SFTPHandle.stat()=paramiko.SFTPHandle-class.html#stat,Method paramiko.SFTPServerInterface.stat()=paramiko.SFTPServerInterface-class.html#stat"><a title="paramiko.SFTPClient.stat
-paramiko.SFTPFile.stat
-paramiko.SFTPHandle.stat
-paramiko.SFTPServerInterface.stat" class="py-name" href="#" onclick="return doclink('link-89', 'stat', 'link-89');">stat</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">st_size</tt> </tt>
-<a name="L384"></a><tt class="py-lineno">384</tt> <tt class="py-line"> <tt class="py-comment"># queue up async reads for the rest of the file</tt> </tt>
-<a name="L385"></a><tt class="py-lineno">385</tt> <tt class="py-line"> <tt class="py-name">chunks</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L386"></a><tt class="py-lineno">386</tt> <tt class="py-line"> <tt class="py-name">n</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_realpos</tt> </tt>
-<a name="L387"></a><tt class="py-lineno">387</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">n</tt> <tt class="py-op">&lt;</tt> <tt class="py-name">size</tt><tt class="py-op">:</tt> </tt>
-<a name="L388"></a><tt class="py-lineno">388</tt> <tt class="py-line"> <tt class="py-name">chunk</tt> <tt class="py-op">=</tt> <tt class="py-name">min</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-90" class="py-name"><a title="paramiko.SFTPFile.MAX_REQUEST_SIZE" class="py-name" href="#" onclick="return doclink('link-90', 'MAX_REQUEST_SIZE', 'link-10');">MAX_REQUEST_SIZE</a></tt><tt class="py-op">,</tt> <tt class="py-name">size</tt> <tt class="py-op">-</tt> <tt class="py-name">n</tt><tt class="py-op">)</tt> </tt>
-<a name="L389"></a><tt class="py-lineno">389</tt> <tt class="py-line"> <tt class="py-name">chunks</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">n</tt><tt class="py-op">,</tt> <tt class="py-name">chunk</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L390"></a><tt class="py-lineno">390</tt> <tt class="py-line"> <tt class="py-name">n</tt> <tt class="py-op">+=</tt> <tt class="py-name">chunk</tt> </tt>
-<a name="L391"></a><tt class="py-lineno">391</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">chunks</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L392"></a><tt class="py-lineno">392</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_start_prefetch</tt><tt class="py-op">(</tt><tt class="py-name">chunks</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L393"></a><tt class="py-lineno">393</tt> <tt class="py-line"> </tt>
-<a name="SFTPFile.readv"></a><div id="SFTPFile.readv-def"><a name="L394"></a><tt class="py-lineno">394</tt> <a class="py-toggle" href="#" id="SFTPFile.readv-toggle" onclick="return toggle('SFTPFile.readv');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_file.SFTPFile-class.html#readv">readv</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">chunks</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPFile.readv-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPFile.readv-expanded"><a name="L395"></a><tt class="py-lineno">395</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L396"></a><tt class="py-lineno">396</tt> <tt class="py-line"><tt class="py-docstring"> Read a set of blocks from the file by (offset, length). This is more</tt> </tt>
-<a name="L397"></a><tt class="py-lineno">397</tt> <tt class="py-line"><tt class="py-docstring"> efficient than doing a series of L{seek} and L{read} calls, since the</tt> </tt>
-<a name="L398"></a><tt class="py-lineno">398</tt> <tt class="py-line"><tt class="py-docstring"> prefetch machinery is used to retrieve all the requested blocks at</tt> </tt>
-<a name="L399"></a><tt class="py-lineno">399</tt> <tt class="py-line"><tt class="py-docstring"> once.</tt> </tt>
-<a name="L400"></a><tt class="py-lineno">400</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L401"></a><tt class="py-lineno">401</tt> <tt class="py-line"><tt class="py-docstring"> @param chunks: a list of (offset, length) tuples indicating which</tt> </tt>
-<a name="L402"></a><tt class="py-lineno">402</tt> <tt class="py-line"><tt class="py-docstring"> sections of the file to read</tt> </tt>
-<a name="L403"></a><tt class="py-lineno">403</tt> <tt class="py-line"><tt class="py-docstring"> @type chunks: list(tuple(long, int))</tt> </tt>
-<a name="L404"></a><tt class="py-lineno">404</tt> <tt class="py-line"><tt class="py-docstring"> @return: a list of blocks read, in the same order as in C{chunks}</tt> </tt>
-<a name="L405"></a><tt class="py-lineno">405</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: list(str)</tt> </tt>
-<a name="L406"></a><tt class="py-lineno">406</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L407"></a><tt class="py-lineno">407</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.5.4</tt> </tt>
-<a name="L408"></a><tt class="py-lineno">408</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L409"></a><tt class="py-lineno">409</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-91" class="py-name"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-91', 'sftp', 'link-3');">sftp</a></tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-92" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-92', 'DEBUG', 'link-17');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'readv(%s, %r)'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">hexlify</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">chunks</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L410"></a><tt class="py-lineno">410</tt> <tt class="py-line"> </tt>
-<a name="L411"></a><tt class="py-lineno">411</tt> <tt class="py-line"> <tt class="py-name">read_chunks</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L412"></a><tt class="py-lineno">412</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">offset</tt><tt class="py-op">,</tt> <tt class="py-name">size</tt> <tt class="py-keyword">in</tt> <tt class="py-name">chunks</tt><tt class="py-op">:</tt> </tt>
-<a name="L413"></a><tt class="py-lineno">413</tt> <tt class="py-line"> <tt class="py-comment"># don't fetch data that's already in the prefetch buffer</tt> </tt>
-<a name="L414"></a><tt class="py-lineno">414</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_data_in_prefetch_buffers</tt><tt class="py-op">(</tt><tt class="py-name">offset</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_data_in_prefetch_requests</tt><tt class="py-op">(</tt><tt class="py-name">offset</tt><tt class="py-op">,</tt> <tt class="py-name">size</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L415"></a><tt class="py-lineno">415</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L416"></a><tt class="py-lineno">416</tt> <tt class="py-line"> </tt>
-<a name="L417"></a><tt class="py-lineno">417</tt> <tt class="py-line"> <tt class="py-comment"># break up anything larger than the max read size</tt> </tt>
-<a name="L418"></a><tt class="py-lineno">418</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">size</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L419"></a><tt class="py-lineno">419</tt> <tt class="py-line"> <tt class="py-name">chunk_size</tt> <tt class="py-op">=</tt> <tt class="py-name">min</tt><tt class="py-op">(</tt><tt class="py-name">size</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-93" class="py-name"><a title="paramiko.SFTPFile.MAX_REQUEST_SIZE" class="py-name" href="#" onclick="return doclink('link-93', 'MAX_REQUEST_SIZE', 'link-10');">MAX_REQUEST_SIZE</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L420"></a><tt class="py-lineno">420</tt> <tt class="py-line"> <tt class="py-name">read_chunks</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">offset</tt><tt class="py-op">,</tt> <tt class="py-name">chunk_size</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L421"></a><tt class="py-lineno">421</tt> <tt class="py-line"> <tt class="py-name">offset</tt> <tt class="py-op">+=</tt> <tt class="py-name">chunk_size</tt> </tt>
-<a name="L422"></a><tt class="py-lineno">422</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">-=</tt> <tt class="py-name">chunk_size</tt> </tt>
-<a name="L423"></a><tt class="py-lineno">423</tt> <tt class="py-line"> </tt>
-<a name="L424"></a><tt class="py-lineno">424</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_start_prefetch</tt><tt class="py-op">(</tt><tt class="py-name">read_chunks</tt><tt class="py-op">)</tt> </tt>
-<a name="L425"></a><tt class="py-lineno">425</tt> <tt class="py-line"> <tt class="py-comment"># now we can just devolve to a bunch of read()s :)</tt> </tt>
-<a name="L426"></a><tt class="py-lineno">426</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">x</tt> <tt class="py-keyword">in</tt> <tt class="py-name">chunks</tt><tt class="py-op">:</tt> </tt>
-<a name="L427"></a><tt class="py-lineno">427</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-94" class="py-name" targets="Method paramiko.BufferedFile.seek()=paramiko.BufferedFile-class.html#seek,Method paramiko.SFTPFile.seek()=paramiko.SFTPFile-class.html#seek"><a title="paramiko.BufferedFile.seek
-paramiko.SFTPFile.seek" class="py-name" href="#" onclick="return doclink('link-94', 'seek', 'link-94');">seek</a></tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L428"></a><tt class="py-lineno">428</tt> <tt class="py-line"> <tt class="py-keyword">yield</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-95" class="py-name" targets="Method paramiko.BufferedFile.read()=paramiko.BufferedFile-class.html#read,Method paramiko.SFTPHandle.read()=paramiko.SFTPHandle-class.html#read,Method paramiko.buffered_pipe.BufferedPipe.read()=paramiko.buffered_pipe.BufferedPipe-class.html#read"><a title="paramiko.BufferedFile.read
-paramiko.SFTPHandle.read
-paramiko.buffered_pipe.BufferedPipe.read" class="py-name" href="#" onclick="return doclink('link-95', 'read', 'link-95');">read</a></tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L429"></a><tt class="py-lineno">429</tt> <tt class="py-line"> </tt>
-<a name="L430"></a><tt class="py-lineno">430</tt> <tt class="py-line"> </tt>
-<a name="L431"></a><tt class="py-lineno">431</tt> <tt class="py-line"> <tt class="py-comment">### internals...</tt> </tt>
-<a name="L432"></a><tt class="py-lineno">432</tt> <tt class="py-line"> </tt>
-<a name="L433"></a><tt class="py-lineno">433</tt> <tt class="py-line"> </tt>
-<a name="SFTPFile._get_size"></a><div id="SFTPFile._get_size-def"><a name="L434"></a><tt class="py-lineno">434</tt> <a class="py-toggle" href="#" id="SFTPFile._get_size-toggle" onclick="return toggle('SFTPFile._get_size');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_file.SFTPFile-class.html#_get_size">_get_size</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPFile._get_size-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPFile._get_size-expanded"><a name="L435"></a><tt class="py-lineno">435</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L436"></a><tt class="py-lineno">436</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-96" class="py-name"><a title="paramiko.SFTPClient.stat
-paramiko.SFTPFile.stat
-paramiko.SFTPHandle.stat
-paramiko.SFTPServerInterface.stat" class="py-name" href="#" onclick="return doclink('link-96', 'stat', 'link-89');">stat</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">st_size</tt> </tt>
-<a name="L437"></a><tt class="py-lineno">437</tt> <tt class="py-line"> <tt class="py-keyword">except</tt><tt class="py-op">:</tt> </tt>
-<a name="L438"></a><tt class="py-lineno">438</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-number">0</tt> </tt>
-</div><a name="L439"></a><tt class="py-lineno">439</tt> <tt class="py-line"> </tt>
-<a name="SFTPFile._start_prefetch"></a><div id="SFTPFile._start_prefetch-def"><a name="L440"></a><tt class="py-lineno">440</tt> <a class="py-toggle" href="#" id="SFTPFile._start_prefetch-toggle" onclick="return toggle('SFTPFile._start_prefetch');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_file.SFTPFile-class.html#_start_prefetch">_start_prefetch</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">chunks</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPFile._start_prefetch-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPFile._start_prefetch-expanded"><a name="L441"></a><tt class="py-lineno">441</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_prefetching</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L442"></a><tt class="py-lineno">442</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_prefetch_done</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L443"></a><tt class="py-lineno">443</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_prefetch_reads</tt><tt class="py-op">.</tt><tt class="py-name">extend</tt><tt class="py-op">(</tt><tt class="py-name">chunks</tt><tt class="py-op">)</tt> </tt>
-<a name="L444"></a><tt class="py-lineno">444</tt> <tt class="py-line"> </tt>
-<a name="L445"></a><tt class="py-lineno">445</tt> <tt class="py-line"> <tt class="py-name">t</tt> <tt class="py-op">=</tt> <tt class="py-name">threading</tt><tt class="py-op">.</tt><tt class="py-name">Thread</tt><tt class="py-op">(</tt><tt class="py-name">target</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_prefetch_thread</tt><tt class="py-op">,</tt> <tt class="py-name">args</tt><tt class="py-op">=</tt><tt class="py-op">(</tt><tt class="py-name">chunks</tt><tt class="py-op">,</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L446"></a><tt class="py-lineno">446</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">setDaemon</tt><tt class="py-op">(</tt><tt class="py-name">True</tt><tt class="py-op">)</tt> </tt>
-<a name="L447"></a><tt class="py-lineno">447</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L448"></a><tt class="py-lineno">448</tt> <tt class="py-line"> </tt>
-<a name="SFTPFile._prefetch_thread"></a><div id="SFTPFile._prefetch_thread-def"><a name="L449"></a><tt class="py-lineno">449</tt> <a class="py-toggle" href="#" id="SFTPFile._prefetch_thread-toggle" onclick="return toggle('SFTPFile._prefetch_thread');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_file.SFTPFile-class.html#_prefetch_thread">_prefetch_thread</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">chunks</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPFile._prefetch_thread-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPFile._prefetch_thread-expanded"><a name="L450"></a><tt class="py-lineno">450</tt> <tt class="py-line"> <tt class="py-comment"># do these read requests in a temporary thread because there may be</tt> </tt>
-<a name="L451"></a><tt class="py-lineno">451</tt> <tt class="py-line"> <tt class="py-comment"># a lot of them, so it may block.</tt> </tt>
-<a name="L452"></a><tt class="py-lineno">452</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">offset</tt><tt class="py-op">,</tt> <tt class="py-name">length</tt> <tt class="py-keyword">in</tt> <tt class="py-name">chunks</tt><tt class="py-op">:</tt> </tt>
-<a name="L453"></a><tt class="py-lineno">453</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-97" class="py-name"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-97', 'sftp', 'link-3');">sftp</a></tt><tt class="py-op">.</tt><tt class="py-name">_async_request</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">,</tt> <tt id="link-98" class="py-name"><a title="paramiko.sftp.CMD_READ
-paramiko.sftp_attr.CMD_READ
-paramiko.sftp_client.CMD_READ
-paramiko.sftp_file.CMD_READ
-paramiko.sftp_handle.CMD_READ
-paramiko.sftp_server.CMD_READ
-paramiko.sftp_si.CMD_READ" class="py-name" href="#" onclick="return doclink('link-98', 'CMD_READ', 'link-38');">CMD_READ</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">handle</tt><tt class="py-op">,</tt> <tt class="py-name">long</tt><tt class="py-op">(</tt><tt class="py-name">offset</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">length</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L454"></a><tt class="py-lineno">454</tt> <tt class="py-line"> </tt>
-<a name="SFTPFile._async_response"></a><div id="SFTPFile._async_response-def"><a name="L455"></a><tt class="py-lineno">455</tt> <a class="py-toggle" href="#" id="SFTPFile._async_response-toggle" onclick="return toggle('SFTPFile._async_response');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_file.SFTPFile-class.html#_async_response">_async_response</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">t</tt><tt class="py-op">,</tt> <tt class="py-param">msg</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPFile._async_response-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPFile._async_response-expanded"><a name="L456"></a><tt class="py-lineno">456</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">t</tt> <tt class="py-op">==</tt> <tt id="link-99" class="py-name"><a title="paramiko.sftp.CMD_STATUS
-paramiko.sftp_attr.CMD_STATUS
-paramiko.sftp_client.CMD_STATUS
-paramiko.sftp_file.CMD_STATUS
-paramiko.sftp_handle.CMD_STATUS
-paramiko.sftp_server.CMD_STATUS
-paramiko.sftp_si.CMD_STATUS" class="py-name" href="#" onclick="return doclink('link-99', 'CMD_STATUS', 'link-48');">CMD_STATUS</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L457"></a><tt class="py-lineno">457</tt> <tt class="py-line"> <tt class="py-comment"># save exception and re-raise it on next file operation</tt> </tt>
-<a name="L458"></a><tt class="py-lineno">458</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L459"></a><tt class="py-lineno">459</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-100" class="py-name"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-100', 'sftp', 'link-3');">sftp</a></tt><tt class="py-op">.</tt><tt class="py-name">_convert_status</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">)</tt> </tt>
-<a name="L460"></a><tt class="py-lineno">460</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">,</tt> <tt class="py-name">x</tt><tt class="py-op">:</tt> </tt>
-<a name="L461"></a><tt class="py-lineno">461</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_saved_exception</tt> <tt class="py-op">=</tt> <tt class="py-name">x</tt> </tt>
-<a name="L462"></a><tt class="py-lineno">462</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L463"></a><tt class="py-lineno">463</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">t</tt> <tt class="py-op">!=</tt> <tt id="link-101" class="py-name"><a title="paramiko.sftp.CMD_DATA
-paramiko.sftp_attr.CMD_DATA
-paramiko.sftp_client.CMD_DATA
-paramiko.sftp_file.CMD_DATA
-paramiko.sftp_handle.CMD_DATA
-paramiko.sftp_server.CMD_DATA
-paramiko.sftp_si.CMD_DATA" class="py-name" href="#" onclick="return doclink('link-101', 'CMD_DATA', 'link-39');">CMD_DATA</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L464"></a><tt class="py-lineno">464</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-102" class="py-name"><a title="paramiko.SFTPError" class="py-name" href="#" onclick="return doclink('link-102', 'SFTPError', 'link-40');">SFTPError</a></tt><tt class="py-op">(</tt><tt class="py-string">'Expected data'</tt><tt class="py-op">)</tt> </tt>
-<a name="L465"></a><tt class="py-lineno">465</tt> <tt class="py-line"> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-103" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-103', 'get_string', 'link-41');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L466"></a><tt class="py-lineno">466</tt> <tt class="py-line"> <tt class="py-name">offset</tt><tt class="py-op">,</tt> <tt class="py-name">length</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_prefetch_reads</tt><tt class="py-op">.</tt><tt class="py-name">pop</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L467"></a><tt class="py-lineno">467</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_prefetch_data</tt><tt class="py-op">[</tt><tt class="py-name">offset</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">data</tt> </tt>
-<a name="L468"></a><tt class="py-lineno">468</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_prefetch_reads</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L469"></a><tt class="py-lineno">469</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_prefetch_done</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-</div><a name="L470"></a><tt class="py-lineno">470</tt> <tt class="py-line"> </tt>
-<a name="SFTPFile._check_exception"></a><div id="SFTPFile._check_exception-def"><a name="L471"></a><tt class="py-lineno">471</tt> <a class="py-toggle" href="#" id="SFTPFile._check_exception-toggle" onclick="return toggle('SFTPFile._check_exception');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_file.SFTPFile-class.html#_check_exception">_check_exception</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPFile._check_exception-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPFile._check_exception-expanded"><a name="L472"></a><tt class="py-lineno">472</tt> <tt class="py-line"> <tt class="py-docstring">"if there's a saved exception, raise &amp; clear it"</tt> </tt>
-<a name="L473"></a><tt class="py-lineno">473</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_saved_exception</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L474"></a><tt class="py-lineno">474</tt> <tt class="py-line"> <tt class="py-name">x</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_saved_exception</tt> </tt>
-<a name="L475"></a><tt class="py-lineno">475</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_saved_exception</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L476"></a><tt class="py-lineno">476</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">x</tt> </tt>
-</div></div><a name="L477"></a><tt class="py-lineno">477</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:07 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.sftp_handle-module.html b/docs/paramiko.sftp_handle-module.html
deleted file mode 100644
index cdd3c6a..0000000
--- a/docs/paramiko.sftp_handle-module.html
+++ /dev/null
@@ -1,907 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.sftp_handle</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;sftp_handle
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.sftp_handle-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module sftp_handle</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.sftp_handle-pysrc.html">source&nbsp;code</a></span></p>
-<p>Abstraction of an SFTP file handle (for server mode).</p>
-
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_FAILED"></a><span class="summary-name">AUTH_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_PARTIALLY_SUCCESSFUL"></a><span class="summary-name">AUTH_PARTIALLY_SUCCESSFUL</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_SUCCESSFUL"></a><span class="summary-name">AUTH_SUCCESSFUL</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_ATTRS"></a><span class="summary-name">CMD_ATTRS</span> = <code title="105">105</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_CLOSE"></a><span class="summary-name">CMD_CLOSE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_DATA"></a><span class="summary-name">CMD_DATA</span> = <code title="103">103</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_EXTENDED"></a><span class="summary-name">CMD_EXTENDED</span> = <code title="200">200</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_EXTENDED_REPLY"></a><span class="summary-name">CMD_EXTENDED_REPLY</span> = <code title="201">201</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_FSETSTAT"></a><span class="summary-name">CMD_FSETSTAT</span> = <code title="10">10</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_FSTAT"></a><span class="summary-name">CMD_FSTAT</span> = <code title="8">8</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_HANDLE"></a><span class="summary-name">CMD_HANDLE</span> = <code title="102">102</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_INIT"></a><span class="summary-name">CMD_INIT</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_LSTAT"></a><span class="summary-name">CMD_LSTAT</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_MKDIR"></a><span class="summary-name">CMD_MKDIR</span> = <code title="14">14</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_NAME"></a><span class="summary-name">CMD_NAME</span> = <code title="104">104</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.sftp_handle-module.html#CMD_NAMES" class="summary-name">CMD_NAMES</a> = <code title="{1: 'init',
- 2: 'version',
- 3: 'open',
- 4: 'close',
- 5: 'read',
- 6: 'write',
- 7: 'lstat',
- 8: 'fstat',
-..."><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">init</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">version</code><code class="variable-quote">'</code><code class="variable-op">, </code>3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">open</code><code class="variable-quote">'</code><code class="variable-op">, </code>4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">close</code><code class="variable-quote">'</code><code class="variable-op">, </code>5<code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_OPEN"></a><span class="summary-name">CMD_OPEN</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_OPENDIR"></a><span class="summary-name">CMD_OPENDIR</span> = <code title="11">11</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_READ"></a><span class="summary-name">CMD_READ</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_READDIR"></a><span class="summary-name">CMD_READDIR</span> = <code title="12">12</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_READLINK"></a><span class="summary-name">CMD_READLINK</span> = <code title="19">19</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_REALPATH"></a><span class="summary-name">CMD_REALPATH</span> = <code title="16">16</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_REMOVE"></a><span class="summary-name">CMD_REMOVE</span> = <code title="13">13</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_RENAME"></a><span class="summary-name">CMD_RENAME</span> = <code title="18">18</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_RMDIR"></a><span class="summary-name">CMD_RMDIR</span> = <code title="15">15</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_SETSTAT"></a><span class="summary-name">CMD_SETSTAT</span> = <code title="9">9</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_STAT"></a><span class="summary-name">CMD_STAT</span> = <code title="17">17</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_STATUS"></a><span class="summary-name">CMD_STATUS</span> = <code title="101">101</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_SYMLINK"></a><span class="summary-name">CMD_SYMLINK</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_VERSION"></a><span class="summary-name">CMD_VERSION</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_WRITE"></a><span class="summary-name">CMD_WRITE</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.sftp_handle-module.html#CONNECTION_FAILED_CODE" class="summary-name">CONNECTION_FAILED_CODE</a> = <code title="{1: 'Administratively prohibited',
- 2: 'Connect failed',
- 3: 'Unknown channel type',
- 4: 'Resource shortage'}"><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">:</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CRITICAL"></a><span class="summary-name">CRITICAL</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DEBUG"></a><span class="summary-name">DEBUG</span> = <code title="10">10</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_AUTH_CANCELLED_BY_USER"></a><span class="summary-name">DISCONNECT_AUTH_CANCELLED_BY_USER</span> = <code title="13">13</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE"></a><span class="summary-name">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</span> = <code title="14">14</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_SERVICE_NOT_AVAILABLE"></a><span class="summary-name">DISCONNECT_SERVICE_NOT_AVAILABLE</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="ERROR"></a><span class="summary-name">ERROR</span> = <code title="40">40</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="INFO"></a><span class="summary-name">INFO</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_CLOSE"></a><span class="summary-name">MSG_CHANNEL_CLOSE</span> = <code title="97">97</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_DATA"></a><span class="summary-name">MSG_CHANNEL_DATA</span> = <code title="94">94</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EOF"></a><span class="summary-name">MSG_CHANNEL_EOF</span> = <code title="96">96</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EXTENDED_DATA"></a><span class="summary-name">MSG_CHANNEL_EXTENDED_DATA</span> = <code title="95">95</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_FAILURE"></a><span class="summary-name">MSG_CHANNEL_FAILURE</span> = <code title="100">100</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN"></a><span class="summary-name">MSG_CHANNEL_OPEN</span> = <code title="90">90</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_FAILURE"></a><span class="summary-name">MSG_CHANNEL_OPEN_FAILURE</span> = <code title="92">92</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_OPEN_SUCCESS</span> = <code title="91">91</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_REQUEST"></a><span class="summary-name">MSG_CHANNEL_REQUEST</span> = <code title="98">98</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_SUCCESS</span> = <code title="99">99</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_WINDOW_ADJUST"></a><span class="summary-name">MSG_CHANNEL_WINDOW_ADJUST</span> = <code title="93">93</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DEBUG"></a><span class="summary-name">MSG_DEBUG</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DISCONNECT"></a><span class="summary-name">MSG_DISCONNECT</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_GLOBAL_REQUEST"></a><span class="summary-name">MSG_GLOBAL_REQUEST</span> = <code title="80">80</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_IGNORE"></a><span class="summary-name">MSG_IGNORE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_KEXINIT"></a><span class="summary-name">MSG_KEXINIT</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.sftp_handle-module.html#MSG_NAMES" class="summary-name">MSG_NAMES</a> = <code title="{1: 'disconnect',
- 2: 'ignore',
- 3: 'unimplemented',
- 4: 'debug',
- 5: 'service-request',
- 6: 'service-accept',
- 20: 'kexinit',
- 21: 'newkeys',
-..."><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">, </code>3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_NEWKEYS"></a><span class="summary-name">MSG_NEWKEYS</span> = <code title="21">21</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_FAILURE"></a><span class="summary-name">MSG_REQUEST_FAILURE</span> = <code title="82">82</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_SUCCESS"></a><span class="summary-name">MSG_REQUEST_SUCCESS</span> = <code title="81">81</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_ACCEPT"></a><span class="summary-name">MSG_SERVICE_ACCEPT</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_REQUEST"></a><span class="summary-name">MSG_SERVICE_REQUEST</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_UNIMPLEMENTED"></a><span class="summary-name">MSG_UNIMPLEMENTED</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_BANNER"></a><span class="summary-name">MSG_USERAUTH_BANNER</span> = <code title="53">53</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_FAILURE"></a><span class="summary-name">MSG_USERAUTH_FAILURE</span> = <code title="51">51</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_REQUEST"></a><span class="summary-name">MSG_USERAUTH_INFO_REQUEST</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_RESPONSE"></a><span class="summary-name">MSG_USERAUTH_INFO_RESPONSE</span> = <code title="61">61</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_PK_OK"></a><span class="summary-name">MSG_USERAUTH_PK_OK</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_REQUEST"></a><span class="summary-name">MSG_USERAUTH_REQUEST</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_SUCCESS"></a><span class="summary-name">MSG_USERAUTH_SUCCESS</span> = <code title="52">52</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED"></a><span class="summary-name">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_CONNECT_FAILED"></a><span class="summary-name">OPEN_FAILED_CONNECT_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_RESOURCE_SHORTAGE"></a><span class="summary-name">OPEN_FAILED_RESOURCE_SHORTAGE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_UNKNOWN_CHANNEL_TYPE"></a><span class="summary-name">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_SUCCEEDED"></a><span class="summary-name">OPEN_SUCCEEDED</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="PY22"></a><span class="summary-name">PY22</span> = <code title="False">False</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_BAD_MESSAGE"></a><span class="summary-name">SFTP_BAD_MESSAGE</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_CONNECTION_LOST"></a><span class="summary-name">SFTP_CONNECTION_LOST</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.sftp_handle-module.html#SFTP_DESC" class="summary-name">SFTP_DESC</a> = <code title="['Success',
- 'End of file',
- 'No such file',
- 'Permission denied',
- 'Failure',
- 'Bad message',
- 'No connection',
- 'Connection lost',
-..."><code class="variable-group">[</code><code class="variable-quote">'</code><code class="variable-string">Success</code><code class="variable-quote">'</code><code class="variable-op">, </code><code class="variable-quote">'</code><code class="variable-string">End of file</code><code class="variable-quote">'</code><code class="variable-op">, </code><code class="variable-quote">'</code><code class="variable-string">No such file</code><code class="variable-quote">'</code><code class="variable-op">, </code><code class="variable-quote">'</code><code class="variable-string">Permis</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_EOF"></a><span class="summary-name">SFTP_EOF</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FAILURE"></a><span class="summary-name">SFTP_FAILURE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_APPEND"></a><span class="summary-name">SFTP_FLAG_APPEND</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_CREATE"></a><span class="summary-name">SFTP_FLAG_CREATE</span> = <code title="8">8</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_EXCL"></a><span class="summary-name">SFTP_FLAG_EXCL</span> = <code title="32">32</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_READ"></a><span class="summary-name">SFTP_FLAG_READ</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_TRUNC"></a><span class="summary-name">SFTP_FLAG_TRUNC</span> = <code title="16">16</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_WRITE"></a><span class="summary-name">SFTP_FLAG_WRITE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_NO_CONNECTION"></a><span class="summary-name">SFTP_NO_CONNECTION</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_NO_SUCH_FILE"></a><span class="summary-name">SFTP_NO_SUCH_FILE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_OK"></a><span class="summary-name">SFTP_OK</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_OP_UNSUPPORTED"></a><span class="summary-name">SFTP_OP_UNSUPPORTED</span> = <code title="8">8</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_PERMISSION_DENIED"></a><span class="summary-name">SFTP_PERMISSION_DENIED</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="WARNING"></a><span class="summary-name">WARNING</span> = <code title="30">30</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'paramiko'"><code class="variable-quote">'</code><code class="variable-string">paramiko</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="rng"></a><span class="summary-name">rng</span> = <code title="Random.new()">Random.new()</code>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES DETAILS ==================== -->
-<a name="section-VariablesDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables Details</span></td>
-</tr>
-</table>
-<a name="CMD_NAMES"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">CMD_NAMES</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">init</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">version</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">open</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">close</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 5<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">read</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 6<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">write</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 7<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">lstat</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 8<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">fstat</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="CONNECTION_FAILED_CODE"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">CONNECTION_FAILED_CODE</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Connect failed</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Unknown channel type</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Resource shortage</code><code class="variable-quote">'</code><code class="variable-group">}</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="MSG_NAMES"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">MSG_NAMES</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">debug</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 5<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-request</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 6<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-accept</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 20<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">kexinit</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 21<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">newkeys</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="SFTP_DESC"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">SFTP_DESC</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">[</code><code class="variable-quote">'</code><code class="variable-string">Success</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">End of file</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">No such file</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">Permission denied</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">Failure</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">Bad message</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">No connection</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">Connection lost</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:02 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.sftp_handle-pysrc.html b/docs/paramiko.sftp_handle-pysrc.html
deleted file mode 100644
index 58844a7..0000000
--- a/docs/paramiko.sftp_handle-pysrc.html
+++ /dev/null
@@ -1,369 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.sftp_handle</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;sftp_handle
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.sftp_handle-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.sftp_handle-module.html" onclick="show_private();">Module paramiko.sftp_handle</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2003-2007 Robey Pointer &lt;robeypointer@gmail.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring">Abstraction of an SFTP file handle (for server mode).</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package paramiko=paramiko-module.html"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-0', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Module paramiko.common=paramiko.common-module.html"><a title="paramiko.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt> <tt class="py-keyword">import</tt> <tt class="py-op">*</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-2" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-2', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Module paramiko.sftp=paramiko.sftp-module.html"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-3', 'sftp', 'link-3');">sftp</a></tt> <tt class="py-keyword">import</tt> <tt class="py-op">*</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> </tt>
-<a name="SFTPHandle"></a><div id="SFTPHandle-def"><a name="L29"></a><tt class="py-lineno"> 29</tt> <a class="py-toggle" href="#" id="SFTPHandle-toggle" onclick="return toggle('SFTPHandle');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.sftp_handle.SFTPHandle-class.html">SFTPHandle</a> <tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPHandle-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="SFTPHandle-expanded"><a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"><tt class="py-docstring"> Abstract object representing a handle to an open file (or folder) in an</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"><tt class="py-docstring"> SFTP server implementation. Each handle has a string representation used</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"><tt class="py-docstring"> by the client to refer to the underlying file.</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"><tt class="py-docstring"> Server implementations can (and should) subclass SFTPHandle to implement</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"><tt class="py-docstring"> features of a file handle, like L{stat} or L{chattr}.</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="SFTPHandle.__init__"></a><div id="SFTPHandle.__init__-def"><a name="L38"></a><tt class="py-lineno"> 38</tt> <a class="py-toggle" href="#" id="SFTPHandle.__init__-toggle" onclick="return toggle('SFTPHandle.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_handle.SFTPHandle-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">flags</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPHandle.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPHandle.__init__-expanded"><a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"><tt class="py-docstring"> Create a new file handle representing a local file being served over</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"><tt class="py-docstring"> SFTP. If C{flags} is passed in, it's used to determine if the file</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"><tt class="py-docstring"> is open in append mode.</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"><tt class="py-docstring"> @param flags: optional flags as passed to L{SFTPServerInterface.open}</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"><tt class="py-docstring"> @type flags: int</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__flags</tt> <tt class="py-op">=</tt> <tt class="py-name">flags</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__name</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-comment"># only for handles to folders:</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__files</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> <tt class="py-op">}</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__tell</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> </tt>
-<a name="SFTPHandle.close"></a><div id="SFTPHandle.close-def"><a name="L53"></a><tt class="py-lineno"> 53</tt> <a class="py-toggle" href="#" id="SFTPHandle.close-toggle" onclick="return toggle('SFTPHandle.close');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_handle.SFTPHandle-class.html#close">close</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPHandle.close-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPHandle.close-expanded"><a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"><tt class="py-docstring"> When a client closes a file, this method is called on the handle.</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"><tt class="py-docstring"> Normally you would use this method to close the underlying OS level</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"><tt class="py-docstring"> file object(s).</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"><tt class="py-docstring"> The default implementation checks for attributes on C{self} named</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"><tt class="py-docstring"> C{readfile} and/or C{writefile}, and if either or both are present,</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"><tt class="py-docstring"> their C{close()} methods are called. This means that if you are</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"><tt class="py-docstring"> using the default implementations of L{read} and L{write}, this</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"><tt class="py-docstring"> method's default implementation should be fine also.</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt class="py-name">readfile</tt> <tt class="py-op">=</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-string">'readfile'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">readfile</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-name">readfile</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name" targets="Method paramiko.Agent.close()=paramiko.Agent-class.html#close,Method paramiko.BufferedFile.close()=paramiko.BufferedFile-class.html#close,Method paramiko.Channel.close()=paramiko.Channel-class.html#close,Method paramiko.SFTPClient.close()=paramiko.SFTPClient-class.html#close,Method paramiko.SFTPFile.close()=paramiko.SFTPFile-class.html#close,Method paramiko.SFTPHandle.close()=paramiko.SFTPHandle-class.html#close,Method paramiko.SSHClient.close()=paramiko.SSHClient-class.html#close,Method paramiko.Transport.close()=paramiko.Transport-class.html#close,Method paramiko.buffered_pipe.BufferedPipe.close()=paramiko.buffered_pipe.BufferedPipe-class.html#close,Method paramiko.pipe.PosixPipe.close()=paramiko.pipe.PosixPipe-class.html#close,Method paramiko.pipe.WindowsPipe.close()=paramiko.pipe.WindowsPipe-class.html#close,Method paramiko.win_pageant.PageantConnection.close()=paramiko.win_pageant.PageantConnection-class.html#close"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-4', 'close', 'link-4');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-name">writefile</tt> <tt class="py-op">=</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-string">'writefile'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">writefile</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-name">writefile</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-5', 'close', 'link-4');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> </tt>
-<a name="SFTPHandle.read"></a><div id="SFTPHandle.read-def"><a name="L72"></a><tt class="py-lineno"> 72</tt> <a class="py-toggle" href="#" id="SFTPHandle.read-toggle" onclick="return toggle('SFTPHandle.read');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_handle.SFTPHandle-class.html#read">read</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">offset</tt><tt class="py-op">,</tt> <tt class="py-param">length</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPHandle.read-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPHandle.read-expanded"><a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"><tt class="py-docstring"> Read up to C{length} bytes from this file, starting at position</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"><tt class="py-docstring"> C{offset}. The offset may be a python long, since SFTP allows it</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"><tt class="py-docstring"> to be 64 bits.</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"><tt class="py-docstring"> If the end of the file has been reached, this method may return an</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"><tt class="py-docstring"> empty string to signify EOF, or it may also return L{SFTP_EOF}.</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"><tt class="py-docstring"> The default implementation checks for an attribute on C{self} named</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"><tt class="py-docstring"> C{readfile}, and if present, performs the read operation on the python</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"><tt class="py-docstring"> file-like object found there. (This is meant as a time saver for the</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"><tt class="py-docstring"> common case where you are wrapping a python file object.)</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"><tt class="py-docstring"> @param offset: position in the file to start reading from.</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"><tt class="py-docstring"> @type offset: int or long</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"><tt class="py-docstring"> @param length: number of bytes to attempt to read.</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"><tt class="py-docstring"> @type length: int</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"><tt class="py-docstring"> @return: data read from the file, or an SFTP error code.</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: str</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-name">readfile</tt> <tt class="py-op">=</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-string">'readfile'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">readfile</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-6" class="py-name" targets="Variable paramiko.sftp.SFTP_OP_UNSUPPORTED=paramiko.sftp-module.html#SFTP_OP_UNSUPPORTED,Variable paramiko.sftp_attr.SFTP_OP_UNSUPPORTED=paramiko.sftp_attr-module.html#SFTP_OP_UNSUPPORTED,Variable paramiko.sftp_client.SFTP_OP_UNSUPPORTED=paramiko.sftp_client-module.html#SFTP_OP_UNSUPPORTED,Variable paramiko.sftp_file.SFTP_OP_UNSUPPORTED=paramiko.sftp_file-module.html#SFTP_OP_UNSUPPORTED,Variable paramiko.sftp_handle.SFTP_OP_UNSUPPORTED=paramiko.sftp_handle-module.html#SFTP_OP_UNSUPPORTED,Variable paramiko.sftp_server.SFTP_OP_UNSUPPORTED=paramiko.sftp_server-module.html#SFTP_OP_UNSUPPORTED,Variable paramiko.sftp_si.SFTP_OP_UNSUPPORTED=paramiko.sftp_si-module.html#SFTP_OP_UNSUPPORTED"><a title="paramiko.sftp.SFTP_OP_UNSUPPORTED
-paramiko.sftp_attr.SFTP_OP_UNSUPPORTED
-paramiko.sftp_client.SFTP_OP_UNSUPPORTED
-paramiko.sftp_file.SFTP_OP_UNSUPPORTED
-paramiko.sftp_handle.SFTP_OP_UNSUPPORTED
-paramiko.sftp_server.SFTP_OP_UNSUPPORTED
-paramiko.sftp_si.SFTP_OP_UNSUPPORTED" class="py-name" href="#" onclick="return doclink('link-6', 'SFTP_OP_UNSUPPORTED', 'link-6');">SFTP_OP_UNSUPPORTED</a></tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__tell</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__tell</tt> <tt class="py-op">=</tt> <tt class="py-name">readfile</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Method paramiko.BufferedFile.tell()=paramiko.BufferedFile-class.html#tell"><a title="paramiko.BufferedFile.tell" class="py-name" href="#" onclick="return doclink('link-7', 'tell', 'link-7');">tell</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">offset</tt> <tt class="py-op">!=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__tell</tt><tt class="py-op">:</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-name">readfile</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Method paramiko.BufferedFile.seek()=paramiko.BufferedFile-class.html#seek,Method paramiko.SFTPFile.seek()=paramiko.SFTPFile-class.html#seek"><a title="paramiko.BufferedFile.seek
-paramiko.SFTPFile.seek" class="py-name" href="#" onclick="return doclink('link-8', 'seek', 'link-8');">seek</a></tt><tt class="py-op">(</tt><tt class="py-name">offset</tt><tt class="py-op">)</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__tell</tt> <tt class="py-op">=</tt> <tt class="py-name">offset</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-name">readfile</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name" targets="Method paramiko.BufferedFile.read()=paramiko.BufferedFile-class.html#read,Method paramiko.SFTPHandle.read()=paramiko.SFTPHandle-class.html#read,Method paramiko.buffered_pipe.BufferedPipe.read()=paramiko.buffered_pipe.BufferedPipe-class.html#read"><a title="paramiko.BufferedFile.read
-paramiko.SFTPHandle.read
-paramiko.buffered_pipe.BufferedPipe.read" class="py-name" href="#" onclick="return doclink('link-9', 'read', 'link-9');">read</a></tt><tt class="py-op">(</tt><tt class="py-name">length</tt><tt class="py-op">)</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">IOError</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__tell</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-10" class="py-name" targets="Class paramiko.SFTPServer=paramiko.SFTPServer-class.html"><a title="paramiko.SFTPServer" class="py-name" href="#" onclick="return doclink('link-10', 'SFTPServer', 'link-10');">SFTPServer</a></tt><tt class="py-op">.</tt><tt id="link-11" class="py-name" targets="Static Method paramiko.SFTPServer.convert_errno()=paramiko.SFTPServer-class.html#convert_errno"><a title="paramiko.SFTPServer.convert_errno" class="py-name" href="#" onclick="return doclink('link-11', 'convert_errno', 'link-11');">convert_errno</a></tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">errno</tt><tt class="py-op">)</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__tell</tt> <tt class="py-op">+=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">data</tt> </tt>
-</div><a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> </tt>
-<a name="SFTPHandle.write"></a><div id="SFTPHandle.write-def"><a name="L109"></a><tt class="py-lineno">109</tt> <a class="py-toggle" href="#" id="SFTPHandle.write-toggle" onclick="return toggle('SFTPHandle.write');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_handle.SFTPHandle-class.html#write">write</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">offset</tt><tt class="py-op">,</tt> <tt class="py-param">data</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPHandle.write-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPHandle.write-expanded"><a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"><tt class="py-docstring"> Write C{data} into this file at position C{offset}. Extending the</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"><tt class="py-docstring"> file past its original end is expected. Unlike python's normal</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"><tt class="py-docstring"> C{write()} methods, this method cannot do a partial write: it must</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"><tt class="py-docstring"> write all of C{data} or else return an error.</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"><tt class="py-docstring"> The default implementation checks for an attribute on C{self} named</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"><tt class="py-docstring"> C{writefile}, and if present, performs the write operation on the</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"><tt class="py-docstring"> python file-like object found there. The attribute is named</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"><tt class="py-docstring"> differently from C{readfile} to make it easy to implement read-only</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"><tt class="py-docstring"> (or write-only) files, but if both attributes are present, they should</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"><tt class="py-docstring"> refer to the same file.</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"><tt class="py-docstring"> @param offset: position in the file to start reading from.</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"><tt class="py-docstring"> @type offset: int or long</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"><tt class="py-docstring"> @param data: data to write into the file.</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"><tt class="py-docstring"> @type data: str</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"><tt class="py-docstring"> @return: an SFTP error code like L{SFTP_OK}.</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-name">writefile</tt> <tt class="py-op">=</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-string">'writefile'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">writefile</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-12" class="py-name"><a title="paramiko.sftp.SFTP_OP_UNSUPPORTED
-paramiko.sftp_attr.SFTP_OP_UNSUPPORTED
-paramiko.sftp_client.SFTP_OP_UNSUPPORTED
-paramiko.sftp_file.SFTP_OP_UNSUPPORTED
-paramiko.sftp_handle.SFTP_OP_UNSUPPORTED
-paramiko.sftp_server.SFTP_OP_UNSUPPORTED
-paramiko.sftp_si.SFTP_OP_UNSUPPORTED" class="py-name" href="#" onclick="return doclink('link-12', 'SFTP_OP_UNSUPPORTED', 'link-6');">SFTP_OP_UNSUPPORTED</a></tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-comment"># in append mode, don't care about seeking</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__flags</tt> <tt class="py-op">&amp;</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">O_APPEND</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__tell</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__tell</tt> <tt class="py-op">=</tt> <tt class="py-name">writefile</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="paramiko.BufferedFile.tell" class="py-name" href="#" onclick="return doclink('link-13', 'tell', 'link-7');">tell</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">offset</tt> <tt class="py-op">!=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__tell</tt><tt class="py-op">:</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-name">writefile</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="paramiko.BufferedFile.seek
-paramiko.SFTPFile.seek" class="py-name" href="#" onclick="return doclink('link-14', 'seek', 'link-8');">seek</a></tt><tt class="py-op">(</tt><tt class="py-name">offset</tt><tt class="py-op">)</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__tell</tt> <tt class="py-op">=</tt> <tt class="py-name">offset</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-name">writefile</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name" targets="Method paramiko.BufferedFile.write()=paramiko.BufferedFile-class.html#write,Method paramiko.SFTPHandle.write()=paramiko.SFTPHandle-class.html#write"><a title="paramiko.BufferedFile.write
-paramiko.SFTPHandle.write" class="py-name" href="#" onclick="return doclink('link-15', 'write', 'link-15');">write</a></tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-name">writefile</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name" targets="Method paramiko.BufferedFile.flush()=paramiko.BufferedFile-class.html#flush"><a title="paramiko.BufferedFile.flush" class="py-name" href="#" onclick="return doclink('link-16', 'flush', 'link-16');">flush</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">IOError</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__tell</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-17" class="py-name"><a title="paramiko.SFTPServer" class="py-name" href="#" onclick="return doclink('link-17', 'SFTPServer', 'link-10');">SFTPServer</a></tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="paramiko.SFTPServer.convert_errno" class="py-name" href="#" onclick="return doclink('link-18', 'convert_errno', 'link-11');">convert_errno</a></tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">errno</tt><tt class="py-op">)</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__tell</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__tell</tt> <tt class="py-op">+=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-19" class="py-name" targets="Variable paramiko.sftp.SFTP_OK=paramiko.sftp-module.html#SFTP_OK,Variable paramiko.sftp_attr.SFTP_OK=paramiko.sftp_attr-module.html#SFTP_OK,Variable paramiko.sftp_client.SFTP_OK=paramiko.sftp_client-module.html#SFTP_OK,Variable paramiko.sftp_file.SFTP_OK=paramiko.sftp_file-module.html#SFTP_OK,Variable paramiko.sftp_handle.SFTP_OK=paramiko.sftp_handle-module.html#SFTP_OK,Variable paramiko.sftp_server.SFTP_OK=paramiko.sftp_server-module.html#SFTP_OK,Variable paramiko.sftp_si.SFTP_OK=paramiko.sftp_si-module.html#SFTP_OK"><a title="paramiko.sftp.SFTP_OK
-paramiko.sftp_attr.SFTP_OK
-paramiko.sftp_client.SFTP_OK
-paramiko.sftp_file.SFTP_OK
-paramiko.sftp_handle.SFTP_OK
-paramiko.sftp_server.SFTP_OK
-paramiko.sftp_si.SFTP_OK" class="py-name" href="#" onclick="return doclink('link-19', 'SFTP_OK', 'link-19');">SFTP_OK</a></tt> </tt>
-</div><a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> </tt>
-<a name="SFTPHandle.stat"></a><div id="SFTPHandle.stat-def"><a name="L149"></a><tt class="py-lineno">149</tt> <a class="py-toggle" href="#" id="SFTPHandle.stat-toggle" onclick="return toggle('SFTPHandle.stat');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_handle.SFTPHandle-class.html#stat">stat</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPHandle.stat-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPHandle.stat-expanded"><a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"><tt class="py-docstring"> Return an L{SFTPAttributes} object referring to this open file, or an</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"><tt class="py-docstring"> error code. This is equivalent to L{SFTPServerInterface.stat}, except</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"><tt class="py-docstring"> it's called on an open file instead of a path.</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"><tt class="py-docstring"> @return: an attributes object for the given file, or an SFTP error</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"><tt class="py-docstring"> code (like L{SFTP_PERMISSION_DENIED}).</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: L{SFTPAttributes} I{or error code}</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-20" class="py-name"><a title="paramiko.sftp.SFTP_OP_UNSUPPORTED
-paramiko.sftp_attr.SFTP_OP_UNSUPPORTED
-paramiko.sftp_client.SFTP_OP_UNSUPPORTED
-paramiko.sftp_file.SFTP_OP_UNSUPPORTED
-paramiko.sftp_handle.SFTP_OP_UNSUPPORTED
-paramiko.sftp_server.SFTP_OP_UNSUPPORTED
-paramiko.sftp_si.SFTP_OP_UNSUPPORTED" class="py-name" href="#" onclick="return doclink('link-20', 'SFTP_OP_UNSUPPORTED', 'link-6');">SFTP_OP_UNSUPPORTED</a></tt> </tt>
-</div><a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> </tt>
-<a name="SFTPHandle.chattr"></a><div id="SFTPHandle.chattr-def"><a name="L161"></a><tt class="py-lineno">161</tt> <a class="py-toggle" href="#" id="SFTPHandle.chattr-toggle" onclick="return toggle('SFTPHandle.chattr');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_handle.SFTPHandle-class.html#chattr">chattr</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">attr</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPHandle.chattr-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPHandle.chattr-expanded"><a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"><tt class="py-docstring"> Change the attributes of this file. The C{attr} object will contain</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"><tt class="py-docstring"> only those fields provided by the client in its request, so you should</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"><tt class="py-docstring"> check for the presence of fields before using them.</tt> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"><tt class="py-docstring"> @param attr: the attributes to change on this file.</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"><tt class="py-docstring"> @type attr: L{SFTPAttributes}</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"><tt class="py-docstring"> @return: an error code like L{SFTP_OK}.</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: int</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-21" class="py-name"><a title="paramiko.sftp.SFTP_OP_UNSUPPORTED
-paramiko.sftp_attr.SFTP_OP_UNSUPPORTED
-paramiko.sftp_client.SFTP_OP_UNSUPPORTED
-paramiko.sftp_file.SFTP_OP_UNSUPPORTED
-paramiko.sftp_handle.SFTP_OP_UNSUPPORTED
-paramiko.sftp_server.SFTP_OP_UNSUPPORTED
-paramiko.sftp_si.SFTP_OP_UNSUPPORTED" class="py-name" href="#" onclick="return doclink('link-21', 'SFTP_OP_UNSUPPORTED', 'link-6');">SFTP_OP_UNSUPPORTED</a></tt> </tt>
-</div><a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt class="py-comment">### internals...</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> </tt>
-<a name="SFTPHandle._set_files"></a><div id="SFTPHandle._set_files-def"><a name="L178"></a><tt class="py-lineno">178</tt> <a class="py-toggle" href="#" id="SFTPHandle._set_files-toggle" onclick="return toggle('SFTPHandle._set_files');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_handle.SFTPHandle-class.html#_set_files">_set_files</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">files</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPHandle._set_files-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPHandle._set_files-expanded"><a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"><tt class="py-docstring"> Used by the SFTP server code to cache a directory listing. (In</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"><tt class="py-docstring"> the SFTP protocol, listing a directory is a multi-stage process</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"><tt class="py-docstring"> requiring a temporary handle.)</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__files</tt> <tt class="py-op">=</tt> <tt class="py-name">files</tt> </tt>
-</div><a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> </tt>
-<a name="SFTPHandle._get_next_files"></a><div id="SFTPHandle._get_next_files-def"><a name="L186"></a><tt class="py-lineno">186</tt> <a class="py-toggle" href="#" id="SFTPHandle._get_next_files-toggle" onclick="return toggle('SFTPHandle._get_next_files');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_handle.SFTPHandle-class.html#_get_next_files">_get_next_files</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPHandle._get_next_files-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPHandle._get_next_files-expanded"><a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"><tt class="py-docstring"> Used by the SFTP server code to retreive a cached directory</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"><tt class="py-docstring"> listing.</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"> <tt class="py-name">fnlist</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__files</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-number">16</tt><tt class="py-op">]</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__files</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__files</tt><tt class="py-op">[</tt><tt class="py-number">16</tt><tt class="py-op">:</tt><tt class="py-op">]</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">fnlist</tt> </tt>
-</div><a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> </tt>
-<a name="SFTPHandle._get_name"></a><div id="SFTPHandle._get_name-def"><a name="L195"></a><tt class="py-lineno">195</tt> <a class="py-toggle" href="#" id="SFTPHandle._get_name-toggle" onclick="return toggle('SFTPHandle._get_name');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_handle.SFTPHandle-class.html#_get_name">_get_name</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPHandle._get_name-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPHandle._get_name-expanded"><a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__name</tt> </tt>
-</div><a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> </tt>
-<a name="SFTPHandle._set_name"></a><div id="SFTPHandle._set_name-def"><a name="L198"></a><tt class="py-lineno">198</tt> <a class="py-toggle" href="#" id="SFTPHandle._set_name-toggle" onclick="return toggle('SFTPHandle._set_name');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_handle.SFTPHandle-class.html#_set_name">_set_name</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">name</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPHandle._set_name-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPHandle._set_name-expanded"><a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">__name</tt> <tt class="py-op">=</tt> <tt id="link-22" class="py-name" targets="Variable paramiko.kex_gex.KexGex.name=paramiko.kex_gex.KexGex-class.html#name,Variable paramiko.kex_group1.KexGroup1.name=paramiko.kex_group1.KexGroup1-class.html#name"><a title="paramiko.kex_gex.KexGex.name
-paramiko.kex_group1.KexGroup1.name" class="py-name" href="#" onclick="return doclink('link-22', 'name', 'link-22');">name</a></tt> </tt>
-</div></div><a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-23" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-23', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-24" class="py-name" targets="Module paramiko.sftp_server=paramiko.sftp_server-module.html"><a title="paramiko.sftp_server" class="py-name" href="#" onclick="return doclink('link-24', 'sftp_server', 'link-24');">sftp_server</a></tt> <tt class="py-keyword">import</tt> <tt id="link-25" class="py-name"><a title="paramiko.SFTPServer" class="py-name" href="#" onclick="return doclink('link-25', 'SFTPServer', 'link-10');">SFTPServer</a></tt> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:08 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.sftp_server-module.html b/docs/paramiko.sftp_server-module.html
deleted file mode 100644
index 80561a9..0000000
--- a/docs/paramiko.sftp_server-module.html
+++ /dev/null
@@ -1,907 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.sftp_server</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;sftp_server
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.sftp_server-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module sftp_server</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.sftp_server-pysrc.html">source&nbsp;code</a></span></p>
-<p>Server-mode SFTP support.</p>
-
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_FAILED"></a><span class="summary-name">AUTH_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_PARTIALLY_SUCCESSFUL"></a><span class="summary-name">AUTH_PARTIALLY_SUCCESSFUL</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_SUCCESSFUL"></a><span class="summary-name">AUTH_SUCCESSFUL</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_ATTRS"></a><span class="summary-name">CMD_ATTRS</span> = <code title="105">105</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_CLOSE"></a><span class="summary-name">CMD_CLOSE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_DATA"></a><span class="summary-name">CMD_DATA</span> = <code title="103">103</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_EXTENDED"></a><span class="summary-name">CMD_EXTENDED</span> = <code title="200">200</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_EXTENDED_REPLY"></a><span class="summary-name">CMD_EXTENDED_REPLY</span> = <code title="201">201</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_FSETSTAT"></a><span class="summary-name">CMD_FSETSTAT</span> = <code title="10">10</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_FSTAT"></a><span class="summary-name">CMD_FSTAT</span> = <code title="8">8</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_HANDLE"></a><span class="summary-name">CMD_HANDLE</span> = <code title="102">102</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_INIT"></a><span class="summary-name">CMD_INIT</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_LSTAT"></a><span class="summary-name">CMD_LSTAT</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_MKDIR"></a><span class="summary-name">CMD_MKDIR</span> = <code title="14">14</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_NAME"></a><span class="summary-name">CMD_NAME</span> = <code title="104">104</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.sftp_server-module.html#CMD_NAMES" class="summary-name">CMD_NAMES</a> = <code title="{1: 'init',
- 2: 'version',
- 3: 'open',
- 4: 'close',
- 5: 'read',
- 6: 'write',
- 7: 'lstat',
- 8: 'fstat',
-..."><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">init</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">version</code><code class="variable-quote">'</code><code class="variable-op">, </code>3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">open</code><code class="variable-quote">'</code><code class="variable-op">, </code>4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">close</code><code class="variable-quote">'</code><code class="variable-op">, </code>5<code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_OPEN"></a><span class="summary-name">CMD_OPEN</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_OPENDIR"></a><span class="summary-name">CMD_OPENDIR</span> = <code title="11">11</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_READ"></a><span class="summary-name">CMD_READ</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_READDIR"></a><span class="summary-name">CMD_READDIR</span> = <code title="12">12</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_READLINK"></a><span class="summary-name">CMD_READLINK</span> = <code title="19">19</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_REALPATH"></a><span class="summary-name">CMD_REALPATH</span> = <code title="16">16</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_REMOVE"></a><span class="summary-name">CMD_REMOVE</span> = <code title="13">13</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_RENAME"></a><span class="summary-name">CMD_RENAME</span> = <code title="18">18</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_RMDIR"></a><span class="summary-name">CMD_RMDIR</span> = <code title="15">15</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_SETSTAT"></a><span class="summary-name">CMD_SETSTAT</span> = <code title="9">9</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_STAT"></a><span class="summary-name">CMD_STAT</span> = <code title="17">17</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_STATUS"></a><span class="summary-name">CMD_STATUS</span> = <code title="101">101</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_SYMLINK"></a><span class="summary-name">CMD_SYMLINK</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_VERSION"></a><span class="summary-name">CMD_VERSION</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_WRITE"></a><span class="summary-name">CMD_WRITE</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.sftp_server-module.html#CONNECTION_FAILED_CODE" class="summary-name">CONNECTION_FAILED_CODE</a> = <code title="{1: 'Administratively prohibited',
- 2: 'Connect failed',
- 3: 'Unknown channel type',
- 4: 'Resource shortage'}"><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">:</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CRITICAL"></a><span class="summary-name">CRITICAL</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DEBUG"></a><span class="summary-name">DEBUG</span> = <code title="10">10</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_AUTH_CANCELLED_BY_USER"></a><span class="summary-name">DISCONNECT_AUTH_CANCELLED_BY_USER</span> = <code title="13">13</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE"></a><span class="summary-name">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</span> = <code title="14">14</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_SERVICE_NOT_AVAILABLE"></a><span class="summary-name">DISCONNECT_SERVICE_NOT_AVAILABLE</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="ERROR"></a><span class="summary-name">ERROR</span> = <code title="40">40</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="INFO"></a><span class="summary-name">INFO</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_CLOSE"></a><span class="summary-name">MSG_CHANNEL_CLOSE</span> = <code title="97">97</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_DATA"></a><span class="summary-name">MSG_CHANNEL_DATA</span> = <code title="94">94</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EOF"></a><span class="summary-name">MSG_CHANNEL_EOF</span> = <code title="96">96</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EXTENDED_DATA"></a><span class="summary-name">MSG_CHANNEL_EXTENDED_DATA</span> = <code title="95">95</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_FAILURE"></a><span class="summary-name">MSG_CHANNEL_FAILURE</span> = <code title="100">100</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN"></a><span class="summary-name">MSG_CHANNEL_OPEN</span> = <code title="90">90</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_FAILURE"></a><span class="summary-name">MSG_CHANNEL_OPEN_FAILURE</span> = <code title="92">92</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_OPEN_SUCCESS</span> = <code title="91">91</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_REQUEST"></a><span class="summary-name">MSG_CHANNEL_REQUEST</span> = <code title="98">98</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_SUCCESS</span> = <code title="99">99</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_WINDOW_ADJUST"></a><span class="summary-name">MSG_CHANNEL_WINDOW_ADJUST</span> = <code title="93">93</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DEBUG"></a><span class="summary-name">MSG_DEBUG</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DISCONNECT"></a><span class="summary-name">MSG_DISCONNECT</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_GLOBAL_REQUEST"></a><span class="summary-name">MSG_GLOBAL_REQUEST</span> = <code title="80">80</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_IGNORE"></a><span class="summary-name">MSG_IGNORE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_KEXINIT"></a><span class="summary-name">MSG_KEXINIT</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.sftp_server-module.html#MSG_NAMES" class="summary-name">MSG_NAMES</a> = <code title="{1: 'disconnect',
- 2: 'ignore',
- 3: 'unimplemented',
- 4: 'debug',
- 5: 'service-request',
- 6: 'service-accept',
- 20: 'kexinit',
- 21: 'newkeys',
-..."><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">, </code>3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_NEWKEYS"></a><span class="summary-name">MSG_NEWKEYS</span> = <code title="21">21</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_FAILURE"></a><span class="summary-name">MSG_REQUEST_FAILURE</span> = <code title="82">82</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_SUCCESS"></a><span class="summary-name">MSG_REQUEST_SUCCESS</span> = <code title="81">81</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_ACCEPT"></a><span class="summary-name">MSG_SERVICE_ACCEPT</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_REQUEST"></a><span class="summary-name">MSG_SERVICE_REQUEST</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_UNIMPLEMENTED"></a><span class="summary-name">MSG_UNIMPLEMENTED</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_BANNER"></a><span class="summary-name">MSG_USERAUTH_BANNER</span> = <code title="53">53</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_FAILURE"></a><span class="summary-name">MSG_USERAUTH_FAILURE</span> = <code title="51">51</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_REQUEST"></a><span class="summary-name">MSG_USERAUTH_INFO_REQUEST</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_RESPONSE"></a><span class="summary-name">MSG_USERAUTH_INFO_RESPONSE</span> = <code title="61">61</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_PK_OK"></a><span class="summary-name">MSG_USERAUTH_PK_OK</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_REQUEST"></a><span class="summary-name">MSG_USERAUTH_REQUEST</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_SUCCESS"></a><span class="summary-name">MSG_USERAUTH_SUCCESS</span> = <code title="52">52</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED"></a><span class="summary-name">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_CONNECT_FAILED"></a><span class="summary-name">OPEN_FAILED_CONNECT_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_RESOURCE_SHORTAGE"></a><span class="summary-name">OPEN_FAILED_RESOURCE_SHORTAGE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_UNKNOWN_CHANNEL_TYPE"></a><span class="summary-name">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_SUCCEEDED"></a><span class="summary-name">OPEN_SUCCEEDED</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="PY22"></a><span class="summary-name">PY22</span> = <code title="False">False</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_BAD_MESSAGE"></a><span class="summary-name">SFTP_BAD_MESSAGE</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_CONNECTION_LOST"></a><span class="summary-name">SFTP_CONNECTION_LOST</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.sftp_server-module.html#SFTP_DESC" class="summary-name">SFTP_DESC</a> = <code title="['Success',
- 'End of file',
- 'No such file',
- 'Permission denied',
- 'Failure',
- 'Bad message',
- 'No connection',
- 'Connection lost',
-..."><code class="variable-group">[</code><code class="variable-quote">'</code><code class="variable-string">Success</code><code class="variable-quote">'</code><code class="variable-op">, </code><code class="variable-quote">'</code><code class="variable-string">End of file</code><code class="variable-quote">'</code><code class="variable-op">, </code><code class="variable-quote">'</code><code class="variable-string">No such file</code><code class="variable-quote">'</code><code class="variable-op">, </code><code class="variable-quote">'</code><code class="variable-string">Permis</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_EOF"></a><span class="summary-name">SFTP_EOF</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FAILURE"></a><span class="summary-name">SFTP_FAILURE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_APPEND"></a><span class="summary-name">SFTP_FLAG_APPEND</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_CREATE"></a><span class="summary-name">SFTP_FLAG_CREATE</span> = <code title="8">8</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_EXCL"></a><span class="summary-name">SFTP_FLAG_EXCL</span> = <code title="32">32</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_READ"></a><span class="summary-name">SFTP_FLAG_READ</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_TRUNC"></a><span class="summary-name">SFTP_FLAG_TRUNC</span> = <code title="16">16</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_WRITE"></a><span class="summary-name">SFTP_FLAG_WRITE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_NO_CONNECTION"></a><span class="summary-name">SFTP_NO_CONNECTION</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_NO_SUCH_FILE"></a><span class="summary-name">SFTP_NO_SUCH_FILE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_OK"></a><span class="summary-name">SFTP_OK</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_OP_UNSUPPORTED"></a><span class="summary-name">SFTP_OP_UNSUPPORTED</span> = <code title="8">8</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_PERMISSION_DENIED"></a><span class="summary-name">SFTP_PERMISSION_DENIED</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="WARNING"></a><span class="summary-name">WARNING</span> = <code title="30">30</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'paramiko'"><code class="variable-quote">'</code><code class="variable-string">paramiko</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="rng"></a><span class="summary-name">rng</span> = <code title="Random.new()">Random.new()</code>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES DETAILS ==================== -->
-<a name="section-VariablesDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables Details</span></td>
-</tr>
-</table>
-<a name="CMD_NAMES"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">CMD_NAMES</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">init</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">version</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">open</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">close</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 5<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">read</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 6<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">write</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 7<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">lstat</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 8<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">fstat</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="CONNECTION_FAILED_CODE"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">CONNECTION_FAILED_CODE</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Connect failed</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Unknown channel type</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Resource shortage</code><code class="variable-quote">'</code><code class="variable-group">}</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="MSG_NAMES"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">MSG_NAMES</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">debug</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 5<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-request</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 6<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-accept</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 20<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">kexinit</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 21<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">newkeys</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="SFTP_DESC"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">SFTP_DESC</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">[</code><code class="variable-quote">'</code><code class="variable-string">Success</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">End of file</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">No such file</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">Permission denied</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">Failure</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">Bad message</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">No connection</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">Connection lost</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:02 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.sftp_server-pysrc.html b/docs/paramiko.sftp_server-pysrc.html
deleted file mode 100644
index 834740d..0000000
--- a/docs/paramiko.sftp_server-pysrc.html
+++ /dev/null
@@ -1,1196 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.sftp_server</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;sftp_server
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.sftp_server-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.sftp_server-module.html" onclick="show_private();">Module paramiko.sftp_server</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2003-2007 Robey Pointer &lt;robeypointer@gmail.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring">Server-mode SFTP support.</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">errno</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">Crypto</tt><tt class="py-op">.</tt><tt class="py-name">Hash</tt> <tt class="py-keyword">import</tt> <tt class="py-name">MD5</tt><tt class="py-op">,</tt> <tt class="py-name">SHA</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package paramiko=paramiko-module.html"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-0', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Module paramiko.common=paramiko.common-module.html"><a title="paramiko.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt> <tt class="py-keyword">import</tt> <tt class="py-op">*</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-2" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-2', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Module paramiko.server=paramiko.server-module.html"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-3', 'server', 'link-3');">server</a></tt> <tt class="py-keyword">import</tt> <tt id="link-4" class="py-name" targets="Class paramiko.SubsystemHandler=paramiko.SubsystemHandler-class.html"><a title="paramiko.SubsystemHandler" class="py-name" href="#" onclick="return doclink('link-4', 'SubsystemHandler', 'link-4');">SubsystemHandler</a></tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-5" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-5', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-6" class="py-name" targets="Module paramiko.sftp=paramiko.sftp-module.html"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-6', 'sftp', 'link-6');">sftp</a></tt> <tt class="py-keyword">import</tt> <tt class="py-op">*</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-7" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-7', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Module paramiko.sftp_si=paramiko.sftp_si-module.html"><a title="paramiko.sftp_si" class="py-name" href="#" onclick="return doclink('link-8', 'sftp_si', 'link-8');">sftp_si</a></tt> <tt class="py-keyword">import</tt> <tt class="py-op">*</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-9" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-9', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-10" class="py-name" targets="Module paramiko.sftp_attr=paramiko.sftp_attr-module.html"><a title="paramiko.sftp_attr" class="py-name" href="#" onclick="return doclink('link-10', 'sftp_attr', 'link-10');">sftp_attr</a></tt> <tt class="py-keyword">import</tt> <tt class="py-op">*</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"><tt class="py-comment"># known hash algorithms for the "check-file" extension</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"><tt id="link-11" class="py-name" targets="Variable paramiko.sftp_server._hash_class=paramiko.sftp_server-module.html#_hash_class"><a title="paramiko.sftp_server._hash_class" class="py-name" href="#" onclick="return doclink('link-11', '_hash_class', 'link-11');">_hash_class</a></tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> <tt class="py-string">'sha1'</tt><tt class="py-op">:</tt> <tt class="py-name">SHA</tt><tt class="py-op">,</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> <tt class="py-string">'md5'</tt><tt class="py-op">:</tt> <tt class="py-name">MD5</tt><tt class="py-op">,</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"><tt class="py-op">}</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> </tt>
-<a name="SFTPServer"></a><div id="SFTPServer-def"><a name="L41"></a><tt class="py-lineno"> 41</tt> <a class="py-toggle" href="#" id="SFTPServer-toggle" onclick="return toggle('SFTPServer');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.sftp_server.SFTPServer-class.html">SFTPServer</a> <tt class="py-op">(</tt><tt class="py-base-class">BaseSFTP</tt><tt class="py-op">,</tt> <tt class="py-base-class">SubsystemHandler</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPServer-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="SFTPServer-expanded"><a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"><tt class="py-docstring"> Server-side SFTP subsystem support. Since this is a L{SubsystemHandler},</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"><tt class="py-docstring"> it can be (and is meant to be) set as the handler for C{"sftp"} requests.</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"><tt class="py-docstring"> Use L{Transport.set_subsystem_handler} to activate this class.</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> </tt>
-<a name="SFTPServer.__init__"></a><div id="SFTPServer.__init__-def"><a name="L48"></a><tt class="py-lineno"> 48</tt> <a class="py-toggle" href="#" id="SFTPServer.__init__-toggle" onclick="return toggle('SFTPServer.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_server.SFTPServer-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">channel</tt><tt class="py-op">,</tt> <tt class="py-param">name</tt><tt class="py-op">,</tt> <tt class="py-param">server</tt><tt class="py-op">,</tt> <tt class="py-param">sftp_si</tt><tt class="py-op">=</tt><tt id="link-12" class="py-name" targets="Class paramiko.SFTPServerInterface=paramiko.SFTPServerInterface-class.html"><a title="paramiko.SFTPServerInterface" class="py-name" href="#" onclick="return doclink('link-12', 'SFTPServerInterface', 'link-12');">SFTPServerInterface</a></tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">largs</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">kwargs</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPServer.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPServer.__init__-expanded"><a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"><tt class="py-docstring"> The constructor for SFTPServer is meant to be called from within the</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"><tt class="py-docstring"> L{Transport} as a subsystem handler. C{server} and any additional</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"><tt class="py-docstring"> parameters or keyword parameters are passed from the original call to</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"><tt class="py-docstring"> L{Transport.set_subsystem_handler}.</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"><tt class="py-docstring"> @param channel: channel passed from the L{Transport}.</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"><tt class="py-docstring"> @type channel: L{Channel}</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"><tt class="py-docstring"> @param name: name of the requested subsystem.</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"><tt class="py-docstring"> @type name: str</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"><tt class="py-docstring"> @param server: the server object associated with this channel and</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"><tt class="py-docstring"> subsystem</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"><tt class="py-docstring"> @type server: L{ServerInterface}</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"><tt class="py-docstring"> @param sftp_si: a subclass of L{SFTPServerInterface} to use for handling</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"><tt class="py-docstring"> individual requests.</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"><tt class="py-docstring"> @type sftp_si: class</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-name">BaseSFTP</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name" targets="Method paramiko.Agent.__init__()=paramiko.Agent-class.html#__init__,Method paramiko.AgentKey.__init__()=paramiko.AgentKey-class.html#__init__,Method paramiko.BadAuthenticationType.__init__()=paramiko.BadAuthenticationType-class.html#__init__,Method paramiko.BadHostKeyException.__init__()=paramiko.BadHostKeyException-class.html#__init__,Method paramiko.BufferedFile.__init__()=paramiko.BufferedFile-class.html#__init__,Method paramiko.Channel.__init__()=paramiko.Channel-class.html#__init__,Method paramiko.ChannelException.__init__()=paramiko.ChannelException-class.html#__init__,Method paramiko.DSSKey.__init__()=paramiko.DSSKey-class.html#__init__,Method paramiko.HostKeys.__init__()=paramiko.HostKeys-class.html#__init__,Method paramiko.Message.__init__()=paramiko.Message-class.html#__init__,Method paramiko.PKey.__init__()=paramiko.PKey-class.html#__init__,Method paramiko.RSAKey.__init__()=paramiko.RSAKey-class.html#__init__,Method paramiko.SFTPAttributes.__init__()=paramiko.SFTPAttributes-class.html#__init__,Method paramiko.SFTPClient.__init__()=paramiko.SFTPClient-class.html#__init__,Method paramiko.SFTPFile.__init__()=paramiko.SFTPFile-class.html#__init__,Method paramiko.SFTPHandle.__init__()=paramiko.SFTPHandle-class.html#__init__,Method paramiko.SFTPServer.__init__()=paramiko.SFTPServer-class.html#__init__,Method paramiko.SFTPServerInterface.__init__()=paramiko.SFTPServerInterface-class.html#__init__,Method paramiko.SSHClient.__init__()=paramiko.SSHClient-class.html#__init__,Method paramiko.SSHConfig.__init__()=paramiko.SSHConfig-class.html#__init__,Method paramiko.SecurityOptions.__init__()=paramiko.SecurityOptions-class.html#__init__,Method paramiko.SubsystemHandler.__init__()=paramiko.SubsystemHandler-class.html#__init__,Method paramiko.Transport.__init__()=paramiko.Transport-class.html#__init__,Method paramiko.ber.BER.__init__()=paramiko.ber.BER-class.html#__init__,Method paramiko.buffered_pipe.BufferedPipe.__init__()=paramiko.buffered_pipe.BufferedPipe-class.html#__init__,Method paramiko.channel.ChannelStderrFile.__init__()=paramiko.channel.ChannelStderrFile-class.html#__init__,Method paramiko.compress.ZlibCompressor.__init__()=paramiko.compress.ZlibCompressor-class.html#__init__,Method paramiko.compress.ZlibDecompressor.__init__()=paramiko.compress.ZlibDecompressor-class.html#__init__,Method paramiko.hostkeys.HostKeyEntry.__init__()=paramiko.hostkeys.HostKeyEntry-class.html#__init__,Method paramiko.kex_gex.KexGex.__init__()=paramiko.kex_gex.KexGex-class.html#__init__,Method paramiko.kex_group1.KexGroup1.__init__()=paramiko.kex_group1.KexGroup1-class.html#__init__,Method paramiko.logging22.Formatter.__init__()=paramiko.logging22.Formatter-class.html#__init__,Method paramiko.logging22.StreamHandler.__init__()=paramiko.logging22.StreamHandler-class.html#__init__,Method paramiko.logging22.logger.__init__()=paramiko.logging22.logger-class.html#__init__,Method paramiko.pipe.OrPipe.__init__()=paramiko.pipe.OrPipe-class.html#__init__,Method paramiko.pipe.PosixPipe.__init__()=paramiko.pipe.PosixPipe-class.html#__init__,Method paramiko.pipe.WindowsPipe.__init__()=paramiko.pipe.WindowsPipe-class.html#__init__,Method paramiko.primes.ModulusPack.__init__()=paramiko.primes.ModulusPack-class.html#__init__,Method paramiko.ssh_exception.PartialAuthentication.__init__()=paramiko.ssh_exception.PartialAuthentication-class.html#__init__,Method paramiko.transport.ChannelMap.__init__()=paramiko.transport.ChannelMap-class.html#__init__,Method paramiko.util.Counter.__init__()=paramiko.util.Counter-class.html#__init__,Method paramiko.util.enumerate.__init__()=paramiko.util.enumerate-class.html#__init__,Method paramiko.win_pageant.PageantConnection.__init__()=paramiko.win_pageant.PageantConnection-class.html#__init__"><a title="paramiko.Agent.__init__
-paramiko.AgentKey.__init__
-paramiko.BadAuthenticationType.__init__
-paramiko.BadHostKeyException.__init__
-paramiko.BufferedFile.__init__
-paramiko.Channel.__init__
-paramiko.ChannelException.__init__
-paramiko.DSSKey.__init__
-paramiko.HostKeys.__init__
-paramiko.Message.__init__
-paramiko.PKey.__init__
-paramiko.RSAKey.__init__
-paramiko.SFTPAttributes.__init__
-paramiko.SFTPClient.__init__
-paramiko.SFTPFile.__init__
-paramiko.SFTPHandle.__init__
-paramiko.SFTPServer.__init__
-paramiko.SFTPServerInterface.__init__
-paramiko.SSHClient.__init__
-paramiko.SSHConfig.__init__
-paramiko.SecurityOptions.__init__
-paramiko.SubsystemHandler.__init__
-paramiko.Transport.__init__
-paramiko.ber.BER.__init__
-paramiko.buffered_pipe.BufferedPipe.__init__
-paramiko.channel.ChannelStderrFile.__init__
-paramiko.compress.ZlibCompressor.__init__
-paramiko.compress.ZlibDecompressor.__init__
-paramiko.hostkeys.HostKeyEntry.__init__
-paramiko.kex_gex.KexGex.__init__
-paramiko.kex_group1.KexGroup1.__init__
-paramiko.logging22.Formatter.__init__
-paramiko.logging22.StreamHandler.__init__
-paramiko.logging22.logger.__init__
-paramiko.pipe.OrPipe.__init__
-paramiko.pipe.PosixPipe.__init__
-paramiko.pipe.WindowsPipe.__init__
-paramiko.primes.ModulusPack.__init__
-paramiko.ssh_exception.PartialAuthentication.__init__
-paramiko.transport.ChannelMap.__init__
-paramiko.util.Counter.__init__
-paramiko.util.enumerate.__init__
-paramiko.win_pageant.PageantConnection.__init__" class="py-name" href="#" onclick="return doclink('link-13', '__init__', 'link-13');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt id="link-14" class="py-name"><a title="paramiko.SubsystemHandler" class="py-name" href="#" onclick="return doclink('link-14', 'SubsystemHandler', 'link-4');">SubsystemHandler</a></tt><tt class="py-op">.</tt><tt id="link-15" class="py-name"><a title="paramiko.Agent.__init__
-paramiko.AgentKey.__init__
-paramiko.BadAuthenticationType.__init__
-paramiko.BadHostKeyException.__init__
-paramiko.BufferedFile.__init__
-paramiko.Channel.__init__
-paramiko.ChannelException.__init__
-paramiko.DSSKey.__init__
-paramiko.HostKeys.__init__
-paramiko.Message.__init__
-paramiko.PKey.__init__
-paramiko.RSAKey.__init__
-paramiko.SFTPAttributes.__init__
-paramiko.SFTPClient.__init__
-paramiko.SFTPFile.__init__
-paramiko.SFTPHandle.__init__
-paramiko.SFTPServer.__init__
-paramiko.SFTPServerInterface.__init__
-paramiko.SSHClient.__init__
-paramiko.SSHConfig.__init__
-paramiko.SecurityOptions.__init__
-paramiko.SubsystemHandler.__init__
-paramiko.Transport.__init__
-paramiko.ber.BER.__init__
-paramiko.buffered_pipe.BufferedPipe.__init__
-paramiko.channel.ChannelStderrFile.__init__
-paramiko.compress.ZlibCompressor.__init__
-paramiko.compress.ZlibDecompressor.__init__
-paramiko.hostkeys.HostKeyEntry.__init__
-paramiko.kex_gex.KexGex.__init__
-paramiko.kex_group1.KexGroup1.__init__
-paramiko.logging22.Formatter.__init__
-paramiko.logging22.StreamHandler.__init__
-paramiko.logging22.logger.__init__
-paramiko.pipe.OrPipe.__init__
-paramiko.pipe.PosixPipe.__init__
-paramiko.pipe.WindowsPipe.__init__
-paramiko.primes.ModulusPack.__init__
-paramiko.ssh_exception.PartialAuthentication.__init__
-paramiko.transport.ChannelMap.__init__
-paramiko.util.Counter.__init__
-paramiko.util.enumerate.__init__
-paramiko.win_pageant.PageantConnection.__init__" class="py-name" href="#" onclick="return doclink('link-15', '__init__', 'link-13');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">,</tt> <tt id="link-16" class="py-name" targets="Module paramiko.channel=paramiko.channel-module.html"><a title="paramiko.channel" class="py-name" href="#" onclick="return doclink('link-16', 'channel', 'link-16');">channel</a></tt><tt class="py-op">,</tt> <tt id="link-17" class="py-name" targets="Variable paramiko.kex_gex.KexGex.name=paramiko.kex_gex.KexGex-class.html#name,Variable paramiko.kex_group1.KexGroup1.name=paramiko.kex_group1.KexGroup1-class.html#name"><a title="paramiko.kex_gex.KexGex.name
-paramiko.kex_group1.KexGroup1.name" class="py-name" href="#" onclick="return doclink('link-17', 'name', 'link-17');">name</a></tt><tt class="py-op">,</tt> <tt id="link-18" class="py-name"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-18', 'server', 'link-3');">server</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt id="link-19" class="py-name" targets="Module paramiko.transport=paramiko.transport-module.html"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-19', 'transport', 'link-19');">transport</a></tt> <tt class="py-op">=</tt> <tt id="link-20" class="py-name"><a title="paramiko.channel" class="py-name" href="#" onclick="return doclink('link-20', 'channel', 'link-16');">channel</a></tt><tt class="py-op">.</tt><tt id="link-21" class="py-name" targets="Method paramiko.Channel.get_transport()=paramiko.Channel-class.html#get_transport,Method paramiko.SSHClient.get_transport()=paramiko.SSHClient-class.html#get_transport"><a title="paramiko.Channel.get_transport
-paramiko.SSHClient.get_transport" class="py-name" href="#" onclick="return doclink('link-21', 'get_transport', 'link-21');">get_transport</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name" targets="Class paramiko.logging22.logger=paramiko.logging22.logger-class.html"><a title="paramiko.logging22.logger" class="py-name" href="#" onclick="return doclink('link-22', 'logger', 'link-22');">logger</a></tt> <tt class="py-op">=</tt> <tt id="link-23" class="py-name" targets="Module paramiko.util=paramiko.util-module.html"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-23', 'util', 'link-23');">util</a></tt><tt class="py-op">.</tt><tt id="link-24" class="py-name" targets="Function paramiko.util.get_logger()=paramiko.util-module.html#get_logger"><a title="paramiko.util.get_logger" class="py-name" href="#" onclick="return doclink('link-24', 'get_logger', 'link-24');">get_logger</a></tt><tt class="py-op">(</tt><tt id="link-25" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-25', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt id="link-26" class="py-name" targets="Method paramiko.Transport.get_log_channel()=paramiko.Transport-class.html#get_log_channel"><a title="paramiko.Transport.get_log_channel" class="py-name" href="#" onclick="return doclink('link-26', 'get_log_channel', 'link-26');">get_log_channel</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">'.sftp'</tt><tt class="py-op">)</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">ultra_debug</tt> <tt class="py-op">=</tt> <tt id="link-27" class="py-name"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-27', 'transport', 'link-19');">transport</a></tt><tt class="py-op">.</tt><tt id="link-28" class="py-name" targets="Method paramiko.Transport.get_hexdump()=paramiko.Transport-class.html#get_hexdump"><a title="paramiko.Transport.get_hexdump" class="py-name" href="#" onclick="return doclink('link-28', 'get_hexdump', 'link-28');">get_hexdump</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">next_handle</tt> <tt class="py-op">=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-comment"># map of handle-string to SFTPHandle for files &amp; folders:</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">file_table</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> <tt class="py-op">}</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">folder_table</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> <tt class="py-op">}</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-29', 'server', 'link-3');">server</a></tt> <tt class="py-op">=</tt> <tt id="link-30" class="py-name"><a title="paramiko.sftp_si" class="py-name" href="#" onclick="return doclink('link-30', 'sftp_si', 'link-8');">sftp_si</a></tt><tt class="py-op">(</tt><tt id="link-31" class="py-name"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-31', 'server', 'link-3');">server</a></tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-name">largs</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-name">kwargs</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> </tt>
-<a name="SFTPServer._log"></a><div id="SFTPServer._log-def"><a name="L77"></a><tt class="py-lineno"> 77</tt> <a class="py-toggle" href="#" id="SFTPServer._log-toggle" onclick="return toggle('SFTPServer._log');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_server.SFTPServer-class.html#_log">_log</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">level</tt><tt class="py-op">,</tt> <tt class="py-param">msg</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPServer._log-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPServer._log-expanded"><a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">issubclass</tt><tt class="py-op">(</tt><tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">m</tt> <tt class="py-keyword">in</tt> <tt class="py-name">msg</tt><tt class="py-op">:</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-name">super</tt><tt class="py-op">(</tt><tt id="link-32" class="py-name" targets="Class paramiko.SFTPServer=paramiko.SFTPServer-class.html"><a title="paramiko.SFTPServer" class="py-name" href="#" onclick="return doclink('link-32', 'SFTPServer', 'link-32');">SFTPServer</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt class="py-name">level</tt><tt class="py-op">,</tt> <tt class="py-string">"[chan "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">sock</tt><tt class="py-op">.</tt><tt id="link-33" class="py-name" targets="Method paramiko.AgentKey.get_name()=paramiko.AgentKey-class.html#get_name,Method paramiko.Channel.get_name()=paramiko.Channel-class.html#get_name,Method paramiko.DSSKey.get_name()=paramiko.DSSKey-class.html#get_name,Method paramiko.PKey.get_name()=paramiko.PKey-class.html#get_name,Method paramiko.RSAKey.get_name()=paramiko.RSAKey-class.html#get_name"><a title="paramiko.AgentKey.get_name
-paramiko.Channel.get_name
-paramiko.DSSKey.get_name
-paramiko.PKey.get_name
-paramiko.RSAKey.get_name" class="py-name" href="#" onclick="return doclink('link-33', 'get_name', 'link-33');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"] "</tt> <tt class="py-op">+</tt> <tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-name">super</tt><tt class="py-op">(</tt><tt id="link-34" class="py-name"><a title="paramiko.SFTPServer" class="py-name" href="#" onclick="return doclink('link-34', 'SFTPServer', 'link-32');">SFTPServer</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt class="py-name">level</tt><tt class="py-op">,</tt> <tt class="py-string">"[chan "</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">sock</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name"><a title="paramiko.AgentKey.get_name
-paramiko.Channel.get_name
-paramiko.DSSKey.get_name
-paramiko.PKey.get_name
-paramiko.RSAKey.get_name" class="py-name" href="#" onclick="return doclink('link-35', 'get_name', 'link-33');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">"] "</tt> <tt class="py-op">+</tt> <tt class="py-name">msg</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> </tt>
-<a name="SFTPServer.start_subsystem"></a><div id="SFTPServer.start_subsystem-def"><a name="L84"></a><tt class="py-lineno"> 84</tt> <a class="py-toggle" href="#" id="SFTPServer.start_subsystem-toggle" onclick="return toggle('SFTPServer.start_subsystem');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_server.SFTPServer-class.html#start_subsystem">start_subsystem</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">name</tt><tt class="py-op">,</tt> <tt class="py-param">transport</tt><tt class="py-op">,</tt> <tt class="py-param">channel</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPServer.start_subsystem-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPServer.start_subsystem-expanded"><a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">sock</tt> <tt class="py-op">=</tt> <tt id="link-36" class="py-name"><a title="paramiko.channel" class="py-name" href="#" onclick="return doclink('link-36', 'channel', 'link-16');">channel</a></tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-37" class="py-name" targets="Variable paramiko.auth_handler.DEBUG=paramiko.auth_handler-module.html#DEBUG,Variable paramiko.channel.DEBUG=paramiko.channel-module.html#DEBUG,Variable paramiko.client.DEBUG=paramiko.client-module.html#DEBUG,Variable paramiko.common.DEBUG=paramiko.common-module.html#DEBUG,Variable paramiko.dsskey.DEBUG=paramiko.dsskey-module.html#DEBUG,Variable paramiko.hostkeys.DEBUG=paramiko.hostkeys-module.html#DEBUG,Variable paramiko.kex_gex.DEBUG=paramiko.kex_gex-module.html#DEBUG,Variable paramiko.kex_group1.DEBUG=paramiko.kex_group1-module.html#DEBUG,Variable paramiko.logging22.DEBUG=paramiko.logging22-module.html#DEBUG,Variable paramiko.packet.DEBUG=paramiko.packet-module.html#DEBUG,Variable paramiko.pkey.DEBUG=paramiko.pkey-module.html#DEBUG,Variable paramiko.rsakey.DEBUG=paramiko.rsakey-module.html#DEBUG,Variable paramiko.server.DEBUG=paramiko.server-module.html#DEBUG,Variable paramiko.sftp.DEBUG=paramiko.sftp-module.html#DEBUG,Variable paramiko.sftp_attr.DEBUG=paramiko.sftp_attr-module.html#DEBUG,Variable paramiko.sftp_client.DEBUG=paramiko.sftp_client-module.html#DEBUG,Variable paramiko.sftp_file.DEBUG=paramiko.sftp_file-module.html#DEBUG,Variable paramiko.sftp_handle.DEBUG=paramiko.sftp_handle-module.html#DEBUG,Variable paramiko.sftp_server.DEBUG=paramiko.sftp_server-module.html#DEBUG,Variable paramiko.sftp_si.DEBUG=paramiko.sftp_si-module.html#DEBUG,Variable paramiko.transport.DEBUG=paramiko.transport-module.html#DEBUG,Variable paramiko.util.DEBUG=paramiko.util-module.html#DEBUG"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-37', 'DEBUG', 'link-37');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Started sftp server on channel %s'</tt> <tt class="py-op">%</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt><tt id="link-38" class="py-name"><a title="paramiko.channel" class="py-name" href="#" onclick="return doclink('link-38', 'channel', 'link-16');">channel</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_server_version</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-39', 'server', 'link-3');">server</a></tt><tt class="py-op">.</tt><tt id="link-40" class="py-name" targets="Method paramiko.SFTPServerInterface.session_started()=paramiko.SFTPServerInterface-class.html#session_started"><a title="paramiko.SFTPServerInterface.session_started" class="py-name" href="#" onclick="return doclink('link-40', 'session_started', 'link-40');">session_started</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-name">t</tt><tt class="py-op">,</tt> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_read_packet</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">EOFError</tt><tt class="py-op">:</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-41" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-41', 'DEBUG', 'link-37');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'EOF -- end of session'</tt><tt class="py-op">)</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-42" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-42', 'DEBUG', 'link-37');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Exception on channel: '</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-43" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-43', 'DEBUG', 'link-37');">DEBUG</a></tt><tt class="py-op">,</tt> <tt id="link-44" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-44', 'util', 'link-23');">util</a></tt><tt class="py-op">.</tt><tt id="link-45" class="py-name" targets="Function paramiko.util.tb_strings()=paramiko.util-module.html#tb_strings"><a title="paramiko.util.tb_strings" class="py-name" href="#" onclick="return doclink('link-45', 'tb_strings', 'link-45');">tb_strings</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-name">msg</tt> <tt class="py-op">=</tt> <tt id="link-46" class="py-name" targets="Class paramiko.Message=paramiko.Message-class.html"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-46', 'Message', 'link-46');">Message</a></tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-name">request_number</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-47" class="py-name" targets="Method paramiko.Message.get_int()=paramiko.Message-class.html#get_int"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-47', 'get_int', 'link-47');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_process</tt><tt class="py-op">(</tt><tt class="py-name">t</tt><tt class="py-op">,</tt> <tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt class="py-name">msg</tt><tt class="py-op">)</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-48" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-48', 'DEBUG', 'link-37');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Exception in server processing: '</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-49" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-49', 'DEBUG', 'link-37');">DEBUG</a></tt><tt class="py-op">,</tt> <tt id="link-50" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-50', 'util', 'link-23');">util</a></tt><tt class="py-op">.</tt><tt id="link-51" class="py-name"><a title="paramiko.util.tb_strings" class="py-name" href="#" onclick="return doclink('link-51', 'tb_strings', 'link-45');">tb_strings</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-comment"># send some kind of failure message, at least</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_status</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt id="link-52" class="py-name" targets="Variable paramiko.sftp.SFTP_FAILURE=paramiko.sftp-module.html#SFTP_FAILURE,Variable paramiko.sftp_attr.SFTP_FAILURE=paramiko.sftp_attr-module.html#SFTP_FAILURE,Variable paramiko.sftp_client.SFTP_FAILURE=paramiko.sftp_client-module.html#SFTP_FAILURE,Variable paramiko.sftp_file.SFTP_FAILURE=paramiko.sftp_file-module.html#SFTP_FAILURE,Variable paramiko.sftp_handle.SFTP_FAILURE=paramiko.sftp_handle-module.html#SFTP_FAILURE,Variable paramiko.sftp_server.SFTP_FAILURE=paramiko.sftp_server-module.html#SFTP_FAILURE,Variable paramiko.sftp_si.SFTP_FAILURE=paramiko.sftp_si-module.html#SFTP_FAILURE"><a title="paramiko.sftp.SFTP_FAILURE
-paramiko.sftp_attr.SFTP_FAILURE
-paramiko.sftp_client.SFTP_FAILURE
-paramiko.sftp_file.SFTP_FAILURE
-paramiko.sftp_handle.SFTP_FAILURE
-paramiko.sftp_server.SFTP_FAILURE
-paramiko.sftp_si.SFTP_FAILURE" class="py-name" href="#" onclick="return doclink('link-52', 'SFTP_FAILURE', 'link-52');">SFTP_FAILURE</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-keyword">except</tt><tt class="py-op">:</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-</div><a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> </tt>
-<a name="SFTPServer.finish_subsystem"></a><div id="SFTPServer.finish_subsystem-def"><a name="L112"></a><tt class="py-lineno">112</tt> <a class="py-toggle" href="#" id="SFTPServer.finish_subsystem-toggle" onclick="return toggle('SFTPServer.finish_subsystem');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_server.SFTPServer-class.html#finish_subsystem">finish_subsystem</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPServer.finish_subsystem-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPServer.finish_subsystem-expanded"><a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-53" class="py-name"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-53', 'server', 'link-3');">server</a></tt><tt class="py-op">.</tt><tt id="link-54" class="py-name" targets="Method paramiko.SFTPServerInterface.session_ended()=paramiko.SFTPServerInterface-class.html#session_ended"><a title="paramiko.SFTPServerInterface.session_ended" class="py-name" href="#" onclick="return doclink('link-54', 'session_ended', 'link-54');">session_ended</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-name">super</tt><tt class="py-op">(</tt><tt id="link-55" class="py-name"><a title="paramiko.SFTPServer" class="py-name" href="#" onclick="return doclink('link-55', 'SFTPServer', 'link-32');">SFTPServer</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-56" class="py-name" targets="Method paramiko.SFTPServer.finish_subsystem()=paramiko.SFTPServer-class.html#finish_subsystem,Method paramiko.SubsystemHandler.finish_subsystem()=paramiko.SubsystemHandler-class.html#finish_subsystem"><a title="paramiko.SFTPServer.finish_subsystem
-paramiko.SubsystemHandler.finish_subsystem" class="py-name" href="#" onclick="return doclink('link-56', 'finish_subsystem', 'link-56');">finish_subsystem</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-comment"># close any file handles that were left open (so we can return them to the OS quickly)</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">f</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">file_table</tt><tt class="py-op">.</tt><tt class="py-name">itervalues</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-name">f</tt><tt class="py-op">.</tt><tt id="link-57" class="py-name" targets="Method paramiko.Agent.close()=paramiko.Agent-class.html#close,Method paramiko.BufferedFile.close()=paramiko.BufferedFile-class.html#close,Method paramiko.Channel.close()=paramiko.Channel-class.html#close,Method paramiko.SFTPClient.close()=paramiko.SFTPClient-class.html#close,Method paramiko.SFTPFile.close()=paramiko.SFTPFile-class.html#close,Method paramiko.SFTPHandle.close()=paramiko.SFTPHandle-class.html#close,Method paramiko.SSHClient.close()=paramiko.SSHClient-class.html#close,Method paramiko.Transport.close()=paramiko.Transport-class.html#close,Method paramiko.buffered_pipe.BufferedPipe.close()=paramiko.buffered_pipe.BufferedPipe-class.html#close,Method paramiko.pipe.PosixPipe.close()=paramiko.pipe.PosixPipe-class.html#close,Method paramiko.pipe.WindowsPipe.close()=paramiko.pipe.WindowsPipe-class.html#close,Method paramiko.win_pageant.PageantConnection.close()=paramiko.win_pageant.PageantConnection-class.html#close"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-57', 'close', 'link-57');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">f</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">folder_table</tt><tt class="py-op">.</tt><tt class="py-name">itervalues</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-name">f</tt><tt class="py-op">.</tt><tt id="link-58" class="py-name"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-58', 'close', 'link-57');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">file_table</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">folder_table</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-</div><a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> </tt>
-<a name="SFTPServer.convert_errno"></a><div id="SFTPServer.convert_errno-def"><a name="L123"></a><tt class="py-lineno">123</tt> <a class="py-toggle" href="#" id="SFTPServer.convert_errno-toggle" onclick="return toggle('SFTPServer.convert_errno');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_server.SFTPServer-class.html#convert_errno">convert_errno</a><tt class="py-op">(</tt><tt class="py-param">e</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPServer.convert_errno-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPServer.convert_errno-expanded"><a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"><tt class="py-docstring"> Convert an errno value (as from an C{OSError} or C{IOError}) into a</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"><tt class="py-docstring"> standard SFTP result code. This is a convenience function for trapping</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"><tt class="py-docstring"> exceptions in server code and returning an appropriate result.</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"><tt class="py-docstring"> @param e: an errno code, as from C{OSError.errno}.</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"><tt class="py-docstring"> @type e: int</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"><tt class="py-docstring"> @return: an SFTP error code like L{SFTP_NO_SUCH_FILE}.</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: int</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">e</tt> <tt class="py-op">==</tt> <tt class="py-name">errno</tt><tt class="py-op">.</tt><tt class="py-name">EACCES</tt><tt class="py-op">:</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> <tt class="py-comment"># permission denied</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-59" class="py-name" targets="Variable paramiko.sftp.SFTP_PERMISSION_DENIED=paramiko.sftp-module.html#SFTP_PERMISSION_DENIED,Variable paramiko.sftp_attr.SFTP_PERMISSION_DENIED=paramiko.sftp_attr-module.html#SFTP_PERMISSION_DENIED,Variable paramiko.sftp_client.SFTP_PERMISSION_DENIED=paramiko.sftp_client-module.html#SFTP_PERMISSION_DENIED,Variable paramiko.sftp_file.SFTP_PERMISSION_DENIED=paramiko.sftp_file-module.html#SFTP_PERMISSION_DENIED,Variable paramiko.sftp_handle.SFTP_PERMISSION_DENIED=paramiko.sftp_handle-module.html#SFTP_PERMISSION_DENIED,Variable paramiko.sftp_server.SFTP_PERMISSION_DENIED=paramiko.sftp_server-module.html#SFTP_PERMISSION_DENIED,Variable paramiko.sftp_si.SFTP_PERMISSION_DENIED=paramiko.sftp_si-module.html#SFTP_PERMISSION_DENIED"><a title="paramiko.sftp.SFTP_PERMISSION_DENIED
-paramiko.sftp_attr.SFTP_PERMISSION_DENIED
-paramiko.sftp_client.SFTP_PERMISSION_DENIED
-paramiko.sftp_file.SFTP_PERMISSION_DENIED
-paramiko.sftp_handle.SFTP_PERMISSION_DENIED
-paramiko.sftp_server.SFTP_PERMISSION_DENIED
-paramiko.sftp_si.SFTP_PERMISSION_DENIED" class="py-name" href="#" onclick="return doclink('link-59', 'SFTP_PERMISSION_DENIED', 'link-59');">SFTP_PERMISSION_DENIED</a></tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-op">(</tt><tt class="py-name">e</tt> <tt class="py-op">==</tt> <tt class="py-name">errno</tt><tt class="py-op">.</tt><tt class="py-name">ENOENT</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">e</tt> <tt class="py-op">==</tt> <tt class="py-name">errno</tt><tt class="py-op">.</tt><tt class="py-name">ENOTDIR</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-comment"># no such file</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-60" class="py-name" targets="Variable paramiko.sftp.SFTP_NO_SUCH_FILE=paramiko.sftp-module.html#SFTP_NO_SUCH_FILE,Variable paramiko.sftp_attr.SFTP_NO_SUCH_FILE=paramiko.sftp_attr-module.html#SFTP_NO_SUCH_FILE,Variable paramiko.sftp_client.SFTP_NO_SUCH_FILE=paramiko.sftp_client-module.html#SFTP_NO_SUCH_FILE,Variable paramiko.sftp_file.SFTP_NO_SUCH_FILE=paramiko.sftp_file-module.html#SFTP_NO_SUCH_FILE,Variable paramiko.sftp_handle.SFTP_NO_SUCH_FILE=paramiko.sftp_handle-module.html#SFTP_NO_SUCH_FILE,Variable paramiko.sftp_server.SFTP_NO_SUCH_FILE=paramiko.sftp_server-module.html#SFTP_NO_SUCH_FILE,Variable paramiko.sftp_si.SFTP_NO_SUCH_FILE=paramiko.sftp_si-module.html#SFTP_NO_SUCH_FILE"><a title="paramiko.sftp.SFTP_NO_SUCH_FILE
-paramiko.sftp_attr.SFTP_NO_SUCH_FILE
-paramiko.sftp_client.SFTP_NO_SUCH_FILE
-paramiko.sftp_file.SFTP_NO_SUCH_FILE
-paramiko.sftp_handle.SFTP_NO_SUCH_FILE
-paramiko.sftp_server.SFTP_NO_SUCH_FILE
-paramiko.sftp_si.SFTP_NO_SUCH_FILE" class="py-name" href="#" onclick="return doclink('link-60', 'SFTP_NO_SUCH_FILE', 'link-60');">SFTP_NO_SUCH_FILE</a></tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-61" class="py-name"><a title="paramiko.sftp.SFTP_FAILURE
-paramiko.sftp_attr.SFTP_FAILURE
-paramiko.sftp_client.SFTP_FAILURE
-paramiko.sftp_file.SFTP_FAILURE
-paramiko.sftp_handle.SFTP_FAILURE
-paramiko.sftp_server.SFTP_FAILURE
-paramiko.sftp_si.SFTP_FAILURE" class="py-name" href="#" onclick="return doclink('link-61', 'SFTP_FAILURE', 'link-52');">SFTP_FAILURE</a></tt> </tt>
-</div><a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> <tt id="link-62" class="py-name" targets="Static Method paramiko.SFTPServer.convert_errno()=paramiko.SFTPServer-class.html#convert_errno"><a title="paramiko.SFTPServer.convert_errno" class="py-name" href="#" onclick="return doclink('link-62', 'convert_errno', 'link-62');">convert_errno</a></tt> <tt class="py-op">=</tt> <tt class="py-name">staticmethod</tt><tt class="py-op">(</tt><tt id="link-63" class="py-name"><a title="paramiko.SFTPServer.convert_errno" class="py-name" href="#" onclick="return doclink('link-63', 'convert_errno', 'link-62');">convert_errno</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> </tt>
-<a name="SFTPServer.set_file_attr"></a><div id="SFTPServer.set_file_attr-def"><a name="L144"></a><tt class="py-lineno">144</tt> <a class="py-toggle" href="#" id="SFTPServer.set_file_attr-toggle" onclick="return toggle('SFTPServer.set_file_attr');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_server.SFTPServer-class.html#set_file_attr">set_file_attr</a><tt class="py-op">(</tt><tt class="py-param">filename</tt><tt class="py-op">,</tt> <tt class="py-param">attr</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPServer.set_file_attr-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPServer.set_file_attr-expanded"><a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"><tt class="py-docstring"> Change a file's attributes on the local filesystem. The contents of</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"><tt class="py-docstring"> C{attr} are used to change the permissions, owner, group ownership,</tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"><tt class="py-docstring"> and/or modification &amp; access time of the file, depending on which</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"><tt class="py-docstring"> attributes are present in C{attr}.</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"><tt class="py-docstring"> This is meant to be a handy helper function for translating SFTP file</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"><tt class="py-docstring"> requests into local file operations.</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"><tt class="py-docstring"> @param filename: name of the file to alter (should usually be an</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"><tt class="py-docstring"> absolute path).</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"><tt class="py-docstring"> @type filename: str</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"><tt class="py-docstring"> @param attr: attributes to change.</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"><tt class="py-docstring"> @type attr: L{SFTPAttributes}</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">sys</tt><tt class="py-op">.</tt><tt class="py-name">platform</tt> <tt class="py-op">!=</tt> <tt class="py-string">'win32'</tt><tt class="py-op">:</tt> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"> <tt class="py-comment"># mode operations are meaningless on win32</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">&amp;</tt> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt id="link-64" class="py-name" targets="Variable paramiko.SFTPAttributes.FLAG_PERMISSIONS=paramiko.SFTPAttributes-class.html#FLAG_PERMISSIONS"><a title="paramiko.SFTPAttributes.FLAG_PERMISSIONS" class="py-name" href="#" onclick="return doclink('link-64', 'FLAG_PERMISSIONS', 'link-64');">FLAG_PERMISSIONS</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-65" class="py-name" targets="Method paramiko.SFTPClient.chmod()=paramiko.SFTPClient-class.html#chmod,Method paramiko.SFTPFile.chmod()=paramiko.SFTPFile-class.html#chmod"><a title="paramiko.SFTPClient.chmod
-paramiko.SFTPFile.chmod" class="py-name" href="#" onclick="return doclink('link-65', 'chmod', 'link-65');">chmod</a></tt><tt class="py-op">(</tt><tt class="py-name">filename</tt><tt class="py-op">,</tt> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">st_mode</tt><tt class="py-op">)</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">&amp;</tt> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt id="link-66" class="py-name" targets="Variable paramiko.SFTPAttributes.FLAG_UIDGID=paramiko.SFTPAttributes-class.html#FLAG_UIDGID"><a title="paramiko.SFTPAttributes.FLAG_UIDGID" class="py-name" href="#" onclick="return doclink('link-66', 'FLAG_UIDGID', 'link-66');">FLAG_UIDGID</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-67" class="py-name" targets="Method paramiko.SFTPClient.chown()=paramiko.SFTPClient-class.html#chown,Method paramiko.SFTPFile.chown()=paramiko.SFTPFile-class.html#chown"><a title="paramiko.SFTPClient.chown
-paramiko.SFTPFile.chown" class="py-name" href="#" onclick="return doclink('link-67', 'chown', 'link-67');">chown</a></tt><tt class="py-op">(</tt><tt class="py-name">filename</tt><tt class="py-op">,</tt> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">st_uid</tt><tt class="py-op">,</tt> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">st_gid</tt><tt class="py-op">)</tt> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">&amp;</tt> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt id="link-68" class="py-name" targets="Variable paramiko.SFTPAttributes.FLAG_AMTIME=paramiko.SFTPAttributes-class.html#FLAG_AMTIME"><a title="paramiko.SFTPAttributes.FLAG_AMTIME" class="py-name" href="#" onclick="return doclink('link-68', 'FLAG_AMTIME', 'link-68');">FLAG_AMTIME</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-69" class="py-name" targets="Method paramiko.SFTPClient.utime()=paramiko.SFTPClient-class.html#utime,Method paramiko.SFTPFile.utime()=paramiko.SFTPFile-class.html#utime"><a title="paramiko.SFTPClient.utime
-paramiko.SFTPFile.utime" class="py-name" href="#" onclick="return doclink('link-69', 'utime', 'link-69');">utime</a></tt><tt class="py-op">(</tt><tt class="py-name">filename</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt><tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">st_atime</tt><tt class="py-op">,</tt> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">st_mtime</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">_flags</tt> <tt class="py-op">&amp;</tt> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt id="link-70" class="py-name" targets="Variable paramiko.SFTPAttributes.FLAG_SIZE=paramiko.SFTPAttributes-class.html#FLAG_SIZE"><a title="paramiko.SFTPAttributes.FLAG_SIZE" class="py-name" href="#" onclick="return doclink('link-70', 'FLAG_SIZE', 'link-70');">FLAG_SIZE</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> <tt id="link-71" class="py-name" targets="Method paramiko.SFTPServerInterface.open()=paramiko.SFTPServerInterface-class.html#open"><a title="paramiko.SFTPServerInterface.open" class="py-name" href="#" onclick="return doclink('link-71', 'open', 'link-71');">open</a></tt><tt class="py-op">(</tt><tt class="py-name">filename</tt><tt class="py-op">,</tt> <tt class="py-string">'w+'</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-72" class="py-name" targets="Method paramiko.SFTPClient.truncate()=paramiko.SFTPClient-class.html#truncate,Method paramiko.SFTPFile.truncate()=paramiko.SFTPFile-class.html#truncate"><a title="paramiko.SFTPClient.truncate
-paramiko.SFTPFile.truncate" class="py-name" href="#" onclick="return doclink('link-72', 'truncate', 'link-72');">truncate</a></tt><tt class="py-op">(</tt><tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">st_size</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"> <tt id="link-73" class="py-name" targets="Static Method paramiko.SFTPServer.set_file_attr()=paramiko.SFTPServer-class.html#set_file_attr"><a title="paramiko.SFTPServer.set_file_attr" class="py-name" href="#" onclick="return doclink('link-73', 'set_file_attr', 'link-73');">set_file_attr</a></tt> <tt class="py-op">=</tt> <tt class="py-name">staticmethod</tt><tt class="py-op">(</tt><tt id="link-74" class="py-name"><a title="paramiko.SFTPServer.set_file_attr" class="py-name" href="#" onclick="return doclink('link-74', 'set_file_attr', 'link-73');">set_file_attr</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> <tt class="py-comment">### internals...</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> </tt>
-<a name="SFTPServer._response"></a><div id="SFTPServer._response-def"><a name="L176"></a><tt class="py-lineno">176</tt> <a class="py-toggle" href="#" id="SFTPServer._response-toggle" onclick="return toggle('SFTPServer._response');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_server.SFTPServer-class.html#_response">_response</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">request_number</tt><tt class="py-op">,</tt> <tt class="py-param">t</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">arg</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPServer._response-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPServer._response-expanded"><a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> <tt class="py-name">msg</tt> <tt class="py-op">=</tt> <tt id="link-75" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-75', 'Message', 'link-46');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-76" class="py-name" targets="Method paramiko.Message.add_int()=paramiko.Message-class.html#add_int"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-76', 'add_int', 'link-76');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">)</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">item</tt> <tt class="py-keyword">in</tt> <tt class="py-name">arg</tt><tt class="py-op">:</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">int</tt><tt class="py-op">:</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-77" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-77', 'add_int', 'link-76');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">long</tt><tt class="py-op">:</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-78" class="py-name" targets="Method paramiko.Message.add_int64()=paramiko.Message-class.html#add_int64"><a title="paramiko.Message.add_int64" class="py-name" href="#" onclick="return doclink('link-78', 'add_int64', 'link-78');">add_int64</a></tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">str</tt><tt class="py-op">:</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-79" class="py-name" targets="Method paramiko.Message.add_string()=paramiko.Message-class.html#add_string"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-79', 'add_string', 'link-79');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt id="link-80" class="py-name" targets="Class paramiko.SFTPAttributes=paramiko.SFTPAttributes-class.html"><a title="paramiko.SFTPAttributes" class="py-name" href="#" onclick="return doclink('link-80', 'SFTPAttributes', 'link-80');">SFTPAttributes</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"> <tt class="py-name">item</tt><tt class="py-op">.</tt><tt class="py-name">_pack</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">)</tt> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">Exception</tt><tt class="py-op">(</tt><tt class="py-string">'unknown type for '</tt> <tt class="py-op">+</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">' type '</tt> <tt class="py-op">+</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt><tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">item</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_packet</tt><tt class="py-op">(</tt><tt class="py-name">t</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"> </tt>
-<a name="SFTPServer._send_handle_response"></a><div id="SFTPServer._send_handle_response-def"><a name="L192"></a><tt class="py-lineno">192</tt> <a class="py-toggle" href="#" id="SFTPServer._send_handle_response-toggle" onclick="return toggle('SFTPServer._send_handle_response');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_server.SFTPServer-class.html#_send_handle_response">_send_handle_response</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">request_number</tt><tt class="py-op">,</tt> <tt class="py-param">handle</tt><tt class="py-op">,</tt> <tt class="py-param">folder</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPServer._send_handle_response-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPServer._send_handle_response-expanded"><a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">issubclass</tt><tt class="py-op">(</tt><tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">handle</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt id="link-81" class="py-name" targets="Class paramiko.SFTPHandle=paramiko.SFTPHandle-class.html"><a title="paramiko.SFTPHandle" class="py-name" href="#" onclick="return doclink('link-81', 'SFTPHandle', 'link-81');">SFTPHandle</a></tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"> <tt class="py-comment"># must be error code</tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_status</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt class="py-name">handle</tt><tt class="py-op">)</tt> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"> <tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">_set_name</tt><tt class="py-op">(</tt><tt class="py-string">'hx%d'</tt> <tt class="py-op">%</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">next_handle</tt><tt class="py-op">)</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">next_handle</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">folder</tt><tt class="py-op">:</tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">folder_table</tt><tt class="py-op">[</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">_get_name</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">handle</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">file_table</tt><tt class="py-op">[</tt><tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">_get_name</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">handle</tt> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_response</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt id="link-82" class="py-name" targets="Variable paramiko.sftp.CMD_HANDLE=paramiko.sftp-module.html#CMD_HANDLE,Variable paramiko.sftp_attr.CMD_HANDLE=paramiko.sftp_attr-module.html#CMD_HANDLE,Variable paramiko.sftp_client.CMD_HANDLE=paramiko.sftp_client-module.html#CMD_HANDLE,Variable paramiko.sftp_file.CMD_HANDLE=paramiko.sftp_file-module.html#CMD_HANDLE,Variable paramiko.sftp_handle.CMD_HANDLE=paramiko.sftp_handle-module.html#CMD_HANDLE,Variable paramiko.sftp_server.CMD_HANDLE=paramiko.sftp_server-module.html#CMD_HANDLE,Variable paramiko.sftp_si.CMD_HANDLE=paramiko.sftp_si-module.html#CMD_HANDLE"><a title="paramiko.sftp.CMD_HANDLE
-paramiko.sftp_attr.CMD_HANDLE
-paramiko.sftp_client.CMD_HANDLE
-paramiko.sftp_file.CMD_HANDLE
-paramiko.sftp_handle.CMD_HANDLE
-paramiko.sftp_server.CMD_HANDLE
-paramiko.sftp_si.CMD_HANDLE" class="py-name" href="#" onclick="return doclink('link-82', 'CMD_HANDLE', 'link-82');">CMD_HANDLE</a></tt><tt class="py-op">,</tt> <tt class="py-name">handle</tt><tt class="py-op">.</tt><tt class="py-name">_get_name</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"> </tt>
-<a name="SFTPServer._send_status"></a><div id="SFTPServer._send_status-def"><a name="L205"></a><tt class="py-lineno">205</tt> <a class="py-toggle" href="#" id="SFTPServer._send_status-toggle" onclick="return toggle('SFTPServer._send_status');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_server.SFTPServer-class.html#_send_status">_send_status</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">request_number</tt><tt class="py-op">,</tt> <tt class="py-param">code</tt><tt class="py-op">,</tt> <tt class="py-param">desc</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPServer._send_status-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPServer._send_status-expanded"><a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">desc</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"> <tt class="py-name">desc</tt> <tt class="py-op">=</tt> <tt id="link-83" class="py-name" targets="Variable paramiko.sftp.SFTP_DESC=paramiko.sftp-module.html#SFTP_DESC,Variable paramiko.sftp_attr.SFTP_DESC=paramiko.sftp_attr-module.html#SFTP_DESC,Variable paramiko.sftp_client.SFTP_DESC=paramiko.sftp_client-module.html#SFTP_DESC,Variable paramiko.sftp_file.SFTP_DESC=paramiko.sftp_file-module.html#SFTP_DESC,Variable paramiko.sftp_handle.SFTP_DESC=paramiko.sftp_handle-module.html#SFTP_DESC,Variable paramiko.sftp_server.SFTP_DESC=paramiko.sftp_server-module.html#SFTP_DESC,Variable paramiko.sftp_si.SFTP_DESC=paramiko.sftp_si-module.html#SFTP_DESC"><a title="paramiko.sftp.SFTP_DESC
-paramiko.sftp_attr.SFTP_DESC
-paramiko.sftp_client.SFTP_DESC
-paramiko.sftp_file.SFTP_DESC
-paramiko.sftp_handle.SFTP_DESC
-paramiko.sftp_server.SFTP_DESC
-paramiko.sftp_si.SFTP_DESC" class="py-name" href="#" onclick="return doclink('link-83', 'SFTP_DESC', 'link-83');">SFTP_DESC</a></tt><tt class="py-op">[</tt><tt class="py-name">code</tt><tt class="py-op">]</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">IndexError</tt><tt class="py-op">:</tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"> <tt class="py-name">desc</tt> <tt class="py-op">=</tt> <tt class="py-string">'Unknown'</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"> <tt class="py-comment"># some clients expect a "langauge" tag at the end (but don't mind it being blank)</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_response</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt id="link-84" class="py-name" targets="Variable paramiko.sftp.CMD_STATUS=paramiko.sftp-module.html#CMD_STATUS,Variable paramiko.sftp_attr.CMD_STATUS=paramiko.sftp_attr-module.html#CMD_STATUS,Variable paramiko.sftp_client.CMD_STATUS=paramiko.sftp_client-module.html#CMD_STATUS,Variable paramiko.sftp_file.CMD_STATUS=paramiko.sftp_file-module.html#CMD_STATUS,Variable paramiko.sftp_handle.CMD_STATUS=paramiko.sftp_handle-module.html#CMD_STATUS,Variable paramiko.sftp_server.CMD_STATUS=paramiko.sftp_server-module.html#CMD_STATUS,Variable paramiko.sftp_si.CMD_STATUS=paramiko.sftp_si-module.html#CMD_STATUS"><a title="paramiko.sftp.CMD_STATUS
-paramiko.sftp_attr.CMD_STATUS
-paramiko.sftp_client.CMD_STATUS
-paramiko.sftp_file.CMD_STATUS
-paramiko.sftp_handle.CMD_STATUS
-paramiko.sftp_server.CMD_STATUS
-paramiko.sftp_si.CMD_STATUS" class="py-name" href="#" onclick="return doclink('link-84', 'CMD_STATUS', 'link-84');">CMD_STATUS</a></tt><tt class="py-op">,</tt> <tt class="py-name">code</tt><tt class="py-op">,</tt> <tt class="py-name">desc</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"> </tt>
-<a name="SFTPServer._open_folder"></a><div id="SFTPServer._open_folder-def"><a name="L214"></a><tt class="py-lineno">214</tt> <a class="py-toggle" href="#" id="SFTPServer._open_folder-toggle" onclick="return toggle('SFTPServer._open_folder');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_server.SFTPServer-class.html#_open_folder">_open_folder</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">request_number</tt><tt class="py-op">,</tt> <tt class="py-param">path</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPServer._open_folder-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPServer._open_folder-expanded"><a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"> <tt class="py-name">resp</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-85" class="py-name"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-85', 'server', 'link-3');">server</a></tt><tt class="py-op">.</tt><tt id="link-86" class="py-name" targets="Method paramiko.SFTPServerInterface.list_folder()=paramiko.SFTPServerInterface-class.html#list_folder"><a title="paramiko.SFTPServerInterface.list_folder" class="py-name" href="#" onclick="return doclink('link-86', 'list_folder', 'link-86');">list_folder</a></tt><tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">issubclass</tt><tt class="py-op">(</tt><tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">resp</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"> <tt class="py-comment"># got an actual list of filenames in the folder</tt> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"> <tt class="py-name">folder</tt> <tt class="py-op">=</tt> <tt id="link-87" class="py-name"><a title="paramiko.SFTPHandle" class="py-name" href="#" onclick="return doclink('link-87', 'SFTPHandle', 'link-81');">SFTPHandle</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"> <tt class="py-name">folder</tt><tt class="py-op">.</tt><tt class="py-name">_set_files</tt><tt class="py-op">(</tt><tt class="py-name">resp</tt><tt class="py-op">)</tt> </tt>
-<a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_handle_response</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt class="py-name">folder</tt><tt class="py-op">,</tt> <tt class="py-name">True</tt><tt class="py-op">)</tt> </tt>
-<a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L222"></a><tt class="py-lineno">222</tt> <tt class="py-line"> <tt class="py-comment"># must be an error code</tt> </tt>
-<a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_status</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt class="py-name">resp</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"> </tt>
-<a name="SFTPServer._read_folder"></a><div id="SFTPServer._read_folder-def"><a name="L225"></a><tt class="py-lineno">225</tt> <a class="py-toggle" href="#" id="SFTPServer._read_folder-toggle" onclick="return toggle('SFTPServer._read_folder');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_server.SFTPServer-class.html#_read_folder">_read_folder</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">request_number</tt><tt class="py-op">,</tt> <tt class="py-param">folder</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPServer._read_folder-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPServer._read_folder-expanded"><a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"> <tt class="py-name">flist</tt> <tt class="py-op">=</tt> <tt class="py-name">folder</tt><tt class="py-op">.</tt><tt class="py-name">_get_next_files</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">flist</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_status</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt id="link-88" class="py-name" targets="Variable paramiko.sftp.SFTP_EOF=paramiko.sftp-module.html#SFTP_EOF,Variable paramiko.sftp_attr.SFTP_EOF=paramiko.sftp_attr-module.html#SFTP_EOF,Variable paramiko.sftp_client.SFTP_EOF=paramiko.sftp_client-module.html#SFTP_EOF,Variable paramiko.sftp_file.SFTP_EOF=paramiko.sftp_file-module.html#SFTP_EOF,Variable paramiko.sftp_handle.SFTP_EOF=paramiko.sftp_handle-module.html#SFTP_EOF,Variable paramiko.sftp_server.SFTP_EOF=paramiko.sftp_server-module.html#SFTP_EOF,Variable paramiko.sftp_si.SFTP_EOF=paramiko.sftp_si-module.html#SFTP_EOF"><a title="paramiko.sftp.SFTP_EOF
-paramiko.sftp_attr.SFTP_EOF
-paramiko.sftp_client.SFTP_EOF
-paramiko.sftp_file.SFTP_EOF
-paramiko.sftp_handle.SFTP_EOF
-paramiko.sftp_server.SFTP_EOF
-paramiko.sftp_si.SFTP_EOF" class="py-name" href="#" onclick="return doclink('link-88', 'SFTP_EOF', 'link-88');">SFTP_EOF</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L229"></a><tt class="py-lineno">229</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L230"></a><tt class="py-lineno">230</tt> <tt class="py-line"> <tt class="py-name">msg</tt> <tt class="py-op">=</tt> <tt id="link-89" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-89', 'Message', 'link-46');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-90" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-90', 'add_int', 'link-76');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">)</tt> </tt>
-<a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-91" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-91', 'add_int', 'link-76');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">flist</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">attr</tt> <tt class="py-keyword">in</tt> <tt class="py-name">flist</tt><tt class="py-op">:</tt> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-92" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-92', 'add_string', 'link-79');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">filename</tt><tt class="py-op">)</tt> </tt>
-<a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-93" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-93', 'add_string', 'link-79');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">attr</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"> <tt class="py-name">attr</tt><tt class="py-op">.</tt><tt class="py-name">_pack</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">)</tt> </tt>
-<a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_packet</tt><tt class="py-op">(</tt><tt id="link-94" class="py-name" targets="Variable paramiko.sftp.CMD_NAME=paramiko.sftp-module.html#CMD_NAME,Variable paramiko.sftp_attr.CMD_NAME=paramiko.sftp_attr-module.html#CMD_NAME,Variable paramiko.sftp_client.CMD_NAME=paramiko.sftp_client-module.html#CMD_NAME,Variable paramiko.sftp_file.CMD_NAME=paramiko.sftp_file-module.html#CMD_NAME,Variable paramiko.sftp_handle.CMD_NAME=paramiko.sftp_handle-module.html#CMD_NAME,Variable paramiko.sftp_server.CMD_NAME=paramiko.sftp_server-module.html#CMD_NAME,Variable paramiko.sftp_si.CMD_NAME=paramiko.sftp_si-module.html#CMD_NAME"><a title="paramiko.sftp.CMD_NAME
-paramiko.sftp_attr.CMD_NAME
-paramiko.sftp_client.CMD_NAME
-paramiko.sftp_file.CMD_NAME
-paramiko.sftp_handle.CMD_NAME
-paramiko.sftp_server.CMD_NAME
-paramiko.sftp_si.CMD_NAME" class="py-name" href="#" onclick="return doclink('link-94', 'CMD_NAME', 'link-94');">CMD_NAME</a></tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"> </tt>
-<a name="SFTPServer._check_file"></a><div id="SFTPServer._check_file-def"><a name="L239"></a><tt class="py-lineno">239</tt> <a class="py-toggle" href="#" id="SFTPServer._check_file-toggle" onclick="return toggle('SFTPServer._check_file');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_server.SFTPServer-class.html#_check_file">_check_file</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">request_number</tt><tt class="py-op">,</tt> <tt class="py-param">msg</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPServer._check_file-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPServer._check_file-expanded"><a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"> <tt class="py-comment"># this extension actually comes from v6 protocol, but since it's an</tt> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"> <tt class="py-comment"># extension, i feel like we can reasonably support it backported.</tt> </tt>
-<a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"> <tt class="py-comment"># it's very useful for verifying uploaded files or checking for</tt> </tt>
-<a name="L243"></a><tt class="py-lineno">243</tt> <tt class="py-line"> <tt class="py-comment"># rsync-like differences between local and remote files.</tt> </tt>
-<a name="L244"></a><tt class="py-lineno">244</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-95" class="py-name" targets="Method paramiko.Message.get_string()=paramiko.Message-class.html#get_string"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-95', 'get_string', 'link-95');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L245"></a><tt class="py-lineno">245</tt> <tt class="py-line"> <tt class="py-name">alg_list</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-96" class="py-name" targets="Method paramiko.Message.get_list()=paramiko.Message-class.html#get_list"><a title="paramiko.Message.get_list" class="py-name" href="#" onclick="return doclink('link-96', 'get_list', 'link-96');">get_list</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"> <tt class="py-name">start</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-97" class="py-name" targets="Method paramiko.Message.get_int64()=paramiko.Message-class.html#get_int64"><a title="paramiko.Message.get_int64" class="py-name" href="#" onclick="return doclink('link-97', 'get_int64', 'link-97');">get_int64</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L247"></a><tt class="py-lineno">247</tt> <tt class="py-line"> <tt class="py-name">length</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-98" class="py-name"><a title="paramiko.Message.get_int64" class="py-name" href="#" onclick="return doclink('link-98', 'get_int64', 'link-97');">get_int64</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L248"></a><tt class="py-lineno">248</tt> <tt class="py-line"> <tt class="py-name">block_size</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-99" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-99', 'get_int', 'link-47');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L249"></a><tt class="py-lineno">249</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">handle</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">file_table</tt><tt class="py-op">:</tt> </tt>
-<a name="L250"></a><tt class="py-lineno">250</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_status</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt id="link-100" class="py-name" targets="Variable paramiko.sftp.SFTP_BAD_MESSAGE=paramiko.sftp-module.html#SFTP_BAD_MESSAGE,Variable paramiko.sftp_attr.SFTP_BAD_MESSAGE=paramiko.sftp_attr-module.html#SFTP_BAD_MESSAGE,Variable paramiko.sftp_client.SFTP_BAD_MESSAGE=paramiko.sftp_client-module.html#SFTP_BAD_MESSAGE,Variable paramiko.sftp_file.SFTP_BAD_MESSAGE=paramiko.sftp_file-module.html#SFTP_BAD_MESSAGE,Variable paramiko.sftp_handle.SFTP_BAD_MESSAGE=paramiko.sftp_handle-module.html#SFTP_BAD_MESSAGE,Variable paramiko.sftp_server.SFTP_BAD_MESSAGE=paramiko.sftp_server-module.html#SFTP_BAD_MESSAGE,Variable paramiko.sftp_si.SFTP_BAD_MESSAGE=paramiko.sftp_si-module.html#SFTP_BAD_MESSAGE"><a title="paramiko.sftp.SFTP_BAD_MESSAGE
-paramiko.sftp_attr.SFTP_BAD_MESSAGE
-paramiko.sftp_client.SFTP_BAD_MESSAGE
-paramiko.sftp_file.SFTP_BAD_MESSAGE
-paramiko.sftp_handle.SFTP_BAD_MESSAGE
-paramiko.sftp_server.SFTP_BAD_MESSAGE
-paramiko.sftp_si.SFTP_BAD_MESSAGE" class="py-name" href="#" onclick="return doclink('link-100', 'SFTP_BAD_MESSAGE', 'link-100');">SFTP_BAD_MESSAGE</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Invalid handle'</tt><tt class="py-op">)</tt> </tt>
-<a name="L251"></a><tt class="py-lineno">251</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"> <tt class="py-name">f</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">file_table</tt><tt class="py-op">[</tt><tt class="py-name">handle</tt><tt class="py-op">]</tt> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">x</tt> <tt class="py-keyword">in</tt> <tt class="py-name">alg_list</tt><tt class="py-op">:</tt> </tt>
-<a name="L254"></a><tt class="py-lineno">254</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">x</tt> <tt class="py-keyword">in</tt> <tt id="link-101" class="py-name"><a title="paramiko.sftp_server._hash_class" class="py-name" href="#" onclick="return doclink('link-101', '_hash_class', 'link-11');">_hash_class</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L255"></a><tt class="py-lineno">255</tt> <tt class="py-line"> <tt class="py-name">algname</tt> <tt class="py-op">=</tt> <tt class="py-name">x</tt> </tt>
-<a name="L256"></a><tt class="py-lineno">256</tt> <tt class="py-line"> <tt class="py-name">alg</tt> <tt class="py-op">=</tt> <tt id="link-102" class="py-name"><a title="paramiko.sftp_server._hash_class" class="py-name" href="#" onclick="return doclink('link-102', '_hash_class', 'link-11');">_hash_class</a></tt><tt class="py-op">[</tt><tt class="py-name">x</tt><tt class="py-op">]</tt> </tt>
-<a name="L257"></a><tt class="py-lineno">257</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L258"></a><tt class="py-lineno">258</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L259"></a><tt class="py-lineno">259</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_status</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt id="link-103" class="py-name"><a title="paramiko.sftp.SFTP_FAILURE
-paramiko.sftp_attr.SFTP_FAILURE
-paramiko.sftp_client.SFTP_FAILURE
-paramiko.sftp_file.SFTP_FAILURE
-paramiko.sftp_handle.SFTP_FAILURE
-paramiko.sftp_server.SFTP_FAILURE
-paramiko.sftp_si.SFTP_FAILURE" class="py-name" href="#" onclick="return doclink('link-103', 'SFTP_FAILURE', 'link-52');">SFTP_FAILURE</a></tt><tt class="py-op">,</tt> <tt class="py-string">'No supported hash types found'</tt><tt class="py-op">)</tt> </tt>
-<a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">length</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L262"></a><tt class="py-lineno">262</tt> <tt class="py-line"> <tt class="py-name">st</tt> <tt class="py-op">=</tt> <tt class="py-name">f</tt><tt class="py-op">.</tt><tt id="link-104" class="py-name" targets="Method paramiko.SFTPClient.stat()=paramiko.SFTPClient-class.html#stat,Method paramiko.SFTPFile.stat()=paramiko.SFTPFile-class.html#stat,Method paramiko.SFTPHandle.stat()=paramiko.SFTPHandle-class.html#stat,Method paramiko.SFTPServerInterface.stat()=paramiko.SFTPServerInterface-class.html#stat"><a title="paramiko.SFTPClient.stat
-paramiko.SFTPFile.stat
-paramiko.SFTPHandle.stat
-paramiko.SFTPServerInterface.stat" class="py-name" href="#" onclick="return doclink('link-104', 'stat', 'link-104');">stat</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L263"></a><tt class="py-lineno">263</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">issubclass</tt><tt class="py-op">(</tt><tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">st</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt id="link-105" class="py-name"><a title="paramiko.SFTPAttributes" class="py-name" href="#" onclick="return doclink('link-105', 'SFTPAttributes', 'link-80');">SFTPAttributes</a></tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L264"></a><tt class="py-lineno">264</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_status</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt class="py-name">st</tt><tt class="py-op">,</tt> <tt class="py-string">'Unable to stat file'</tt><tt class="py-op">)</tt> </tt>
-<a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L266"></a><tt class="py-lineno">266</tt> <tt class="py-line"> <tt class="py-name">length</tt> <tt class="py-op">=</tt> <tt class="py-name">st</tt><tt class="py-op">.</tt><tt class="py-name">st_size</tt> <tt class="py-op">-</tt> <tt class="py-name">start</tt> </tt>
-<a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">block_size</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L268"></a><tt class="py-lineno">268</tt> <tt class="py-line"> <tt class="py-name">block_size</tt> <tt class="py-op">=</tt> <tt class="py-name">length</tt> </tt>
-<a name="L269"></a><tt class="py-lineno">269</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">block_size</tt> <tt class="py-op">&lt;</tt> <tt class="py-number">256</tt><tt class="py-op">:</tt> </tt>
-<a name="L270"></a><tt class="py-lineno">270</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_status</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt id="link-106" class="py-name"><a title="paramiko.sftp.SFTP_FAILURE
-paramiko.sftp_attr.SFTP_FAILURE
-paramiko.sftp_client.SFTP_FAILURE
-paramiko.sftp_file.SFTP_FAILURE
-paramiko.sftp_handle.SFTP_FAILURE
-paramiko.sftp_server.SFTP_FAILURE
-paramiko.sftp_si.SFTP_FAILURE" class="py-name" href="#" onclick="return doclink('link-106', 'SFTP_FAILURE', 'link-52');">SFTP_FAILURE</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Block size too small'</tt><tt class="py-op">)</tt> </tt>
-<a name="L271"></a><tt class="py-lineno">271</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"> </tt>
-<a name="L273"></a><tt class="py-lineno">273</tt> <tt class="py-line"> <tt class="py-name">sum_out</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L274"></a><tt class="py-lineno">274</tt> <tt class="py-line"> <tt class="py-name">offset</tt> <tt class="py-op">=</tt> <tt class="py-name">start</tt> </tt>
-<a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">offset</tt> <tt class="py-op">&lt;</tt> <tt class="py-name">start</tt> <tt class="py-op">+</tt> <tt class="py-name">length</tt><tt class="py-op">:</tt> </tt>
-<a name="L276"></a><tt class="py-lineno">276</tt> <tt class="py-line"> <tt class="py-name">blocklen</tt> <tt class="py-op">=</tt> <tt class="py-name">min</tt><tt class="py-op">(</tt><tt class="py-name">block_size</tt><tt class="py-op">,</tt> <tt class="py-name">start</tt> <tt class="py-op">+</tt> <tt class="py-name">length</tt> <tt class="py-op">-</tt> <tt class="py-name">offset</tt><tt class="py-op">)</tt> </tt>
-<a name="L277"></a><tt class="py-lineno">277</tt> <tt class="py-line"> <tt class="py-comment"># don't try to read more than about 64KB at a time</tt> </tt>
-<a name="L278"></a><tt class="py-lineno">278</tt> <tt class="py-line"> <tt class="py-name">chunklen</tt> <tt class="py-op">=</tt> <tt class="py-name">min</tt><tt class="py-op">(</tt><tt class="py-name">blocklen</tt><tt class="py-op">,</tt> <tt class="py-number">65536</tt><tt class="py-op">)</tt> </tt>
-<a name="L279"></a><tt class="py-lineno">279</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L280"></a><tt class="py-lineno">280</tt> <tt class="py-line"> <tt class="py-name">hash_obj</tt> <tt class="py-op">=</tt> <tt class="py-name">alg</tt><tt class="py-op">.</tt><tt id="link-107" class="py-name" targets="Class Method paramiko.util.Counter.new()=paramiko.util.Counter-class.html#new"><a title="paramiko.util.Counter.new" class="py-name" href="#" onclick="return doclink('link-107', 'new', 'link-107');">new</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L281"></a><tt class="py-lineno">281</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">count</tt> <tt class="py-op">&lt;</tt> <tt class="py-name">blocklen</tt><tt class="py-op">:</tt> </tt>
-<a name="L282"></a><tt class="py-lineno">282</tt> <tt class="py-line"> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-name">f</tt><tt class="py-op">.</tt><tt id="link-108" class="py-name" targets="Method paramiko.BufferedFile.read()=paramiko.BufferedFile-class.html#read,Method paramiko.SFTPHandle.read()=paramiko.SFTPHandle-class.html#read,Method paramiko.buffered_pipe.BufferedPipe.read()=paramiko.buffered_pipe.BufferedPipe-class.html#read"><a title="paramiko.BufferedFile.read
-paramiko.SFTPHandle.read
-paramiko.buffered_pipe.BufferedPipe.read" class="py-name" href="#" onclick="return doclink('link-108', 'read', 'link-108');">read</a></tt><tt class="py-op">(</tt><tt class="py-name">offset</tt><tt class="py-op">,</tt> <tt class="py-name">chunklen</tt><tt class="py-op">)</tt> </tt>
-<a name="L283"></a><tt class="py-lineno">283</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">str</tt><tt class="py-op">:</tt> </tt>
-<a name="L284"></a><tt class="py-lineno">284</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_status</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt class="py-name">data</tt><tt class="py-op">,</tt> <tt class="py-string">'Unable to hash file'</tt><tt class="py-op">)</tt> </tt>
-<a name="L285"></a><tt class="py-lineno">285</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L286"></a><tt class="py-lineno">286</tt> <tt class="py-line"> <tt class="py-name">hash_obj</tt><tt class="py-op">.</tt><tt class="py-name">update</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L287"></a><tt class="py-lineno">287</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">+=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L288"></a><tt class="py-lineno">288</tt> <tt class="py-line"> <tt class="py-name">offset</tt> <tt class="py-op">+=</tt> <tt class="py-name">count</tt> </tt>
-<a name="L289"></a><tt class="py-lineno">289</tt> <tt class="py-line"> <tt class="py-name">sum_out</tt> <tt class="py-op">+=</tt> <tt class="py-name">hash_obj</tt><tt class="py-op">.</tt><tt class="py-name">digest</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L290"></a><tt class="py-lineno">290</tt> <tt class="py-line"> </tt>
-<a name="L291"></a><tt class="py-lineno">291</tt> <tt class="py-line"> <tt class="py-name">msg</tt> <tt class="py-op">=</tt> <tt id="link-109" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-109', 'Message', 'link-46');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L292"></a><tt class="py-lineno">292</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-110" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-110', 'add_int', 'link-76');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">)</tt> </tt>
-<a name="L293"></a><tt class="py-lineno">293</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-111" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-111', 'add_string', 'link-79');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-string">'check-file'</tt><tt class="py-op">)</tt> </tt>
-<a name="L294"></a><tt class="py-lineno">294</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-112" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-112', 'add_string', 'link-79');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">algname</tt><tt class="py-op">)</tt> </tt>
-<a name="L295"></a><tt class="py-lineno">295</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-113" class="py-name" targets="Method paramiko.Message.add_bytes()=paramiko.Message-class.html#add_bytes"><a title="paramiko.Message.add_bytes" class="py-name" href="#" onclick="return doclink('link-113', 'add_bytes', 'link-113');">add_bytes</a></tt><tt class="py-op">(</tt><tt class="py-name">sum_out</tt><tt class="py-op">)</tt> </tt>
-<a name="L296"></a><tt class="py-lineno">296</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_packet</tt><tt class="py-op">(</tt><tt id="link-114" class="py-name" targets="Variable paramiko.sftp.CMD_EXTENDED_REPLY=paramiko.sftp-module.html#CMD_EXTENDED_REPLY,Variable paramiko.sftp_attr.CMD_EXTENDED_REPLY=paramiko.sftp_attr-module.html#CMD_EXTENDED_REPLY,Variable paramiko.sftp_client.CMD_EXTENDED_REPLY=paramiko.sftp_client-module.html#CMD_EXTENDED_REPLY,Variable paramiko.sftp_file.CMD_EXTENDED_REPLY=paramiko.sftp_file-module.html#CMD_EXTENDED_REPLY,Variable paramiko.sftp_handle.CMD_EXTENDED_REPLY=paramiko.sftp_handle-module.html#CMD_EXTENDED_REPLY,Variable paramiko.sftp_server.CMD_EXTENDED_REPLY=paramiko.sftp_server-module.html#CMD_EXTENDED_REPLY,Variable paramiko.sftp_si.CMD_EXTENDED_REPLY=paramiko.sftp_si-module.html#CMD_EXTENDED_REPLY"><a title="paramiko.sftp.CMD_EXTENDED_REPLY
-paramiko.sftp_attr.CMD_EXTENDED_REPLY
-paramiko.sftp_client.CMD_EXTENDED_REPLY
-paramiko.sftp_file.CMD_EXTENDED_REPLY
-paramiko.sftp_handle.CMD_EXTENDED_REPLY
-paramiko.sftp_server.CMD_EXTENDED_REPLY
-paramiko.sftp_si.CMD_EXTENDED_REPLY" class="py-name" href="#" onclick="return doclink('link-114', 'CMD_EXTENDED_REPLY', 'link-114');">CMD_EXTENDED_REPLY</a></tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L297"></a><tt class="py-lineno">297</tt> <tt class="py-line"> </tt>
-<a name="SFTPServer._convert_pflags"></a><div id="SFTPServer._convert_pflags-def"><a name="L298"></a><tt class="py-lineno">298</tt> <a class="py-toggle" href="#" id="SFTPServer._convert_pflags-toggle" onclick="return toggle('SFTPServer._convert_pflags');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_server.SFTPServer-class.html#_convert_pflags">_convert_pflags</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">pflags</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPServer._convert_pflags-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPServer._convert_pflags-expanded"><a name="L299"></a><tt class="py-lineno">299</tt> <tt class="py-line"> <tt class="py-docstring">"convert SFTP-style open() flags to python's os.open() flags"</tt> </tt>
-<a name="L300"></a><tt class="py-lineno">300</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">pflags</tt> <tt class="py-op">&amp;</tt> <tt id="link-115" class="py-name" targets="Variable paramiko.sftp.SFTP_FLAG_READ=paramiko.sftp-module.html#SFTP_FLAG_READ,Variable paramiko.sftp_attr.SFTP_FLAG_READ=paramiko.sftp_attr-module.html#SFTP_FLAG_READ,Variable paramiko.sftp_client.SFTP_FLAG_READ=paramiko.sftp_client-module.html#SFTP_FLAG_READ,Variable paramiko.sftp_file.SFTP_FLAG_READ=paramiko.sftp_file-module.html#SFTP_FLAG_READ,Variable paramiko.sftp_handle.SFTP_FLAG_READ=paramiko.sftp_handle-module.html#SFTP_FLAG_READ,Variable paramiko.sftp_server.SFTP_FLAG_READ=paramiko.sftp_server-module.html#SFTP_FLAG_READ,Variable paramiko.sftp_si.SFTP_FLAG_READ=paramiko.sftp_si-module.html#SFTP_FLAG_READ"><a title="paramiko.sftp.SFTP_FLAG_READ
-paramiko.sftp_attr.SFTP_FLAG_READ
-paramiko.sftp_client.SFTP_FLAG_READ
-paramiko.sftp_file.SFTP_FLAG_READ
-paramiko.sftp_handle.SFTP_FLAG_READ
-paramiko.sftp_server.SFTP_FLAG_READ
-paramiko.sftp_si.SFTP_FLAG_READ" class="py-name" href="#" onclick="return doclink('link-115', 'SFTP_FLAG_READ', 'link-115');">SFTP_FLAG_READ</a></tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">pflags</tt> <tt class="py-op">&amp;</tt> <tt id="link-116" class="py-name" targets="Variable paramiko.sftp.SFTP_FLAG_WRITE=paramiko.sftp-module.html#SFTP_FLAG_WRITE,Variable paramiko.sftp_attr.SFTP_FLAG_WRITE=paramiko.sftp_attr-module.html#SFTP_FLAG_WRITE,Variable paramiko.sftp_client.SFTP_FLAG_WRITE=paramiko.sftp_client-module.html#SFTP_FLAG_WRITE,Variable paramiko.sftp_file.SFTP_FLAG_WRITE=paramiko.sftp_file-module.html#SFTP_FLAG_WRITE,Variable paramiko.sftp_handle.SFTP_FLAG_WRITE=paramiko.sftp_handle-module.html#SFTP_FLAG_WRITE,Variable paramiko.sftp_server.SFTP_FLAG_WRITE=paramiko.sftp_server-module.html#SFTP_FLAG_WRITE,Variable paramiko.sftp_si.SFTP_FLAG_WRITE=paramiko.sftp_si-module.html#SFTP_FLAG_WRITE"><a title="paramiko.sftp.SFTP_FLAG_WRITE
-paramiko.sftp_attr.SFTP_FLAG_WRITE
-paramiko.sftp_client.SFTP_FLAG_WRITE
-paramiko.sftp_file.SFTP_FLAG_WRITE
-paramiko.sftp_handle.SFTP_FLAG_WRITE
-paramiko.sftp_server.SFTP_FLAG_WRITE
-paramiko.sftp_si.SFTP_FLAG_WRITE" class="py-name" href="#" onclick="return doclink('link-116', 'SFTP_FLAG_WRITE', 'link-116');">SFTP_FLAG_WRITE</a></tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L301"></a><tt class="py-lineno">301</tt> <tt class="py-line"> <tt class="py-name">flags</tt> <tt class="py-op">=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">O_RDWR</tt> </tt>
-<a name="L302"></a><tt class="py-lineno">302</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">pflags</tt> <tt class="py-op">&amp;</tt> <tt id="link-117" class="py-name"><a title="paramiko.sftp.SFTP_FLAG_WRITE
-paramiko.sftp_attr.SFTP_FLAG_WRITE
-paramiko.sftp_client.SFTP_FLAG_WRITE
-paramiko.sftp_file.SFTP_FLAG_WRITE
-paramiko.sftp_handle.SFTP_FLAG_WRITE
-paramiko.sftp_server.SFTP_FLAG_WRITE
-paramiko.sftp_si.SFTP_FLAG_WRITE" class="py-name" href="#" onclick="return doclink('link-117', 'SFTP_FLAG_WRITE', 'link-116');">SFTP_FLAG_WRITE</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L303"></a><tt class="py-lineno">303</tt> <tt class="py-line"> <tt class="py-name">flags</tt> <tt class="py-op">=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">O_WRONLY</tt> </tt>
-<a name="L304"></a><tt class="py-lineno">304</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L305"></a><tt class="py-lineno">305</tt> <tt class="py-line"> <tt class="py-name">flags</tt> <tt class="py-op">=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">O_RDONLY</tt> </tt>
-<a name="L306"></a><tt class="py-lineno">306</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">pflags</tt> <tt class="py-op">&amp;</tt> <tt id="link-118" class="py-name" targets="Variable paramiko.sftp.SFTP_FLAG_APPEND=paramiko.sftp-module.html#SFTP_FLAG_APPEND,Variable paramiko.sftp_attr.SFTP_FLAG_APPEND=paramiko.sftp_attr-module.html#SFTP_FLAG_APPEND,Variable paramiko.sftp_client.SFTP_FLAG_APPEND=paramiko.sftp_client-module.html#SFTP_FLAG_APPEND,Variable paramiko.sftp_file.SFTP_FLAG_APPEND=paramiko.sftp_file-module.html#SFTP_FLAG_APPEND,Variable paramiko.sftp_handle.SFTP_FLAG_APPEND=paramiko.sftp_handle-module.html#SFTP_FLAG_APPEND,Variable paramiko.sftp_server.SFTP_FLAG_APPEND=paramiko.sftp_server-module.html#SFTP_FLAG_APPEND,Variable paramiko.sftp_si.SFTP_FLAG_APPEND=paramiko.sftp_si-module.html#SFTP_FLAG_APPEND"><a title="paramiko.sftp.SFTP_FLAG_APPEND
-paramiko.sftp_attr.SFTP_FLAG_APPEND
-paramiko.sftp_client.SFTP_FLAG_APPEND
-paramiko.sftp_file.SFTP_FLAG_APPEND
-paramiko.sftp_handle.SFTP_FLAG_APPEND
-paramiko.sftp_server.SFTP_FLAG_APPEND
-paramiko.sftp_si.SFTP_FLAG_APPEND" class="py-name" href="#" onclick="return doclink('link-118', 'SFTP_FLAG_APPEND', 'link-118');">SFTP_FLAG_APPEND</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L307"></a><tt class="py-lineno">307</tt> <tt class="py-line"> <tt class="py-name">flags</tt> <tt class="py-op">|=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">O_APPEND</tt> </tt>
-<a name="L308"></a><tt class="py-lineno">308</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">pflags</tt> <tt class="py-op">&amp;</tt> <tt id="link-119" class="py-name" targets="Variable paramiko.sftp.SFTP_FLAG_CREATE=paramiko.sftp-module.html#SFTP_FLAG_CREATE,Variable paramiko.sftp_attr.SFTP_FLAG_CREATE=paramiko.sftp_attr-module.html#SFTP_FLAG_CREATE,Variable paramiko.sftp_client.SFTP_FLAG_CREATE=paramiko.sftp_client-module.html#SFTP_FLAG_CREATE,Variable paramiko.sftp_file.SFTP_FLAG_CREATE=paramiko.sftp_file-module.html#SFTP_FLAG_CREATE,Variable paramiko.sftp_handle.SFTP_FLAG_CREATE=paramiko.sftp_handle-module.html#SFTP_FLAG_CREATE,Variable paramiko.sftp_server.SFTP_FLAG_CREATE=paramiko.sftp_server-module.html#SFTP_FLAG_CREATE,Variable paramiko.sftp_si.SFTP_FLAG_CREATE=paramiko.sftp_si-module.html#SFTP_FLAG_CREATE"><a title="paramiko.sftp.SFTP_FLAG_CREATE
-paramiko.sftp_attr.SFTP_FLAG_CREATE
-paramiko.sftp_client.SFTP_FLAG_CREATE
-paramiko.sftp_file.SFTP_FLAG_CREATE
-paramiko.sftp_handle.SFTP_FLAG_CREATE
-paramiko.sftp_server.SFTP_FLAG_CREATE
-paramiko.sftp_si.SFTP_FLAG_CREATE" class="py-name" href="#" onclick="return doclink('link-119', 'SFTP_FLAG_CREATE', 'link-119');">SFTP_FLAG_CREATE</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L309"></a><tt class="py-lineno">309</tt> <tt class="py-line"> <tt class="py-name">flags</tt> <tt class="py-op">|=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">O_CREAT</tt> </tt>
-<a name="L310"></a><tt class="py-lineno">310</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">pflags</tt> <tt class="py-op">&amp;</tt> <tt id="link-120" class="py-name" targets="Variable paramiko.sftp.SFTP_FLAG_TRUNC=paramiko.sftp-module.html#SFTP_FLAG_TRUNC,Variable paramiko.sftp_attr.SFTP_FLAG_TRUNC=paramiko.sftp_attr-module.html#SFTP_FLAG_TRUNC,Variable paramiko.sftp_client.SFTP_FLAG_TRUNC=paramiko.sftp_client-module.html#SFTP_FLAG_TRUNC,Variable paramiko.sftp_file.SFTP_FLAG_TRUNC=paramiko.sftp_file-module.html#SFTP_FLAG_TRUNC,Variable paramiko.sftp_handle.SFTP_FLAG_TRUNC=paramiko.sftp_handle-module.html#SFTP_FLAG_TRUNC,Variable paramiko.sftp_server.SFTP_FLAG_TRUNC=paramiko.sftp_server-module.html#SFTP_FLAG_TRUNC,Variable paramiko.sftp_si.SFTP_FLAG_TRUNC=paramiko.sftp_si-module.html#SFTP_FLAG_TRUNC"><a title="paramiko.sftp.SFTP_FLAG_TRUNC
-paramiko.sftp_attr.SFTP_FLAG_TRUNC
-paramiko.sftp_client.SFTP_FLAG_TRUNC
-paramiko.sftp_file.SFTP_FLAG_TRUNC
-paramiko.sftp_handle.SFTP_FLAG_TRUNC
-paramiko.sftp_server.SFTP_FLAG_TRUNC
-paramiko.sftp_si.SFTP_FLAG_TRUNC" class="py-name" href="#" onclick="return doclink('link-120', 'SFTP_FLAG_TRUNC', 'link-120');">SFTP_FLAG_TRUNC</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L311"></a><tt class="py-lineno">311</tt> <tt class="py-line"> <tt class="py-name">flags</tt> <tt class="py-op">|=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">O_TRUNC</tt> </tt>
-<a name="L312"></a><tt class="py-lineno">312</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">pflags</tt> <tt class="py-op">&amp;</tt> <tt id="link-121" class="py-name" targets="Variable paramiko.sftp.SFTP_FLAG_EXCL=paramiko.sftp-module.html#SFTP_FLAG_EXCL,Variable paramiko.sftp_attr.SFTP_FLAG_EXCL=paramiko.sftp_attr-module.html#SFTP_FLAG_EXCL,Variable paramiko.sftp_client.SFTP_FLAG_EXCL=paramiko.sftp_client-module.html#SFTP_FLAG_EXCL,Variable paramiko.sftp_file.SFTP_FLAG_EXCL=paramiko.sftp_file-module.html#SFTP_FLAG_EXCL,Variable paramiko.sftp_handle.SFTP_FLAG_EXCL=paramiko.sftp_handle-module.html#SFTP_FLAG_EXCL,Variable paramiko.sftp_server.SFTP_FLAG_EXCL=paramiko.sftp_server-module.html#SFTP_FLAG_EXCL,Variable paramiko.sftp_si.SFTP_FLAG_EXCL=paramiko.sftp_si-module.html#SFTP_FLAG_EXCL"><a title="paramiko.sftp.SFTP_FLAG_EXCL
-paramiko.sftp_attr.SFTP_FLAG_EXCL
-paramiko.sftp_client.SFTP_FLAG_EXCL
-paramiko.sftp_file.SFTP_FLAG_EXCL
-paramiko.sftp_handle.SFTP_FLAG_EXCL
-paramiko.sftp_server.SFTP_FLAG_EXCL
-paramiko.sftp_si.SFTP_FLAG_EXCL" class="py-name" href="#" onclick="return doclink('link-121', 'SFTP_FLAG_EXCL', 'link-121');">SFTP_FLAG_EXCL</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L313"></a><tt class="py-lineno">313</tt> <tt class="py-line"> <tt class="py-name">flags</tt> <tt class="py-op">|=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">O_EXCL</tt> </tt>
-<a name="L314"></a><tt class="py-lineno">314</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">flags</tt> </tt>
-</div><a name="L315"></a><tt class="py-lineno">315</tt> <tt class="py-line"> </tt>
-<a name="SFTPServer._process"></a><div id="SFTPServer._process-def"><a name="L316"></a><tt class="py-lineno">316</tt> <a class="py-toggle" href="#" id="SFTPServer._process-toggle" onclick="return toggle('SFTPServer._process');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_server.SFTPServer-class.html#_process">_process</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">t</tt><tt class="py-op">,</tt> <tt class="py-param">request_number</tt><tt class="py-op">,</tt> <tt class="py-param">msg</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPServer._process-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPServer._process-expanded"><a name="L317"></a><tt class="py-lineno">317</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-122" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-122', 'DEBUG', 'link-37');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Request: %s'</tt> <tt class="py-op">%</tt> <tt id="link-123" class="py-name" targets="Variable paramiko.sftp.CMD_NAMES=paramiko.sftp-module.html#CMD_NAMES,Variable paramiko.sftp_attr.CMD_NAMES=paramiko.sftp_attr-module.html#CMD_NAMES,Variable paramiko.sftp_client.CMD_NAMES=paramiko.sftp_client-module.html#CMD_NAMES,Variable paramiko.sftp_file.CMD_NAMES=paramiko.sftp_file-module.html#CMD_NAMES,Variable paramiko.sftp_handle.CMD_NAMES=paramiko.sftp_handle-module.html#CMD_NAMES,Variable paramiko.sftp_server.CMD_NAMES=paramiko.sftp_server-module.html#CMD_NAMES,Variable paramiko.sftp_si.CMD_NAMES=paramiko.sftp_si-module.html#CMD_NAMES"><a title="paramiko.sftp.CMD_NAMES
-paramiko.sftp_attr.CMD_NAMES
-paramiko.sftp_client.CMD_NAMES
-paramiko.sftp_file.CMD_NAMES
-paramiko.sftp_handle.CMD_NAMES
-paramiko.sftp_server.CMD_NAMES
-paramiko.sftp_si.CMD_NAMES" class="py-name" href="#" onclick="return doclink('link-123', 'CMD_NAMES', 'link-123');">CMD_NAMES</a></tt><tt class="py-op">[</tt><tt class="py-name">t</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L318"></a><tt class="py-lineno">318</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">t</tt> <tt class="py-op">==</tt> <tt id="link-124" class="py-name" targets="Variable paramiko.sftp.CMD_OPEN=paramiko.sftp-module.html#CMD_OPEN,Variable paramiko.sftp_attr.CMD_OPEN=paramiko.sftp_attr-module.html#CMD_OPEN,Variable paramiko.sftp_client.CMD_OPEN=paramiko.sftp_client-module.html#CMD_OPEN,Variable paramiko.sftp_file.CMD_OPEN=paramiko.sftp_file-module.html#CMD_OPEN,Variable paramiko.sftp_handle.CMD_OPEN=paramiko.sftp_handle-module.html#CMD_OPEN,Variable paramiko.sftp_server.CMD_OPEN=paramiko.sftp_server-module.html#CMD_OPEN,Variable paramiko.sftp_si.CMD_OPEN=paramiko.sftp_si-module.html#CMD_OPEN"><a title="paramiko.sftp.CMD_OPEN
-paramiko.sftp_attr.CMD_OPEN
-paramiko.sftp_client.CMD_OPEN
-paramiko.sftp_file.CMD_OPEN
-paramiko.sftp_handle.CMD_OPEN
-paramiko.sftp_server.CMD_OPEN
-paramiko.sftp_si.CMD_OPEN" class="py-name" href="#" onclick="return doclink('link-124', 'CMD_OPEN', 'link-124');">CMD_OPEN</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L319"></a><tt class="py-lineno">319</tt> <tt class="py-line"> <tt class="py-name">path</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-125" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-125', 'get_string', 'link-95');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L320"></a><tt class="py-lineno">320</tt> <tt class="py-line"> <tt class="py-name">flags</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_convert_pflags</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-126" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-126', 'get_int', 'link-47');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L321"></a><tt class="py-lineno">321</tt> <tt class="py-line"> <tt class="py-name">attr</tt> <tt class="py-op">=</tt> <tt id="link-127" class="py-name"><a title="paramiko.SFTPAttributes" class="py-name" href="#" onclick="return doclink('link-127', 'SFTPAttributes', 'link-80');">SFTPAttributes</a></tt><tt class="py-op">.</tt><tt class="py-name">_from_msg</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">)</tt> </tt>
-<a name="L322"></a><tt class="py-lineno">322</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_handle_response</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-128" class="py-name"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-128', 'server', 'link-3');">server</a></tt><tt class="py-op">.</tt><tt id="link-129" class="py-name"><a title="paramiko.SFTPServerInterface.open" class="py-name" href="#" onclick="return doclink('link-129', 'open', 'link-71');">open</a></tt><tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">,</tt> <tt class="py-name">flags</tt><tt class="py-op">,</tt> <tt class="py-name">attr</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L323"></a><tt class="py-lineno">323</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">t</tt> <tt class="py-op">==</tt> <tt id="link-130" class="py-name" targets="Variable paramiko.sftp.CMD_CLOSE=paramiko.sftp-module.html#CMD_CLOSE,Variable paramiko.sftp_attr.CMD_CLOSE=paramiko.sftp_attr-module.html#CMD_CLOSE,Variable paramiko.sftp_client.CMD_CLOSE=paramiko.sftp_client-module.html#CMD_CLOSE,Variable paramiko.sftp_file.CMD_CLOSE=paramiko.sftp_file-module.html#CMD_CLOSE,Variable paramiko.sftp_handle.CMD_CLOSE=paramiko.sftp_handle-module.html#CMD_CLOSE,Variable paramiko.sftp_server.CMD_CLOSE=paramiko.sftp_server-module.html#CMD_CLOSE,Variable paramiko.sftp_si.CMD_CLOSE=paramiko.sftp_si-module.html#CMD_CLOSE"><a title="paramiko.sftp.CMD_CLOSE
-paramiko.sftp_attr.CMD_CLOSE
-paramiko.sftp_client.CMD_CLOSE
-paramiko.sftp_file.CMD_CLOSE
-paramiko.sftp_handle.CMD_CLOSE
-paramiko.sftp_server.CMD_CLOSE
-paramiko.sftp_si.CMD_CLOSE" class="py-name" href="#" onclick="return doclink('link-130', 'CMD_CLOSE', 'link-130');">CMD_CLOSE</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L324"></a><tt class="py-lineno">324</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-131" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-131', 'get_string', 'link-95');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L325"></a><tt class="py-lineno">325</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">handle</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">folder_table</tt><tt class="py-op">:</tt> </tt>
-<a name="L326"></a><tt class="py-lineno">326</tt> <tt class="py-line"> <tt class="py-keyword">del</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">folder_table</tt><tt class="py-op">[</tt><tt class="py-name">handle</tt><tt class="py-op">]</tt> </tt>
-<a name="L327"></a><tt class="py-lineno">327</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_status</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt id="link-132" class="py-name" targets="Variable paramiko.sftp.SFTP_OK=paramiko.sftp-module.html#SFTP_OK,Variable paramiko.sftp_attr.SFTP_OK=paramiko.sftp_attr-module.html#SFTP_OK,Variable paramiko.sftp_client.SFTP_OK=paramiko.sftp_client-module.html#SFTP_OK,Variable paramiko.sftp_file.SFTP_OK=paramiko.sftp_file-module.html#SFTP_OK,Variable paramiko.sftp_handle.SFTP_OK=paramiko.sftp_handle-module.html#SFTP_OK,Variable paramiko.sftp_server.SFTP_OK=paramiko.sftp_server-module.html#SFTP_OK,Variable paramiko.sftp_si.SFTP_OK=paramiko.sftp_si-module.html#SFTP_OK"><a title="paramiko.sftp.SFTP_OK
-paramiko.sftp_attr.SFTP_OK
-paramiko.sftp_client.SFTP_OK
-paramiko.sftp_file.SFTP_OK
-paramiko.sftp_handle.SFTP_OK
-paramiko.sftp_server.SFTP_OK
-paramiko.sftp_si.SFTP_OK" class="py-name" href="#" onclick="return doclink('link-132', 'SFTP_OK', 'link-132');">SFTP_OK</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L328"></a><tt class="py-lineno">328</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L329"></a><tt class="py-lineno">329</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">handle</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">file_table</tt><tt class="py-op">:</tt> </tt>
-<a name="L330"></a><tt class="py-lineno">330</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">file_table</tt><tt class="py-op">[</tt><tt class="py-name">handle</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-133" class="py-name"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-133', 'close', 'link-57');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L331"></a><tt class="py-lineno">331</tt> <tt class="py-line"> <tt class="py-keyword">del</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">file_table</tt><tt class="py-op">[</tt><tt class="py-name">handle</tt><tt class="py-op">]</tt> </tt>
-<a name="L332"></a><tt class="py-lineno">332</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_status</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt id="link-134" class="py-name"><a title="paramiko.sftp.SFTP_OK
-paramiko.sftp_attr.SFTP_OK
-paramiko.sftp_client.SFTP_OK
-paramiko.sftp_file.SFTP_OK
-paramiko.sftp_handle.SFTP_OK
-paramiko.sftp_server.SFTP_OK
-paramiko.sftp_si.SFTP_OK" class="py-name" href="#" onclick="return doclink('link-134', 'SFTP_OK', 'link-132');">SFTP_OK</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L333"></a><tt class="py-lineno">333</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L334"></a><tt class="py-lineno">334</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_status</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt id="link-135" class="py-name"><a title="paramiko.sftp.SFTP_BAD_MESSAGE
-paramiko.sftp_attr.SFTP_BAD_MESSAGE
-paramiko.sftp_client.SFTP_BAD_MESSAGE
-paramiko.sftp_file.SFTP_BAD_MESSAGE
-paramiko.sftp_handle.SFTP_BAD_MESSAGE
-paramiko.sftp_server.SFTP_BAD_MESSAGE
-paramiko.sftp_si.SFTP_BAD_MESSAGE" class="py-name" href="#" onclick="return doclink('link-135', 'SFTP_BAD_MESSAGE', 'link-100');">SFTP_BAD_MESSAGE</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Invalid handle'</tt><tt class="py-op">)</tt> </tt>
-<a name="L335"></a><tt class="py-lineno">335</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">t</tt> <tt class="py-op">==</tt> <tt id="link-136" class="py-name" targets="Variable paramiko.sftp.CMD_READ=paramiko.sftp-module.html#CMD_READ,Variable paramiko.sftp_attr.CMD_READ=paramiko.sftp_attr-module.html#CMD_READ,Variable paramiko.sftp_client.CMD_READ=paramiko.sftp_client-module.html#CMD_READ,Variable paramiko.sftp_file.CMD_READ=paramiko.sftp_file-module.html#CMD_READ,Variable paramiko.sftp_handle.CMD_READ=paramiko.sftp_handle-module.html#CMD_READ,Variable paramiko.sftp_server.CMD_READ=paramiko.sftp_server-module.html#CMD_READ,Variable paramiko.sftp_si.CMD_READ=paramiko.sftp_si-module.html#CMD_READ"><a title="paramiko.sftp.CMD_READ
-paramiko.sftp_attr.CMD_READ
-paramiko.sftp_client.CMD_READ
-paramiko.sftp_file.CMD_READ
-paramiko.sftp_handle.CMD_READ
-paramiko.sftp_server.CMD_READ
-paramiko.sftp_si.CMD_READ" class="py-name" href="#" onclick="return doclink('link-136', 'CMD_READ', 'link-136');">CMD_READ</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L336"></a><tt class="py-lineno">336</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-137" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-137', 'get_string', 'link-95');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L337"></a><tt class="py-lineno">337</tt> <tt class="py-line"> <tt class="py-name">offset</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-138" class="py-name"><a title="paramiko.Message.get_int64" class="py-name" href="#" onclick="return doclink('link-138', 'get_int64', 'link-97');">get_int64</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L338"></a><tt class="py-lineno">338</tt> <tt class="py-line"> <tt class="py-name">length</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-139" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-139', 'get_int', 'link-47');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L339"></a><tt class="py-lineno">339</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">handle</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">file_table</tt><tt class="py-op">:</tt> </tt>
-<a name="L340"></a><tt class="py-lineno">340</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_status</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt id="link-140" class="py-name"><a title="paramiko.sftp.SFTP_BAD_MESSAGE
-paramiko.sftp_attr.SFTP_BAD_MESSAGE
-paramiko.sftp_client.SFTP_BAD_MESSAGE
-paramiko.sftp_file.SFTP_BAD_MESSAGE
-paramiko.sftp_handle.SFTP_BAD_MESSAGE
-paramiko.sftp_server.SFTP_BAD_MESSAGE
-paramiko.sftp_si.SFTP_BAD_MESSAGE" class="py-name" href="#" onclick="return doclink('link-140', 'SFTP_BAD_MESSAGE', 'link-100');">SFTP_BAD_MESSAGE</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Invalid handle'</tt><tt class="py-op">)</tt> </tt>
-<a name="L341"></a><tt class="py-lineno">341</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L342"></a><tt class="py-lineno">342</tt> <tt class="py-line"> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">file_table</tt><tt class="py-op">[</tt><tt class="py-name">handle</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-141" class="py-name"><a title="paramiko.BufferedFile.read
-paramiko.SFTPHandle.read
-paramiko.buffered_pipe.BufferedPipe.read" class="py-name" href="#" onclick="return doclink('link-141', 'read', 'link-108');">read</a></tt><tt class="py-op">(</tt><tt class="py-name">offset</tt><tt class="py-op">,</tt> <tt class="py-name">length</tt><tt class="py-op">)</tt> </tt>
-<a name="L343"></a><tt class="py-lineno">343</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">str</tt><tt class="py-op">:</tt> </tt>
-<a name="L344"></a><tt class="py-lineno">344</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L345"></a><tt class="py-lineno">345</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_status</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt id="link-142" class="py-name"><a title="paramiko.sftp.SFTP_EOF
-paramiko.sftp_attr.SFTP_EOF
-paramiko.sftp_client.SFTP_EOF
-paramiko.sftp_file.SFTP_EOF
-paramiko.sftp_handle.SFTP_EOF
-paramiko.sftp_server.SFTP_EOF
-paramiko.sftp_si.SFTP_EOF" class="py-name" href="#" onclick="return doclink('link-142', 'SFTP_EOF', 'link-88');">SFTP_EOF</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L346"></a><tt class="py-lineno">346</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L347"></a><tt class="py-lineno">347</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_response</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt id="link-143" class="py-name" targets="Variable paramiko.sftp.CMD_DATA=paramiko.sftp-module.html#CMD_DATA,Variable paramiko.sftp_attr.CMD_DATA=paramiko.sftp_attr-module.html#CMD_DATA,Variable paramiko.sftp_client.CMD_DATA=paramiko.sftp_client-module.html#CMD_DATA,Variable paramiko.sftp_file.CMD_DATA=paramiko.sftp_file-module.html#CMD_DATA,Variable paramiko.sftp_handle.CMD_DATA=paramiko.sftp_handle-module.html#CMD_DATA,Variable paramiko.sftp_server.CMD_DATA=paramiko.sftp_server-module.html#CMD_DATA,Variable paramiko.sftp_si.CMD_DATA=paramiko.sftp_si-module.html#CMD_DATA"><a title="paramiko.sftp.CMD_DATA
-paramiko.sftp_attr.CMD_DATA
-paramiko.sftp_client.CMD_DATA
-paramiko.sftp_file.CMD_DATA
-paramiko.sftp_handle.CMD_DATA
-paramiko.sftp_server.CMD_DATA
-paramiko.sftp_si.CMD_DATA" class="py-name" href="#" onclick="return doclink('link-143', 'CMD_DATA', 'link-143');">CMD_DATA</a></tt><tt class="py-op">,</tt> <tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L348"></a><tt class="py-lineno">348</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L349"></a><tt class="py-lineno">349</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_status</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L350"></a><tt class="py-lineno">350</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">t</tt> <tt class="py-op">==</tt> <tt id="link-144" class="py-name" targets="Variable paramiko.sftp.CMD_WRITE=paramiko.sftp-module.html#CMD_WRITE,Variable paramiko.sftp_attr.CMD_WRITE=paramiko.sftp_attr-module.html#CMD_WRITE,Variable paramiko.sftp_client.CMD_WRITE=paramiko.sftp_client-module.html#CMD_WRITE,Variable paramiko.sftp_file.CMD_WRITE=paramiko.sftp_file-module.html#CMD_WRITE,Variable paramiko.sftp_handle.CMD_WRITE=paramiko.sftp_handle-module.html#CMD_WRITE,Variable paramiko.sftp_server.CMD_WRITE=paramiko.sftp_server-module.html#CMD_WRITE,Variable paramiko.sftp_si.CMD_WRITE=paramiko.sftp_si-module.html#CMD_WRITE"><a title="paramiko.sftp.CMD_WRITE
-paramiko.sftp_attr.CMD_WRITE
-paramiko.sftp_client.CMD_WRITE
-paramiko.sftp_file.CMD_WRITE
-paramiko.sftp_handle.CMD_WRITE
-paramiko.sftp_server.CMD_WRITE
-paramiko.sftp_si.CMD_WRITE" class="py-name" href="#" onclick="return doclink('link-144', 'CMD_WRITE', 'link-144');">CMD_WRITE</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L351"></a><tt class="py-lineno">351</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-145" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-145', 'get_string', 'link-95');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L352"></a><tt class="py-lineno">352</tt> <tt class="py-line"> <tt class="py-name">offset</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-146" class="py-name"><a title="paramiko.Message.get_int64" class="py-name" href="#" onclick="return doclink('link-146', 'get_int64', 'link-97');">get_int64</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L353"></a><tt class="py-lineno">353</tt> <tt class="py-line"> <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-147" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-147', 'get_string', 'link-95');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L354"></a><tt class="py-lineno">354</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">handle</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">file_table</tt><tt class="py-op">:</tt> </tt>
-<a name="L355"></a><tt class="py-lineno">355</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_status</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt id="link-148" class="py-name"><a title="paramiko.sftp.SFTP_BAD_MESSAGE
-paramiko.sftp_attr.SFTP_BAD_MESSAGE
-paramiko.sftp_client.SFTP_BAD_MESSAGE
-paramiko.sftp_file.SFTP_BAD_MESSAGE
-paramiko.sftp_handle.SFTP_BAD_MESSAGE
-paramiko.sftp_server.SFTP_BAD_MESSAGE
-paramiko.sftp_si.SFTP_BAD_MESSAGE" class="py-name" href="#" onclick="return doclink('link-148', 'SFTP_BAD_MESSAGE', 'link-100');">SFTP_BAD_MESSAGE</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Invalid handle'</tt><tt class="py-op">)</tt> </tt>
-<a name="L356"></a><tt class="py-lineno">356</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L357"></a><tt class="py-lineno">357</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_status</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">file_table</tt><tt class="py-op">[</tt><tt class="py-name">handle</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-149" class="py-name" targets="Method paramiko.BufferedFile.write()=paramiko.BufferedFile-class.html#write,Method paramiko.SFTPHandle.write()=paramiko.SFTPHandle-class.html#write"><a title="paramiko.BufferedFile.write
-paramiko.SFTPHandle.write" class="py-name" href="#" onclick="return doclink('link-149', 'write', 'link-149');">write</a></tt><tt class="py-op">(</tt><tt class="py-name">offset</tt><tt class="py-op">,</tt> <tt class="py-name">data</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L358"></a><tt class="py-lineno">358</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">t</tt> <tt class="py-op">==</tt> <tt id="link-150" class="py-name" targets="Variable paramiko.sftp.CMD_REMOVE=paramiko.sftp-module.html#CMD_REMOVE,Variable paramiko.sftp_attr.CMD_REMOVE=paramiko.sftp_attr-module.html#CMD_REMOVE,Variable paramiko.sftp_client.CMD_REMOVE=paramiko.sftp_client-module.html#CMD_REMOVE,Variable paramiko.sftp_file.CMD_REMOVE=paramiko.sftp_file-module.html#CMD_REMOVE,Variable paramiko.sftp_handle.CMD_REMOVE=paramiko.sftp_handle-module.html#CMD_REMOVE,Variable paramiko.sftp_server.CMD_REMOVE=paramiko.sftp_server-module.html#CMD_REMOVE,Variable paramiko.sftp_si.CMD_REMOVE=paramiko.sftp_si-module.html#CMD_REMOVE"><a title="paramiko.sftp.CMD_REMOVE
-paramiko.sftp_attr.CMD_REMOVE
-paramiko.sftp_client.CMD_REMOVE
-paramiko.sftp_file.CMD_REMOVE
-paramiko.sftp_handle.CMD_REMOVE
-paramiko.sftp_server.CMD_REMOVE
-paramiko.sftp_si.CMD_REMOVE" class="py-name" href="#" onclick="return doclink('link-150', 'CMD_REMOVE', 'link-150');">CMD_REMOVE</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L359"></a><tt class="py-lineno">359</tt> <tt class="py-line"> <tt class="py-name">path</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-151" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-151', 'get_string', 'link-95');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L360"></a><tt class="py-lineno">360</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_status</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-152" class="py-name"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-152', 'server', 'link-3');">server</a></tt><tt class="py-op">.</tt><tt id="link-153" class="py-name" targets="Method paramiko.SFTPServerInterface.remove()=paramiko.SFTPServerInterface-class.html#remove"><a title="paramiko.SFTPServerInterface.remove" class="py-name" href="#" onclick="return doclink('link-153', 'remove', 'link-153');">remove</a></tt><tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L361"></a><tt class="py-lineno">361</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">t</tt> <tt class="py-op">==</tt> <tt id="link-154" class="py-name" targets="Variable paramiko.sftp.CMD_RENAME=paramiko.sftp-module.html#CMD_RENAME,Variable paramiko.sftp_attr.CMD_RENAME=paramiko.sftp_attr-module.html#CMD_RENAME,Variable paramiko.sftp_client.CMD_RENAME=paramiko.sftp_client-module.html#CMD_RENAME,Variable paramiko.sftp_file.CMD_RENAME=paramiko.sftp_file-module.html#CMD_RENAME,Variable paramiko.sftp_handle.CMD_RENAME=paramiko.sftp_handle-module.html#CMD_RENAME,Variable paramiko.sftp_server.CMD_RENAME=paramiko.sftp_server-module.html#CMD_RENAME,Variable paramiko.sftp_si.CMD_RENAME=paramiko.sftp_si-module.html#CMD_RENAME"><a title="paramiko.sftp.CMD_RENAME
-paramiko.sftp_attr.CMD_RENAME
-paramiko.sftp_client.CMD_RENAME
-paramiko.sftp_file.CMD_RENAME
-paramiko.sftp_handle.CMD_RENAME
-paramiko.sftp_server.CMD_RENAME
-paramiko.sftp_si.CMD_RENAME" class="py-name" href="#" onclick="return doclink('link-154', 'CMD_RENAME', 'link-154');">CMD_RENAME</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L362"></a><tt class="py-lineno">362</tt> <tt class="py-line"> <tt class="py-name">oldpath</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-155" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-155', 'get_string', 'link-95');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L363"></a><tt class="py-lineno">363</tt> <tt class="py-line"> <tt class="py-name">newpath</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-156" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-156', 'get_string', 'link-95');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L364"></a><tt class="py-lineno">364</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_status</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-157" class="py-name"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-157', 'server', 'link-3');">server</a></tt><tt class="py-op">.</tt><tt id="link-158" class="py-name" targets="Method paramiko.SFTPClient.rename()=paramiko.SFTPClient-class.html#rename,Method paramiko.SFTPServerInterface.rename()=paramiko.SFTPServerInterface-class.html#rename"><a title="paramiko.SFTPClient.rename
-paramiko.SFTPServerInterface.rename" class="py-name" href="#" onclick="return doclink('link-158', 'rename', 'link-158');">rename</a></tt><tt class="py-op">(</tt><tt class="py-name">oldpath</tt><tt class="py-op">,</tt> <tt class="py-name">newpath</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L365"></a><tt class="py-lineno">365</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">t</tt> <tt class="py-op">==</tt> <tt id="link-159" class="py-name" targets="Variable paramiko.sftp.CMD_MKDIR=paramiko.sftp-module.html#CMD_MKDIR,Variable paramiko.sftp_attr.CMD_MKDIR=paramiko.sftp_attr-module.html#CMD_MKDIR,Variable paramiko.sftp_client.CMD_MKDIR=paramiko.sftp_client-module.html#CMD_MKDIR,Variable paramiko.sftp_file.CMD_MKDIR=paramiko.sftp_file-module.html#CMD_MKDIR,Variable paramiko.sftp_handle.CMD_MKDIR=paramiko.sftp_handle-module.html#CMD_MKDIR,Variable paramiko.sftp_server.CMD_MKDIR=paramiko.sftp_server-module.html#CMD_MKDIR,Variable paramiko.sftp_si.CMD_MKDIR=paramiko.sftp_si-module.html#CMD_MKDIR"><a title="paramiko.sftp.CMD_MKDIR
-paramiko.sftp_attr.CMD_MKDIR
-paramiko.sftp_client.CMD_MKDIR
-paramiko.sftp_file.CMD_MKDIR
-paramiko.sftp_handle.CMD_MKDIR
-paramiko.sftp_server.CMD_MKDIR
-paramiko.sftp_si.CMD_MKDIR" class="py-name" href="#" onclick="return doclink('link-159', 'CMD_MKDIR', 'link-159');">CMD_MKDIR</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L366"></a><tt class="py-lineno">366</tt> <tt class="py-line"> <tt class="py-name">path</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-160" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-160', 'get_string', 'link-95');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L367"></a><tt class="py-lineno">367</tt> <tt class="py-line"> <tt class="py-name">attr</tt> <tt class="py-op">=</tt> <tt id="link-161" class="py-name"><a title="paramiko.SFTPAttributes" class="py-name" href="#" onclick="return doclink('link-161', 'SFTPAttributes', 'link-80');">SFTPAttributes</a></tt><tt class="py-op">.</tt><tt class="py-name">_from_msg</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">)</tt> </tt>
-<a name="L368"></a><tt class="py-lineno">368</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_status</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-162" class="py-name"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-162', 'server', 'link-3');">server</a></tt><tt class="py-op">.</tt><tt id="link-163" class="py-name" targets="Method paramiko.SFTPClient.mkdir()=paramiko.SFTPClient-class.html#mkdir,Method paramiko.SFTPServerInterface.mkdir()=paramiko.SFTPServerInterface-class.html#mkdir"><a title="paramiko.SFTPClient.mkdir
-paramiko.SFTPServerInterface.mkdir" class="py-name" href="#" onclick="return doclink('link-163', 'mkdir', 'link-163');">mkdir</a></tt><tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">,</tt> <tt class="py-name">attr</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L369"></a><tt class="py-lineno">369</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">t</tt> <tt class="py-op">==</tt> <tt id="link-164" class="py-name" targets="Variable paramiko.sftp.CMD_RMDIR=paramiko.sftp-module.html#CMD_RMDIR,Variable paramiko.sftp_attr.CMD_RMDIR=paramiko.sftp_attr-module.html#CMD_RMDIR,Variable paramiko.sftp_client.CMD_RMDIR=paramiko.sftp_client-module.html#CMD_RMDIR,Variable paramiko.sftp_file.CMD_RMDIR=paramiko.sftp_file-module.html#CMD_RMDIR,Variable paramiko.sftp_handle.CMD_RMDIR=paramiko.sftp_handle-module.html#CMD_RMDIR,Variable paramiko.sftp_server.CMD_RMDIR=paramiko.sftp_server-module.html#CMD_RMDIR,Variable paramiko.sftp_si.CMD_RMDIR=paramiko.sftp_si-module.html#CMD_RMDIR"><a title="paramiko.sftp.CMD_RMDIR
-paramiko.sftp_attr.CMD_RMDIR
-paramiko.sftp_client.CMD_RMDIR
-paramiko.sftp_file.CMD_RMDIR
-paramiko.sftp_handle.CMD_RMDIR
-paramiko.sftp_server.CMD_RMDIR
-paramiko.sftp_si.CMD_RMDIR" class="py-name" href="#" onclick="return doclink('link-164', 'CMD_RMDIR', 'link-164');">CMD_RMDIR</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L370"></a><tt class="py-lineno">370</tt> <tt class="py-line"> <tt class="py-name">path</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-165" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-165', 'get_string', 'link-95');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L371"></a><tt class="py-lineno">371</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_status</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-166" class="py-name"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-166', 'server', 'link-3');">server</a></tt><tt class="py-op">.</tt><tt id="link-167" class="py-name" targets="Method paramiko.SFTPClient.rmdir()=paramiko.SFTPClient-class.html#rmdir,Method paramiko.SFTPServerInterface.rmdir()=paramiko.SFTPServerInterface-class.html#rmdir"><a title="paramiko.SFTPClient.rmdir
-paramiko.SFTPServerInterface.rmdir" class="py-name" href="#" onclick="return doclink('link-167', 'rmdir', 'link-167');">rmdir</a></tt><tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L372"></a><tt class="py-lineno">372</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">t</tt> <tt class="py-op">==</tt> <tt id="link-168" class="py-name" targets="Variable paramiko.sftp.CMD_OPENDIR=paramiko.sftp-module.html#CMD_OPENDIR,Variable paramiko.sftp_attr.CMD_OPENDIR=paramiko.sftp_attr-module.html#CMD_OPENDIR,Variable paramiko.sftp_client.CMD_OPENDIR=paramiko.sftp_client-module.html#CMD_OPENDIR,Variable paramiko.sftp_file.CMD_OPENDIR=paramiko.sftp_file-module.html#CMD_OPENDIR,Variable paramiko.sftp_handle.CMD_OPENDIR=paramiko.sftp_handle-module.html#CMD_OPENDIR,Variable paramiko.sftp_server.CMD_OPENDIR=paramiko.sftp_server-module.html#CMD_OPENDIR,Variable paramiko.sftp_si.CMD_OPENDIR=paramiko.sftp_si-module.html#CMD_OPENDIR"><a title="paramiko.sftp.CMD_OPENDIR
-paramiko.sftp_attr.CMD_OPENDIR
-paramiko.sftp_client.CMD_OPENDIR
-paramiko.sftp_file.CMD_OPENDIR
-paramiko.sftp_handle.CMD_OPENDIR
-paramiko.sftp_server.CMD_OPENDIR
-paramiko.sftp_si.CMD_OPENDIR" class="py-name" href="#" onclick="return doclink('link-168', 'CMD_OPENDIR', 'link-168');">CMD_OPENDIR</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L373"></a><tt class="py-lineno">373</tt> <tt class="py-line"> <tt class="py-name">path</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-169" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-169', 'get_string', 'link-95');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L374"></a><tt class="py-lineno">374</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_open_folder</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-<a name="L375"></a><tt class="py-lineno">375</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L376"></a><tt class="py-lineno">376</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">t</tt> <tt class="py-op">==</tt> <tt id="link-170" class="py-name" targets="Variable paramiko.sftp.CMD_READDIR=paramiko.sftp-module.html#CMD_READDIR,Variable paramiko.sftp_attr.CMD_READDIR=paramiko.sftp_attr-module.html#CMD_READDIR,Variable paramiko.sftp_client.CMD_READDIR=paramiko.sftp_client-module.html#CMD_READDIR,Variable paramiko.sftp_file.CMD_READDIR=paramiko.sftp_file-module.html#CMD_READDIR,Variable paramiko.sftp_handle.CMD_READDIR=paramiko.sftp_handle-module.html#CMD_READDIR,Variable paramiko.sftp_server.CMD_READDIR=paramiko.sftp_server-module.html#CMD_READDIR,Variable paramiko.sftp_si.CMD_READDIR=paramiko.sftp_si-module.html#CMD_READDIR"><a title="paramiko.sftp.CMD_READDIR
-paramiko.sftp_attr.CMD_READDIR
-paramiko.sftp_client.CMD_READDIR
-paramiko.sftp_file.CMD_READDIR
-paramiko.sftp_handle.CMD_READDIR
-paramiko.sftp_server.CMD_READDIR
-paramiko.sftp_si.CMD_READDIR" class="py-name" href="#" onclick="return doclink('link-170', 'CMD_READDIR', 'link-170');">CMD_READDIR</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L377"></a><tt class="py-lineno">377</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-171" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-171', 'get_string', 'link-95');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L378"></a><tt class="py-lineno">378</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">handle</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">folder_table</tt><tt class="py-op">:</tt> </tt>
-<a name="L379"></a><tt class="py-lineno">379</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_status</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt id="link-172" class="py-name"><a title="paramiko.sftp.SFTP_BAD_MESSAGE
-paramiko.sftp_attr.SFTP_BAD_MESSAGE
-paramiko.sftp_client.SFTP_BAD_MESSAGE
-paramiko.sftp_file.SFTP_BAD_MESSAGE
-paramiko.sftp_handle.SFTP_BAD_MESSAGE
-paramiko.sftp_server.SFTP_BAD_MESSAGE
-paramiko.sftp_si.SFTP_BAD_MESSAGE" class="py-name" href="#" onclick="return doclink('link-172', 'SFTP_BAD_MESSAGE', 'link-100');">SFTP_BAD_MESSAGE</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Invalid handle'</tt><tt class="py-op">)</tt> </tt>
-<a name="L380"></a><tt class="py-lineno">380</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L381"></a><tt class="py-lineno">381</tt> <tt class="py-line"> <tt class="py-name">folder</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">folder_table</tt><tt class="py-op">[</tt><tt class="py-name">handle</tt><tt class="py-op">]</tt> </tt>
-<a name="L382"></a><tt class="py-lineno">382</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_read_folder</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt class="py-name">folder</tt><tt class="py-op">)</tt> </tt>
-<a name="L383"></a><tt class="py-lineno">383</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">t</tt> <tt class="py-op">==</tt> <tt id="link-173" class="py-name" targets="Variable paramiko.sftp.CMD_STAT=paramiko.sftp-module.html#CMD_STAT,Variable paramiko.sftp_attr.CMD_STAT=paramiko.sftp_attr-module.html#CMD_STAT,Variable paramiko.sftp_client.CMD_STAT=paramiko.sftp_client-module.html#CMD_STAT,Variable paramiko.sftp_file.CMD_STAT=paramiko.sftp_file-module.html#CMD_STAT,Variable paramiko.sftp_handle.CMD_STAT=paramiko.sftp_handle-module.html#CMD_STAT,Variable paramiko.sftp_server.CMD_STAT=paramiko.sftp_server-module.html#CMD_STAT,Variable paramiko.sftp_si.CMD_STAT=paramiko.sftp_si-module.html#CMD_STAT"><a title="paramiko.sftp.CMD_STAT
-paramiko.sftp_attr.CMD_STAT
-paramiko.sftp_client.CMD_STAT
-paramiko.sftp_file.CMD_STAT
-paramiko.sftp_handle.CMD_STAT
-paramiko.sftp_server.CMD_STAT
-paramiko.sftp_si.CMD_STAT" class="py-name" href="#" onclick="return doclink('link-173', 'CMD_STAT', 'link-173');">CMD_STAT</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L384"></a><tt class="py-lineno">384</tt> <tt class="py-line"> <tt class="py-name">path</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-174" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-174', 'get_string', 'link-95');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L385"></a><tt class="py-lineno">385</tt> <tt class="py-line"> <tt class="py-name">resp</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-175" class="py-name"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-175', 'server', 'link-3');">server</a></tt><tt class="py-op">.</tt><tt id="link-176" class="py-name"><a title="paramiko.SFTPClient.stat
-paramiko.SFTPFile.stat
-paramiko.SFTPHandle.stat
-paramiko.SFTPServerInterface.stat" class="py-name" href="#" onclick="return doclink('link-176', 'stat', 'link-104');">stat</a></tt><tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-<a name="L386"></a><tt class="py-lineno">386</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">issubclass</tt><tt class="py-op">(</tt><tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">resp</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt id="link-177" class="py-name"><a title="paramiko.SFTPAttributes" class="py-name" href="#" onclick="return doclink('link-177', 'SFTPAttributes', 'link-80');">SFTPAttributes</a></tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L387"></a><tt class="py-lineno">387</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_response</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt id="link-178" class="py-name" targets="Variable paramiko.sftp.CMD_ATTRS=paramiko.sftp-module.html#CMD_ATTRS,Variable paramiko.sftp_attr.CMD_ATTRS=paramiko.sftp_attr-module.html#CMD_ATTRS,Variable paramiko.sftp_client.CMD_ATTRS=paramiko.sftp_client-module.html#CMD_ATTRS,Variable paramiko.sftp_file.CMD_ATTRS=paramiko.sftp_file-module.html#CMD_ATTRS,Variable paramiko.sftp_handle.CMD_ATTRS=paramiko.sftp_handle-module.html#CMD_ATTRS,Variable paramiko.sftp_server.CMD_ATTRS=paramiko.sftp_server-module.html#CMD_ATTRS,Variable paramiko.sftp_si.CMD_ATTRS=paramiko.sftp_si-module.html#CMD_ATTRS"><a title="paramiko.sftp.CMD_ATTRS
-paramiko.sftp_attr.CMD_ATTRS
-paramiko.sftp_client.CMD_ATTRS
-paramiko.sftp_file.CMD_ATTRS
-paramiko.sftp_handle.CMD_ATTRS
-paramiko.sftp_server.CMD_ATTRS
-paramiko.sftp_si.CMD_ATTRS" class="py-name" href="#" onclick="return doclink('link-178', 'CMD_ATTRS', 'link-178');">CMD_ATTRS</a></tt><tt class="py-op">,</tt> <tt class="py-name">resp</tt><tt class="py-op">)</tt> </tt>
-<a name="L388"></a><tt class="py-lineno">388</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L389"></a><tt class="py-lineno">389</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_status</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt class="py-name">resp</tt><tt class="py-op">)</tt> </tt>
-<a name="L390"></a><tt class="py-lineno">390</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">t</tt> <tt class="py-op">==</tt> <tt id="link-179" class="py-name" targets="Variable paramiko.sftp.CMD_LSTAT=paramiko.sftp-module.html#CMD_LSTAT,Variable paramiko.sftp_attr.CMD_LSTAT=paramiko.sftp_attr-module.html#CMD_LSTAT,Variable paramiko.sftp_client.CMD_LSTAT=paramiko.sftp_client-module.html#CMD_LSTAT,Variable paramiko.sftp_file.CMD_LSTAT=paramiko.sftp_file-module.html#CMD_LSTAT,Variable paramiko.sftp_handle.CMD_LSTAT=paramiko.sftp_handle-module.html#CMD_LSTAT,Variable paramiko.sftp_server.CMD_LSTAT=paramiko.sftp_server-module.html#CMD_LSTAT,Variable paramiko.sftp_si.CMD_LSTAT=paramiko.sftp_si-module.html#CMD_LSTAT"><a title="paramiko.sftp.CMD_LSTAT
-paramiko.sftp_attr.CMD_LSTAT
-paramiko.sftp_client.CMD_LSTAT
-paramiko.sftp_file.CMD_LSTAT
-paramiko.sftp_handle.CMD_LSTAT
-paramiko.sftp_server.CMD_LSTAT
-paramiko.sftp_si.CMD_LSTAT" class="py-name" href="#" onclick="return doclink('link-179', 'CMD_LSTAT', 'link-179');">CMD_LSTAT</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L391"></a><tt class="py-lineno">391</tt> <tt class="py-line"> <tt class="py-name">path</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-180" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-180', 'get_string', 'link-95');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L392"></a><tt class="py-lineno">392</tt> <tt class="py-line"> <tt class="py-name">resp</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-181" class="py-name"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-181', 'server', 'link-3');">server</a></tt><tt class="py-op">.</tt><tt id="link-182" class="py-name" targets="Method paramiko.SFTPClient.lstat()=paramiko.SFTPClient-class.html#lstat,Method paramiko.SFTPServerInterface.lstat()=paramiko.SFTPServerInterface-class.html#lstat"><a title="paramiko.SFTPClient.lstat
-paramiko.SFTPServerInterface.lstat" class="py-name" href="#" onclick="return doclink('link-182', 'lstat', 'link-182');">lstat</a></tt><tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-<a name="L393"></a><tt class="py-lineno">393</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">issubclass</tt><tt class="py-op">(</tt><tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">resp</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt id="link-183" class="py-name"><a title="paramiko.SFTPAttributes" class="py-name" href="#" onclick="return doclink('link-183', 'SFTPAttributes', 'link-80');">SFTPAttributes</a></tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L394"></a><tt class="py-lineno">394</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_response</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt id="link-184" class="py-name"><a title="paramiko.sftp.CMD_ATTRS
-paramiko.sftp_attr.CMD_ATTRS
-paramiko.sftp_client.CMD_ATTRS
-paramiko.sftp_file.CMD_ATTRS
-paramiko.sftp_handle.CMD_ATTRS
-paramiko.sftp_server.CMD_ATTRS
-paramiko.sftp_si.CMD_ATTRS" class="py-name" href="#" onclick="return doclink('link-184', 'CMD_ATTRS', 'link-178');">CMD_ATTRS</a></tt><tt class="py-op">,</tt> <tt class="py-name">resp</tt><tt class="py-op">)</tt> </tt>
-<a name="L395"></a><tt class="py-lineno">395</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L396"></a><tt class="py-lineno">396</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_status</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt class="py-name">resp</tt><tt class="py-op">)</tt> </tt>
-<a name="L397"></a><tt class="py-lineno">397</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">t</tt> <tt class="py-op">==</tt> <tt id="link-185" class="py-name" targets="Variable paramiko.sftp.CMD_FSTAT=paramiko.sftp-module.html#CMD_FSTAT,Variable paramiko.sftp_attr.CMD_FSTAT=paramiko.sftp_attr-module.html#CMD_FSTAT,Variable paramiko.sftp_client.CMD_FSTAT=paramiko.sftp_client-module.html#CMD_FSTAT,Variable paramiko.sftp_file.CMD_FSTAT=paramiko.sftp_file-module.html#CMD_FSTAT,Variable paramiko.sftp_handle.CMD_FSTAT=paramiko.sftp_handle-module.html#CMD_FSTAT,Variable paramiko.sftp_server.CMD_FSTAT=paramiko.sftp_server-module.html#CMD_FSTAT,Variable paramiko.sftp_si.CMD_FSTAT=paramiko.sftp_si-module.html#CMD_FSTAT"><a title="paramiko.sftp.CMD_FSTAT
-paramiko.sftp_attr.CMD_FSTAT
-paramiko.sftp_client.CMD_FSTAT
-paramiko.sftp_file.CMD_FSTAT
-paramiko.sftp_handle.CMD_FSTAT
-paramiko.sftp_server.CMD_FSTAT
-paramiko.sftp_si.CMD_FSTAT" class="py-name" href="#" onclick="return doclink('link-185', 'CMD_FSTAT', 'link-185');">CMD_FSTAT</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L398"></a><tt class="py-lineno">398</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-186" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-186', 'get_string', 'link-95');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L399"></a><tt class="py-lineno">399</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">handle</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">file_table</tt><tt class="py-op">:</tt> </tt>
-<a name="L400"></a><tt class="py-lineno">400</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_status</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt id="link-187" class="py-name"><a title="paramiko.sftp.SFTP_BAD_MESSAGE
-paramiko.sftp_attr.SFTP_BAD_MESSAGE
-paramiko.sftp_client.SFTP_BAD_MESSAGE
-paramiko.sftp_file.SFTP_BAD_MESSAGE
-paramiko.sftp_handle.SFTP_BAD_MESSAGE
-paramiko.sftp_server.SFTP_BAD_MESSAGE
-paramiko.sftp_si.SFTP_BAD_MESSAGE" class="py-name" href="#" onclick="return doclink('link-187', 'SFTP_BAD_MESSAGE', 'link-100');">SFTP_BAD_MESSAGE</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Invalid handle'</tt><tt class="py-op">)</tt> </tt>
-<a name="L401"></a><tt class="py-lineno">401</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L402"></a><tt class="py-lineno">402</tt> <tt class="py-line"> <tt class="py-name">resp</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">file_table</tt><tt class="py-op">[</tt><tt class="py-name">handle</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-188" class="py-name"><a title="paramiko.SFTPClient.stat
-paramiko.SFTPFile.stat
-paramiko.SFTPHandle.stat
-paramiko.SFTPServerInterface.stat" class="py-name" href="#" onclick="return doclink('link-188', 'stat', 'link-104');">stat</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L403"></a><tt class="py-lineno">403</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">issubclass</tt><tt class="py-op">(</tt><tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">resp</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt id="link-189" class="py-name"><a title="paramiko.SFTPAttributes" class="py-name" href="#" onclick="return doclink('link-189', 'SFTPAttributes', 'link-80');">SFTPAttributes</a></tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L404"></a><tt class="py-lineno">404</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_response</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt id="link-190" class="py-name"><a title="paramiko.sftp.CMD_ATTRS
-paramiko.sftp_attr.CMD_ATTRS
-paramiko.sftp_client.CMD_ATTRS
-paramiko.sftp_file.CMD_ATTRS
-paramiko.sftp_handle.CMD_ATTRS
-paramiko.sftp_server.CMD_ATTRS
-paramiko.sftp_si.CMD_ATTRS" class="py-name" href="#" onclick="return doclink('link-190', 'CMD_ATTRS', 'link-178');">CMD_ATTRS</a></tt><tt class="py-op">,</tt> <tt class="py-name">resp</tt><tt class="py-op">)</tt> </tt>
-<a name="L405"></a><tt class="py-lineno">405</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L406"></a><tt class="py-lineno">406</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_status</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt class="py-name">resp</tt><tt class="py-op">)</tt> </tt>
-<a name="L407"></a><tt class="py-lineno">407</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">t</tt> <tt class="py-op">==</tt> <tt id="link-191" class="py-name" targets="Variable paramiko.sftp.CMD_SETSTAT=paramiko.sftp-module.html#CMD_SETSTAT,Variable paramiko.sftp_attr.CMD_SETSTAT=paramiko.sftp_attr-module.html#CMD_SETSTAT,Variable paramiko.sftp_client.CMD_SETSTAT=paramiko.sftp_client-module.html#CMD_SETSTAT,Variable paramiko.sftp_file.CMD_SETSTAT=paramiko.sftp_file-module.html#CMD_SETSTAT,Variable paramiko.sftp_handle.CMD_SETSTAT=paramiko.sftp_handle-module.html#CMD_SETSTAT,Variable paramiko.sftp_server.CMD_SETSTAT=paramiko.sftp_server-module.html#CMD_SETSTAT,Variable paramiko.sftp_si.CMD_SETSTAT=paramiko.sftp_si-module.html#CMD_SETSTAT"><a title="paramiko.sftp.CMD_SETSTAT
-paramiko.sftp_attr.CMD_SETSTAT
-paramiko.sftp_client.CMD_SETSTAT
-paramiko.sftp_file.CMD_SETSTAT
-paramiko.sftp_handle.CMD_SETSTAT
-paramiko.sftp_server.CMD_SETSTAT
-paramiko.sftp_si.CMD_SETSTAT" class="py-name" href="#" onclick="return doclink('link-191', 'CMD_SETSTAT', 'link-191');">CMD_SETSTAT</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L408"></a><tt class="py-lineno">408</tt> <tt class="py-line"> <tt class="py-name">path</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-192" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-192', 'get_string', 'link-95');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L409"></a><tt class="py-lineno">409</tt> <tt class="py-line"> <tt class="py-name">attr</tt> <tt class="py-op">=</tt> <tt id="link-193" class="py-name"><a title="paramiko.SFTPAttributes" class="py-name" href="#" onclick="return doclink('link-193', 'SFTPAttributes', 'link-80');">SFTPAttributes</a></tt><tt class="py-op">.</tt><tt class="py-name">_from_msg</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">)</tt> </tt>
-<a name="L410"></a><tt class="py-lineno">410</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_status</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-194" class="py-name"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-194', 'server', 'link-3');">server</a></tt><tt class="py-op">.</tt><tt id="link-195" class="py-name" targets="Method paramiko.SFTPHandle.chattr()=paramiko.SFTPHandle-class.html#chattr,Method paramiko.SFTPServerInterface.chattr()=paramiko.SFTPServerInterface-class.html#chattr"><a title="paramiko.SFTPHandle.chattr
-paramiko.SFTPServerInterface.chattr" class="py-name" href="#" onclick="return doclink('link-195', 'chattr', 'link-195');">chattr</a></tt><tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">,</tt> <tt class="py-name">attr</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L411"></a><tt class="py-lineno">411</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">t</tt> <tt class="py-op">==</tt> <tt id="link-196" class="py-name" targets="Variable paramiko.sftp.CMD_FSETSTAT=paramiko.sftp-module.html#CMD_FSETSTAT,Variable paramiko.sftp_attr.CMD_FSETSTAT=paramiko.sftp_attr-module.html#CMD_FSETSTAT,Variable paramiko.sftp_client.CMD_FSETSTAT=paramiko.sftp_client-module.html#CMD_FSETSTAT,Variable paramiko.sftp_file.CMD_FSETSTAT=paramiko.sftp_file-module.html#CMD_FSETSTAT,Variable paramiko.sftp_handle.CMD_FSETSTAT=paramiko.sftp_handle-module.html#CMD_FSETSTAT,Variable paramiko.sftp_server.CMD_FSETSTAT=paramiko.sftp_server-module.html#CMD_FSETSTAT,Variable paramiko.sftp_si.CMD_FSETSTAT=paramiko.sftp_si-module.html#CMD_FSETSTAT"><a title="paramiko.sftp.CMD_FSETSTAT
-paramiko.sftp_attr.CMD_FSETSTAT
-paramiko.sftp_client.CMD_FSETSTAT
-paramiko.sftp_file.CMD_FSETSTAT
-paramiko.sftp_handle.CMD_FSETSTAT
-paramiko.sftp_server.CMD_FSETSTAT
-paramiko.sftp_si.CMD_FSETSTAT" class="py-name" href="#" onclick="return doclink('link-196', 'CMD_FSETSTAT', 'link-196');">CMD_FSETSTAT</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L412"></a><tt class="py-lineno">412</tt> <tt class="py-line"> <tt class="py-name">handle</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-197" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-197', 'get_string', 'link-95');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L413"></a><tt class="py-lineno">413</tt> <tt class="py-line"> <tt class="py-name">attr</tt> <tt class="py-op">=</tt> <tt id="link-198" class="py-name"><a title="paramiko.SFTPAttributes" class="py-name" href="#" onclick="return doclink('link-198', 'SFTPAttributes', 'link-80');">SFTPAttributes</a></tt><tt class="py-op">.</tt><tt class="py-name">_from_msg</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">)</tt> </tt>
-<a name="L414"></a><tt class="py-lineno">414</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">handle</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">file_table</tt><tt class="py-op">:</tt> </tt>
-<a name="L415"></a><tt class="py-lineno">415</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_response</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt id="link-199" class="py-name"><a title="paramiko.sftp.SFTP_BAD_MESSAGE
-paramiko.sftp_attr.SFTP_BAD_MESSAGE
-paramiko.sftp_client.SFTP_BAD_MESSAGE
-paramiko.sftp_file.SFTP_BAD_MESSAGE
-paramiko.sftp_handle.SFTP_BAD_MESSAGE
-paramiko.sftp_server.SFTP_BAD_MESSAGE
-paramiko.sftp_si.SFTP_BAD_MESSAGE" class="py-name" href="#" onclick="return doclink('link-199', 'SFTP_BAD_MESSAGE', 'link-100');">SFTP_BAD_MESSAGE</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Invalid handle'</tt><tt class="py-op">)</tt> </tt>
-<a name="L416"></a><tt class="py-lineno">416</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L417"></a><tt class="py-lineno">417</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_status</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">file_table</tt><tt class="py-op">[</tt><tt class="py-name">handle</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-200" class="py-name"><a title="paramiko.SFTPHandle.chattr
-paramiko.SFTPServerInterface.chattr" class="py-name" href="#" onclick="return doclink('link-200', 'chattr', 'link-195');">chattr</a></tt><tt class="py-op">(</tt><tt class="py-name">attr</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L418"></a><tt class="py-lineno">418</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">t</tt> <tt class="py-op">==</tt> <tt id="link-201" class="py-name" targets="Variable paramiko.sftp.CMD_READLINK=paramiko.sftp-module.html#CMD_READLINK,Variable paramiko.sftp_attr.CMD_READLINK=paramiko.sftp_attr-module.html#CMD_READLINK,Variable paramiko.sftp_client.CMD_READLINK=paramiko.sftp_client-module.html#CMD_READLINK,Variable paramiko.sftp_file.CMD_READLINK=paramiko.sftp_file-module.html#CMD_READLINK,Variable paramiko.sftp_handle.CMD_READLINK=paramiko.sftp_handle-module.html#CMD_READLINK,Variable paramiko.sftp_server.CMD_READLINK=paramiko.sftp_server-module.html#CMD_READLINK,Variable paramiko.sftp_si.CMD_READLINK=paramiko.sftp_si-module.html#CMD_READLINK"><a title="paramiko.sftp.CMD_READLINK
-paramiko.sftp_attr.CMD_READLINK
-paramiko.sftp_client.CMD_READLINK
-paramiko.sftp_file.CMD_READLINK
-paramiko.sftp_handle.CMD_READLINK
-paramiko.sftp_server.CMD_READLINK
-paramiko.sftp_si.CMD_READLINK" class="py-name" href="#" onclick="return doclink('link-201', 'CMD_READLINK', 'link-201');">CMD_READLINK</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L419"></a><tt class="py-lineno">419</tt> <tt class="py-line"> <tt class="py-name">path</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-202" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-202', 'get_string', 'link-95');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L420"></a><tt class="py-lineno">420</tt> <tt class="py-line"> <tt class="py-name">resp</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-203" class="py-name"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-203', 'server', 'link-3');">server</a></tt><tt class="py-op">.</tt><tt id="link-204" class="py-name" targets="Method paramiko.SFTPClient.readlink()=paramiko.SFTPClient-class.html#readlink,Method paramiko.SFTPServerInterface.readlink()=paramiko.SFTPServerInterface-class.html#readlink"><a title="paramiko.SFTPClient.readlink
-paramiko.SFTPServerInterface.readlink" class="py-name" href="#" onclick="return doclink('link-204', 'readlink', 'link-204');">readlink</a></tt><tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-<a name="L421"></a><tt class="py-lineno">421</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">resp</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">str</tt><tt class="py-op">:</tt> </tt>
-<a name="L422"></a><tt class="py-lineno">422</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_response</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt id="link-205" class="py-name"><a title="paramiko.sftp.CMD_NAME
-paramiko.sftp_attr.CMD_NAME
-paramiko.sftp_client.CMD_NAME
-paramiko.sftp_file.CMD_NAME
-paramiko.sftp_handle.CMD_NAME
-paramiko.sftp_server.CMD_NAME
-paramiko.sftp_si.CMD_NAME" class="py-name" href="#" onclick="return doclink('link-205', 'CMD_NAME', 'link-94');">CMD_NAME</a></tt><tt class="py-op">,</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">resp</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt><tt class="py-op">,</tt> <tt id="link-206" class="py-name"><a title="paramiko.SFTPAttributes" class="py-name" href="#" onclick="return doclink('link-206', 'SFTPAttributes', 'link-80');">SFTPAttributes</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L423"></a><tt class="py-lineno">423</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L424"></a><tt class="py-lineno">424</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_status</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt class="py-name">resp</tt><tt class="py-op">)</tt> </tt>
-<a name="L425"></a><tt class="py-lineno">425</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">t</tt> <tt class="py-op">==</tt> <tt id="link-207" class="py-name" targets="Variable paramiko.sftp.CMD_SYMLINK=paramiko.sftp-module.html#CMD_SYMLINK,Variable paramiko.sftp_attr.CMD_SYMLINK=paramiko.sftp_attr-module.html#CMD_SYMLINK,Variable paramiko.sftp_client.CMD_SYMLINK=paramiko.sftp_client-module.html#CMD_SYMLINK,Variable paramiko.sftp_file.CMD_SYMLINK=paramiko.sftp_file-module.html#CMD_SYMLINK,Variable paramiko.sftp_handle.CMD_SYMLINK=paramiko.sftp_handle-module.html#CMD_SYMLINK,Variable paramiko.sftp_server.CMD_SYMLINK=paramiko.sftp_server-module.html#CMD_SYMLINK,Variable paramiko.sftp_si.CMD_SYMLINK=paramiko.sftp_si-module.html#CMD_SYMLINK"><a title="paramiko.sftp.CMD_SYMLINK
-paramiko.sftp_attr.CMD_SYMLINK
-paramiko.sftp_client.CMD_SYMLINK
-paramiko.sftp_file.CMD_SYMLINK
-paramiko.sftp_handle.CMD_SYMLINK
-paramiko.sftp_server.CMD_SYMLINK
-paramiko.sftp_si.CMD_SYMLINK" class="py-name" href="#" onclick="return doclink('link-207', 'CMD_SYMLINK', 'link-207');">CMD_SYMLINK</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L426"></a><tt class="py-lineno">426</tt> <tt class="py-line"> <tt class="py-comment"># the sftp 2 draft is incorrect here! path always follows target_path</tt> </tt>
-<a name="L427"></a><tt class="py-lineno">427</tt> <tt class="py-line"> <tt class="py-name">target_path</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-208" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-208', 'get_string', 'link-95');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L428"></a><tt class="py-lineno">428</tt> <tt class="py-line"> <tt class="py-name">path</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-209" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-209', 'get_string', 'link-95');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L429"></a><tt class="py-lineno">429</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_status</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-210" class="py-name"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-210', 'server', 'link-3');">server</a></tt><tt class="py-op">.</tt><tt id="link-211" class="py-name" targets="Method paramiko.SFTPClient.symlink()=paramiko.SFTPClient-class.html#symlink,Method paramiko.SFTPServerInterface.symlink()=paramiko.SFTPServerInterface-class.html#symlink"><a title="paramiko.SFTPClient.symlink
-paramiko.SFTPServerInterface.symlink" class="py-name" href="#" onclick="return doclink('link-211', 'symlink', 'link-211');">symlink</a></tt><tt class="py-op">(</tt><tt class="py-name">target_path</tt><tt class="py-op">,</tt> <tt class="py-name">path</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L430"></a><tt class="py-lineno">430</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">t</tt> <tt class="py-op">==</tt> <tt id="link-212" class="py-name" targets="Variable paramiko.sftp.CMD_REALPATH=paramiko.sftp-module.html#CMD_REALPATH,Variable paramiko.sftp_attr.CMD_REALPATH=paramiko.sftp_attr-module.html#CMD_REALPATH,Variable paramiko.sftp_client.CMD_REALPATH=paramiko.sftp_client-module.html#CMD_REALPATH,Variable paramiko.sftp_file.CMD_REALPATH=paramiko.sftp_file-module.html#CMD_REALPATH,Variable paramiko.sftp_handle.CMD_REALPATH=paramiko.sftp_handle-module.html#CMD_REALPATH,Variable paramiko.sftp_server.CMD_REALPATH=paramiko.sftp_server-module.html#CMD_REALPATH,Variable paramiko.sftp_si.CMD_REALPATH=paramiko.sftp_si-module.html#CMD_REALPATH"><a title="paramiko.sftp.CMD_REALPATH
-paramiko.sftp_attr.CMD_REALPATH
-paramiko.sftp_client.CMD_REALPATH
-paramiko.sftp_file.CMD_REALPATH
-paramiko.sftp_handle.CMD_REALPATH
-paramiko.sftp_server.CMD_REALPATH
-paramiko.sftp_si.CMD_REALPATH" class="py-name" href="#" onclick="return doclink('link-212', 'CMD_REALPATH', 'link-212');">CMD_REALPATH</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L431"></a><tt class="py-lineno">431</tt> <tt class="py-line"> <tt class="py-name">path</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-213" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-213', 'get_string', 'link-95');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L432"></a><tt class="py-lineno">432</tt> <tt class="py-line"> <tt class="py-name">rpath</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-214" class="py-name"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-214', 'server', 'link-3');">server</a></tt><tt class="py-op">.</tt><tt id="link-215" class="py-name" targets="Method paramiko.SFTPServerInterface.canonicalize()=paramiko.SFTPServerInterface-class.html#canonicalize"><a title="paramiko.SFTPServerInterface.canonicalize" class="py-name" href="#" onclick="return doclink('link-215', 'canonicalize', 'link-215');">canonicalize</a></tt><tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-<a name="L433"></a><tt class="py-lineno">433</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_response</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt id="link-216" class="py-name"><a title="paramiko.sftp.CMD_NAME
-paramiko.sftp_attr.CMD_NAME
-paramiko.sftp_client.CMD_NAME
-paramiko.sftp_file.CMD_NAME
-paramiko.sftp_handle.CMD_NAME
-paramiko.sftp_server.CMD_NAME
-paramiko.sftp_si.CMD_NAME" class="py-name" href="#" onclick="return doclink('link-216', 'CMD_NAME', 'link-94');">CMD_NAME</a></tt><tt class="py-op">,</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">rpath</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt><tt class="py-op">,</tt> <tt id="link-217" class="py-name"><a title="paramiko.SFTPAttributes" class="py-name" href="#" onclick="return doclink('link-217', 'SFTPAttributes', 'link-80');">SFTPAttributes</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L434"></a><tt class="py-lineno">434</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">t</tt> <tt class="py-op">==</tt> <tt id="link-218" class="py-name" targets="Variable paramiko.sftp.CMD_EXTENDED=paramiko.sftp-module.html#CMD_EXTENDED,Variable paramiko.sftp_attr.CMD_EXTENDED=paramiko.sftp_attr-module.html#CMD_EXTENDED,Variable paramiko.sftp_client.CMD_EXTENDED=paramiko.sftp_client-module.html#CMD_EXTENDED,Variable paramiko.sftp_file.CMD_EXTENDED=paramiko.sftp_file-module.html#CMD_EXTENDED,Variable paramiko.sftp_handle.CMD_EXTENDED=paramiko.sftp_handle-module.html#CMD_EXTENDED,Variable paramiko.sftp_server.CMD_EXTENDED=paramiko.sftp_server-module.html#CMD_EXTENDED,Variable paramiko.sftp_si.CMD_EXTENDED=paramiko.sftp_si-module.html#CMD_EXTENDED"><a title="paramiko.sftp.CMD_EXTENDED
-paramiko.sftp_attr.CMD_EXTENDED
-paramiko.sftp_client.CMD_EXTENDED
-paramiko.sftp_file.CMD_EXTENDED
-paramiko.sftp_handle.CMD_EXTENDED
-paramiko.sftp_server.CMD_EXTENDED
-paramiko.sftp_si.CMD_EXTENDED" class="py-name" href="#" onclick="return doclink('link-218', 'CMD_EXTENDED', 'link-218');">CMD_EXTENDED</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L435"></a><tt class="py-lineno">435</tt> <tt class="py-line"> <tt class="py-name">tag</tt> <tt class="py-op">=</tt> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-219" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-219', 'get_string', 'link-95');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L436"></a><tt class="py-lineno">436</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">tag</tt> <tt class="py-op">==</tt> <tt class="py-string">'check-file'</tt><tt class="py-op">:</tt> </tt>
-<a name="L437"></a><tt class="py-lineno">437</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_check_file</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt class="py-name">msg</tt><tt class="py-op">)</tt> </tt>
-<a name="L438"></a><tt class="py-lineno">438</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L439"></a><tt class="py-lineno">439</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_status</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt id="link-220" class="py-name" targets="Variable paramiko.sftp.SFTP_OP_UNSUPPORTED=paramiko.sftp-module.html#SFTP_OP_UNSUPPORTED,Variable paramiko.sftp_attr.SFTP_OP_UNSUPPORTED=paramiko.sftp_attr-module.html#SFTP_OP_UNSUPPORTED,Variable paramiko.sftp_client.SFTP_OP_UNSUPPORTED=paramiko.sftp_client-module.html#SFTP_OP_UNSUPPORTED,Variable paramiko.sftp_file.SFTP_OP_UNSUPPORTED=paramiko.sftp_file-module.html#SFTP_OP_UNSUPPORTED,Variable paramiko.sftp_handle.SFTP_OP_UNSUPPORTED=paramiko.sftp_handle-module.html#SFTP_OP_UNSUPPORTED,Variable paramiko.sftp_server.SFTP_OP_UNSUPPORTED=paramiko.sftp_server-module.html#SFTP_OP_UNSUPPORTED,Variable paramiko.sftp_si.SFTP_OP_UNSUPPORTED=paramiko.sftp_si-module.html#SFTP_OP_UNSUPPORTED"><a title="paramiko.sftp.SFTP_OP_UNSUPPORTED
-paramiko.sftp_attr.SFTP_OP_UNSUPPORTED
-paramiko.sftp_client.SFTP_OP_UNSUPPORTED
-paramiko.sftp_file.SFTP_OP_UNSUPPORTED
-paramiko.sftp_handle.SFTP_OP_UNSUPPORTED
-paramiko.sftp_server.SFTP_OP_UNSUPPORTED
-paramiko.sftp_si.SFTP_OP_UNSUPPORTED" class="py-name" href="#" onclick="return doclink('link-220', 'SFTP_OP_UNSUPPORTED', 'link-220');">SFTP_OP_UNSUPPORTED</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L440"></a><tt class="py-lineno">440</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L441"></a><tt class="py-lineno">441</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_status</tt><tt class="py-op">(</tt><tt class="py-name">request_number</tt><tt class="py-op">,</tt> <tt id="link-221" class="py-name"><a title="paramiko.sftp.SFTP_OP_UNSUPPORTED
-paramiko.sftp_attr.SFTP_OP_UNSUPPORTED
-paramiko.sftp_client.SFTP_OP_UNSUPPORTED
-paramiko.sftp_file.SFTP_OP_UNSUPPORTED
-paramiko.sftp_handle.SFTP_OP_UNSUPPORTED
-paramiko.sftp_server.SFTP_OP_UNSUPPORTED
-paramiko.sftp_si.SFTP_OP_UNSUPPORTED" class="py-name" href="#" onclick="return doclink('link-221', 'SFTP_OP_UNSUPPORTED', 'link-220');">SFTP_OP_UNSUPPORTED</a></tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L442"></a><tt class="py-lineno">442</tt> <tt class="py-line"> </tt>
-<a name="L443"></a><tt class="py-lineno">443</tt> <tt class="py-line"> </tt>
-<a name="L444"></a><tt class="py-lineno">444</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-222" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-222', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-223" class="py-name" targets="Module paramiko.sftp_handle=paramiko.sftp_handle-module.html"><a title="paramiko.sftp_handle" class="py-name" href="#" onclick="return doclink('link-223', 'sftp_handle', 'link-223');">sftp_handle</a></tt> <tt class="py-keyword">import</tt> <tt id="link-224" class="py-name"><a title="paramiko.SFTPHandle" class="py-name" href="#" onclick="return doclink('link-224', 'SFTPHandle', 'link-81');">SFTPHandle</a></tt> </tt>
-<a name="L445"></a><tt class="py-lineno">445</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:08 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.sftp_si-module.html b/docs/paramiko.sftp_si-module.html
deleted file mode 100644
index 38c4bca..0000000
--- a/docs/paramiko.sftp_si-module.html
+++ /dev/null
@@ -1,909 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.sftp_si</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;sftp_si
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.sftp_si-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module sftp_si</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.sftp_si-pysrc.html">source&nbsp;code</a></span></p>
-<p><a href="paramiko.SFTPServerInterface-class.html"
- class="link">SFTPServerInterface</a> is an interface to override for SFTP
- server support.</p>
-
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_FAILED"></a><span class="summary-name">AUTH_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_PARTIALLY_SUCCESSFUL"></a><span class="summary-name">AUTH_PARTIALLY_SUCCESSFUL</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_SUCCESSFUL"></a><span class="summary-name">AUTH_SUCCESSFUL</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_ATTRS"></a><span class="summary-name">CMD_ATTRS</span> = <code title="105">105</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_CLOSE"></a><span class="summary-name">CMD_CLOSE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_DATA"></a><span class="summary-name">CMD_DATA</span> = <code title="103">103</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_EXTENDED"></a><span class="summary-name">CMD_EXTENDED</span> = <code title="200">200</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_EXTENDED_REPLY"></a><span class="summary-name">CMD_EXTENDED_REPLY</span> = <code title="201">201</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_FSETSTAT"></a><span class="summary-name">CMD_FSETSTAT</span> = <code title="10">10</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_FSTAT"></a><span class="summary-name">CMD_FSTAT</span> = <code title="8">8</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_HANDLE"></a><span class="summary-name">CMD_HANDLE</span> = <code title="102">102</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_INIT"></a><span class="summary-name">CMD_INIT</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_LSTAT"></a><span class="summary-name">CMD_LSTAT</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_MKDIR"></a><span class="summary-name">CMD_MKDIR</span> = <code title="14">14</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_NAME"></a><span class="summary-name">CMD_NAME</span> = <code title="104">104</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.sftp_si-module.html#CMD_NAMES" class="summary-name">CMD_NAMES</a> = <code title="{1: 'init',
- 2: 'version',
- 3: 'open',
- 4: 'close',
- 5: 'read',
- 6: 'write',
- 7: 'lstat',
- 8: 'fstat',
-..."><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">init</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">version</code><code class="variable-quote">'</code><code class="variable-op">, </code>3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">open</code><code class="variable-quote">'</code><code class="variable-op">, </code>4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">close</code><code class="variable-quote">'</code><code class="variable-op">, </code>5<code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_OPEN"></a><span class="summary-name">CMD_OPEN</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_OPENDIR"></a><span class="summary-name">CMD_OPENDIR</span> = <code title="11">11</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_READ"></a><span class="summary-name">CMD_READ</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_READDIR"></a><span class="summary-name">CMD_READDIR</span> = <code title="12">12</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_READLINK"></a><span class="summary-name">CMD_READLINK</span> = <code title="19">19</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_REALPATH"></a><span class="summary-name">CMD_REALPATH</span> = <code title="16">16</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_REMOVE"></a><span class="summary-name">CMD_REMOVE</span> = <code title="13">13</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_RENAME"></a><span class="summary-name">CMD_RENAME</span> = <code title="18">18</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_RMDIR"></a><span class="summary-name">CMD_RMDIR</span> = <code title="15">15</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_SETSTAT"></a><span class="summary-name">CMD_SETSTAT</span> = <code title="9">9</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_STAT"></a><span class="summary-name">CMD_STAT</span> = <code title="17">17</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_STATUS"></a><span class="summary-name">CMD_STATUS</span> = <code title="101">101</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_SYMLINK"></a><span class="summary-name">CMD_SYMLINK</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_VERSION"></a><span class="summary-name">CMD_VERSION</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CMD_WRITE"></a><span class="summary-name">CMD_WRITE</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.sftp_si-module.html#CONNECTION_FAILED_CODE" class="summary-name">CONNECTION_FAILED_CODE</a> = <code title="{1: 'Administratively prohibited',
- 2: 'Connect failed',
- 3: 'Unknown channel type',
- 4: 'Resource shortage'}"><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">:</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CRITICAL"></a><span class="summary-name">CRITICAL</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DEBUG"></a><span class="summary-name">DEBUG</span> = <code title="10">10</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_AUTH_CANCELLED_BY_USER"></a><span class="summary-name">DISCONNECT_AUTH_CANCELLED_BY_USER</span> = <code title="13">13</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE"></a><span class="summary-name">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</span> = <code title="14">14</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_SERVICE_NOT_AVAILABLE"></a><span class="summary-name">DISCONNECT_SERVICE_NOT_AVAILABLE</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="ERROR"></a><span class="summary-name">ERROR</span> = <code title="40">40</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="INFO"></a><span class="summary-name">INFO</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_CLOSE"></a><span class="summary-name">MSG_CHANNEL_CLOSE</span> = <code title="97">97</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_DATA"></a><span class="summary-name">MSG_CHANNEL_DATA</span> = <code title="94">94</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EOF"></a><span class="summary-name">MSG_CHANNEL_EOF</span> = <code title="96">96</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EXTENDED_DATA"></a><span class="summary-name">MSG_CHANNEL_EXTENDED_DATA</span> = <code title="95">95</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_FAILURE"></a><span class="summary-name">MSG_CHANNEL_FAILURE</span> = <code title="100">100</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN"></a><span class="summary-name">MSG_CHANNEL_OPEN</span> = <code title="90">90</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_FAILURE"></a><span class="summary-name">MSG_CHANNEL_OPEN_FAILURE</span> = <code title="92">92</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_OPEN_SUCCESS</span> = <code title="91">91</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_REQUEST"></a><span class="summary-name">MSG_CHANNEL_REQUEST</span> = <code title="98">98</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_SUCCESS</span> = <code title="99">99</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_WINDOW_ADJUST"></a><span class="summary-name">MSG_CHANNEL_WINDOW_ADJUST</span> = <code title="93">93</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DEBUG"></a><span class="summary-name">MSG_DEBUG</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DISCONNECT"></a><span class="summary-name">MSG_DISCONNECT</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_GLOBAL_REQUEST"></a><span class="summary-name">MSG_GLOBAL_REQUEST</span> = <code title="80">80</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_IGNORE"></a><span class="summary-name">MSG_IGNORE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_KEXINIT"></a><span class="summary-name">MSG_KEXINIT</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.sftp_si-module.html#MSG_NAMES" class="summary-name">MSG_NAMES</a> = <code title="{1: 'disconnect',
- 2: 'ignore',
- 3: 'unimplemented',
- 4: 'debug',
- 5: 'service-request',
- 6: 'service-accept',
- 20: 'kexinit',
- 21: 'newkeys',
-..."><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">, </code>3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_NEWKEYS"></a><span class="summary-name">MSG_NEWKEYS</span> = <code title="21">21</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_FAILURE"></a><span class="summary-name">MSG_REQUEST_FAILURE</span> = <code title="82">82</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_SUCCESS"></a><span class="summary-name">MSG_REQUEST_SUCCESS</span> = <code title="81">81</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_ACCEPT"></a><span class="summary-name">MSG_SERVICE_ACCEPT</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_REQUEST"></a><span class="summary-name">MSG_SERVICE_REQUEST</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_UNIMPLEMENTED"></a><span class="summary-name">MSG_UNIMPLEMENTED</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_BANNER"></a><span class="summary-name">MSG_USERAUTH_BANNER</span> = <code title="53">53</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_FAILURE"></a><span class="summary-name">MSG_USERAUTH_FAILURE</span> = <code title="51">51</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_REQUEST"></a><span class="summary-name">MSG_USERAUTH_INFO_REQUEST</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_RESPONSE"></a><span class="summary-name">MSG_USERAUTH_INFO_RESPONSE</span> = <code title="61">61</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_PK_OK"></a><span class="summary-name">MSG_USERAUTH_PK_OK</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_REQUEST"></a><span class="summary-name">MSG_USERAUTH_REQUEST</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_SUCCESS"></a><span class="summary-name">MSG_USERAUTH_SUCCESS</span> = <code title="52">52</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED"></a><span class="summary-name">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_CONNECT_FAILED"></a><span class="summary-name">OPEN_FAILED_CONNECT_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_RESOURCE_SHORTAGE"></a><span class="summary-name">OPEN_FAILED_RESOURCE_SHORTAGE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_UNKNOWN_CHANNEL_TYPE"></a><span class="summary-name">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_SUCCEEDED"></a><span class="summary-name">OPEN_SUCCEEDED</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="PY22"></a><span class="summary-name">PY22</span> = <code title="False">False</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_BAD_MESSAGE"></a><span class="summary-name">SFTP_BAD_MESSAGE</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_CONNECTION_LOST"></a><span class="summary-name">SFTP_CONNECTION_LOST</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.sftp_si-module.html#SFTP_DESC" class="summary-name">SFTP_DESC</a> = <code title="['Success',
- 'End of file',
- 'No such file',
- 'Permission denied',
- 'Failure',
- 'Bad message',
- 'No connection',
- 'Connection lost',
-..."><code class="variable-group">[</code><code class="variable-quote">'</code><code class="variable-string">Success</code><code class="variable-quote">'</code><code class="variable-op">, </code><code class="variable-quote">'</code><code class="variable-string">End of file</code><code class="variable-quote">'</code><code class="variable-op">, </code><code class="variable-quote">'</code><code class="variable-string">No such file</code><code class="variable-quote">'</code><code class="variable-op">, </code><code class="variable-quote">'</code><code class="variable-string">Permis</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_EOF"></a><span class="summary-name">SFTP_EOF</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FAILURE"></a><span class="summary-name">SFTP_FAILURE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_APPEND"></a><span class="summary-name">SFTP_FLAG_APPEND</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_CREATE"></a><span class="summary-name">SFTP_FLAG_CREATE</span> = <code title="8">8</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_EXCL"></a><span class="summary-name">SFTP_FLAG_EXCL</span> = <code title="32">32</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_READ"></a><span class="summary-name">SFTP_FLAG_READ</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_TRUNC"></a><span class="summary-name">SFTP_FLAG_TRUNC</span> = <code title="16">16</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_FLAG_WRITE"></a><span class="summary-name">SFTP_FLAG_WRITE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_NO_CONNECTION"></a><span class="summary-name">SFTP_NO_CONNECTION</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_NO_SUCH_FILE"></a><span class="summary-name">SFTP_NO_SUCH_FILE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_OK"></a><span class="summary-name">SFTP_OK</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_OP_UNSUPPORTED"></a><span class="summary-name">SFTP_OP_UNSUPPORTED</span> = <code title="8">8</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="SFTP_PERMISSION_DENIED"></a><span class="summary-name">SFTP_PERMISSION_DENIED</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="WARNING"></a><span class="summary-name">WARNING</span> = <code title="30">30</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'paramiko'"><code class="variable-quote">'</code><code class="variable-string">paramiko</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="rng"></a><span class="summary-name">rng</span> = <code title="Random.new()">Random.new()</code>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES DETAILS ==================== -->
-<a name="section-VariablesDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables Details</span></td>
-</tr>
-</table>
-<a name="CMD_NAMES"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">CMD_NAMES</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">init</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">version</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">open</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">close</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 5<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">read</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 6<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">write</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 7<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">lstat</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 8<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">fstat</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="CONNECTION_FAILED_CODE"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">CONNECTION_FAILED_CODE</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Connect failed</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Unknown channel type</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Resource shortage</code><code class="variable-quote">'</code><code class="variable-group">}</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="MSG_NAMES"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">MSG_NAMES</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">debug</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 5<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-request</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 6<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-accept</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 20<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">kexinit</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 21<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">newkeys</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="SFTP_DESC"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">SFTP_DESC</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">[</code><code class="variable-quote">'</code><code class="variable-string">Success</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">End of file</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">No such file</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">Permission denied</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">Failure</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">Bad message</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">No connection</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- <code class="variable-quote">'</code><code class="variable-string">Connection lost</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.sftp_si-pysrc.html b/docs/paramiko.sftp_si-pysrc.html
deleted file mode 100644
index b7b90ed..0000000
--- a/docs/paramiko.sftp_si-pysrc.html
+++ /dev/null
@@ -1,527 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.sftp_si</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;sftp_si
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.sftp_si-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.sftp_si-module.html" onclick="show_private();">Module paramiko.sftp_si</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2003-2007 Robey Pointer &lt;robeypointer@gmail.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring">L{SFTPServerInterface} is an interface to override for SFTP server support.</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package paramiko=paramiko-module.html"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-0', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Module paramiko.common=paramiko.common-module.html"><a title="paramiko.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt> <tt class="py-keyword">import</tt> <tt class="py-op">*</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-2" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-2', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Module paramiko.sftp=paramiko.sftp-module.html"><a title="paramiko.sftp" class="py-name" href="#" onclick="return doclink('link-3', 'sftp', 'link-3');">sftp</a></tt> <tt class="py-keyword">import</tt> <tt class="py-op">*</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> </tt>
-<a name="SFTPServerInterface"></a><div id="SFTPServerInterface-def"><a name="L29"></a><tt class="py-lineno"> 29</tt> <a class="py-toggle" href="#" id="SFTPServerInterface-toggle" onclick="return toggle('SFTPServerInterface');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.sftp_si.SFTPServerInterface-class.html">SFTPServerInterface</a> <tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPServerInterface-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="SFTPServerInterface-expanded"><a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"><tt class="py-docstring"> This class defines an interface for controlling the behavior of paramiko</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"><tt class="py-docstring"> when using the L{SFTPServer} subsystem to provide an SFTP server.</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"><tt class="py-docstring"> Methods on this class are called from the SFTP session's thread, so you can</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"><tt class="py-docstring"> block as long as necessary without affecting other sessions (even other</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"><tt class="py-docstring"> SFTP sessions). However, raising an exception will usually cause the SFTP</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"><tt class="py-docstring"> session to abruptly end, so you will usually want to catch exceptions and</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"><tt class="py-docstring"> return an appropriate error code.</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"><tt class="py-docstring"> All paths are in string form instead of unicode because not all SFTP</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"><tt class="py-docstring"> clients &amp; servers obey the requirement that paths be encoded in UTF-8.</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> </tt>
-<a name="SFTPServerInterface.__init__"></a><div id="SFTPServerInterface.__init__-def"><a name="L44"></a><tt class="py-lineno"> 44</tt> <a class="py-toggle" href="#" id="SFTPServerInterface.__init__-toggle" onclick="return toggle('SFTPServerInterface.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_si.SFTPServerInterface-class.html#__init__">__init__</a> <tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">server</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">largs</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">kwargs</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPServerInterface.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPServerInterface.__init__-expanded"><a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"><tt class="py-docstring"> Create a new SFTPServerInterface object. This method does nothing by</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"><tt class="py-docstring"> default and is meant to be overridden by subclasses.</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"><tt class="py-docstring"> @param server: the server object associated with this channel and</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"><tt class="py-docstring"> SFTP subsystem</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"><tt class="py-docstring"> @type server: L{ServerInterface}</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-name">super</tt><tt class="py-op">(</tt><tt id="link-4" class="py-name" targets="Class paramiko.SFTPServerInterface=paramiko.SFTPServerInterface-class.html"><a title="paramiko.SFTPServerInterface" class="py-name" href="#" onclick="return doclink('link-4', 'SFTPServerInterface', 'link-4');">SFTPServerInterface</a></tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Method paramiko.Agent.__init__()=paramiko.Agent-class.html#__init__,Method paramiko.AgentKey.__init__()=paramiko.AgentKey-class.html#__init__,Method paramiko.BadAuthenticationType.__init__()=paramiko.BadAuthenticationType-class.html#__init__,Method paramiko.BadHostKeyException.__init__()=paramiko.BadHostKeyException-class.html#__init__,Method paramiko.BufferedFile.__init__()=paramiko.BufferedFile-class.html#__init__,Method paramiko.Channel.__init__()=paramiko.Channel-class.html#__init__,Method paramiko.ChannelException.__init__()=paramiko.ChannelException-class.html#__init__,Method paramiko.DSSKey.__init__()=paramiko.DSSKey-class.html#__init__,Method paramiko.HostKeys.__init__()=paramiko.HostKeys-class.html#__init__,Method paramiko.Message.__init__()=paramiko.Message-class.html#__init__,Method paramiko.PKey.__init__()=paramiko.PKey-class.html#__init__,Method paramiko.RSAKey.__init__()=paramiko.RSAKey-class.html#__init__,Method paramiko.SFTPAttributes.__init__()=paramiko.SFTPAttributes-class.html#__init__,Method paramiko.SFTPClient.__init__()=paramiko.SFTPClient-class.html#__init__,Method paramiko.SFTPFile.__init__()=paramiko.SFTPFile-class.html#__init__,Method paramiko.SFTPHandle.__init__()=paramiko.SFTPHandle-class.html#__init__,Method paramiko.SFTPServer.__init__()=paramiko.SFTPServer-class.html#__init__,Method paramiko.SFTPServerInterface.__init__()=paramiko.SFTPServerInterface-class.html#__init__,Method paramiko.SSHClient.__init__()=paramiko.SSHClient-class.html#__init__,Method paramiko.SSHConfig.__init__()=paramiko.SSHConfig-class.html#__init__,Method paramiko.SecurityOptions.__init__()=paramiko.SecurityOptions-class.html#__init__,Method paramiko.SubsystemHandler.__init__()=paramiko.SubsystemHandler-class.html#__init__,Method paramiko.Transport.__init__()=paramiko.Transport-class.html#__init__,Method paramiko.ber.BER.__init__()=paramiko.ber.BER-class.html#__init__,Method paramiko.buffered_pipe.BufferedPipe.__init__()=paramiko.buffered_pipe.BufferedPipe-class.html#__init__,Method paramiko.channel.ChannelStderrFile.__init__()=paramiko.channel.ChannelStderrFile-class.html#__init__,Method paramiko.compress.ZlibCompressor.__init__()=paramiko.compress.ZlibCompressor-class.html#__init__,Method paramiko.compress.ZlibDecompressor.__init__()=paramiko.compress.ZlibDecompressor-class.html#__init__,Method paramiko.hostkeys.HostKeyEntry.__init__()=paramiko.hostkeys.HostKeyEntry-class.html#__init__,Method paramiko.kex_gex.KexGex.__init__()=paramiko.kex_gex.KexGex-class.html#__init__,Method paramiko.kex_group1.KexGroup1.__init__()=paramiko.kex_group1.KexGroup1-class.html#__init__,Method paramiko.logging22.Formatter.__init__()=paramiko.logging22.Formatter-class.html#__init__,Method paramiko.logging22.StreamHandler.__init__()=paramiko.logging22.StreamHandler-class.html#__init__,Method paramiko.logging22.logger.__init__()=paramiko.logging22.logger-class.html#__init__,Method paramiko.pipe.OrPipe.__init__()=paramiko.pipe.OrPipe-class.html#__init__,Method paramiko.pipe.PosixPipe.__init__()=paramiko.pipe.PosixPipe-class.html#__init__,Method paramiko.pipe.WindowsPipe.__init__()=paramiko.pipe.WindowsPipe-class.html#__init__,Method paramiko.primes.ModulusPack.__init__()=paramiko.primes.ModulusPack-class.html#__init__,Method paramiko.ssh_exception.PartialAuthentication.__init__()=paramiko.ssh_exception.PartialAuthentication-class.html#__init__,Method paramiko.transport.ChannelMap.__init__()=paramiko.transport.ChannelMap-class.html#__init__,Method paramiko.util.Counter.__init__()=paramiko.util.Counter-class.html#__init__,Method paramiko.util.enumerate.__init__()=paramiko.util.enumerate-class.html#__init__,Method paramiko.win_pageant.PageantConnection.__init__()=paramiko.win_pageant.PageantConnection-class.html#__init__"><a title="paramiko.Agent.__init__
-paramiko.AgentKey.__init__
-paramiko.BadAuthenticationType.__init__
-paramiko.BadHostKeyException.__init__
-paramiko.BufferedFile.__init__
-paramiko.Channel.__init__
-paramiko.ChannelException.__init__
-paramiko.DSSKey.__init__
-paramiko.HostKeys.__init__
-paramiko.Message.__init__
-paramiko.PKey.__init__
-paramiko.RSAKey.__init__
-paramiko.SFTPAttributes.__init__
-paramiko.SFTPClient.__init__
-paramiko.SFTPFile.__init__
-paramiko.SFTPHandle.__init__
-paramiko.SFTPServer.__init__
-paramiko.SFTPServerInterface.__init__
-paramiko.SSHClient.__init__
-paramiko.SSHConfig.__init__
-paramiko.SecurityOptions.__init__
-paramiko.SubsystemHandler.__init__
-paramiko.Transport.__init__
-paramiko.ber.BER.__init__
-paramiko.buffered_pipe.BufferedPipe.__init__
-paramiko.channel.ChannelStderrFile.__init__
-paramiko.compress.ZlibCompressor.__init__
-paramiko.compress.ZlibDecompressor.__init__
-paramiko.hostkeys.HostKeyEntry.__init__
-paramiko.kex_gex.KexGex.__init__
-paramiko.kex_group1.KexGroup1.__init__
-paramiko.logging22.Formatter.__init__
-paramiko.logging22.StreamHandler.__init__
-paramiko.logging22.logger.__init__
-paramiko.pipe.OrPipe.__init__
-paramiko.pipe.PosixPipe.__init__
-paramiko.pipe.WindowsPipe.__init__
-paramiko.primes.ModulusPack.__init__
-paramiko.ssh_exception.PartialAuthentication.__init__
-paramiko.transport.ChannelMap.__init__
-paramiko.util.Counter.__init__
-paramiko.util.enumerate.__init__
-paramiko.win_pageant.PageantConnection.__init__" class="py-name" href="#" onclick="return doclink('link-5', '__init__', 'link-5');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-op">*</tt><tt class="py-name">largs</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-name">kwargs</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> </tt>
-<a name="SFTPServerInterface.session_started"></a><div id="SFTPServerInterface.session_started-def"><a name="L55"></a><tt class="py-lineno"> 55</tt> <a class="py-toggle" href="#" id="SFTPServerInterface.session_started-toggle" onclick="return toggle('SFTPServerInterface.session_started');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_si.SFTPServerInterface-class.html#session_started">session_started</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPServerInterface.session_started-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPServerInterface.session_started-expanded"><a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"><tt class="py-docstring"> The SFTP server session has just started. This method is meant to be</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"><tt class="py-docstring"> overridden to perform any necessary setup before handling callbacks</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"><tt class="py-docstring"> from SFTP operations.</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-</div><a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> </tt>
-<a name="SFTPServerInterface.session_ended"></a><div id="SFTPServerInterface.session_ended-def"><a name="L63"></a><tt class="py-lineno"> 63</tt> <a class="py-toggle" href="#" id="SFTPServerInterface.session_ended-toggle" onclick="return toggle('SFTPServerInterface.session_ended');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_si.SFTPServerInterface-class.html#session_ended">session_ended</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPServerInterface.session_ended-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPServerInterface.session_ended-expanded"><a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"><tt class="py-docstring"> The SFTP server session has just ended, either cleanly or via an</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"><tt class="py-docstring"> exception. This method is meant to be overridden to perform any</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"><tt class="py-docstring"> necessary cleanup before this C{SFTPServerInterface} object is</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"><tt class="py-docstring"> destroyed.</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-</div><a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> </tt>
-<a name="SFTPServerInterface.open"></a><div id="SFTPServerInterface.open-def"><a name="L72"></a><tt class="py-lineno"> 72</tt> <a class="py-toggle" href="#" id="SFTPServerInterface.open-toggle" onclick="return toggle('SFTPServerInterface.open');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_si.SFTPServerInterface-class.html#open">open</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">path</tt><tt class="py-op">,</tt> <tt class="py-param">flags</tt><tt class="py-op">,</tt> <tt class="py-param">attr</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPServerInterface.open-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPServerInterface.open-expanded"><a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"><tt class="py-docstring"> Open a file on the server and create a handle for future operations</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"><tt class="py-docstring"> on that file. On success, a new object subclassed from L{SFTPHandle}</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"><tt class="py-docstring"> should be returned. This handle will be used for future operations</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"><tt class="py-docstring"> on the file (read, write, etc). On failure, an error code such as</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"><tt class="py-docstring"> L{SFTP_PERMISSION_DENIED} should be returned.</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"><tt class="py-docstring"> C{flags} contains the requested mode for opening (read-only,</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"><tt class="py-docstring"> write-append, etc) as a bitset of flags from the C{os} module:</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"><tt class="py-docstring"> - C{os.O_RDONLY}</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"><tt class="py-docstring"> - C{os.O_WRONLY}</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"><tt class="py-docstring"> - C{os.O_RDWR}</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"><tt class="py-docstring"> - C{os.O_APPEND}</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"><tt class="py-docstring"> - C{os.O_CREAT}</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"><tt class="py-docstring"> - C{os.O_TRUNC}</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"><tt class="py-docstring"> - C{os.O_EXCL}</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"><tt class="py-docstring"> (One of C{os.O_RDONLY}, C{os.O_WRONLY}, or C{os.O_RDWR} will always</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"><tt class="py-docstring"> be set.)</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"><tt class="py-docstring"> The C{attr} object contains requested attributes of the file if it</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"><tt class="py-docstring"> has to be created. Some or all attribute fields may be missing if</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"><tt class="py-docstring"> the client didn't specify them.</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"><tt class="py-docstring"> @note: The SFTP protocol defines all files to be in "binary" mode.</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"><tt class="py-docstring"> There is no equivalent to python's "text" mode.</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"><tt class="py-docstring"> @param path: the requested path (relative or absolute) of the file</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"><tt class="py-docstring"> to be opened.</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"><tt class="py-docstring"> @type path: str</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"><tt class="py-docstring"> @param flags: flags or'd together from the C{os} module indicating the</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"><tt class="py-docstring"> requested mode for opening the file.</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"><tt class="py-docstring"> @type flags: int</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"><tt class="py-docstring"> @param attr: requested attributes of the file if it is newly created.</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"><tt class="py-docstring"> @type attr: L{SFTPAttributes}</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"><tt class="py-docstring"> @return: a new L{SFTPHandle} I{or error code}.</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"><tt class="py-docstring"> @rtype L{SFTPHandle}</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-6" class="py-name" targets="Variable paramiko.sftp.SFTP_OP_UNSUPPORTED=paramiko.sftp-module.html#SFTP_OP_UNSUPPORTED,Variable paramiko.sftp_attr.SFTP_OP_UNSUPPORTED=paramiko.sftp_attr-module.html#SFTP_OP_UNSUPPORTED,Variable paramiko.sftp_client.SFTP_OP_UNSUPPORTED=paramiko.sftp_client-module.html#SFTP_OP_UNSUPPORTED,Variable paramiko.sftp_file.SFTP_OP_UNSUPPORTED=paramiko.sftp_file-module.html#SFTP_OP_UNSUPPORTED,Variable paramiko.sftp_handle.SFTP_OP_UNSUPPORTED=paramiko.sftp_handle-module.html#SFTP_OP_UNSUPPORTED,Variable paramiko.sftp_server.SFTP_OP_UNSUPPORTED=paramiko.sftp_server-module.html#SFTP_OP_UNSUPPORTED,Variable paramiko.sftp_si.SFTP_OP_UNSUPPORTED=paramiko.sftp_si-module.html#SFTP_OP_UNSUPPORTED"><a title="paramiko.sftp.SFTP_OP_UNSUPPORTED
-paramiko.sftp_attr.SFTP_OP_UNSUPPORTED
-paramiko.sftp_client.SFTP_OP_UNSUPPORTED
-paramiko.sftp_file.SFTP_OP_UNSUPPORTED
-paramiko.sftp_handle.SFTP_OP_UNSUPPORTED
-paramiko.sftp_server.SFTP_OP_UNSUPPORTED
-paramiko.sftp_si.SFTP_OP_UNSUPPORTED" class="py-name" href="#" onclick="return doclink('link-6', 'SFTP_OP_UNSUPPORTED', 'link-6');">SFTP_OP_UNSUPPORTED</a></tt> </tt>
-</div><a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> </tt>
-<a name="SFTPServerInterface.list_folder"></a><div id="SFTPServerInterface.list_folder-def"><a name="L112"></a><tt class="py-lineno">112</tt> <a class="py-toggle" href="#" id="SFTPServerInterface.list_folder-toggle" onclick="return toggle('SFTPServerInterface.list_folder');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_si.SFTPServerInterface-class.html#list_folder">list_folder</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">path</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPServerInterface.list_folder-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPServerInterface.list_folder-expanded"><a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"><tt class="py-docstring"> Return a list of files within a given folder. The C{path} will use</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"><tt class="py-docstring"> posix notation (C{"/"} separates folder names) and may be an absolute</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"><tt class="py-docstring"> or relative path.</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"><tt class="py-docstring"> The list of files is expected to be a list of L{SFTPAttributes}</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"><tt class="py-docstring"> objects, which are similar in structure to the objects returned by</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"><tt class="py-docstring"> C{os.stat}. In addition, each object should have its C{filename}</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"><tt class="py-docstring"> field filled in, since this is important to a directory listing and</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"><tt class="py-docstring"> not normally present in C{os.stat} results. The method</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"><tt class="py-docstring"> L{SFTPAttributes.from_stat} will usually do what you want.</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"><tt class="py-docstring"> In case of an error, you should return one of the C{SFTP_*} error</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"><tt class="py-docstring"> codes, such as L{SFTP_PERMISSION_DENIED}.</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"><tt class="py-docstring"> @param path: the requested path (relative or absolute) to be listed.</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"><tt class="py-docstring"> @type path: str</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"><tt class="py-docstring"> @return: a list of the files in the given folder, using</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"><tt class="py-docstring"> L{SFTPAttributes} objects.</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: list of L{SFTPAttributes} I{or error code}</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"><tt class="py-docstring"> @note: You should normalize the given C{path} first (see the</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"><tt class="py-docstring"> C{os.path} module) and check appropriate permissions before returning</tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"><tt class="py-docstring"> the list of files. Be careful of malicious clients attempting to use</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"><tt class="py-docstring"> relative paths to escape restricted folders, if you're doing a direct</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"><tt class="py-docstring"> translation from the SFTP server path to your local filesystem.</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-7" class="py-name"><a title="paramiko.sftp.SFTP_OP_UNSUPPORTED
-paramiko.sftp_attr.SFTP_OP_UNSUPPORTED
-paramiko.sftp_client.SFTP_OP_UNSUPPORTED
-paramiko.sftp_file.SFTP_OP_UNSUPPORTED
-paramiko.sftp_handle.SFTP_OP_UNSUPPORTED
-paramiko.sftp_server.SFTP_OP_UNSUPPORTED
-paramiko.sftp_si.SFTP_OP_UNSUPPORTED" class="py-name" href="#" onclick="return doclink('link-7', 'SFTP_OP_UNSUPPORTED', 'link-6');">SFTP_OP_UNSUPPORTED</a></tt> </tt>
-</div><a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> </tt>
-<a name="SFTPServerInterface.stat"></a><div id="SFTPServerInterface.stat-def"><a name="L142"></a><tt class="py-lineno">142</tt> <a class="py-toggle" href="#" id="SFTPServerInterface.stat-toggle" onclick="return toggle('SFTPServerInterface.stat');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_si.SFTPServerInterface-class.html#stat">stat</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">path</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPServerInterface.stat-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPServerInterface.stat-expanded"><a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"><tt class="py-docstring"> Return an L{SFTPAttributes} object for a path on the server, or an</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"><tt class="py-docstring"> error code. If your server supports symbolic links (also known as</tt> </tt>
-<a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"><tt class="py-docstring"> "aliases"), you should follow them. (L{lstat} is the corresponding</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt> <tt class="py-line"><tt class="py-docstring"> call that doesn't follow symlinks/aliases.)</tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"><tt class="py-docstring"> @param path: the requested path (relative or absolute) to fetch</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt> <tt class="py-line"><tt class="py-docstring"> file statistics for.</tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"><tt class="py-docstring"> @type path: str</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"><tt class="py-docstring"> @return: an attributes object for the given file, or an SFTP error</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"><tt class="py-docstring"> code (like L{SFTP_PERMISSION_DENIED}).</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: L{SFTPAttributes} I{or error code}</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-8" class="py-name"><a title="paramiko.sftp.SFTP_OP_UNSUPPORTED
-paramiko.sftp_attr.SFTP_OP_UNSUPPORTED
-paramiko.sftp_client.SFTP_OP_UNSUPPORTED
-paramiko.sftp_file.SFTP_OP_UNSUPPORTED
-paramiko.sftp_handle.SFTP_OP_UNSUPPORTED
-paramiko.sftp_server.SFTP_OP_UNSUPPORTED
-paramiko.sftp_si.SFTP_OP_UNSUPPORTED" class="py-name" href="#" onclick="return doclink('link-8', 'SFTP_OP_UNSUPPORTED', 'link-6');">SFTP_OP_UNSUPPORTED</a></tt> </tt>
-</div><a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"> </tt>
-<a name="SFTPServerInterface.lstat"></a><div id="SFTPServerInterface.lstat-def"><a name="L158"></a><tt class="py-lineno">158</tt> <a class="py-toggle" href="#" id="SFTPServerInterface.lstat-toggle" onclick="return toggle('SFTPServerInterface.lstat');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_si.SFTPServerInterface-class.html#lstat">lstat</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">path</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPServerInterface.lstat-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPServerInterface.lstat-expanded"><a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"><tt class="py-docstring"> Return an L{SFTPAttributes} object for a path on the server, or an</tt> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"><tt class="py-docstring"> error code. If your server supports symbolic links (also known as</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"><tt class="py-docstring"> "aliases"), you should I{not} follow them -- instead, you should</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"><tt class="py-docstring"> return data on the symlink or alias itself. (L{stat} is the</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"><tt class="py-docstring"> corresponding call that follows symlinks/aliases.)</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"><tt class="py-docstring"> @param path: the requested path (relative or absolute) to fetch</tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"><tt class="py-docstring"> file statistics for.</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"><tt class="py-docstring"> @type path: str</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"><tt class="py-docstring"> @return: an attributes object for the given file, or an SFTP error</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"><tt class="py-docstring"> code (like L{SFTP_PERMISSION_DENIED}).</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: L{SFTPAttributes} I{or error code}</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-9" class="py-name"><a title="paramiko.sftp.SFTP_OP_UNSUPPORTED
-paramiko.sftp_attr.SFTP_OP_UNSUPPORTED
-paramiko.sftp_client.SFTP_OP_UNSUPPORTED
-paramiko.sftp_file.SFTP_OP_UNSUPPORTED
-paramiko.sftp_handle.SFTP_OP_UNSUPPORTED
-paramiko.sftp_server.SFTP_OP_UNSUPPORTED
-paramiko.sftp_si.SFTP_OP_UNSUPPORTED" class="py-name" href="#" onclick="return doclink('link-9', 'SFTP_OP_UNSUPPORTED', 'link-6');">SFTP_OP_UNSUPPORTED</a></tt> </tt>
-</div><a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> </tt>
-<a name="SFTPServerInterface.remove"></a><div id="SFTPServerInterface.remove-def"><a name="L175"></a><tt class="py-lineno">175</tt> <a class="py-toggle" href="#" id="SFTPServerInterface.remove-toggle" onclick="return toggle('SFTPServerInterface.remove');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_si.SFTPServerInterface-class.html#remove">remove</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">path</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPServerInterface.remove-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPServerInterface.remove-expanded"><a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"><tt class="py-docstring"> Delete a file, if possible.</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"><tt class="py-docstring"> @param path: the requested path (relative or absolute) of the file</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"><tt class="py-docstring"> to delete.</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"><tt class="py-docstring"> @type path: str</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"><tt class="py-docstring"> @return: an SFTP error code like L{SFTP_OK}.</tt> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: int</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-10" class="py-name"><a title="paramiko.sftp.SFTP_OP_UNSUPPORTED
-paramiko.sftp_attr.SFTP_OP_UNSUPPORTED
-paramiko.sftp_client.SFTP_OP_UNSUPPORTED
-paramiko.sftp_file.SFTP_OP_UNSUPPORTED
-paramiko.sftp_handle.SFTP_OP_UNSUPPORTED
-paramiko.sftp_server.SFTP_OP_UNSUPPORTED
-paramiko.sftp_si.SFTP_OP_UNSUPPORTED" class="py-name" href="#" onclick="return doclink('link-10', 'SFTP_OP_UNSUPPORTED', 'link-6');">SFTP_OP_UNSUPPORTED</a></tt> </tt>
-</div><a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"> </tt>
-<a name="SFTPServerInterface.rename"></a><div id="SFTPServerInterface.rename-def"><a name="L187"></a><tt class="py-lineno">187</tt> <a class="py-toggle" href="#" id="SFTPServerInterface.rename-toggle" onclick="return toggle('SFTPServerInterface.rename');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_si.SFTPServerInterface-class.html#rename">rename</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">oldpath</tt><tt class="py-op">,</tt> <tt class="py-param">newpath</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPServerInterface.rename-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPServerInterface.rename-expanded"><a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"><tt class="py-docstring"> Rename (or move) a file. The SFTP specification implies that this</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"><tt class="py-docstring"> method can be used to move an existing file into a different folder,</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"><tt class="py-docstring"> and since there's no other (easy) way to move files via SFTP, it's</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"><tt class="py-docstring"> probably a good idea to implement "move" in this method too, even for</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"><tt class="py-docstring"> files that cross disk partition boundaries, if at all possible.</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"><tt class="py-docstring"> @note: You should return an error if a file with the same name as</tt> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"><tt class="py-docstring"> C{newpath} already exists. (The rename operation should be</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"><tt class="py-docstring"> non-desctructive.)</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"><tt class="py-docstring"> @param oldpath: the requested path (relative or absolute) of the</tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"><tt class="py-docstring"> existing file.</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"><tt class="py-docstring"> @type oldpath: str</tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"><tt class="py-docstring"> @param newpath: the requested new path of the file.</tt> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"><tt class="py-docstring"> @type newpath: str</tt> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt> <tt class="py-line"><tt class="py-docstring"> @return: an SFTP error code like L{SFTP_OK}.</tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: int</tt> </tt>
-<a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-11" class="py-name"><a title="paramiko.sftp.SFTP_OP_UNSUPPORTED
-paramiko.sftp_attr.SFTP_OP_UNSUPPORTED
-paramiko.sftp_client.SFTP_OP_UNSUPPORTED
-paramiko.sftp_file.SFTP_OP_UNSUPPORTED
-paramiko.sftp_handle.SFTP_OP_UNSUPPORTED
-paramiko.sftp_server.SFTP_OP_UNSUPPORTED
-paramiko.sftp_si.SFTP_OP_UNSUPPORTED" class="py-name" href="#" onclick="return doclink('link-11', 'SFTP_OP_UNSUPPORTED', 'link-6');">SFTP_OP_UNSUPPORTED</a></tt> </tt>
-</div><a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"> </tt>
-<a name="SFTPServerInterface.mkdir"></a><div id="SFTPServerInterface.mkdir-def"><a name="L209"></a><tt class="py-lineno">209</tt> <a class="py-toggle" href="#" id="SFTPServerInterface.mkdir-toggle" onclick="return toggle('SFTPServerInterface.mkdir');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_si.SFTPServerInterface-class.html#mkdir">mkdir</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">path</tt><tt class="py-op">,</tt> <tt class="py-param">attr</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPServerInterface.mkdir-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPServerInterface.mkdir-expanded"><a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"><tt class="py-docstring"> Create a new directory with the given attributes. The C{attr}</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt> <tt class="py-line"><tt class="py-docstring"> object may be considered a "hint" and ignored.</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"><tt class="py-docstring"> The C{attr} object will contain only those fields provided by the</tt> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"><tt class="py-docstring"> client in its request, so you should use C{hasattr} to check for</tt> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"><tt class="py-docstring"> the presense of fields before using them. In some cases, the C{attr}</tt> </tt>
-<a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"><tt class="py-docstring"> object may be completely empty.</tt> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"><tt class="py-docstring"> @param path: requested path (relative or absolute) of the new</tt> </tt>
-<a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"><tt class="py-docstring"> folder.</tt> </tt>
-<a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"><tt class="py-docstring"> @type path: str</tt> </tt>
-<a name="L222"></a><tt class="py-lineno">222</tt> <tt class="py-line"><tt class="py-docstring"> @param attr: requested attributes of the new folder.</tt> </tt>
-<a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"><tt class="py-docstring"> @type attr: L{SFTPAttributes}</tt> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"><tt class="py-docstring"> @return: an SFTP error code like L{SFTP_OK}.</tt> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: int</tt> </tt>
-<a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-12" class="py-name"><a title="paramiko.sftp.SFTP_OP_UNSUPPORTED
-paramiko.sftp_attr.SFTP_OP_UNSUPPORTED
-paramiko.sftp_client.SFTP_OP_UNSUPPORTED
-paramiko.sftp_file.SFTP_OP_UNSUPPORTED
-paramiko.sftp_handle.SFTP_OP_UNSUPPORTED
-paramiko.sftp_server.SFTP_OP_UNSUPPORTED
-paramiko.sftp_si.SFTP_OP_UNSUPPORTED" class="py-name" href="#" onclick="return doclink('link-12', 'SFTP_OP_UNSUPPORTED', 'link-6');">SFTP_OP_UNSUPPORTED</a></tt> </tt>
-</div><a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"> </tt>
-<a name="SFTPServerInterface.rmdir"></a><div id="SFTPServerInterface.rmdir-def"><a name="L229"></a><tt class="py-lineno">229</tt> <a class="py-toggle" href="#" id="SFTPServerInterface.rmdir-toggle" onclick="return toggle('SFTPServerInterface.rmdir');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_si.SFTPServerInterface-class.html#rmdir">rmdir</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">path</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPServerInterface.rmdir-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPServerInterface.rmdir-expanded"><a name="L230"></a><tt class="py-lineno">230</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"><tt class="py-docstring"> Remove a directory if it exists. The C{path} should refer to an</tt> </tt>
-<a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"><tt class="py-docstring"> existing, empty folder -- otherwise this method should return an</tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"><tt class="py-docstring"> error.</tt> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L235"></a><tt class="py-lineno">235</tt> <tt class="py-line"><tt class="py-docstring"> @param path: requested path (relative or absolute) of the folder</tt> </tt>
-<a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"><tt class="py-docstring"> to remove.</tt> </tt>
-<a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"><tt class="py-docstring"> @type path: str</tt> </tt>
-<a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"><tt class="py-docstring"> @return: an SFTP error code like L{SFTP_OK}.</tt> </tt>
-<a name="L239"></a><tt class="py-lineno">239</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: int</tt> </tt>
-<a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-13" class="py-name"><a title="paramiko.sftp.SFTP_OP_UNSUPPORTED
-paramiko.sftp_attr.SFTP_OP_UNSUPPORTED
-paramiko.sftp_client.SFTP_OP_UNSUPPORTED
-paramiko.sftp_file.SFTP_OP_UNSUPPORTED
-paramiko.sftp_handle.SFTP_OP_UNSUPPORTED
-paramiko.sftp_server.SFTP_OP_UNSUPPORTED
-paramiko.sftp_si.SFTP_OP_UNSUPPORTED" class="py-name" href="#" onclick="return doclink('link-13', 'SFTP_OP_UNSUPPORTED', 'link-6');">SFTP_OP_UNSUPPORTED</a></tt> </tt>
-</div><a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"> </tt>
-<a name="SFTPServerInterface.chattr"></a><div id="SFTPServerInterface.chattr-def"><a name="L243"></a><tt class="py-lineno">243</tt> <a class="py-toggle" href="#" id="SFTPServerInterface.chattr-toggle" onclick="return toggle('SFTPServerInterface.chattr');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_si.SFTPServerInterface-class.html#chattr">chattr</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">path</tt><tt class="py-op">,</tt> <tt class="py-param">attr</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPServerInterface.chattr-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPServerInterface.chattr-expanded"><a name="L244"></a><tt class="py-lineno">244</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L245"></a><tt class="py-lineno">245</tt> <tt class="py-line"><tt class="py-docstring"> Change the attributes of a file. The C{attr} object will contain</tt> </tt>
-<a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"><tt class="py-docstring"> only those fields provided by the client in its request, so you</tt> </tt>
-<a name="L247"></a><tt class="py-lineno">247</tt> <tt class="py-line"><tt class="py-docstring"> should check for the presence of fields before using them.</tt> </tt>
-<a name="L248"></a><tt class="py-lineno">248</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L249"></a><tt class="py-lineno">249</tt> <tt class="py-line"><tt class="py-docstring"> @param path: requested path (relative or absolute) of the file to</tt> </tt>
-<a name="L250"></a><tt class="py-lineno">250</tt> <tt class="py-line"><tt class="py-docstring"> change.</tt> </tt>
-<a name="L251"></a><tt class="py-lineno">251</tt> <tt class="py-line"><tt class="py-docstring"> @type path: str</tt> </tt>
-<a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"><tt class="py-docstring"> @param attr: requested attributes to change on the file.</tt> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt> <tt class="py-line"><tt class="py-docstring"> @type attr: L{SFTPAttributes}</tt> </tt>
-<a name="L254"></a><tt class="py-lineno">254</tt> <tt class="py-line"><tt class="py-docstring"> @return: an error code like L{SFTP_OK}.</tt> </tt>
-<a name="L255"></a><tt class="py-lineno">255</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: int</tt> </tt>
-<a name="L256"></a><tt class="py-lineno">256</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L257"></a><tt class="py-lineno">257</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-14" class="py-name"><a title="paramiko.sftp.SFTP_OP_UNSUPPORTED
-paramiko.sftp_attr.SFTP_OP_UNSUPPORTED
-paramiko.sftp_client.SFTP_OP_UNSUPPORTED
-paramiko.sftp_file.SFTP_OP_UNSUPPORTED
-paramiko.sftp_handle.SFTP_OP_UNSUPPORTED
-paramiko.sftp_server.SFTP_OP_UNSUPPORTED
-paramiko.sftp_si.SFTP_OP_UNSUPPORTED" class="py-name" href="#" onclick="return doclink('link-14', 'SFTP_OP_UNSUPPORTED', 'link-6');">SFTP_OP_UNSUPPORTED</a></tt> </tt>
-</div><a name="L258"></a><tt class="py-lineno">258</tt> <tt class="py-line"> </tt>
-<a name="SFTPServerInterface.canonicalize"></a><div id="SFTPServerInterface.canonicalize-def"><a name="L259"></a><tt class="py-lineno">259</tt> <a class="py-toggle" href="#" id="SFTPServerInterface.canonicalize-toggle" onclick="return toggle('SFTPServerInterface.canonicalize');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_si.SFTPServerInterface-class.html#canonicalize">canonicalize</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">path</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPServerInterface.canonicalize-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPServerInterface.canonicalize-expanded"><a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt> <tt class="py-line"><tt class="py-docstring"> Return the canonical form of a path on the server. For example,</tt> </tt>
-<a name="L262"></a><tt class="py-lineno">262</tt> <tt class="py-line"><tt class="py-docstring"> if the server's home folder is C{/home/foo}, the path</tt> </tt>
-<a name="L263"></a><tt class="py-lineno">263</tt> <tt class="py-line"><tt class="py-docstring"> C{"../betty"} would be canonicalized to C{"/home/betty"}. Note</tt> </tt>
-<a name="L264"></a><tt class="py-lineno">264</tt> <tt class="py-line"><tt class="py-docstring"> the obvious security issues: if you're serving files only from a</tt> </tt>
-<a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"><tt class="py-docstring"> specific folder, you probably don't want this method to reveal path</tt> </tt>
-<a name="L266"></a><tt class="py-lineno">266</tt> <tt class="py-line"><tt class="py-docstring"> names outside that folder.</tt> </tt>
-<a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L268"></a><tt class="py-lineno">268</tt> <tt class="py-line"><tt class="py-docstring"> You may find the python methods in C{os.path} useful, especially</tt> </tt>
-<a name="L269"></a><tt class="py-lineno">269</tt> <tt class="py-line"><tt class="py-docstring"> C{os.path.normpath} and C{os.path.realpath}.</tt> </tt>
-<a name="L270"></a><tt class="py-lineno">270</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L271"></a><tt class="py-lineno">271</tt> <tt class="py-line"><tt class="py-docstring"> The default implementation returns C{os.path.normpath('/' + path)}.</tt> </tt>
-<a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L273"></a><tt class="py-lineno">273</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">path</tt><tt class="py-op">.</tt><tt class="py-name">isabs</tt><tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L274"></a><tt class="py-lineno">274</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">path</tt><tt class="py-op">.</tt><tt class="py-name">normpath</tt><tt class="py-op">(</tt><tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-<a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L276"></a><tt class="py-lineno">276</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">path</tt><tt class="py-op">.</tt><tt class="py-name">normpath</tt><tt class="py-op">(</tt><tt class="py-string">'/'</tt> <tt class="py-op">+</tt> <tt class="py-name">path</tt><tt class="py-op">)</tt> </tt>
-<a name="L277"></a><tt class="py-lineno">277</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">sys</tt><tt class="py-op">.</tt><tt class="py-name">platform</tt> <tt class="py-op">==</tt> <tt class="py-string">'win32'</tt><tt class="py-op">:</tt> </tt>
-<a name="L278"></a><tt class="py-lineno">278</tt> <tt class="py-line"> <tt class="py-comment"># on windows, normalize backslashes to sftp/posix format</tt> </tt>
-<a name="L279"></a><tt class="py-lineno">279</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt class="py-name">out</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">'\\'</tt><tt class="py-op">,</tt> <tt class="py-string">'/'</tt><tt class="py-op">)</tt> </tt>
-<a name="L280"></a><tt class="py-lineno">280</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">out</tt> </tt>
-</div><a name="L281"></a><tt class="py-lineno">281</tt> <tt class="py-line"> </tt>
-<a name="SFTPServerInterface.readlink"></a><div id="SFTPServerInterface.readlink-def"><a name="L282"></a><tt class="py-lineno">282</tt> <a class="py-toggle" href="#" id="SFTPServerInterface.readlink-toggle" onclick="return toggle('SFTPServerInterface.readlink');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_si.SFTPServerInterface-class.html#readlink">readlink</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">path</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPServerInterface.readlink-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPServerInterface.readlink-expanded"><a name="L283"></a><tt class="py-lineno">283</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L284"></a><tt class="py-lineno">284</tt> <tt class="py-line"><tt class="py-docstring"> Return the target of a symbolic link (or shortcut) on the server.</tt> </tt>
-<a name="L285"></a><tt class="py-lineno">285</tt> <tt class="py-line"><tt class="py-docstring"> If the specified path doesn't refer to a symbolic link, an error</tt> </tt>
-<a name="L286"></a><tt class="py-lineno">286</tt> <tt class="py-line"><tt class="py-docstring"> should be returned.</tt> </tt>
-<a name="L287"></a><tt class="py-lineno">287</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L288"></a><tt class="py-lineno">288</tt> <tt class="py-line"><tt class="py-docstring"> @param path: path (relative or absolute) of the symbolic link.</tt> </tt>
-<a name="L289"></a><tt class="py-lineno">289</tt> <tt class="py-line"><tt class="py-docstring"> @type path: str</tt> </tt>
-<a name="L290"></a><tt class="py-lineno">290</tt> <tt class="py-line"><tt class="py-docstring"> @return: the target path of the symbolic link, or an error code like</tt> </tt>
-<a name="L291"></a><tt class="py-lineno">291</tt> <tt class="py-line"><tt class="py-docstring"> L{SFTP_NO_SUCH_FILE}.</tt> </tt>
-<a name="L292"></a><tt class="py-lineno">292</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: str I{or error code}</tt> </tt>
-<a name="L293"></a><tt class="py-lineno">293</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L294"></a><tt class="py-lineno">294</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-15" class="py-name"><a title="paramiko.sftp.SFTP_OP_UNSUPPORTED
-paramiko.sftp_attr.SFTP_OP_UNSUPPORTED
-paramiko.sftp_client.SFTP_OP_UNSUPPORTED
-paramiko.sftp_file.SFTP_OP_UNSUPPORTED
-paramiko.sftp_handle.SFTP_OP_UNSUPPORTED
-paramiko.sftp_server.SFTP_OP_UNSUPPORTED
-paramiko.sftp_si.SFTP_OP_UNSUPPORTED" class="py-name" href="#" onclick="return doclink('link-15', 'SFTP_OP_UNSUPPORTED', 'link-6');">SFTP_OP_UNSUPPORTED</a></tt> </tt>
-</div><a name="L295"></a><tt class="py-lineno">295</tt> <tt class="py-line"> </tt>
-<a name="SFTPServerInterface.symlink"></a><div id="SFTPServerInterface.symlink-def"><a name="L296"></a><tt class="py-lineno">296</tt> <a class="py-toggle" href="#" id="SFTPServerInterface.symlink-toggle" onclick="return toggle('SFTPServerInterface.symlink');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.sftp_si.SFTPServerInterface-class.html#symlink">symlink</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">target_path</tt><tt class="py-op">,</tt> <tt class="py-param">path</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SFTPServerInterface.symlink-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="SFTPServerInterface.symlink-expanded"><a name="L297"></a><tt class="py-lineno">297</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L298"></a><tt class="py-lineno">298</tt> <tt class="py-line"><tt class="py-docstring"> Create a symbolic link on the server, as new pathname C{path},</tt> </tt>
-<a name="L299"></a><tt class="py-lineno">299</tt> <tt class="py-line"><tt class="py-docstring"> with C{target_path} as the target of the link.</tt> </tt>
-<a name="L300"></a><tt class="py-lineno">300</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L301"></a><tt class="py-lineno">301</tt> <tt class="py-line"><tt class="py-docstring"> @param target_path: path (relative or absolute) of the target for</tt> </tt>
-<a name="L302"></a><tt class="py-lineno">302</tt> <tt class="py-line"><tt class="py-docstring"> this new symbolic link.</tt> </tt>
-<a name="L303"></a><tt class="py-lineno">303</tt> <tt class="py-line"><tt class="py-docstring"> @type target_path: str</tt> </tt>
-<a name="L304"></a><tt class="py-lineno">304</tt> <tt class="py-line"><tt class="py-docstring"> @param path: path (relative or absolute) of the symbolic link to</tt> </tt>
-<a name="L305"></a><tt class="py-lineno">305</tt> <tt class="py-line"><tt class="py-docstring"> create.</tt> </tt>
-<a name="L306"></a><tt class="py-lineno">306</tt> <tt class="py-line"><tt class="py-docstring"> @type path: str</tt> </tt>
-<a name="L307"></a><tt class="py-lineno">307</tt> <tt class="py-line"><tt class="py-docstring"> @return: an error code like C{SFTP_OK}.</tt> </tt>
-<a name="L308"></a><tt class="py-lineno">308</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: int</tt> </tt>
-<a name="L309"></a><tt class="py-lineno">309</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L310"></a><tt class="py-lineno">310</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-16" class="py-name"><a title="paramiko.sftp.SFTP_OP_UNSUPPORTED
-paramiko.sftp_attr.SFTP_OP_UNSUPPORTED
-paramiko.sftp_client.SFTP_OP_UNSUPPORTED
-paramiko.sftp_file.SFTP_OP_UNSUPPORTED
-paramiko.sftp_handle.SFTP_OP_UNSUPPORTED
-paramiko.sftp_server.SFTP_OP_UNSUPPORTED
-paramiko.sftp_si.SFTP_OP_UNSUPPORTED" class="py-name" href="#" onclick="return doclink('link-16', 'SFTP_OP_UNSUPPORTED', 'link-6');">SFTP_OP_UNSUPPORTED</a></tt> </tt>
-</div></div><a name="L311"></a><tt class="py-lineno">311</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:07 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.ssh_exception-module.html b/docs/paramiko.ssh_exception-module.html
deleted file mode 100644
index 94b99c1..0000000
--- a/docs/paramiko.ssh_exception-module.html
+++ /dev/null
@@ -1,137 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.ssh_exception</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;ssh_exception
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.ssh_exception-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module ssh_exception</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.ssh_exception-pysrc.html">source&nbsp;code</a></span></p>
-<p>Exceptions defined by paramiko.</p>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Classes</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.ssh_exception.PartialAuthentication-class.html" class="summary-name">PartialAuthentication</a><br />
- An internal exception thrown in the case of partial authentication.
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="None">None</code>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.ssh_exception-pysrc.html b/docs/paramiko.ssh_exception-pysrc.html
deleted file mode 100644
index 1fe0c05..0000000
--- a/docs/paramiko.ssh_exception-pysrc.html
+++ /dev/null
@@ -1,403 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.ssh_exception</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;ssh_exception
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.ssh_exception-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.ssh_exception-module.html" onclick="show_private();">Module paramiko.ssh_exception</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2003-2007 Robey Pointer &lt;robeypointer@gmail.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring">Exceptions defined by paramiko.</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"> </tt>
-<a name="SSHException"></a><div id="SSHException-def"><a name="L24"></a><tt class="py-lineno"> 24</tt> <a class="py-toggle" href="#" id="SSHException-toggle" onclick="return toggle('SSHException');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.ssh_exception.SSHException-class.html">SSHException</a> <tt class="py-op">(</tt><tt class="py-base-class">Exception</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SSHException-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="SSHException-expanded"><a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-docstring"> Exception raised by failures in SSH2 protocol negotiation or logic errors.</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-</div><a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"> </tt>
-<a name="AuthenticationException"></a><div id="AuthenticationException-def"><a name="L31"></a><tt class="py-lineno"> 31</tt> <a class="py-toggle" href="#" id="AuthenticationException-toggle" onclick="return toggle('AuthenticationException');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.ssh_exception.AuthenticationException-class.html">AuthenticationException</a> <tt class="py-op">(</tt><tt class="py-base-class">SSHException</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="AuthenticationException-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="AuthenticationException-expanded"><a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"><tt class="py-docstring"> Exception raised when authentication failed for some reason. It may be</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"><tt class="py-docstring"> possible to retry with different credentials. (Other classes specify more</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"><tt class="py-docstring"> specific reasons.)</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.6</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-</div><a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> </tt>
-<a name="PasswordRequiredException"></a><div id="PasswordRequiredException-def"><a name="L42"></a><tt class="py-lineno"> 42</tt> <a class="py-toggle" href="#" id="PasswordRequiredException-toggle" onclick="return toggle('PasswordRequiredException');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.ssh_exception.PasswordRequiredException-class.html">PasswordRequiredException</a> <tt class="py-op">(</tt><tt class="py-base-class">AuthenticationException</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PasswordRequiredException-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="PasswordRequiredException-expanded"><a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"><tt class="py-docstring"> Exception raised when a password is needed to unlock a private key file.</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-</div><a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"> </tt>
-<a name="BadAuthenticationType"></a><div id="BadAuthenticationType-def"><a name="L49"></a><tt class="py-lineno"> 49</tt> <a class="py-toggle" href="#" id="BadAuthenticationType-toggle" onclick="return toggle('BadAuthenticationType');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.ssh_exception.BadAuthenticationType-class.html">BadAuthenticationType</a> <tt class="py-op">(</tt><tt class="py-base-class">AuthenticationException</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BadAuthenticationType-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="BadAuthenticationType-expanded"><a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"><tt class="py-docstring"> Exception raised when an authentication type (like password) is used, but</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"><tt class="py-docstring"> the server isn't allowing that type. (It may only allow public-key, for</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"><tt class="py-docstring"> example.)</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"><tt class="py-docstring"> @ivar allowed_types: list of allowed authentication types provided by the</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"><tt class="py-docstring"> server (possible values are: C{"none"}, C{"password"}, and</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"><tt class="py-docstring"> C{"publickey"}).</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"><tt class="py-docstring"> @type allowed_types: list</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.1</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt id="link-0" class="py-name" targets="Variable paramiko.BadAuthenticationType.allowed_types=paramiko.BadAuthenticationType-class.html#allowed_types,Variable paramiko.ssh_exception.PartialAuthentication.allowed_types=paramiko.ssh_exception.PartialAuthentication-class.html#allowed_types"><a title="paramiko.BadAuthenticationType.allowed_types
-paramiko.ssh_exception.PartialAuthentication.allowed_types" class="py-name" href="#" onclick="return doclink('link-0', 'allowed_types', 'link-0');">allowed_types</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> </tt>
-<a name="BadAuthenticationType.__init__"></a><div id="BadAuthenticationType.__init__-def"><a name="L64"></a><tt class="py-lineno"> 64</tt> <a class="py-toggle" href="#" id="BadAuthenticationType.__init__-toggle" onclick="return toggle('BadAuthenticationType.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.ssh_exception.BadAuthenticationType-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">explanation</tt><tt class="py-op">,</tt> <tt class="py-param">types</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BadAuthenticationType.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BadAuthenticationType.__init__-expanded"><a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> <tt id="link-1" class="py-name" targets="Class paramiko.AuthenticationException=paramiko.AuthenticationException-class.html"><a title="paramiko.AuthenticationException" class="py-name" href="#" onclick="return doclink('link-1', 'AuthenticationException', 'link-1');">AuthenticationException</a></tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Method paramiko.Agent.__init__()=paramiko.Agent-class.html#__init__,Method paramiko.AgentKey.__init__()=paramiko.AgentKey-class.html#__init__,Method paramiko.BadAuthenticationType.__init__()=paramiko.BadAuthenticationType-class.html#__init__,Method paramiko.BadHostKeyException.__init__()=paramiko.BadHostKeyException-class.html#__init__,Method paramiko.BufferedFile.__init__()=paramiko.BufferedFile-class.html#__init__,Method paramiko.Channel.__init__()=paramiko.Channel-class.html#__init__,Method paramiko.ChannelException.__init__()=paramiko.ChannelException-class.html#__init__,Method paramiko.DSSKey.__init__()=paramiko.DSSKey-class.html#__init__,Method paramiko.HostKeys.__init__()=paramiko.HostKeys-class.html#__init__,Method paramiko.Message.__init__()=paramiko.Message-class.html#__init__,Method paramiko.PKey.__init__()=paramiko.PKey-class.html#__init__,Method paramiko.RSAKey.__init__()=paramiko.RSAKey-class.html#__init__,Method paramiko.SFTPAttributes.__init__()=paramiko.SFTPAttributes-class.html#__init__,Method paramiko.SFTPClient.__init__()=paramiko.SFTPClient-class.html#__init__,Method paramiko.SFTPFile.__init__()=paramiko.SFTPFile-class.html#__init__,Method paramiko.SFTPHandle.__init__()=paramiko.SFTPHandle-class.html#__init__,Method paramiko.SFTPServer.__init__()=paramiko.SFTPServer-class.html#__init__,Method paramiko.SFTPServerInterface.__init__()=paramiko.SFTPServerInterface-class.html#__init__,Method paramiko.SSHClient.__init__()=paramiko.SSHClient-class.html#__init__,Method paramiko.SSHConfig.__init__()=paramiko.SSHConfig-class.html#__init__,Method paramiko.SecurityOptions.__init__()=paramiko.SecurityOptions-class.html#__init__,Method paramiko.SubsystemHandler.__init__()=paramiko.SubsystemHandler-class.html#__init__,Method paramiko.Transport.__init__()=paramiko.Transport-class.html#__init__,Method paramiko.ber.BER.__init__()=paramiko.ber.BER-class.html#__init__,Method paramiko.buffered_pipe.BufferedPipe.__init__()=paramiko.buffered_pipe.BufferedPipe-class.html#__init__,Method paramiko.channel.ChannelStderrFile.__init__()=paramiko.channel.ChannelStderrFile-class.html#__init__,Method paramiko.compress.ZlibCompressor.__init__()=paramiko.compress.ZlibCompressor-class.html#__init__,Method paramiko.compress.ZlibDecompressor.__init__()=paramiko.compress.ZlibDecompressor-class.html#__init__,Method paramiko.hostkeys.HostKeyEntry.__init__()=paramiko.hostkeys.HostKeyEntry-class.html#__init__,Method paramiko.kex_gex.KexGex.__init__()=paramiko.kex_gex.KexGex-class.html#__init__,Method paramiko.kex_group1.KexGroup1.__init__()=paramiko.kex_group1.KexGroup1-class.html#__init__,Method paramiko.logging22.Formatter.__init__()=paramiko.logging22.Formatter-class.html#__init__,Method paramiko.logging22.StreamHandler.__init__()=paramiko.logging22.StreamHandler-class.html#__init__,Method paramiko.logging22.logger.__init__()=paramiko.logging22.logger-class.html#__init__,Method paramiko.pipe.OrPipe.__init__()=paramiko.pipe.OrPipe-class.html#__init__,Method paramiko.pipe.PosixPipe.__init__()=paramiko.pipe.PosixPipe-class.html#__init__,Method paramiko.pipe.WindowsPipe.__init__()=paramiko.pipe.WindowsPipe-class.html#__init__,Method paramiko.primes.ModulusPack.__init__()=paramiko.primes.ModulusPack-class.html#__init__,Method paramiko.ssh_exception.PartialAuthentication.__init__()=paramiko.ssh_exception.PartialAuthentication-class.html#__init__,Method paramiko.transport.ChannelMap.__init__()=paramiko.transport.ChannelMap-class.html#__init__,Method paramiko.util.Counter.__init__()=paramiko.util.Counter-class.html#__init__,Method paramiko.util.enumerate.__init__()=paramiko.util.enumerate-class.html#__init__,Method paramiko.win_pageant.PageantConnection.__init__()=paramiko.win_pageant.PageantConnection-class.html#__init__"><a title="paramiko.Agent.__init__
-paramiko.AgentKey.__init__
-paramiko.BadAuthenticationType.__init__
-paramiko.BadHostKeyException.__init__
-paramiko.BufferedFile.__init__
-paramiko.Channel.__init__
-paramiko.ChannelException.__init__
-paramiko.DSSKey.__init__
-paramiko.HostKeys.__init__
-paramiko.Message.__init__
-paramiko.PKey.__init__
-paramiko.RSAKey.__init__
-paramiko.SFTPAttributes.__init__
-paramiko.SFTPClient.__init__
-paramiko.SFTPFile.__init__
-paramiko.SFTPHandle.__init__
-paramiko.SFTPServer.__init__
-paramiko.SFTPServerInterface.__init__
-paramiko.SSHClient.__init__
-paramiko.SSHConfig.__init__
-paramiko.SecurityOptions.__init__
-paramiko.SubsystemHandler.__init__
-paramiko.Transport.__init__
-paramiko.ber.BER.__init__
-paramiko.buffered_pipe.BufferedPipe.__init__
-paramiko.channel.ChannelStderrFile.__init__
-paramiko.compress.ZlibCompressor.__init__
-paramiko.compress.ZlibDecompressor.__init__
-paramiko.hostkeys.HostKeyEntry.__init__
-paramiko.kex_gex.KexGex.__init__
-paramiko.kex_group1.KexGroup1.__init__
-paramiko.logging22.Formatter.__init__
-paramiko.logging22.StreamHandler.__init__
-paramiko.logging22.logger.__init__
-paramiko.pipe.OrPipe.__init__
-paramiko.pipe.PosixPipe.__init__
-paramiko.pipe.WindowsPipe.__init__
-paramiko.primes.ModulusPack.__init__
-paramiko.ssh_exception.PartialAuthentication.__init__
-paramiko.transport.ChannelMap.__init__
-paramiko.util.Counter.__init__
-paramiko.util.enumerate.__init__
-paramiko.win_pageant.PageantConnection.__init__" class="py-name" href="#" onclick="return doclink('link-2', '__init__', 'link-2');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-name">explanation</tt><tt class="py-op">)</tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name"><a title="paramiko.BadAuthenticationType.allowed_types
-paramiko.ssh_exception.PartialAuthentication.allowed_types" class="py-name" href="#" onclick="return doclink('link-3', 'allowed_types', 'link-0');">allowed_types</a></tt> <tt class="py-op">=</tt> <tt class="py-name">types</tt> </tt>
-</div><a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> </tt>
-<a name="BadAuthenticationType.__str__"></a><div id="BadAuthenticationType.__str__-def"><a name="L68"></a><tt class="py-lineno"> 68</tt> <a class="py-toggle" href="#" id="BadAuthenticationType.__str__-toggle" onclick="return toggle('BadAuthenticationType.__str__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.ssh_exception.BadAuthenticationType-class.html#__str__">__str__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BadAuthenticationType.__str__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BadAuthenticationType.__str__-expanded"><a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-4" class="py-name" targets="Class paramiko.SSHException=paramiko.SSHException-class.html"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-4', 'SSHException', 'link-4');">SSHException</a></tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Method paramiko.AgentKey.__str__()=paramiko.AgentKey-class.html#__str__,Method paramiko.BadAuthenticationType.__str__()=paramiko.BadAuthenticationType-class.html#__str__,Method paramiko.DSSKey.__str__()=paramiko.DSSKey-class.html#__str__,Method paramiko.Message.__str__()=paramiko.Message-class.html#__str__,Method paramiko.PKey.__str__()=paramiko.PKey-class.html#__str__,Method paramiko.RSAKey.__str__()=paramiko.RSAKey-class.html#__str__,Method paramiko.SFTPAttributes.__str__()=paramiko.SFTPAttributes-class.html#__str__,Method paramiko.ber.BER.__str__()=paramiko.ber.BER-class.html#__str__"><a title="paramiko.AgentKey.__str__
-paramiko.BadAuthenticationType.__str__
-paramiko.DSSKey.__str__
-paramiko.Message.__str__
-paramiko.PKey.__str__
-paramiko.RSAKey.__str__
-paramiko.SFTPAttributes.__str__
-paramiko.ber.BER.__str__" class="py-name" href="#" onclick="return doclink('link-5', '__str__', 'link-5');">__str__</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">' (allowed_types=%r)'</tt> <tt class="py-op">%</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-6" class="py-name"><a title="paramiko.BadAuthenticationType.allowed_types
-paramiko.ssh_exception.PartialAuthentication.allowed_types" class="py-name" href="#" onclick="return doclink('link-6', 'allowed_types', 'link-0');">allowed_types</a></tt> </tt>
-</div></div><a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> </tt>
-<a name="PartialAuthentication"></a><div id="PartialAuthentication-def"><a name="L72"></a><tt class="py-lineno"> 72</tt> <a class="py-toggle" href="#" id="PartialAuthentication-toggle" onclick="return toggle('PartialAuthentication');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.ssh_exception.PartialAuthentication-class.html">PartialAuthentication</a> <tt class="py-op">(</tt><tt class="py-base-class">AuthenticationException</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PartialAuthentication-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="PartialAuthentication-expanded"><a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"><tt class="py-docstring"> An internal exception thrown in the case of partial authentication.</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt id="link-7" class="py-name"><a title="paramiko.BadAuthenticationType.allowed_types
-paramiko.ssh_exception.PartialAuthentication.allowed_types" class="py-name" href="#" onclick="return doclink('link-7', 'allowed_types', 'link-0');">allowed_types</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> </tt>
-<a name="PartialAuthentication.__init__"></a><div id="PartialAuthentication.__init__-def"><a name="L78"></a><tt class="py-lineno"> 78</tt> <a class="py-toggle" href="#" id="PartialAuthentication.__init__-toggle" onclick="return toggle('PartialAuthentication.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.ssh_exception.PartialAuthentication-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">types</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PartialAuthentication.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PartialAuthentication.__init__-expanded"><a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt id="link-8" class="py-name"><a title="paramiko.AuthenticationException" class="py-name" href="#" onclick="return doclink('link-8', 'AuthenticationException', 'link-1');">AuthenticationException</a></tt><tt class="py-op">.</tt><tt id="link-9" class="py-name"><a title="paramiko.Agent.__init__
-paramiko.AgentKey.__init__
-paramiko.BadAuthenticationType.__init__
-paramiko.BadHostKeyException.__init__
-paramiko.BufferedFile.__init__
-paramiko.Channel.__init__
-paramiko.ChannelException.__init__
-paramiko.DSSKey.__init__
-paramiko.HostKeys.__init__
-paramiko.Message.__init__
-paramiko.PKey.__init__
-paramiko.RSAKey.__init__
-paramiko.SFTPAttributes.__init__
-paramiko.SFTPClient.__init__
-paramiko.SFTPFile.__init__
-paramiko.SFTPHandle.__init__
-paramiko.SFTPServer.__init__
-paramiko.SFTPServerInterface.__init__
-paramiko.SSHClient.__init__
-paramiko.SSHConfig.__init__
-paramiko.SecurityOptions.__init__
-paramiko.SubsystemHandler.__init__
-paramiko.Transport.__init__
-paramiko.ber.BER.__init__
-paramiko.buffered_pipe.BufferedPipe.__init__
-paramiko.channel.ChannelStderrFile.__init__
-paramiko.compress.ZlibCompressor.__init__
-paramiko.compress.ZlibDecompressor.__init__
-paramiko.hostkeys.HostKeyEntry.__init__
-paramiko.kex_gex.KexGex.__init__
-paramiko.kex_group1.KexGroup1.__init__
-paramiko.logging22.Formatter.__init__
-paramiko.logging22.StreamHandler.__init__
-paramiko.logging22.logger.__init__
-paramiko.pipe.OrPipe.__init__
-paramiko.pipe.PosixPipe.__init__
-paramiko.pipe.WindowsPipe.__init__
-paramiko.primes.ModulusPack.__init__
-paramiko.ssh_exception.PartialAuthentication.__init__
-paramiko.transport.ChannelMap.__init__
-paramiko.util.Counter.__init__
-paramiko.util.enumerate.__init__
-paramiko.win_pageant.PageantConnection.__init__" class="py-name" href="#" onclick="return doclink('link-9', '__init__', 'link-2');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-string">'partial authentication'</tt><tt class="py-op">)</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="paramiko.BadAuthenticationType.allowed_types
-paramiko.ssh_exception.PartialAuthentication.allowed_types" class="py-name" href="#" onclick="return doclink('link-10', 'allowed_types', 'link-0');">allowed_types</a></tt> <tt class="py-op">=</tt> <tt class="py-name">types</tt> </tt>
-</div></div><a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> </tt>
-<a name="ChannelException"></a><div id="ChannelException-def"><a name="L83"></a><tt class="py-lineno"> 83</tt> <a class="py-toggle" href="#" id="ChannelException-toggle" onclick="return toggle('ChannelException');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.ssh_exception.ChannelException-class.html">ChannelException</a> <tt class="py-op">(</tt><tt class="py-base-class">SSHException</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ChannelException-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="ChannelException-expanded"><a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"><tt class="py-docstring"> Exception raised when an attempt to open a new L{Channel} fails.</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"><tt class="py-docstring"> @ivar code: the error code returned by the server</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"><tt class="py-docstring"> @type code: int</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.6</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="ChannelException.__init__"></a><div id="ChannelException.__init__-def"><a name="L92"></a><tt class="py-lineno"> 92</tt> <a class="py-toggle" href="#" id="ChannelException.__init__-toggle" onclick="return toggle('ChannelException.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.ssh_exception.ChannelException-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">code</tt><tt class="py-op">,</tt> <tt class="py-param">text</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ChannelException.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="ChannelException.__init__-expanded"><a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt id="link-11" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-11', 'SSHException', 'link-4');">SSHException</a></tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="paramiko.Agent.__init__
-paramiko.AgentKey.__init__
-paramiko.BadAuthenticationType.__init__
-paramiko.BadHostKeyException.__init__
-paramiko.BufferedFile.__init__
-paramiko.Channel.__init__
-paramiko.ChannelException.__init__
-paramiko.DSSKey.__init__
-paramiko.HostKeys.__init__
-paramiko.Message.__init__
-paramiko.PKey.__init__
-paramiko.RSAKey.__init__
-paramiko.SFTPAttributes.__init__
-paramiko.SFTPClient.__init__
-paramiko.SFTPFile.__init__
-paramiko.SFTPHandle.__init__
-paramiko.SFTPServer.__init__
-paramiko.SFTPServerInterface.__init__
-paramiko.SSHClient.__init__
-paramiko.SSHConfig.__init__
-paramiko.SecurityOptions.__init__
-paramiko.SubsystemHandler.__init__
-paramiko.Transport.__init__
-paramiko.ber.BER.__init__
-paramiko.buffered_pipe.BufferedPipe.__init__
-paramiko.channel.ChannelStderrFile.__init__
-paramiko.compress.ZlibCompressor.__init__
-paramiko.compress.ZlibDecompressor.__init__
-paramiko.hostkeys.HostKeyEntry.__init__
-paramiko.kex_gex.KexGex.__init__
-paramiko.kex_group1.KexGroup1.__init__
-paramiko.logging22.Formatter.__init__
-paramiko.logging22.StreamHandler.__init__
-paramiko.logging22.logger.__init__
-paramiko.pipe.OrPipe.__init__
-paramiko.pipe.PosixPipe.__init__
-paramiko.pipe.WindowsPipe.__init__
-paramiko.primes.ModulusPack.__init__
-paramiko.ssh_exception.PartialAuthentication.__init__
-paramiko.transport.ChannelMap.__init__
-paramiko.util.Counter.__init__
-paramiko.util.enumerate.__init__
-paramiko.win_pageant.PageantConnection.__init__" class="py-name" href="#" onclick="return doclink('link-12', '__init__', 'link-2');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-name">text</tt><tt class="py-op">)</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">code</tt> <tt class="py-op">=</tt> <tt class="py-name">code</tt> </tt>
-</div></div><a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> </tt>
-<a name="BadHostKeyException"></a><div id="BadHostKeyException-def"><a name="L97"></a><tt class="py-lineno"> 97</tt> <a class="py-toggle" href="#" id="BadHostKeyException-toggle" onclick="return toggle('BadHostKeyException');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.ssh_exception.BadHostKeyException-class.html">BadHostKeyException</a> <tt class="py-op">(</tt><tt class="py-base-class">SSHException</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BadHostKeyException-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="BadHostKeyException-expanded"><a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"><tt class="py-docstring"> The host key given by the SSH server did not match what we were expecting.</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"><tt class="py-docstring"> @ivar hostname: the hostname of the SSH server</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"><tt class="py-docstring"> @type hostname: str</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"><tt class="py-docstring"> @ivar key: the host key presented by the server</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"><tt class="py-docstring"> @type key: L{PKey}</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"><tt class="py-docstring"> @ivar expected_key: the host key expected</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"><tt class="py-docstring"> @type expected_key: L{PKey}</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"><tt class="py-docstring"> </tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.6</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="BadHostKeyException.__init__"></a><div id="BadHostKeyException.__init__-def"><a name="L110"></a><tt class="py-lineno">110</tt> <a class="py-toggle" href="#" id="BadHostKeyException.__init__-toggle" onclick="return toggle('BadHostKeyException.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.ssh_exception.BadHostKeyException-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">hostname</tt><tt class="py-op">,</tt> <tt class="py-param">got_key</tt><tt class="py-op">,</tt> <tt class="py-param">expected_key</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="BadHostKeyException.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="BadHostKeyException.__init__-expanded"><a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt id="link-13" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-13', 'SSHException', 'link-4');">SSHException</a></tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="paramiko.Agent.__init__
-paramiko.AgentKey.__init__
-paramiko.BadAuthenticationType.__init__
-paramiko.BadHostKeyException.__init__
-paramiko.BufferedFile.__init__
-paramiko.Channel.__init__
-paramiko.ChannelException.__init__
-paramiko.DSSKey.__init__
-paramiko.HostKeys.__init__
-paramiko.Message.__init__
-paramiko.PKey.__init__
-paramiko.RSAKey.__init__
-paramiko.SFTPAttributes.__init__
-paramiko.SFTPClient.__init__
-paramiko.SFTPFile.__init__
-paramiko.SFTPHandle.__init__
-paramiko.SFTPServer.__init__
-paramiko.SFTPServerInterface.__init__
-paramiko.SSHClient.__init__
-paramiko.SSHConfig.__init__
-paramiko.SecurityOptions.__init__
-paramiko.SubsystemHandler.__init__
-paramiko.Transport.__init__
-paramiko.ber.BER.__init__
-paramiko.buffered_pipe.BufferedPipe.__init__
-paramiko.channel.ChannelStderrFile.__init__
-paramiko.compress.ZlibCompressor.__init__
-paramiko.compress.ZlibDecompressor.__init__
-paramiko.hostkeys.HostKeyEntry.__init__
-paramiko.kex_gex.KexGex.__init__
-paramiko.kex_group1.KexGroup1.__init__
-paramiko.logging22.Formatter.__init__
-paramiko.logging22.StreamHandler.__init__
-paramiko.logging22.logger.__init__
-paramiko.pipe.OrPipe.__init__
-paramiko.pipe.PosixPipe.__init__
-paramiko.pipe.WindowsPipe.__init__
-paramiko.primes.ModulusPack.__init__
-paramiko.ssh_exception.PartialAuthentication.__init__
-paramiko.transport.ChannelMap.__init__
-paramiko.util.Counter.__init__
-paramiko.util.enumerate.__init__
-paramiko.win_pageant.PageantConnection.__init__" class="py-name" href="#" onclick="return doclink('link-14', '__init__', 'link-2');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-string">'Host key for server %s does not match!'</tt> <tt class="py-op">%</tt> <tt class="py-name">hostname</tt><tt class="py-op">)</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">hostname</tt> <tt class="py-op">=</tt> <tt class="py-name">hostname</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">key</tt> <tt class="py-op">=</tt> <tt class="py-name">got_key</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">expected_key</tt> <tt class="py-op">=</tt> <tt class="py-name">expected_key</tt> </tt>
-</div></div><a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:08 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.ssh_exception.PartialAuthentication-class.html b/docs/paramiko.ssh_exception.PartialAuthentication-class.html
deleted file mode 100644
index 91062e3..0000000
--- a/docs/paramiko.ssh_exception.PartialAuthentication-class.html
+++ /dev/null
@@ -1,246 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.ssh_exception.PartialAuthentication</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- <a href="paramiko.ssh_exception-module.html" onclick="show_private();">Module&nbsp;ssh_exception</a> ::
- Class&nbsp;PartialAuthentication
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.ssh_exception.PartialAuthentication-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class PartialAuthentication</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.ssh_exception-pysrc.html#PartialAuthentication">source&nbsp;code</a></span></p>
-<pre class="base-tree">
- object --+
- |
-exceptions.BaseException --+
- |
- exceptions.Exception --+
- |
- <a href="paramiko.SSHException-class.html">SSHException</a> --+
- |
- <a href="paramiko.AuthenticationException-class.html">AuthenticationException</a> --+
- |
- <strong class="uidshort">PartialAuthentication</strong>
-</pre>
-
-<hr />
-<p>An internal exception thrown in the case of partial
- authentication.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.ssh_exception.PartialAuthentication-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">types</span>)</span><br />
- x.__init__(...) initializes x; see x.__class__.__doc__ for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.ssh_exception-pysrc.html#PartialAuthentication.__init__">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.Exception</code></b>:
- <code>__new__</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.BaseException</code></b>:
- <code>__delattr__</code>,
- <code>__getattribute__</code>,
- <code>__getitem__</code>,
- <code>__getslice__</code>,
- <code>__reduce__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__setstate__</code>,
- <code>__str__</code>,
- <code>__unicode__</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__format__</code>,
- <code>__hash__</code>,
- <code>__reduce_ex__</code>,
- <code>__sizeof__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS VARIABLES ==================== -->
-<a name="section-ClassVariables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Class Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="allowed_types"></a><span class="summary-name">allowed_types</span> = <code title="[]"><code class="variable-group">[</code><code class="variable-group">]</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>exceptions.BaseException</code></b>:
- <code>args</code>,
- <code>message</code>
- </p>
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">types</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.ssh_exception-pysrc.html#PartialAuthentication.__init__">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see x.__class__.__doc__ for
- signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:04 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.transport-module.html b/docs/paramiko.transport-module.html
deleted file mode 100644
index 3bf3152..0000000
--- a/docs/paramiko.transport-module.html
+++ /dev/null
@@ -1,548 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.transport</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;transport
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.transport-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module transport</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.transport-pysrc.html">source&nbsp;code</a></span></p>
-<p><a href="paramiko.Transport-class.html" class="link">Transport</a>
- handles the core SSH2 protocol.</p>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Classes</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.transport.ChannelMap-class.html" class="summary-name">ChannelMap</a>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_FAILED"></a><span class="summary-name">AUTH_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_PARTIALLY_SUCCESSFUL"></a><span class="summary-name">AUTH_PARTIALLY_SUCCESSFUL</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_SUCCESSFUL"></a><span class="summary-name">AUTH_SUCCESSFUL</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.transport-module.html#CONNECTION_FAILED_CODE" class="summary-name">CONNECTION_FAILED_CODE</a> = <code title="{1: 'Administratively prohibited',
- 2: 'Connect failed',
- 3: 'Unknown channel type',
- 4: 'Resource shortage'}"><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">:</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CRITICAL"></a><span class="summary-name">CRITICAL</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DEBUG"></a><span class="summary-name">DEBUG</span> = <code title="10">10</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_AUTH_CANCELLED_BY_USER"></a><span class="summary-name">DISCONNECT_AUTH_CANCELLED_BY_USER</span> = <code title="13">13</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE"></a><span class="summary-name">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</span> = <code title="14">14</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_SERVICE_NOT_AVAILABLE"></a><span class="summary-name">DISCONNECT_SERVICE_NOT_AVAILABLE</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="ERROR"></a><span class="summary-name">ERROR</span> = <code title="40">40</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="INFO"></a><span class="summary-name">INFO</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_CLOSE"></a><span class="summary-name">MSG_CHANNEL_CLOSE</span> = <code title="97">97</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_DATA"></a><span class="summary-name">MSG_CHANNEL_DATA</span> = <code title="94">94</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EOF"></a><span class="summary-name">MSG_CHANNEL_EOF</span> = <code title="96">96</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EXTENDED_DATA"></a><span class="summary-name">MSG_CHANNEL_EXTENDED_DATA</span> = <code title="95">95</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_FAILURE"></a><span class="summary-name">MSG_CHANNEL_FAILURE</span> = <code title="100">100</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN"></a><span class="summary-name">MSG_CHANNEL_OPEN</span> = <code title="90">90</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_FAILURE"></a><span class="summary-name">MSG_CHANNEL_OPEN_FAILURE</span> = <code title="92">92</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_OPEN_SUCCESS</span> = <code title="91">91</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_REQUEST"></a><span class="summary-name">MSG_CHANNEL_REQUEST</span> = <code title="98">98</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_SUCCESS</span> = <code title="99">99</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_WINDOW_ADJUST"></a><span class="summary-name">MSG_CHANNEL_WINDOW_ADJUST</span> = <code title="93">93</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DEBUG"></a><span class="summary-name">MSG_DEBUG</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DISCONNECT"></a><span class="summary-name">MSG_DISCONNECT</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_GLOBAL_REQUEST"></a><span class="summary-name">MSG_GLOBAL_REQUEST</span> = <code title="80">80</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_IGNORE"></a><span class="summary-name">MSG_IGNORE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_KEXINIT"></a><span class="summary-name">MSG_KEXINIT</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.transport-module.html#MSG_NAMES" class="summary-name">MSG_NAMES</a> = <code title="{1: 'disconnect',
- 2: 'ignore',
- 3: 'unimplemented',
- 4: 'debug',
- 5: 'service-request',
- 6: 'service-accept',
- 20: 'kexinit',
- 21: 'newkeys',
-..."><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">, </code>3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_NEWKEYS"></a><span class="summary-name">MSG_NEWKEYS</span> = <code title="21">21</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_FAILURE"></a><span class="summary-name">MSG_REQUEST_FAILURE</span> = <code title="82">82</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_SUCCESS"></a><span class="summary-name">MSG_REQUEST_SUCCESS</span> = <code title="81">81</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_ACCEPT"></a><span class="summary-name">MSG_SERVICE_ACCEPT</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_REQUEST"></a><span class="summary-name">MSG_SERVICE_REQUEST</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_UNIMPLEMENTED"></a><span class="summary-name">MSG_UNIMPLEMENTED</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_BANNER"></a><span class="summary-name">MSG_USERAUTH_BANNER</span> = <code title="53">53</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_FAILURE"></a><span class="summary-name">MSG_USERAUTH_FAILURE</span> = <code title="51">51</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_REQUEST"></a><span class="summary-name">MSG_USERAUTH_INFO_REQUEST</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_RESPONSE"></a><span class="summary-name">MSG_USERAUTH_INFO_RESPONSE</span> = <code title="61">61</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_PK_OK"></a><span class="summary-name">MSG_USERAUTH_PK_OK</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_REQUEST"></a><span class="summary-name">MSG_USERAUTH_REQUEST</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_SUCCESS"></a><span class="summary-name">MSG_USERAUTH_SUCCESS</span> = <code title="52">52</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED"></a><span class="summary-name">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_CONNECT_FAILED"></a><span class="summary-name">OPEN_FAILED_CONNECT_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_RESOURCE_SHORTAGE"></a><span class="summary-name">OPEN_FAILED_RESOURCE_SHORTAGE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_UNKNOWN_CHANNEL_TYPE"></a><span class="summary-name">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_SUCCEEDED"></a><span class="summary-name">OPEN_SUCCEEDED</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="PY22"></a><span class="summary-name">PY22</span> = <code title="False">False</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="WARNING"></a><span class="summary-name">WARNING</span> = <code title="30">30</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'paramiko'"><code class="variable-quote">'</code><code class="variable-string">paramiko</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="rng"></a><span class="summary-name">rng</span> = <code title="Random.new()">Random.new()</code>
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES DETAILS ==================== -->
-<a name="section-VariablesDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables Details</span></td>
-</tr>
-</table>
-<a name="CONNECTION_FAILED_CODE"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">CONNECTION_FAILED_CODE</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Connect failed</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Unknown channel type</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Resource shortage</code><code class="variable-quote">'</code><code class="variable-group">}</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="MSG_NAMES"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">MSG_NAMES</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">debug</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 5<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-request</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 6<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-accept</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 20<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">kexinit</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 21<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">newkeys</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.transport-pysrc.html b/docs/paramiko.transport-pysrc.html
deleted file mode 100644
index de00079..0000000
--- a/docs/paramiko.transport-pysrc.html
+++ /dev/null
@@ -1,4153 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.transport</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;transport
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.transport-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.transport-module.html" onclick="show_private();">Module paramiko.transport</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2003-2007 Robey Pointer &lt;robeypointer@gmail.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring">L{Transport} handles the core SSH2 protocol.</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">socket</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">string</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">struct</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">threading</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">weakref</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package paramiko=paramiko-module.html"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-0', 'paramiko', 'link-0');">paramiko</a></tt> <tt class="py-keyword">import</tt> <tt id="link-1" class="py-name" targets="Module paramiko.util=paramiko.util-module.html"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-1', 'util', 'link-1');">util</a></tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-2" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-2', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Module paramiko.auth_handler=paramiko.auth_handler-module.html"><a title="paramiko.auth_handler" class="py-name" href="#" onclick="return doclink('link-3', 'auth_handler', 'link-3');">auth_handler</a></tt> <tt class="py-keyword">import</tt> <tt class="py-name">AuthHandler</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-4" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-4', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-5" class="py-name" targets="Module paramiko.channel=paramiko.channel-module.html"><a title="paramiko.channel" class="py-name" href="#" onclick="return doclink('link-5', 'channel', 'link-5');">channel</a></tt> <tt class="py-keyword">import</tt> <tt id="link-6" class="py-name" targets="Class paramiko.Channel=paramiko.Channel-class.html"><a title="paramiko.Channel" class="py-name" href="#" onclick="return doclink('link-6', 'Channel', 'link-6');">Channel</a></tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-7" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-7', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-8" class="py-name" targets="Module paramiko.common=paramiko.common-module.html"><a title="paramiko.common" class="py-name" href="#" onclick="return doclink('link-8', 'common', 'link-8');">common</a></tt> <tt class="py-keyword">import</tt> <tt class="py-op">*</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-9" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-9', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-10" class="py-name" targets="Module paramiko.compress=paramiko.compress-module.html"><a title="paramiko.compress" class="py-name" href="#" onclick="return doclink('link-10', 'compress', 'link-10');">compress</a></tt> <tt class="py-keyword">import</tt> <tt id="link-11" class="py-name" targets="Class paramiko.compress.ZlibCompressor=paramiko.compress.ZlibCompressor-class.html"><a title="paramiko.compress.ZlibCompressor" class="py-name" href="#" onclick="return doclink('link-11', 'ZlibCompressor', 'link-11');">ZlibCompressor</a></tt><tt class="py-op">,</tt> <tt id="link-12" class="py-name" targets="Class paramiko.compress.ZlibDecompressor=paramiko.compress.ZlibDecompressor-class.html"><a title="paramiko.compress.ZlibDecompressor" class="py-name" href="#" onclick="return doclink('link-12', 'ZlibDecompressor', 'link-12');">ZlibDecompressor</a></tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-13" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-13', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-14" class="py-name" targets="Module paramiko.dsskey=paramiko.dsskey-module.html"><a title="paramiko.dsskey" class="py-name" href="#" onclick="return doclink('link-14', 'dsskey', 'link-14');">dsskey</a></tt> <tt class="py-keyword">import</tt> <tt id="link-15" class="py-name" targets="Class paramiko.DSSKey=paramiko.DSSKey-class.html"><a title="paramiko.DSSKey" class="py-name" href="#" onclick="return doclink('link-15', 'DSSKey', 'link-15');">DSSKey</a></tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-16" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-16', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-17" class="py-name" targets="Module paramiko.kex_gex=paramiko.kex_gex-module.html"><a title="paramiko.kex_gex" class="py-name" href="#" onclick="return doclink('link-17', 'kex_gex', 'link-17');">kex_gex</a></tt> <tt class="py-keyword">import</tt> <tt id="link-18" class="py-name" targets="Class paramiko.kex_gex.KexGex=paramiko.kex_gex.KexGex-class.html"><a title="paramiko.kex_gex.KexGex" class="py-name" href="#" onclick="return doclink('link-18', 'KexGex', 'link-18');">KexGex</a></tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-19" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-19', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-20" class="py-name" targets="Module paramiko.kex_group1=paramiko.kex_group1-module.html"><a title="paramiko.kex_group1" class="py-name" href="#" onclick="return doclink('link-20', 'kex_group1', 'link-20');">kex_group1</a></tt> <tt class="py-keyword">import</tt> <tt id="link-21" class="py-name" targets="Class paramiko.kex_group1.KexGroup1=paramiko.kex_group1.KexGroup1-class.html"><a title="paramiko.kex_group1.KexGroup1" class="py-name" href="#" onclick="return doclink('link-21', 'KexGroup1', 'link-21');">KexGroup1</a></tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-22" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-22', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-23" class="py-name" targets="Module paramiko.message=paramiko.message-module.html"><a title="paramiko.message" class="py-name" href="#" onclick="return doclink('link-23', 'message', 'link-23');">message</a></tt> <tt class="py-keyword">import</tt> <tt id="link-24" class="py-name" targets="Class paramiko.Message=paramiko.Message-class.html"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-24', 'Message', 'link-24');">Message</a></tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-25" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-25', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-26" class="py-name" targets="Module paramiko.packet=paramiko.packet-module.html"><a title="paramiko.packet" class="py-name" href="#" onclick="return doclink('link-26', 'packet', 'link-26');">packet</a></tt> <tt class="py-keyword">import</tt> <tt class="py-name">Packetizer</tt><tt class="py-op">,</tt> <tt id="link-27" class="py-name" targets="Class paramiko.packet.NeedRekeyException=paramiko.packet.NeedRekeyException-class.html"><a title="paramiko.packet.NeedRekeyException" class="py-name" href="#" onclick="return doclink('link-27', 'NeedRekeyException', 'link-27');">NeedRekeyException</a></tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-28" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-28', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-29" class="py-name" targets="Module paramiko.primes=paramiko.primes-module.html"><a title="paramiko.primes" class="py-name" href="#" onclick="return doclink('link-29', 'primes', 'link-29');">primes</a></tt> <tt class="py-keyword">import</tt> <tt id="link-30" class="py-name" targets="Class paramiko.primes.ModulusPack=paramiko.primes.ModulusPack-class.html"><a title="paramiko.primes.ModulusPack" class="py-name" href="#" onclick="return doclink('link-30', 'ModulusPack', 'link-30');">ModulusPack</a></tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-31" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-31', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-32" class="py-name" targets="Module paramiko.rsakey=paramiko.rsakey-module.html"><a title="paramiko.rsakey" class="py-name" href="#" onclick="return doclink('link-32', 'rsakey', 'link-32');">rsakey</a></tt> <tt class="py-keyword">import</tt> <tt id="link-33" class="py-name" targets="Class paramiko.RSAKey=paramiko.RSAKey-class.html"><a title="paramiko.RSAKey" class="py-name" href="#" onclick="return doclink('link-33', 'RSAKey', 'link-33');">RSAKey</a></tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-34" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-34', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-35" class="py-name" targets="Module paramiko.server=paramiko.server-module.html"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-35', 'server', 'link-35');">server</a></tt> <tt class="py-keyword">import</tt> <tt id="link-36" class="py-name" targets="Class paramiko.ServerInterface=paramiko.ServerInterface-class.html"><a title="paramiko.ServerInterface" class="py-name" href="#" onclick="return doclink('link-36', 'ServerInterface', 'link-36');">ServerInterface</a></tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-37" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-37', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-38" class="py-name" targets="Module paramiko.sftp_client=paramiko.sftp_client-module.html"><a title="paramiko.sftp_client" class="py-name" href="#" onclick="return doclink('link-38', 'sftp_client', 'link-38');">sftp_client</a></tt> <tt class="py-keyword">import</tt> <tt id="link-39" class="py-name" targets="Class paramiko.SFTPClient=paramiko.SFTPClient-class.html"><a title="paramiko.SFTPClient" class="py-name" href="#" onclick="return doclink('link-39', 'SFTPClient', 'link-39');">SFTPClient</a></tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-40" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-40', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-41" class="py-name" targets="Module paramiko.ssh_exception=paramiko.ssh_exception-module.html"><a title="paramiko.ssh_exception" class="py-name" href="#" onclick="return doclink('link-41', 'ssh_exception', 'link-41');">ssh_exception</a></tt> <tt class="py-keyword">import</tt> <tt id="link-42" class="py-name" targets="Class paramiko.SSHException=paramiko.SSHException-class.html"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-42', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">,</tt> <tt id="link-43" class="py-name" targets="Class paramiko.BadAuthenticationType=paramiko.BadAuthenticationType-class.html"><a title="paramiko.BadAuthenticationType" class="py-name" href="#" onclick="return doclink('link-43', 'BadAuthenticationType', 'link-43');">BadAuthenticationType</a></tt><tt class="py-op">,</tt> <tt id="link-44" class="py-name" targets="Class paramiko.ChannelException=paramiko.ChannelException-class.html"><a title="paramiko.ChannelException" class="py-name" href="#" onclick="return doclink('link-44', 'ChannelException', 'link-44');">ChannelException</a></tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">Crypto</tt> <tt class="py-keyword">import</tt> <tt class="py-name">Random</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">Crypto</tt><tt class="py-op">.</tt><tt class="py-name">Cipher</tt> <tt class="py-keyword">import</tt> <tt class="py-name">Blowfish</tt><tt class="py-op">,</tt> <tt class="py-name">AES</tt><tt class="py-op">,</tt> <tt class="py-name">DES3</tt><tt class="py-op">,</tt> <tt class="py-name">ARC4</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">Crypto</tt><tt class="py-op">.</tt><tt class="py-name">Hash</tt> <tt class="py-keyword">import</tt> <tt class="py-name">SHA</tt><tt class="py-op">,</tt> <tt class="py-name">MD5</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"><tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-keyword">from</tt> <tt class="py-name">Crypto</tt><tt class="py-op">.</tt><tt class="py-name">Util</tt> <tt class="py-keyword">import</tt> <tt id="link-45" class="py-name" targets="Class paramiko.util.Counter=paramiko.util.Counter-class.html"><a title="paramiko.util.Counter" class="py-name" href="#" onclick="return doclink('link-45', 'Counter', 'link-45');">Counter</a></tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"><tt class="py-keyword">except</tt> <tt class="py-name">ImportError</tt><tt class="py-op">:</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-keyword">from</tt> <tt id="link-46" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-46', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-47" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-47', 'util', 'link-1');">util</a></tt> <tt class="py-keyword">import</tt> <tt id="link-48" class="py-name"><a title="paramiko.util.Counter" class="py-name" href="#" onclick="return doclink('link-48', 'Counter', 'link-45');">Counter</a></tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"><tt class="py-comment"># for thread cleanup</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"><tt id="link-49" class="py-name" targets="Variable paramiko.transport._active_threads=paramiko.transport-module.html#_active_threads"><a title="paramiko.transport._active_threads" class="py-name" href="#" onclick="return doclink('link-49', '_active_threads', 'link-49');">_active_threads</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="_join_lingering_threads"></a><div id="_join_lingering_threads-def"><a name="L59"></a><tt class="py-lineno"> 59</tt> <a class="py-toggle" href="#" id="_join_lingering_threads-toggle" onclick="return toggle('_join_lingering_threads');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport-module.html#_join_lingering_threads">_join_lingering_threads</a><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="_join_lingering_threads-collapsed" style="display:none;" pad="++++" indent="++++"></div><div id="_join_lingering_threads-expanded"><a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">thr</tt> <tt class="py-keyword">in</tt> <tt id="link-50" class="py-name"><a title="paramiko.transport._active_threads" class="py-name" href="#" onclick="return doclink('link-50', '_active_threads', 'link-49');">_active_threads</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-name">thr</tt><tt class="py-op">.</tt><tt id="link-51" class="py-name" targets="Method paramiko.Transport.stop_thread()=paramiko.Transport-class.html#stop_thread"><a title="paramiko.Transport.stop_thread" class="py-name" href="#" onclick="return doclink('link-51', 'stop_thread', 'link-51');">stop_thread</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">atexit</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"><tt class="py-name">atexit</tt><tt class="py-op">.</tt><tt class="py-name">register</tt><tt class="py-op">(</tt><tt class="py-name">_join_lingering_threads</tt><tt class="py-op">)</tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> </tt>
-<a name="SecurityOptions"></a><div id="SecurityOptions-def"><a name="L66"></a><tt class="py-lineno"> 66</tt> <a class="py-toggle" href="#" id="SecurityOptions-toggle" onclick="return toggle('SecurityOptions');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.transport.SecurityOptions-class.html">SecurityOptions</a> <tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SecurityOptions-collapsed" style="display:none;" pad="++++" indent="++++"></div><div id="SecurityOptions-expanded"><a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"><tt class="py-docstring"> Simple object containing the security preferences of an ssh transport.</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"><tt class="py-docstring"> These are tuples of acceptable ciphers, digests, key types, and key</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"><tt class="py-docstring"> exchange algorithms, listed in order of preference.</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"><tt class="py-docstring"> Changing the contents and/or order of these fields affects the underlying</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"><tt class="py-docstring"> L{Transport} (but only if you change them before starting the session).</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"><tt class="py-docstring"> If you try to add an algorithm that paramiko doesn't recognize,</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"><tt class="py-docstring"> C{ValueError} will be raised. If you try to assign something besides a</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"><tt class="py-docstring"> tuple to one of the fields, C{TypeError} will be raised.</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-name">__slots__</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-string">'ciphers'</tt><tt class="py-op">,</tt> <tt class="py-string">'digests'</tt><tt class="py-op">,</tt> <tt class="py-string">'key_types'</tt><tt class="py-op">,</tt> <tt class="py-string">'kex'</tt><tt class="py-op">,</tt> <tt class="py-string">'compression'</tt><tt class="py-op">,</tt> <tt class="py-string">'_transport'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> </tt>
-<a name="SecurityOptions.__init__"></a><div id="SecurityOptions.__init__-def"><a name="L80"></a><tt class="py-lineno"> 80</tt> <a class="py-toggle" href="#" id="SecurityOptions.__init__-toggle" onclick="return toggle('SecurityOptions.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.SecurityOptions-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">transport</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SecurityOptions.__init__-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="SecurityOptions.__init__-expanded"><a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_transport</tt> <tt class="py-op">=</tt> <tt id="link-52" class="py-name" targets="Module paramiko.transport=paramiko.transport-module.html"><a title="paramiko.transport" class="py-name" href="#" onclick="return doclink('link-52', 'transport', 'link-52');">transport</a></tt> </tt>
-</div><a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> </tt>
-<a name="SecurityOptions.__repr__"></a><div id="SecurityOptions.__repr__-def"><a name="L83"></a><tt class="py-lineno"> 83</tt> <a class="py-toggle" href="#" id="SecurityOptions.__repr__-toggle" onclick="return toggle('SecurityOptions.__repr__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.SecurityOptions-class.html#__repr__">__repr__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SecurityOptions.__repr__-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="SecurityOptions.__repr__-expanded"><a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"><tt class="py-docstring"> Returns a string representation of this object, for debugging.</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: str</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">'&lt;paramiko.SecurityOptions for %s&gt;'</tt> <tt class="py-op">%</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_transport</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> </tt>
-<a name="SecurityOptions._get_ciphers"></a><div id="SecurityOptions._get_ciphers-def"><a name="L91"></a><tt class="py-lineno"> 91</tt> <a class="py-toggle" href="#" id="SecurityOptions._get_ciphers-toggle" onclick="return toggle('SecurityOptions._get_ciphers');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.SecurityOptions-class.html#_get_ciphers">_get_ciphers</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SecurityOptions._get_ciphers-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="SecurityOptions._get_ciphers-expanded"><a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_transport</tt><tt class="py-op">.</tt><tt id="link-53" class="py-name" targets="Variable paramiko.Transport._preferred_ciphers=paramiko.Transport-class.html#_preferred_ciphers"><a title="paramiko.Transport._preferred_ciphers" class="py-name" href="#" onclick="return doclink('link-53', '_preferred_ciphers', 'link-53');">_preferred_ciphers</a></tt> </tt>
-</div><a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> </tt>
-<a name="SecurityOptions._get_digests"></a><div id="SecurityOptions._get_digests-def"><a name="L94"></a><tt class="py-lineno"> 94</tt> <a class="py-toggle" href="#" id="SecurityOptions._get_digests-toggle" onclick="return toggle('SecurityOptions._get_digests');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.SecurityOptions-class.html#_get_digests">_get_digests</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SecurityOptions._get_digests-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="SecurityOptions._get_digests-expanded"><a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_transport</tt><tt class="py-op">.</tt><tt id="link-54" class="py-name" targets="Variable paramiko.Transport._preferred_macs=paramiko.Transport-class.html#_preferred_macs"><a title="paramiko.Transport._preferred_macs" class="py-name" href="#" onclick="return doclink('link-54', '_preferred_macs', 'link-54');">_preferred_macs</a></tt> </tt>
-</div><a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> </tt>
-<a name="SecurityOptions._get_key_types"></a><div id="SecurityOptions._get_key_types-def"><a name="L97"></a><tt class="py-lineno"> 97</tt> <a class="py-toggle" href="#" id="SecurityOptions._get_key_types-toggle" onclick="return toggle('SecurityOptions._get_key_types');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.SecurityOptions-class.html#_get_key_types">_get_key_types</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SecurityOptions._get_key_types-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="SecurityOptions._get_key_types-expanded"><a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_transport</tt><tt class="py-op">.</tt><tt id="link-55" class="py-name" targets="Variable paramiko.Transport._preferred_keys=paramiko.Transport-class.html#_preferred_keys"><a title="paramiko.Transport._preferred_keys" class="py-name" href="#" onclick="return doclink('link-55', '_preferred_keys', 'link-55');">_preferred_keys</a></tt> </tt>
-</div><a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> </tt>
-<a name="SecurityOptions._get_kex"></a><div id="SecurityOptions._get_kex-def"><a name="L100"></a><tt class="py-lineno"> 100</tt> <a class="py-toggle" href="#" id="SecurityOptions._get_kex-toggle" onclick="return toggle('SecurityOptions._get_kex');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.SecurityOptions-class.html#_get_kex">_get_kex</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SecurityOptions._get_kex-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="SecurityOptions._get_kex-expanded"><a name="L101"></a><tt class="py-lineno"> 101</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_transport</tt><tt class="py-op">.</tt><tt id="link-56" class="py-name" targets="Variable paramiko.Transport._preferred_kex=paramiko.Transport-class.html#_preferred_kex"><a title="paramiko.Transport._preferred_kex" class="py-name" href="#" onclick="return doclink('link-56', '_preferred_kex', 'link-56');">_preferred_kex</a></tt> </tt>
-</div><a name="L102"></a><tt class="py-lineno"> 102</tt> <tt class="py-line"> </tt>
-<a name="SecurityOptions._get_compression"></a><div id="SecurityOptions._get_compression-def"><a name="L103"></a><tt class="py-lineno"> 103</tt> <a class="py-toggle" href="#" id="SecurityOptions._get_compression-toggle" onclick="return toggle('SecurityOptions._get_compression');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.SecurityOptions-class.html#_get_compression">_get_compression</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SecurityOptions._get_compression-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="SecurityOptions._get_compression-expanded"><a name="L104"></a><tt class="py-lineno"> 104</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_transport</tt><tt class="py-op">.</tt><tt id="link-57" class="py-name" targets="Variable paramiko.Transport._preferred_compression=paramiko.Transport-class.html#_preferred_compression"><a title="paramiko.Transport._preferred_compression" class="py-name" href="#" onclick="return doclink('link-57', '_preferred_compression', 'link-57');">_preferred_compression</a></tt> </tt>
-</div><a name="L105"></a><tt class="py-lineno"> 105</tt> <tt class="py-line"> </tt>
-<a name="SecurityOptions._set"></a><div id="SecurityOptions._set-def"><a name="L106"></a><tt class="py-lineno"> 106</tt> <a class="py-toggle" href="#" id="SecurityOptions._set-toggle" onclick="return toggle('SecurityOptions._set');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.SecurityOptions-class.html#_set">_set</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">name</tt><tt class="py-op">,</tt> <tt class="py-param">orig</tt><tt class="py-op">,</tt> <tt class="py-param">x</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SecurityOptions._set-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="SecurityOptions._set-expanded"><a name="L107"></a><tt class="py-lineno"> 107</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">list</tt><tt class="py-op">:</tt> </tt>
-<a name="L108"></a><tt class="py-lineno"> 108</tt> <tt class="py-line"> <tt class="py-name">x</tt> <tt class="py-op">=</tt> <tt class="py-name">tuple</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt> </tt>
-<a name="L109"></a><tt class="py-lineno"> 109</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">tuple</tt><tt class="py-op">:</tt> </tt>
-<a name="L110"></a><tt class="py-lineno"> 110</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">TypeError</tt><tt class="py-op">(</tt><tt class="py-string">'expected tuple or list'</tt><tt class="py-op">)</tt> </tt>
-<a name="L111"></a><tt class="py-lineno"> 111</tt> <tt class="py-line"> <tt class="py-name">possible</tt> <tt class="py-op">=</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_transport</tt><tt class="py-op">,</tt> <tt class="py-name">orig</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-58" class="py-name" targets="Method paramiko.HostKeys.keys()=paramiko.HostKeys-class.html#keys"><a title="paramiko.HostKeys.keys" class="py-name" href="#" onclick="return doclink('link-58', 'keys', 'link-58');">keys</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L112"></a><tt class="py-lineno"> 112</tt> <tt class="py-line"> <tt class="py-name">forbidden</tt> <tt class="py-op">=</tt> <tt id="link-59" class="py-name" targets="Method paramiko.util.PFilter.filter()=paramiko.util.PFilter-class.html#filter"><a title="paramiko.util.PFilter.filter" class="py-name" href="#" onclick="return doclink('link-59', 'filter', 'link-59');">filter</a></tt><tt class="py-op">(</tt><tt class="py-keyword">lambda</tt> <tt class="py-name">n</tt><tt class="py-op">:</tt> <tt class="py-name">n</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">possible</tt><tt class="py-op">,</tt> <tt class="py-name">x</tt><tt class="py-op">)</tt> </tt>
-<a name="L113"></a><tt class="py-lineno"> 113</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">forbidden</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L114"></a><tt class="py-lineno"> 114</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">ValueError</tt><tt class="py-op">(</tt><tt class="py-string">'unknown cipher'</tt><tt class="py-op">)</tt> </tt>
-<a name="L115"></a><tt class="py-lineno"> 115</tt> <tt class="py-line"> <tt class="py-name">setattr</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_transport</tt><tt class="py-op">,</tt> <tt id="link-60" class="py-name" targets="Variable paramiko.kex_gex.KexGex.name=paramiko.kex_gex.KexGex-class.html#name,Variable paramiko.kex_group1.KexGroup1.name=paramiko.kex_group1.KexGroup1-class.html#name"><a title="paramiko.kex_gex.KexGex.name
-paramiko.kex_group1.KexGroup1.name" class="py-name" href="#" onclick="return doclink('link-60', 'name', 'link-60');">name</a></tt><tt class="py-op">,</tt> <tt class="py-name">x</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L116"></a><tt class="py-lineno"> 116</tt> <tt class="py-line"> </tt>
-<a name="SecurityOptions._set_ciphers"></a><div id="SecurityOptions._set_ciphers-def"><a name="L117"></a><tt class="py-lineno"> 117</tt> <a class="py-toggle" href="#" id="SecurityOptions._set_ciphers-toggle" onclick="return toggle('SecurityOptions._set_ciphers');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.SecurityOptions-class.html#_set_ciphers">_set_ciphers</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">x</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SecurityOptions._set_ciphers-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="SecurityOptions._set_ciphers-expanded"><a name="L118"></a><tt class="py-lineno"> 118</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_set</tt><tt class="py-op">(</tt><tt class="py-string">'_preferred_ciphers'</tt><tt class="py-op">,</tt> <tt class="py-string">'_cipher_info'</tt><tt class="py-op">,</tt> <tt class="py-name">x</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L119"></a><tt class="py-lineno"> 119</tt> <tt class="py-line"> </tt>
-<a name="SecurityOptions._set_digests"></a><div id="SecurityOptions._set_digests-def"><a name="L120"></a><tt class="py-lineno"> 120</tt> <a class="py-toggle" href="#" id="SecurityOptions._set_digests-toggle" onclick="return toggle('SecurityOptions._set_digests');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.SecurityOptions-class.html#_set_digests">_set_digests</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">x</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SecurityOptions._set_digests-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="SecurityOptions._set_digests-expanded"><a name="L121"></a><tt class="py-lineno"> 121</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_set</tt><tt class="py-op">(</tt><tt class="py-string">'_preferred_macs'</tt><tt class="py-op">,</tt> <tt class="py-string">'_mac_info'</tt><tt class="py-op">,</tt> <tt class="py-name">x</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L122"></a><tt class="py-lineno"> 122</tt> <tt class="py-line"> </tt>
-<a name="SecurityOptions._set_key_types"></a><div id="SecurityOptions._set_key_types-def"><a name="L123"></a><tt class="py-lineno"> 123</tt> <a class="py-toggle" href="#" id="SecurityOptions._set_key_types-toggle" onclick="return toggle('SecurityOptions._set_key_types');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.SecurityOptions-class.html#_set_key_types">_set_key_types</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">x</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SecurityOptions._set_key_types-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="SecurityOptions._set_key_types-expanded"><a name="L124"></a><tt class="py-lineno"> 124</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_set</tt><tt class="py-op">(</tt><tt class="py-string">'_preferred_keys'</tt><tt class="py-op">,</tt> <tt class="py-string">'_key_info'</tt><tt class="py-op">,</tt> <tt class="py-name">x</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L125"></a><tt class="py-lineno"> 125</tt> <tt class="py-line"> </tt>
-<a name="SecurityOptions._set_kex"></a><div id="SecurityOptions._set_kex-def"><a name="L126"></a><tt class="py-lineno"> 126</tt> <a class="py-toggle" href="#" id="SecurityOptions._set_kex-toggle" onclick="return toggle('SecurityOptions._set_kex');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.SecurityOptions-class.html#_set_kex">_set_kex</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">x</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SecurityOptions._set_kex-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="SecurityOptions._set_kex-expanded"><a name="L127"></a><tt class="py-lineno"> 127</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_set</tt><tt class="py-op">(</tt><tt class="py-string">'_preferred_kex'</tt><tt class="py-op">,</tt> <tt class="py-string">'_kex_info'</tt><tt class="py-op">,</tt> <tt class="py-name">x</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L128"></a><tt class="py-lineno"> 128</tt> <tt class="py-line"> </tt>
-<a name="SecurityOptions._set_compression"></a><div id="SecurityOptions._set_compression-def"><a name="L129"></a><tt class="py-lineno"> 129</tt> <a class="py-toggle" href="#" id="SecurityOptions._set_compression-toggle" onclick="return toggle('SecurityOptions._set_compression');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.SecurityOptions-class.html#_set_compression">_set_compression</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">x</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="SecurityOptions._set_compression-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="SecurityOptions._set_compression-expanded"><a name="L130"></a><tt class="py-lineno"> 130</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_set</tt><tt class="py-op">(</tt><tt class="py-string">'_preferred_compression'</tt><tt class="py-op">,</tt> <tt class="py-string">'_compression_info'</tt><tt class="py-op">,</tt> <tt class="py-name">x</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L131"></a><tt class="py-lineno"> 131</tt> <tt class="py-line"> </tt>
-<a name="L132"></a><tt class="py-lineno"> 132</tt> <tt class="py-line"> <tt id="link-61" class="py-name" targets="Variable paramiko.SecurityOptions.ciphers=paramiko.SecurityOptions-class.html#ciphers"><a title="paramiko.SecurityOptions.ciphers" class="py-name" href="#" onclick="return doclink('link-61', 'ciphers', 'link-61');">ciphers</a></tt> <tt class="py-op">=</tt> <tt class="py-name">property</tt><tt class="py-op">(</tt><tt id="link-62" class="py-name" targets="Method paramiko.SecurityOptions._get_ciphers()=paramiko.SecurityOptions-class.html#_get_ciphers"><a title="paramiko.SecurityOptions._get_ciphers" class="py-name" href="#" onclick="return doclink('link-62', '_get_ciphers', 'link-62');">_get_ciphers</a></tt><tt class="py-op">,</tt> <tt id="link-63" class="py-name" targets="Method paramiko.SecurityOptions._set_ciphers()=paramiko.SecurityOptions-class.html#_set_ciphers"><a title="paramiko.SecurityOptions._set_ciphers" class="py-name" href="#" onclick="return doclink('link-63', '_set_ciphers', 'link-63');">_set_ciphers</a></tt><tt class="py-op">,</tt> <tt class="py-name">None</tt><tt class="py-op">,</tt> </tt>
-<a name="L133"></a><tt class="py-lineno"> 133</tt> <tt class="py-line"> <tt class="py-string">"Symmetric encryption ciphers"</tt><tt class="py-op">)</tt> </tt>
-<a name="L134"></a><tt class="py-lineno"> 134</tt> <tt class="py-line"> <tt id="link-64" class="py-name" targets="Variable paramiko.SecurityOptions.digests=paramiko.SecurityOptions-class.html#digests"><a title="paramiko.SecurityOptions.digests" class="py-name" href="#" onclick="return doclink('link-64', 'digests', 'link-64');">digests</a></tt> <tt class="py-op">=</tt> <tt class="py-name">property</tt><tt class="py-op">(</tt><tt id="link-65" class="py-name" targets="Method paramiko.SecurityOptions._get_digests()=paramiko.SecurityOptions-class.html#_get_digests"><a title="paramiko.SecurityOptions._get_digests" class="py-name" href="#" onclick="return doclink('link-65', '_get_digests', 'link-65');">_get_digests</a></tt><tt class="py-op">,</tt> <tt id="link-66" class="py-name" targets="Method paramiko.SecurityOptions._set_digests()=paramiko.SecurityOptions-class.html#_set_digests"><a title="paramiko.SecurityOptions._set_digests" class="py-name" href="#" onclick="return doclink('link-66', '_set_digests', 'link-66');">_set_digests</a></tt><tt class="py-op">,</tt> <tt class="py-name">None</tt><tt class="py-op">,</tt> </tt>
-<a name="L135"></a><tt class="py-lineno"> 135</tt> <tt class="py-line"> <tt class="py-string">"Digest (one-way hash) algorithms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L136"></a><tt class="py-lineno"> 136</tt> <tt class="py-line"> <tt id="link-67" class="py-name" targets="Variable paramiko.SecurityOptions.key_types=paramiko.SecurityOptions-class.html#key_types"><a title="paramiko.SecurityOptions.key_types" class="py-name" href="#" onclick="return doclink('link-67', 'key_types', 'link-67');">key_types</a></tt> <tt class="py-op">=</tt> <tt class="py-name">property</tt><tt class="py-op">(</tt><tt id="link-68" class="py-name" targets="Method paramiko.SecurityOptions._get_key_types()=paramiko.SecurityOptions-class.html#_get_key_types"><a title="paramiko.SecurityOptions._get_key_types" class="py-name" href="#" onclick="return doclink('link-68', '_get_key_types', 'link-68');">_get_key_types</a></tt><tt class="py-op">,</tt> <tt id="link-69" class="py-name" targets="Method paramiko.SecurityOptions._set_key_types()=paramiko.SecurityOptions-class.html#_set_key_types"><a title="paramiko.SecurityOptions._set_key_types" class="py-name" href="#" onclick="return doclink('link-69', '_set_key_types', 'link-69');">_set_key_types</a></tt><tt class="py-op">,</tt> <tt class="py-name">None</tt><tt class="py-op">,</tt> </tt>
-<a name="L137"></a><tt class="py-lineno"> 137</tt> <tt class="py-line"> <tt class="py-string">"Public-key algorithms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L138"></a><tt class="py-lineno"> 138</tt> <tt class="py-line"> <tt id="link-70" class="py-name" targets="Variable paramiko.SecurityOptions.kex=paramiko.SecurityOptions-class.html#kex"><a title="paramiko.SecurityOptions.kex" class="py-name" href="#" onclick="return doclink('link-70', 'kex', 'link-70');">kex</a></tt> <tt class="py-op">=</tt> <tt class="py-name">property</tt><tt class="py-op">(</tt><tt id="link-71" class="py-name" targets="Method paramiko.SecurityOptions._get_kex()=paramiko.SecurityOptions-class.html#_get_kex"><a title="paramiko.SecurityOptions._get_kex" class="py-name" href="#" onclick="return doclink('link-71', '_get_kex', 'link-71');">_get_kex</a></tt><tt class="py-op">,</tt> <tt id="link-72" class="py-name" targets="Method paramiko.SecurityOptions._set_kex()=paramiko.SecurityOptions-class.html#_set_kex"><a title="paramiko.SecurityOptions._set_kex" class="py-name" href="#" onclick="return doclink('link-72', '_set_kex', 'link-72');">_set_kex</a></tt><tt class="py-op">,</tt> <tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-string">"Key exchange algorithms"</tt><tt class="py-op">)</tt> </tt>
-<a name="L139"></a><tt class="py-lineno"> 139</tt> <tt class="py-line"> <tt id="link-73" class="py-name" targets="Variable paramiko.SecurityOptions.compression=paramiko.SecurityOptions-class.html#compression"><a title="paramiko.SecurityOptions.compression" class="py-name" href="#" onclick="return doclink('link-73', 'compression', 'link-73');">compression</a></tt> <tt class="py-op">=</tt> <tt class="py-name">property</tt><tt class="py-op">(</tt><tt id="link-74" class="py-name" targets="Method paramiko.SecurityOptions._get_compression()=paramiko.SecurityOptions-class.html#_get_compression"><a title="paramiko.SecurityOptions._get_compression" class="py-name" href="#" onclick="return doclink('link-74', '_get_compression', 'link-74');">_get_compression</a></tt><tt class="py-op">,</tt> <tt id="link-75" class="py-name" targets="Method paramiko.SecurityOptions._set_compression()=paramiko.SecurityOptions-class.html#_set_compression"><a title="paramiko.SecurityOptions._set_compression" class="py-name" href="#" onclick="return doclink('link-75', '_set_compression', 'link-75');">_set_compression</a></tt><tt class="py-op">,</tt> <tt class="py-name">None</tt><tt class="py-op">,</tt> </tt>
-<a name="L140"></a><tt class="py-lineno"> 140</tt> <tt class="py-line"> <tt class="py-string">"Compression algorithms"</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L141"></a><tt class="py-lineno"> 141</tt> <tt class="py-line"> </tt>
-<a name="L142"></a><tt class="py-lineno"> 142</tt> <tt class="py-line"> </tt>
-<a name="ChannelMap"></a><div id="ChannelMap-def"><a name="L143"></a><tt class="py-lineno"> 143</tt> <a class="py-toggle" href="#" id="ChannelMap-toggle" onclick="return toggle('ChannelMap');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.transport.ChannelMap-class.html">ChannelMap</a> <tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ChannelMap-collapsed" style="display:none;" pad="++++" indent="++++"></div><div id="ChannelMap-expanded"><a name="ChannelMap.__init__"></a><div id="ChannelMap.__init__-def"><a name="L144"></a><tt class="py-lineno"> 144</tt> <a class="py-toggle" href="#" id="ChannelMap.__init__-toggle" onclick="return toggle('ChannelMap.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.ChannelMap-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ChannelMap.__init__-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="ChannelMap.__init__-expanded"><a name="L145"></a><tt class="py-lineno"> 145</tt> <tt class="py-line"> <tt class="py-comment"># (id -&gt; Channel)</tt> </tt>
-<a name="L146"></a><tt class="py-lineno"> 146</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_map</tt> <tt class="py-op">=</tt> <tt class="py-name">weakref</tt><tt class="py-op">.</tt><tt class="py-name">WeakValueDictionary</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L147"></a><tt class="py-lineno"> 147</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_lock</tt> <tt class="py-op">=</tt> <tt class="py-name">threading</tt><tt class="py-op">.</tt><tt class="py-name">Lock</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L148"></a><tt class="py-lineno"> 148</tt> <tt class="py-line"> </tt>
-<a name="ChannelMap.put"></a><div id="ChannelMap.put-def"><a name="L149"></a><tt class="py-lineno"> 149</tt> <a class="py-toggle" href="#" id="ChannelMap.put-toggle" onclick="return toggle('ChannelMap.put');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.ChannelMap-class.html#put">put</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">chanid</tt><tt class="py-op">,</tt> <tt class="py-param">chan</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ChannelMap.put-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="ChannelMap.put-expanded"><a name="L150"></a><tt class="py-lineno"> 150</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L151"></a><tt class="py-lineno"> 151</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L152"></a><tt class="py-lineno"> 152</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_map</tt><tt class="py-op">[</tt><tt class="py-name">chanid</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">chan</tt> </tt>
-<a name="L153"></a><tt class="py-lineno"> 153</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L154"></a><tt class="py-lineno"> 154</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L155"></a><tt class="py-lineno"> 155</tt> <tt class="py-line"> </tt>
-<a name="ChannelMap.get"></a><div id="ChannelMap.get-def"><a name="L156"></a><tt class="py-lineno"> 156</tt> <a class="py-toggle" href="#" id="ChannelMap.get-toggle" onclick="return toggle('ChannelMap.get');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.ChannelMap-class.html#get">get</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">chanid</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ChannelMap.get-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="ChannelMap.get-expanded"><a name="L157"></a><tt class="py-lineno"> 157</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L158"></a><tt class="py-lineno"> 158</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L159"></a><tt class="py-lineno"> 159</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_map</tt><tt class="py-op">.</tt><tt id="link-76" class="py-name" targets="Method paramiko.SFTPClient.get()=paramiko.SFTPClient-class.html#get,Method paramiko.transport.ChannelMap.get()=paramiko.transport.ChannelMap-class.html#get"><a title="paramiko.SFTPClient.get
-paramiko.transport.ChannelMap.get" class="py-name" href="#" onclick="return doclink('link-76', 'get', 'link-76');">get</a></tt><tt class="py-op">(</tt><tt class="py-name">chanid</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> </tt>
-<a name="L160"></a><tt class="py-lineno"> 160</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L161"></a><tt class="py-lineno"> 161</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L162"></a><tt class="py-lineno"> 162</tt> <tt class="py-line"> </tt>
-<a name="ChannelMap.delete"></a><div id="ChannelMap.delete-def"><a name="L163"></a><tt class="py-lineno"> 163</tt> <a class="py-toggle" href="#" id="ChannelMap.delete-toggle" onclick="return toggle('ChannelMap.delete');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.ChannelMap-class.html#delete">delete</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">chanid</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ChannelMap.delete-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="ChannelMap.delete-expanded"><a name="L164"></a><tt class="py-lineno"> 164</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L165"></a><tt class="py-lineno"> 165</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L166"></a><tt class="py-lineno"> 166</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L167"></a><tt class="py-lineno"> 167</tt> <tt class="py-line"> <tt class="py-keyword">del</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_map</tt><tt class="py-op">[</tt><tt class="py-name">chanid</tt><tt class="py-op">]</tt> </tt>
-<a name="L168"></a><tt class="py-lineno"> 168</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">KeyError</tt><tt class="py-op">:</tt> </tt>
-<a name="L169"></a><tt class="py-lineno"> 169</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L170"></a><tt class="py-lineno"> 170</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L171"></a><tt class="py-lineno"> 171</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L172"></a><tt class="py-lineno"> 172</tt> <tt class="py-line"> </tt>
-<a name="ChannelMap.values"></a><div id="ChannelMap.values-def"><a name="L173"></a><tt class="py-lineno"> 173</tt> <a class="py-toggle" href="#" id="ChannelMap.values-toggle" onclick="return toggle('ChannelMap.values');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.ChannelMap-class.html#values">values</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ChannelMap.values-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="ChannelMap.values-expanded"><a name="L174"></a><tt class="py-lineno"> 174</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L175"></a><tt class="py-lineno"> 175</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L176"></a><tt class="py-lineno"> 176</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_map</tt><tt class="py-op">.</tt><tt id="link-77" class="py-name" targets="Method paramiko.HostKeys.values()=paramiko.HostKeys-class.html#values,Method paramiko.transport.ChannelMap.values()=paramiko.transport.ChannelMap-class.html#values"><a title="paramiko.HostKeys.values
-paramiko.transport.ChannelMap.values" class="py-name" href="#" onclick="return doclink('link-77', 'values', 'link-77');">values</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L177"></a><tt class="py-lineno"> 177</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L178"></a><tt class="py-lineno"> 178</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L179"></a><tt class="py-lineno"> 179</tt> <tt class="py-line"> </tt>
-<a name="ChannelMap.__len__"></a><div id="ChannelMap.__len__-def"><a name="L180"></a><tt class="py-lineno"> 180</tt> <a class="py-toggle" href="#" id="ChannelMap.__len__-toggle" onclick="return toggle('ChannelMap.__len__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.ChannelMap-class.html#__len__">__len__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="ChannelMap.__len__-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="ChannelMap.__len__-expanded"><a name="L181"></a><tt class="py-lineno"> 181</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L182"></a><tt class="py-lineno"> 182</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L183"></a><tt class="py-lineno"> 183</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_map</tt><tt class="py-op">)</tt> </tt>
-<a name="L184"></a><tt class="py-lineno"> 184</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L185"></a><tt class="py-lineno"> 185</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L186"></a><tt class="py-lineno"> 186</tt> <tt class="py-line"> </tt>
-<a name="L187"></a><tt class="py-lineno"> 187</tt> <tt class="py-line"> </tt>
-<a name="Transport"></a><div id="Transport-def"><a name="L188"></a><tt class="py-lineno"> 188</tt> <a class="py-toggle" href="#" id="Transport-toggle" onclick="return toggle('Transport');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html">Transport</a> <tt class="py-op">(</tt><tt class="py-base-class">threading</tt><tt class="py-op">.</tt><tt class="py-base-class">Thread</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport-collapsed" style="display:none;" pad="++++" indent="++++"></div><div id="Transport-expanded"><a name="L189"></a><tt class="py-lineno"> 189</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L190"></a><tt class="py-lineno"> 190</tt> <tt class="py-line"><tt class="py-docstring"> An SSH Transport attaches to a stream (usually a socket), negotiates an</tt> </tt>
-<a name="L191"></a><tt class="py-lineno"> 191</tt> <tt class="py-line"><tt class="py-docstring"> encrypted session, authenticates, and then creates stream tunnels, called</tt> </tt>
-<a name="L192"></a><tt class="py-lineno"> 192</tt> <tt class="py-line"><tt class="py-docstring"> L{Channel}s, across the session. Multiple channels can be multiplexed</tt> </tt>
-<a name="L193"></a><tt class="py-lineno"> 193</tt> <tt class="py-line"><tt class="py-docstring"> across a single session (and often are, in the case of port forwardings).</tt> </tt>
-<a name="L194"></a><tt class="py-lineno"> 194</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L195"></a><tt class="py-lineno"> 195</tt> <tt class="py-line"> </tt>
-<a name="L196"></a><tt class="py-lineno"> 196</tt> <tt class="py-line"> <tt id="link-78" class="py-name" targets="Variable paramiko.Transport._PROTO_ID=paramiko.Transport-class.html#_PROTO_ID"><a title="paramiko.Transport._PROTO_ID" class="py-name" href="#" onclick="return doclink('link-78', '_PROTO_ID', 'link-78');">_PROTO_ID</a></tt> <tt class="py-op">=</tt> <tt class="py-string">'2.0'</tt> </tt>
-<a name="L197"></a><tt class="py-lineno"> 197</tt> <tt class="py-line"> <tt id="link-79" class="py-name" targets="Variable paramiko.Transport._CLIENT_ID=paramiko.Transport-class.html#_CLIENT_ID"><a title="paramiko.Transport._CLIENT_ID" class="py-name" href="#" onclick="return doclink('link-79', '_CLIENT_ID', 'link-79');">_CLIENT_ID</a></tt> <tt class="py-op">=</tt> <tt class="py-string">'paramiko_1.7.7.1'</tt> </tt>
-<a name="L198"></a><tt class="py-lineno"> 198</tt> <tt class="py-line"> </tt>
-<a name="L199"></a><tt class="py-lineno"> 199</tt> <tt class="py-line"> <tt id="link-80" class="py-name"><a title="paramiko.Transport._preferred_ciphers" class="py-name" href="#" onclick="return doclink('link-80', '_preferred_ciphers', 'link-53');">_preferred_ciphers</a></tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-string">'aes128-ctr'</tt><tt class="py-op">,</tt> <tt class="py-string">'aes256-ctr'</tt><tt class="py-op">,</tt> <tt class="py-string">'aes128-cbc'</tt><tt class="py-op">,</tt> <tt class="py-string">'blowfish-cbc'</tt><tt class="py-op">,</tt> <tt class="py-string">'aes256-cbc'</tt><tt class="py-op">,</tt> <tt class="py-string">'3des-cbc'</tt><tt class="py-op">,</tt> </tt>
-<a name="L200"></a><tt class="py-lineno"> 200</tt> <tt class="py-line"> <tt class="py-string">'arcfour128'</tt><tt class="py-op">,</tt> <tt class="py-string">'arcfour256'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L201"></a><tt class="py-lineno"> 201</tt> <tt class="py-line"> <tt id="link-81" class="py-name"><a title="paramiko.Transport._preferred_macs" class="py-name" href="#" onclick="return doclink('link-81', '_preferred_macs', 'link-54');">_preferred_macs</a></tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-string">'hmac-sha1'</tt><tt class="py-op">,</tt> <tt class="py-string">'hmac-md5'</tt><tt class="py-op">,</tt> <tt class="py-string">'hmac-sha1-96'</tt><tt class="py-op">,</tt> <tt class="py-string">'hmac-md5-96'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L202"></a><tt class="py-lineno"> 202</tt> <tt class="py-line"> <tt id="link-82" class="py-name"><a title="paramiko.Transport._preferred_keys" class="py-name" href="#" onclick="return doclink('link-82', '_preferred_keys', 'link-55');">_preferred_keys</a></tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-string">'ssh-rsa'</tt><tt class="py-op">,</tt> <tt class="py-string">'ssh-dss'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L203"></a><tt class="py-lineno"> 203</tt> <tt class="py-line"> <tt id="link-83" class="py-name"><a title="paramiko.Transport._preferred_kex" class="py-name" href="#" onclick="return doclink('link-83', '_preferred_kex', 'link-56');">_preferred_kex</a></tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-string">'diffie-hellman-group1-sha1'</tt><tt class="py-op">,</tt> <tt class="py-string">'diffie-hellman-group-exchange-sha1'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L204"></a><tt class="py-lineno"> 204</tt> <tt class="py-line"> <tt id="link-84" class="py-name"><a title="paramiko.Transport._preferred_compression" class="py-name" href="#" onclick="return doclink('link-84', '_preferred_compression', 'link-57');">_preferred_compression</a></tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-string">'none'</tt><tt class="py-op">,</tt> <tt class="py-op">)</tt> </tt>
-<a name="L205"></a><tt class="py-lineno"> 205</tt> <tt class="py-line"> </tt>
-<a name="L206"></a><tt class="py-lineno"> 206</tt> <tt class="py-line"> <tt id="link-85" class="py-name" targets="Variable paramiko.Transport._cipher_info=paramiko.Transport-class.html#_cipher_info"><a title="paramiko.Transport._cipher_info" class="py-name" href="#" onclick="return doclink('link-85', '_cipher_info', 'link-85');">_cipher_info</a></tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> </tt>
-<a name="L207"></a><tt class="py-lineno"> 207</tt> <tt class="py-line"> <tt class="py-string">'aes128-ctr'</tt><tt class="py-op">:</tt> <tt class="py-op">{</tt> <tt class="py-string">'class'</tt><tt class="py-op">:</tt> <tt class="py-name">AES</tt><tt class="py-op">,</tt> <tt class="py-string">'mode'</tt><tt class="py-op">:</tt> <tt class="py-name">AES</tt><tt class="py-op">.</tt><tt class="py-name">MODE_CTR</tt><tt class="py-op">,</tt> <tt class="py-string">'block-size'</tt><tt class="py-op">:</tt> <tt class="py-number">16</tt><tt class="py-op">,</tt> <tt class="py-string">'key-size'</tt><tt class="py-op">:</tt> <tt class="py-number">16</tt> <tt class="py-op">}</tt><tt class="py-op">,</tt> </tt>
-<a name="L208"></a><tt class="py-lineno"> 208</tt> <tt class="py-line"> <tt class="py-string">'aes256-ctr'</tt><tt class="py-op">:</tt> <tt class="py-op">{</tt> <tt class="py-string">'class'</tt><tt class="py-op">:</tt> <tt class="py-name">AES</tt><tt class="py-op">,</tt> <tt class="py-string">'mode'</tt><tt class="py-op">:</tt> <tt class="py-name">AES</tt><tt class="py-op">.</tt><tt class="py-name">MODE_CTR</tt><tt class="py-op">,</tt> <tt class="py-string">'block-size'</tt><tt class="py-op">:</tt> <tt class="py-number">16</tt><tt class="py-op">,</tt> <tt class="py-string">'key-size'</tt><tt class="py-op">:</tt> <tt class="py-number">32</tt> <tt class="py-op">}</tt><tt class="py-op">,</tt> </tt>
-<a name="L209"></a><tt class="py-lineno"> 209</tt> <tt class="py-line"> <tt class="py-string">'blowfish-cbc'</tt><tt class="py-op">:</tt> <tt class="py-op">{</tt> <tt class="py-string">'class'</tt><tt class="py-op">:</tt> <tt class="py-name">Blowfish</tt><tt class="py-op">,</tt> <tt class="py-string">'mode'</tt><tt class="py-op">:</tt> <tt class="py-name">Blowfish</tt><tt class="py-op">.</tt><tt class="py-name">MODE_CBC</tt><tt class="py-op">,</tt> <tt class="py-string">'block-size'</tt><tt class="py-op">:</tt> <tt class="py-number">8</tt><tt class="py-op">,</tt> <tt class="py-string">'key-size'</tt><tt class="py-op">:</tt> <tt class="py-number">16</tt> <tt class="py-op">}</tt><tt class="py-op">,</tt> </tt>
-<a name="L210"></a><tt class="py-lineno"> 210</tt> <tt class="py-line"> <tt class="py-string">'aes128-cbc'</tt><tt class="py-op">:</tt> <tt class="py-op">{</tt> <tt class="py-string">'class'</tt><tt class="py-op">:</tt> <tt class="py-name">AES</tt><tt class="py-op">,</tt> <tt class="py-string">'mode'</tt><tt class="py-op">:</tt> <tt class="py-name">AES</tt><tt class="py-op">.</tt><tt class="py-name">MODE_CBC</tt><tt class="py-op">,</tt> <tt class="py-string">'block-size'</tt><tt class="py-op">:</tt> <tt class="py-number">16</tt><tt class="py-op">,</tt> <tt class="py-string">'key-size'</tt><tt class="py-op">:</tt> <tt class="py-number">16</tt> <tt class="py-op">}</tt><tt class="py-op">,</tt> </tt>
-<a name="L211"></a><tt class="py-lineno"> 211</tt> <tt class="py-line"> <tt class="py-string">'aes256-cbc'</tt><tt class="py-op">:</tt> <tt class="py-op">{</tt> <tt class="py-string">'class'</tt><tt class="py-op">:</tt> <tt class="py-name">AES</tt><tt class="py-op">,</tt> <tt class="py-string">'mode'</tt><tt class="py-op">:</tt> <tt class="py-name">AES</tt><tt class="py-op">.</tt><tt class="py-name">MODE_CBC</tt><tt class="py-op">,</tt> <tt class="py-string">'block-size'</tt><tt class="py-op">:</tt> <tt class="py-number">16</tt><tt class="py-op">,</tt> <tt class="py-string">'key-size'</tt><tt class="py-op">:</tt> <tt class="py-number">32</tt> <tt class="py-op">}</tt><tt class="py-op">,</tt> </tt>
-<a name="L212"></a><tt class="py-lineno"> 212</tt> <tt class="py-line"> <tt class="py-string">'3des-cbc'</tt><tt class="py-op">:</tt> <tt class="py-op">{</tt> <tt class="py-string">'class'</tt><tt class="py-op">:</tt> <tt class="py-name">DES3</tt><tt class="py-op">,</tt> <tt class="py-string">'mode'</tt><tt class="py-op">:</tt> <tt class="py-name">DES3</tt><tt class="py-op">.</tt><tt class="py-name">MODE_CBC</tt><tt class="py-op">,</tt> <tt class="py-string">'block-size'</tt><tt class="py-op">:</tt> <tt class="py-number">8</tt><tt class="py-op">,</tt> <tt class="py-string">'key-size'</tt><tt class="py-op">:</tt> <tt class="py-number">24</tt> <tt class="py-op">}</tt><tt class="py-op">,</tt> </tt>
-<a name="L213"></a><tt class="py-lineno"> 213</tt> <tt class="py-line"> <tt class="py-string">'arcfour128'</tt><tt class="py-op">:</tt> <tt class="py-op">{</tt> <tt class="py-string">'class'</tt><tt class="py-op">:</tt> <tt class="py-name">ARC4</tt><tt class="py-op">,</tt> <tt class="py-string">'mode'</tt><tt class="py-op">:</tt> <tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-string">'block-size'</tt><tt class="py-op">:</tt> <tt class="py-number">8</tt><tt class="py-op">,</tt> <tt class="py-string">'key-size'</tt><tt class="py-op">:</tt> <tt class="py-number">16</tt> <tt class="py-op">}</tt><tt class="py-op">,</tt> </tt>
-<a name="L214"></a><tt class="py-lineno"> 214</tt> <tt class="py-line"> <tt class="py-string">'arcfour256'</tt><tt class="py-op">:</tt> <tt class="py-op">{</tt> <tt class="py-string">'class'</tt><tt class="py-op">:</tt> <tt class="py-name">ARC4</tt><tt class="py-op">,</tt> <tt class="py-string">'mode'</tt><tt class="py-op">:</tt> <tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-string">'block-size'</tt><tt class="py-op">:</tt> <tt class="py-number">8</tt><tt class="py-op">,</tt> <tt class="py-string">'key-size'</tt><tt class="py-op">:</tt> <tt class="py-number">32</tt> <tt class="py-op">}</tt><tt class="py-op">,</tt> </tt>
-<a name="L215"></a><tt class="py-lineno"> 215</tt> <tt class="py-line"> <tt class="py-op">}</tt> </tt>
-<a name="L216"></a><tt class="py-lineno"> 216</tt> <tt class="py-line"> </tt>
-<a name="L217"></a><tt class="py-lineno"> 217</tt> <tt class="py-line"> <tt id="link-86" class="py-name" targets="Variable paramiko.Transport._mac_info=paramiko.Transport-class.html#_mac_info"><a title="paramiko.Transport._mac_info" class="py-name" href="#" onclick="return doclink('link-86', '_mac_info', 'link-86');">_mac_info</a></tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> </tt>
-<a name="L218"></a><tt class="py-lineno"> 218</tt> <tt class="py-line"> <tt class="py-string">'hmac-sha1'</tt><tt class="py-op">:</tt> <tt class="py-op">{</tt> <tt class="py-string">'class'</tt><tt class="py-op">:</tt> <tt class="py-name">SHA</tt><tt class="py-op">,</tt> <tt class="py-string">'size'</tt><tt class="py-op">:</tt> <tt class="py-number">20</tt> <tt class="py-op">}</tt><tt class="py-op">,</tt> </tt>
-<a name="L219"></a><tt class="py-lineno"> 219</tt> <tt class="py-line"> <tt class="py-string">'hmac-sha1-96'</tt><tt class="py-op">:</tt> <tt class="py-op">{</tt> <tt class="py-string">'class'</tt><tt class="py-op">:</tt> <tt class="py-name">SHA</tt><tt class="py-op">,</tt> <tt class="py-string">'size'</tt><tt class="py-op">:</tt> <tt class="py-number">12</tt> <tt class="py-op">}</tt><tt class="py-op">,</tt> </tt>
-<a name="L220"></a><tt class="py-lineno"> 220</tt> <tt class="py-line"> <tt class="py-string">'hmac-md5'</tt><tt class="py-op">:</tt> <tt class="py-op">{</tt> <tt class="py-string">'class'</tt><tt class="py-op">:</tt> <tt class="py-name">MD5</tt><tt class="py-op">,</tt> <tt class="py-string">'size'</tt><tt class="py-op">:</tt> <tt class="py-number">16</tt> <tt class="py-op">}</tt><tt class="py-op">,</tt> </tt>
-<a name="L221"></a><tt class="py-lineno"> 221</tt> <tt class="py-line"> <tt class="py-string">'hmac-md5-96'</tt><tt class="py-op">:</tt> <tt class="py-op">{</tt> <tt class="py-string">'class'</tt><tt class="py-op">:</tt> <tt class="py-name">MD5</tt><tt class="py-op">,</tt> <tt class="py-string">'size'</tt><tt class="py-op">:</tt> <tt class="py-number">12</tt> <tt class="py-op">}</tt><tt class="py-op">,</tt> </tt>
-<a name="L222"></a><tt class="py-lineno"> 222</tt> <tt class="py-line"> <tt class="py-op">}</tt> </tt>
-<a name="L223"></a><tt class="py-lineno"> 223</tt> <tt class="py-line"> </tt>
-<a name="L224"></a><tt class="py-lineno"> 224</tt> <tt class="py-line"> <tt id="link-87" class="py-name" targets="Variable paramiko.Transport._key_info=paramiko.Transport-class.html#_key_info"><a title="paramiko.Transport._key_info" class="py-name" href="#" onclick="return doclink('link-87', '_key_info', 'link-87');">_key_info</a></tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> </tt>
-<a name="L225"></a><tt class="py-lineno"> 225</tt> <tt class="py-line"> <tt class="py-string">'ssh-rsa'</tt><tt class="py-op">:</tt> <tt id="link-88" class="py-name"><a title="paramiko.RSAKey" class="py-name" href="#" onclick="return doclink('link-88', 'RSAKey', 'link-33');">RSAKey</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L226"></a><tt class="py-lineno"> 226</tt> <tt class="py-line"> <tt class="py-string">'ssh-dss'</tt><tt class="py-op">:</tt> <tt id="link-89" class="py-name"><a title="paramiko.DSSKey" class="py-name" href="#" onclick="return doclink('link-89', 'DSSKey', 'link-15');">DSSKey</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L227"></a><tt class="py-lineno"> 227</tt> <tt class="py-line"> <tt class="py-op">}</tt> </tt>
-<a name="L228"></a><tt class="py-lineno"> 228</tt> <tt class="py-line"> </tt>
-<a name="L229"></a><tt class="py-lineno"> 229</tt> <tt class="py-line"> <tt id="link-90" class="py-name" targets="Variable paramiko.Transport._kex_info=paramiko.Transport-class.html#_kex_info"><a title="paramiko.Transport._kex_info" class="py-name" href="#" onclick="return doclink('link-90', '_kex_info', 'link-90');">_kex_info</a></tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> </tt>
-<a name="L230"></a><tt class="py-lineno"> 230</tt> <tt class="py-line"> <tt class="py-string">'diffie-hellman-group1-sha1'</tt><tt class="py-op">:</tt> <tt id="link-91" class="py-name"><a title="paramiko.kex_group1.KexGroup1" class="py-name" href="#" onclick="return doclink('link-91', 'KexGroup1', 'link-21');">KexGroup1</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L231"></a><tt class="py-lineno"> 231</tt> <tt class="py-line"> <tt class="py-string">'diffie-hellman-group-exchange-sha1'</tt><tt class="py-op">:</tt> <tt id="link-92" class="py-name"><a title="paramiko.kex_gex.KexGex" class="py-name" href="#" onclick="return doclink('link-92', 'KexGex', 'link-18');">KexGex</a></tt><tt class="py-op">,</tt> </tt>
-<a name="L232"></a><tt class="py-lineno"> 232</tt> <tt class="py-line"> <tt class="py-op">}</tt> </tt>
-<a name="L233"></a><tt class="py-lineno"> 233</tt> <tt class="py-line"> </tt>
-<a name="L234"></a><tt class="py-lineno"> 234</tt> <tt class="py-line"> <tt id="link-93" class="py-name" targets="Variable paramiko.Transport._compression_info=paramiko.Transport-class.html#_compression_info"><a title="paramiko.Transport._compression_info" class="py-name" href="#" onclick="return doclink('link-93', '_compression_info', 'link-93');">_compression_info</a></tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> </tt>
-<a name="L235"></a><tt class="py-lineno"> 235</tt> <tt class="py-line"> <tt class="py-comment"># zlib@openssh.com is just zlib, but only turned on after a successful</tt> </tt>
-<a name="L236"></a><tt class="py-lineno"> 236</tt> <tt class="py-line"> <tt class="py-comment"># authentication. openssh servers may only offer this type because</tt> </tt>
-<a name="L237"></a><tt class="py-lineno"> 237</tt> <tt class="py-line"> <tt class="py-comment"># they've had troubles with security holes in zlib in the past.</tt> </tt>
-<a name="L238"></a><tt class="py-lineno"> 238</tt> <tt class="py-line"> <tt class="py-string">'zlib@openssh.com'</tt><tt class="py-op">:</tt> <tt class="py-op">(</tt> <tt id="link-94" class="py-name"><a title="paramiko.compress.ZlibCompressor" class="py-name" href="#" onclick="return doclink('link-94', 'ZlibCompressor', 'link-11');">ZlibCompressor</a></tt><tt class="py-op">,</tt> <tt id="link-95" class="py-name"><a title="paramiko.compress.ZlibDecompressor" class="py-name" href="#" onclick="return doclink('link-95', 'ZlibDecompressor', 'link-12');">ZlibDecompressor</a></tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L239"></a><tt class="py-lineno"> 239</tt> <tt class="py-line"> <tt class="py-string">'zlib'</tt><tt class="py-op">:</tt> <tt class="py-op">(</tt> <tt id="link-96" class="py-name"><a title="paramiko.compress.ZlibCompressor" class="py-name" href="#" onclick="return doclink('link-96', 'ZlibCompressor', 'link-11');">ZlibCompressor</a></tt><tt class="py-op">,</tt> <tt id="link-97" class="py-name"><a title="paramiko.compress.ZlibDecompressor" class="py-name" href="#" onclick="return doclink('link-97', 'ZlibDecompressor', 'link-12');">ZlibDecompressor</a></tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L240"></a><tt class="py-lineno"> 240</tt> <tt class="py-line"> <tt class="py-string">'none'</tt><tt class="py-op">:</tt> <tt class="py-op">(</tt> <tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt> <tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L241"></a><tt class="py-lineno"> 241</tt> <tt class="py-line"> <tt class="py-op">}</tt> </tt>
-<a name="L242"></a><tt class="py-lineno"> 242</tt> <tt class="py-line"> </tt>
-<a name="L243"></a><tt class="py-lineno"> 243</tt> <tt class="py-line"> </tt>
-<a name="L244"></a><tt class="py-lineno"> 244</tt> <tt class="py-line"> <tt id="link-98" class="py-name" targets="Variable paramiko.Transport._modulus_pack=paramiko.Transport-class.html#_modulus_pack"><a title="paramiko.Transport._modulus_pack" class="py-name" href="#" onclick="return doclink('link-98', '_modulus_pack', 'link-98');">_modulus_pack</a></tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L245"></a><tt class="py-lineno"> 245</tt> <tt class="py-line"> </tt>
-<a name="Transport.__init__"></a><div id="Transport.__init__-def"><a name="L246"></a><tt class="py-lineno"> 246</tt> <a class="py-toggle" href="#" id="Transport.__init__-toggle" onclick="return toggle('Transport.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">sock</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.__init__-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.__init__-expanded"><a name="L247"></a><tt class="py-lineno"> 247</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L248"></a><tt class="py-lineno"> 248</tt> <tt class="py-line"><tt class="py-docstring"> Create a new SSH session over an existing socket, or socket-like</tt> </tt>
-<a name="L249"></a><tt class="py-lineno"> 249</tt> <tt class="py-line"><tt class="py-docstring"> object. This only creates the Transport object; it doesn't begin the</tt> </tt>
-<a name="L250"></a><tt class="py-lineno"> 250</tt> <tt class="py-line"><tt class="py-docstring"> SSH session yet. Use L{connect} or L{start_client} to begin a client</tt> </tt>
-<a name="L251"></a><tt class="py-lineno"> 251</tt> <tt class="py-line"><tt class="py-docstring"> session, or L{start_server} to begin a server session.</tt> </tt>
-<a name="L252"></a><tt class="py-lineno"> 252</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L253"></a><tt class="py-lineno"> 253</tt> <tt class="py-line"><tt class="py-docstring"> If the object is not actually a socket, it must have the following</tt> </tt>
-<a name="L254"></a><tt class="py-lineno"> 254</tt> <tt class="py-line"><tt class="py-docstring"> methods:</tt> </tt>
-<a name="L255"></a><tt class="py-lineno"> 255</tt> <tt class="py-line"><tt class="py-docstring"> - C{send(str)}: Writes from 1 to C{len(str)} bytes, and</tt> </tt>
-<a name="L256"></a><tt class="py-lineno"> 256</tt> <tt class="py-line"><tt class="py-docstring"> returns an int representing the number of bytes written. Returns</tt> </tt>
-<a name="L257"></a><tt class="py-lineno"> 257</tt> <tt class="py-line"><tt class="py-docstring"> 0 or raises C{EOFError} if the stream has been closed.</tt> </tt>
-<a name="L258"></a><tt class="py-lineno"> 258</tt> <tt class="py-line"><tt class="py-docstring"> - C{recv(int)}: Reads from 1 to C{int} bytes and returns them as a</tt> </tt>
-<a name="L259"></a><tt class="py-lineno"> 259</tt> <tt class="py-line"><tt class="py-docstring"> string. Returns 0 or raises C{EOFError} if the stream has been</tt> </tt>
-<a name="L260"></a><tt class="py-lineno"> 260</tt> <tt class="py-line"><tt class="py-docstring"> closed.</tt> </tt>
-<a name="L261"></a><tt class="py-lineno"> 261</tt> <tt class="py-line"><tt class="py-docstring"> - C{close()}: Closes the socket.</tt> </tt>
-<a name="L262"></a><tt class="py-lineno"> 262</tt> <tt class="py-line"><tt class="py-docstring"> - C{settimeout(n)}: Sets a (float) timeout on I/O operations.</tt> </tt>
-<a name="L263"></a><tt class="py-lineno"> 263</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L264"></a><tt class="py-lineno"> 264</tt> <tt class="py-line"><tt class="py-docstring"> For ease of use, you may also pass in an address (as a tuple) or a host</tt> </tt>
-<a name="L265"></a><tt class="py-lineno"> 265</tt> <tt class="py-line"><tt class="py-docstring"> string as the C{sock} argument. (A host string is a hostname with an</tt> </tt>
-<a name="L266"></a><tt class="py-lineno"> 266</tt> <tt class="py-line"><tt class="py-docstring"> optional port (separated by C{":"}) which will be converted into a</tt> </tt>
-<a name="L267"></a><tt class="py-lineno"> 267</tt> <tt class="py-line"><tt class="py-docstring"> tuple of C{(hostname, port)}.) A socket will be connected to this</tt> </tt>
-<a name="L268"></a><tt class="py-lineno"> 268</tt> <tt class="py-line"><tt class="py-docstring"> address and used for communication. Exceptions from the C{socket} call</tt> </tt>
-<a name="L269"></a><tt class="py-lineno"> 269</tt> <tt class="py-line"><tt class="py-docstring"> may be thrown in this case.</tt> </tt>
-<a name="L270"></a><tt class="py-lineno"> 270</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L271"></a><tt class="py-lineno"> 271</tt> <tt class="py-line"><tt class="py-docstring"> @param sock: a socket or socket-like object to create the session over.</tt> </tt>
-<a name="L272"></a><tt class="py-lineno"> 272</tt> <tt class="py-line"><tt class="py-docstring"> @type sock: socket</tt> </tt>
-<a name="L273"></a><tt class="py-lineno"> 273</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L274"></a><tt class="py-lineno"> 274</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">sock</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">,</tt> <tt class="py-name">unicode</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L275"></a><tt class="py-lineno"> 275</tt> <tt class="py-line"> <tt class="py-comment"># convert "host:port" into (host, port)</tt> </tt>
-<a name="L276"></a><tt class="py-lineno"> 276</tt> <tt class="py-line"> <tt class="py-name">hl</tt> <tt class="py-op">=</tt> <tt class="py-name">sock</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">':'</tt><tt class="py-op">,</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> </tt>
-<a name="L277"></a><tt class="py-lineno"> 277</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">hl</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L278"></a><tt class="py-lineno"> 278</tt> <tt class="py-line"> <tt class="py-name">sock</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">hl</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-number">22</tt><tt class="py-op">)</tt> </tt>
-<a name="L279"></a><tt class="py-lineno"> 279</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L280"></a><tt class="py-lineno"> 280</tt> <tt class="py-line"> <tt class="py-name">sock</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">hl</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">hl</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L281"></a><tt class="py-lineno"> 281</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">sock</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">tuple</tt><tt class="py-op">:</tt> </tt>
-<a name="L282"></a><tt class="py-lineno"> 282</tt> <tt class="py-line"> <tt class="py-comment"># connect to the given (host, port)</tt> </tt>
-<a name="L283"></a><tt class="py-lineno"> 283</tt> <tt class="py-line"> <tt class="py-name">hostname</tt><tt class="py-op">,</tt> <tt class="py-name">port</tt> <tt class="py-op">=</tt> <tt class="py-name">sock</tt> </tt>
-<a name="L284"></a><tt class="py-lineno"> 284</tt> <tt class="py-line"> <tt class="py-name">reason</tt> <tt class="py-op">=</tt> <tt class="py-string">'No suitable address family'</tt> </tt>
-<a name="L285"></a><tt class="py-lineno"> 285</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-op">(</tt><tt class="py-name">family</tt><tt class="py-op">,</tt> <tt class="py-name">socktype</tt><tt class="py-op">,</tt> <tt class="py-name">proto</tt><tt class="py-op">,</tt> <tt class="py-name">canonname</tt><tt class="py-op">,</tt> <tt class="py-name">sockaddr</tt><tt class="py-op">)</tt> <tt class="py-keyword">in</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">getaddrinfo</tt><tt class="py-op">(</tt><tt class="py-name">hostname</tt><tt class="py-op">,</tt> <tt class="py-name">port</tt><tt class="py-op">,</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">AF_UNSPEC</tt><tt class="py-op">,</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">SOCK_STREAM</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L286"></a><tt class="py-lineno"> 286</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">socktype</tt> <tt class="py-op">==</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">SOCK_STREAM</tt><tt class="py-op">:</tt> </tt>
-<a name="L287"></a><tt class="py-lineno"> 287</tt> <tt class="py-line"> <tt class="py-name">af</tt> <tt class="py-op">=</tt> <tt class="py-name">family</tt> </tt>
-<a name="L288"></a><tt class="py-lineno"> 288</tt> <tt class="py-line"> <tt class="py-name">addr</tt> <tt class="py-op">=</tt> <tt class="py-name">sockaddr</tt> </tt>
-<a name="L289"></a><tt class="py-lineno"> 289</tt> <tt class="py-line"> <tt class="py-name">sock</tt> <tt class="py-op">=</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">socket</tt><tt class="py-op">(</tt><tt class="py-name">af</tt><tt class="py-op">,</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">SOCK_STREAM</tt><tt class="py-op">)</tt> </tt>
-<a name="L290"></a><tt class="py-lineno"> 290</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L291"></a><tt class="py-lineno"> 291</tt> <tt class="py-line"> <tt class="py-name">sock</tt><tt class="py-op">.</tt><tt id="link-99" class="py-name" targets="Method paramiko.SSHClient.connect()=paramiko.SSHClient-class.html#connect,Method paramiko.Transport.connect()=paramiko.Transport-class.html#connect"><a title="paramiko.SSHClient.connect
-paramiko.Transport.connect" class="py-name" href="#" onclick="return doclink('link-99', 'connect', 'link-99');">connect</a></tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">hostname</tt><tt class="py-op">,</tt> <tt class="py-name">port</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L292"></a><tt class="py-lineno"> 292</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">error</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L293"></a><tt class="py-lineno"> 293</tt> <tt class="py-line"> <tt class="py-name">reason</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">)</tt> </tt>
-<a name="L294"></a><tt class="py-lineno"> 294</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L295"></a><tt class="py-lineno"> 295</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L296"></a><tt class="py-lineno"> 296</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L297"></a><tt class="py-lineno"> 297</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-100" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-100', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L298"></a><tt class="py-lineno"> 298</tt> <tt class="py-line"> <tt class="py-string">'Unable to connect to %s: %s'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">hostname</tt><tt class="py-op">,</tt> <tt class="py-name">reason</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L299"></a><tt class="py-lineno"> 299</tt> <tt class="py-line"> <tt class="py-comment"># okay, normal socket-ish flow here...</tt> </tt>
-<a name="L300"></a><tt class="py-lineno"> 300</tt> <tt class="py-line"> <tt class="py-name">threading</tt><tt class="py-op">.</tt><tt class="py-name">Thread</tt><tt class="py-op">.</tt><tt id="link-101" class="py-name" targets="Method paramiko.Agent.__init__()=paramiko.Agent-class.html#__init__,Method paramiko.AgentKey.__init__()=paramiko.AgentKey-class.html#__init__,Method paramiko.BadAuthenticationType.__init__()=paramiko.BadAuthenticationType-class.html#__init__,Method paramiko.BadHostKeyException.__init__()=paramiko.BadHostKeyException-class.html#__init__,Method paramiko.BufferedFile.__init__()=paramiko.BufferedFile-class.html#__init__,Method paramiko.Channel.__init__()=paramiko.Channel-class.html#__init__,Method paramiko.ChannelException.__init__()=paramiko.ChannelException-class.html#__init__,Method paramiko.DSSKey.__init__()=paramiko.DSSKey-class.html#__init__,Method paramiko.HostKeys.__init__()=paramiko.HostKeys-class.html#__init__,Method paramiko.Message.__init__()=paramiko.Message-class.html#__init__,Method paramiko.PKey.__init__()=paramiko.PKey-class.html#__init__,Method paramiko.RSAKey.__init__()=paramiko.RSAKey-class.html#__init__,Method paramiko.SFTPAttributes.__init__()=paramiko.SFTPAttributes-class.html#__init__,Method paramiko.SFTPClient.__init__()=paramiko.SFTPClient-class.html#__init__,Method paramiko.SFTPFile.__init__()=paramiko.SFTPFile-class.html#__init__,Method paramiko.SFTPHandle.__init__()=paramiko.SFTPHandle-class.html#__init__,Method paramiko.SFTPServer.__init__()=paramiko.SFTPServer-class.html#__init__,Method paramiko.SFTPServerInterface.__init__()=paramiko.SFTPServerInterface-class.html#__init__,Method paramiko.SSHClient.__init__()=paramiko.SSHClient-class.html#__init__,Method paramiko.SSHConfig.__init__()=paramiko.SSHConfig-class.html#__init__,Method paramiko.SecurityOptions.__init__()=paramiko.SecurityOptions-class.html#__init__,Method paramiko.SubsystemHandler.__init__()=paramiko.SubsystemHandler-class.html#__init__,Method paramiko.Transport.__init__()=paramiko.Transport-class.html#__init__,Method paramiko.ber.BER.__init__()=paramiko.ber.BER-class.html#__init__,Method paramiko.buffered_pipe.BufferedPipe.__init__()=paramiko.buffered_pipe.BufferedPipe-class.html#__init__,Method paramiko.channel.ChannelStderrFile.__init__()=paramiko.channel.ChannelStderrFile-class.html#__init__,Method paramiko.compress.ZlibCompressor.__init__()=paramiko.compress.ZlibCompressor-class.html#__init__,Method paramiko.compress.ZlibDecompressor.__init__()=paramiko.compress.ZlibDecompressor-class.html#__init__,Method paramiko.hostkeys.HostKeyEntry.__init__()=paramiko.hostkeys.HostKeyEntry-class.html#__init__,Method paramiko.kex_gex.KexGex.__init__()=paramiko.kex_gex.KexGex-class.html#__init__,Method paramiko.kex_group1.KexGroup1.__init__()=paramiko.kex_group1.KexGroup1-class.html#__init__,Method paramiko.logging22.Formatter.__init__()=paramiko.logging22.Formatter-class.html#__init__,Method paramiko.logging22.StreamHandler.__init__()=paramiko.logging22.StreamHandler-class.html#__init__,Method paramiko.logging22.logger.__init__()=paramiko.logging22.logger-class.html#__init__,Method paramiko.pipe.OrPipe.__init__()=paramiko.pipe.OrPipe-class.html#__init__,Method paramiko.pipe.PosixPipe.__init__()=paramiko.pipe.PosixPipe-class.html#__init__,Method paramiko.pipe.WindowsPipe.__init__()=paramiko.pipe.WindowsPipe-class.html#__init__,Method paramiko.primes.ModulusPack.__init__()=paramiko.primes.ModulusPack-class.html#__init__,Method paramiko.ssh_exception.PartialAuthentication.__init__()=paramiko.ssh_exception.PartialAuthentication-class.html#__init__,Method paramiko.transport.ChannelMap.__init__()=paramiko.transport.ChannelMap-class.html#__init__,Method paramiko.util.Counter.__init__()=paramiko.util.Counter-class.html#__init__,Method paramiko.util.enumerate.__init__()=paramiko.util.enumerate-class.html#__init__,Method paramiko.win_pageant.PageantConnection.__init__()=paramiko.win_pageant.PageantConnection-class.html#__init__"><a title="paramiko.Agent.__init__
-paramiko.AgentKey.__init__
-paramiko.BadAuthenticationType.__init__
-paramiko.BadHostKeyException.__init__
-paramiko.BufferedFile.__init__
-paramiko.Channel.__init__
-paramiko.ChannelException.__init__
-paramiko.DSSKey.__init__
-paramiko.HostKeys.__init__
-paramiko.Message.__init__
-paramiko.PKey.__init__
-paramiko.RSAKey.__init__
-paramiko.SFTPAttributes.__init__
-paramiko.SFTPClient.__init__
-paramiko.SFTPFile.__init__
-paramiko.SFTPHandle.__init__
-paramiko.SFTPServer.__init__
-paramiko.SFTPServerInterface.__init__
-paramiko.SSHClient.__init__
-paramiko.SSHConfig.__init__
-paramiko.SecurityOptions.__init__
-paramiko.SubsystemHandler.__init__
-paramiko.Transport.__init__
-paramiko.ber.BER.__init__
-paramiko.buffered_pipe.BufferedPipe.__init__
-paramiko.channel.ChannelStderrFile.__init__
-paramiko.compress.ZlibCompressor.__init__
-paramiko.compress.ZlibDecompressor.__init__
-paramiko.hostkeys.HostKeyEntry.__init__
-paramiko.kex_gex.KexGex.__init__
-paramiko.kex_group1.KexGroup1.__init__
-paramiko.logging22.Formatter.__init__
-paramiko.logging22.StreamHandler.__init__
-paramiko.logging22.logger.__init__
-paramiko.pipe.OrPipe.__init__
-paramiko.pipe.PosixPipe.__init__
-paramiko.pipe.WindowsPipe.__init__
-paramiko.primes.ModulusPack.__init__
-paramiko.ssh_exception.PartialAuthentication.__init__
-paramiko.transport.ChannelMap.__init__
-paramiko.util.Counter.__init__
-paramiko.util.enumerate.__init__
-paramiko.win_pageant.PageantConnection.__init__" class="py-name" href="#" onclick="return doclink('link-101', '__init__', 'link-101');">__init__</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt> </tt>
-<a name="L301"></a><tt class="py-lineno"> 301</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">setDaemon</tt><tt class="py-op">(</tt><tt class="py-name">True</tt><tt class="py-op">)</tt> </tt>
-<a name="L302"></a><tt class="py-lineno"> 302</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-102" class="py-name" targets="Variable paramiko.auth_handler.rng=paramiko.auth_handler-module.html#rng,Variable paramiko.channel.rng=paramiko.channel-module.html#rng,Variable paramiko.client.rng=paramiko.client-module.html#rng,Variable paramiko.common.rng=paramiko.common-module.html#rng,Variable paramiko.dsskey.rng=paramiko.dsskey-module.html#rng,Variable paramiko.hostkeys.rng=paramiko.hostkeys-module.html#rng,Variable paramiko.kex_gex.rng=paramiko.kex_gex-module.html#rng,Variable paramiko.kex_group1.rng=paramiko.kex_group1-module.html#rng,Variable paramiko.packet.rng=paramiko.packet-module.html#rng,Variable paramiko.pkey.rng=paramiko.pkey-module.html#rng,Variable paramiko.rsakey.rng=paramiko.rsakey-module.html#rng,Variable paramiko.server.rng=paramiko.server-module.html#rng,Variable paramiko.sftp.rng=paramiko.sftp-module.html#rng,Variable paramiko.sftp_attr.rng=paramiko.sftp_attr-module.html#rng,Variable paramiko.sftp_client.rng=paramiko.sftp_client-module.html#rng,Variable paramiko.sftp_file.rng=paramiko.sftp_file-module.html#rng,Variable paramiko.sftp_handle.rng=paramiko.sftp_handle-module.html#rng,Variable paramiko.sftp_server.rng=paramiko.sftp_server-module.html#rng,Variable paramiko.sftp_si.rng=paramiko.sftp_si-module.html#rng,Variable paramiko.transport.rng=paramiko.transport-module.html#rng,Variable paramiko.util.rng=paramiko.util-module.html#rng"><a title="paramiko.auth_handler.rng
-paramiko.channel.rng
-paramiko.client.rng
-paramiko.common.rng
-paramiko.dsskey.rng
-paramiko.hostkeys.rng
-paramiko.kex_gex.rng
-paramiko.kex_group1.rng
-paramiko.packet.rng
-paramiko.pkey.rng
-paramiko.rsakey.rng
-paramiko.server.rng
-paramiko.sftp.rng
-paramiko.sftp_attr.rng
-paramiko.sftp_client.rng
-paramiko.sftp_file.rng
-paramiko.sftp_handle.rng
-paramiko.sftp_server.rng
-paramiko.sftp_si.rng
-paramiko.transport.rng
-paramiko.util.rng" class="py-name" href="#" onclick="return doclink('link-102', 'rng', 'link-102');">rng</a></tt> <tt class="py-op">=</tt> <tt id="link-103" class="py-name"><a title="paramiko.auth_handler.rng
-paramiko.channel.rng
-paramiko.client.rng
-paramiko.common.rng
-paramiko.dsskey.rng
-paramiko.hostkeys.rng
-paramiko.kex_gex.rng
-paramiko.kex_group1.rng
-paramiko.packet.rng
-paramiko.pkey.rng
-paramiko.rsakey.rng
-paramiko.server.rng
-paramiko.sftp.rng
-paramiko.sftp_attr.rng
-paramiko.sftp_client.rng
-paramiko.sftp_file.rng
-paramiko.sftp_handle.rng
-paramiko.sftp_server.rng
-paramiko.sftp_si.rng
-paramiko.transport.rng
-paramiko.util.rng" class="py-name" href="#" onclick="return doclink('link-103', 'rng', 'link-102');">rng</a></tt> </tt>
-<a name="L303"></a><tt class="py-lineno"> 303</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">sock</tt> <tt class="py-op">=</tt> <tt class="py-name">sock</tt> </tt>
-<a name="L304"></a><tt class="py-lineno"> 304</tt> <tt class="py-line"> <tt class="py-comment"># Python &lt; 2.3 doesn't have the settimeout method - RogerB</tt> </tt>
-<a name="L305"></a><tt class="py-lineno"> 305</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L306"></a><tt class="py-lineno"> 306</tt> <tt class="py-line"> <tt class="py-comment"># we set the timeout so we can check self.active periodically to</tt> </tt>
-<a name="L307"></a><tt class="py-lineno"> 307</tt> <tt class="py-line"> <tt class="py-comment"># see if we should bail. socket.timeout exception is never</tt> </tt>
-<a name="L308"></a><tt class="py-lineno"> 308</tt> <tt class="py-line"> <tt class="py-comment"># propagated.</tt> </tt>
-<a name="L309"></a><tt class="py-lineno"> 309</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">sock</tt><tt class="py-op">.</tt><tt id="link-104" class="py-name" targets="Method paramiko.Channel.settimeout()=paramiko.Channel-class.html#settimeout,Method paramiko.SFTPFile.settimeout()=paramiko.SFTPFile-class.html#settimeout"><a title="paramiko.Channel.settimeout
-paramiko.SFTPFile.settimeout" class="py-name" href="#" onclick="return doclink('link-104', 'settimeout', 'link-104');">settimeout</a></tt><tt class="py-op">(</tt><tt class="py-number">0.1</tt><tt class="py-op">)</tt> </tt>
-<a name="L310"></a><tt class="py-lineno"> 310</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">AttributeError</tt><tt class="py-op">:</tt> </tt>
-<a name="L311"></a><tt class="py-lineno"> 311</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L312"></a><tt class="py-lineno"> 312</tt> <tt class="py-line"> </tt>
-<a name="L313"></a><tt class="py-lineno"> 313</tt> <tt class="py-line"> <tt class="py-comment"># negotiated crypto parameters</tt> </tt>
-<a name="L314"></a><tt class="py-lineno"> 314</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">packetizer</tt> <tt class="py-op">=</tt> <tt class="py-name">Packetizer</tt><tt class="py-op">(</tt><tt class="py-name">sock</tt><tt class="py-op">)</tt> </tt>
-<a name="L315"></a><tt class="py-lineno"> 315</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">local_version</tt> <tt class="py-op">=</tt> <tt class="py-string">'SSH-'</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-105" class="py-name"><a title="paramiko.Transport._PROTO_ID" class="py-name" href="#" onclick="return doclink('link-105', '_PROTO_ID', 'link-78');">_PROTO_ID</a></tt> <tt class="py-op">+</tt> <tt class="py-string">'-'</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-106" class="py-name"><a title="paramiko.Transport._CLIENT_ID" class="py-name" href="#" onclick="return doclink('link-106', '_CLIENT_ID', 'link-79');">_CLIENT_ID</a></tt> </tt>
-<a name="L316"></a><tt class="py-lineno"> 316</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_version</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L317"></a><tt class="py-lineno"> 317</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">local_cipher</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_cipher</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L318"></a><tt class="py-lineno"> 318</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">local_kex_init</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_kex_init</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L319"></a><tt class="py-lineno"> 319</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">local_mac</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_mac</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L320"></a><tt class="py-lineno"> 320</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">local_compression</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_compression</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L321"></a><tt class="py-lineno"> 321</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">session_id</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L322"></a><tt class="py-lineno"> 322</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">host_key_type</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L323"></a><tt class="py-lineno"> 323</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">host_key</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L324"></a><tt class="py-lineno"> 324</tt> <tt class="py-line"> </tt>
-<a name="L325"></a><tt class="py-lineno"> 325</tt> <tt class="py-line"> <tt class="py-comment"># state used during negotiation</tt> </tt>
-<a name="L326"></a><tt class="py-lineno"> 326</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">kex_engine</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L327"></a><tt class="py-lineno"> 327</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">H</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L328"></a><tt class="py-lineno"> 328</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">K</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L329"></a><tt class="py-lineno"> 329</tt> <tt class="py-line"> </tt>
-<a name="L330"></a><tt class="py-lineno"> 330</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L331"></a><tt class="py-lineno"> 331</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">initial_kex_done</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L332"></a><tt class="py-lineno"> 332</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_kex</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L333"></a><tt class="py-lineno"> 333</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">authenticated</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L334"></a><tt class="py-lineno"> 334</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_expected_packet</tt> <tt class="py-op">=</tt> <tt class="py-name">tuple</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L335"></a><tt class="py-lineno"> 335</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt> <tt class="py-op">=</tt> <tt class="py-name">threading</tt><tt class="py-op">.</tt><tt class="py-name">Lock</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-comment"># synchronization (always higher level than write_lock)</tt> </tt>
-<a name="L336"></a><tt class="py-lineno"> 336</tt> <tt class="py-line"> </tt>
-<a name="L337"></a><tt class="py-lineno"> 337</tt> <tt class="py-line"> <tt class="py-comment"># tracking open channels</tt> </tt>
-<a name="L338"></a><tt class="py-lineno"> 338</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_channels</tt> <tt class="py-op">=</tt> <tt id="link-107" class="py-name" targets="Class paramiko.transport.ChannelMap=paramiko.transport.ChannelMap-class.html"><a title="paramiko.transport.ChannelMap" class="py-name" href="#" onclick="return doclink('link-107', 'ChannelMap', 'link-107');">ChannelMap</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L339"></a><tt class="py-lineno"> 339</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">channel_events</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> <tt class="py-op">}</tt> <tt class="py-comment"># (id -&gt; Event)</tt> </tt>
-<a name="L340"></a><tt class="py-lineno"> 340</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">channels_seen</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> <tt class="py-op">}</tt> <tt class="py-comment"># (id -&gt; True)</tt> </tt>
-<a name="L341"></a><tt class="py-lineno"> 341</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_channel_counter</tt> <tt class="py-op">=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L342"></a><tt class="py-lineno"> 342</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">window_size</tt> <tt class="py-op">=</tt> <tt class="py-number">65536</tt> </tt>
-<a name="L343"></a><tt class="py-lineno"> 343</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">max_packet_size</tt> <tt class="py-op">=</tt> <tt class="py-number">34816</tt> </tt>
-<a name="L344"></a><tt class="py-lineno"> 344</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_x11_handler</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L345"></a><tt class="py-lineno"> 345</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_tcp_handler</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L346"></a><tt class="py-lineno"> 346</tt> <tt class="py-line"> </tt>
-<a name="L347"></a><tt class="py-lineno"> 347</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">saved_exception</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L348"></a><tt class="py-lineno"> 348</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">clear_to_send</tt> <tt class="py-op">=</tt> <tt class="py-name">threading</tt><tt class="py-op">.</tt><tt class="py-name">Event</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L349"></a><tt class="py-lineno"> 349</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">clear_to_send_lock</tt> <tt class="py-op">=</tt> <tt class="py-name">threading</tt><tt class="py-op">.</tt><tt class="py-name">Lock</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L350"></a><tt class="py-lineno"> 350</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">clear_to_send_timeout</tt> <tt class="py-op">=</tt> <tt class="py-number">30.0</tt> </tt>
-<a name="L351"></a><tt class="py-lineno"> 351</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">log_name</tt> <tt class="py-op">=</tt> <tt class="py-string">'paramiko.transport'</tt> </tt>
-<a name="L352"></a><tt class="py-lineno"> 352</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-108" class="py-name" targets="Class paramiko.logging22.logger=paramiko.logging22.logger-class.html"><a title="paramiko.logging22.logger" class="py-name" href="#" onclick="return doclink('link-108', 'logger', 'link-108');">logger</a></tt> <tt class="py-op">=</tt> <tt id="link-109" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-109', 'util', 'link-1');">util</a></tt><tt class="py-op">.</tt><tt id="link-110" class="py-name" targets="Function paramiko.util.get_logger()=paramiko.util-module.html#get_logger"><a title="paramiko.util.get_logger" class="py-name" href="#" onclick="return doclink('link-110', 'get_logger', 'link-110');">get_logger</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">log_name</tt><tt class="py-op">)</tt> </tt>
-<a name="L353"></a><tt class="py-lineno"> 353</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">packetizer</tt><tt class="py-op">.</tt><tt class="py-name">set_log</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-111" class="py-name"><a title="paramiko.logging22.logger" class="py-name" href="#" onclick="return doclink('link-111', 'logger', 'link-108');">logger</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L354"></a><tt class="py-lineno"> 354</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-112" class="py-name"><a title="paramiko.auth_handler" class="py-name" href="#" onclick="return doclink('link-112', 'auth_handler', 'link-3');">auth_handler</a></tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L355"></a><tt class="py-lineno"> 355</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">global_response</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> <tt class="py-comment"># response Message from an arbitrary global request</tt> </tt>
-<a name="L356"></a><tt class="py-lineno"> 356</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">completion_event</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> <tt class="py-comment"># user-defined event callbacks</tt> </tt>
-<a name="L357"></a><tt class="py-lineno"> 357</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">banner_timeout</tt> <tt class="py-op">=</tt> <tt class="py-number">15</tt> <tt class="py-comment"># how long (seconds) to wait for the SSH banner</tt> </tt>
-<a name="L358"></a><tt class="py-lineno"> 358</tt> <tt class="py-line"> </tt>
-<a name="L359"></a><tt class="py-lineno"> 359</tt> <tt class="py-line"> <tt class="py-comment"># server mode:</tt> </tt>
-<a name="L360"></a><tt class="py-lineno"> 360</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_mode</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L361"></a><tt class="py-lineno"> 361</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_object</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L362"></a><tt class="py-lineno"> 362</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_key_dict</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> <tt class="py-op">}</tt> </tt>
-<a name="L363"></a><tt class="py-lineno"> 363</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_accepts</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-op">]</tt> </tt>
-<a name="L364"></a><tt class="py-lineno"> 364</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_accept_cv</tt> <tt class="py-op">=</tt> <tt class="py-name">threading</tt><tt class="py-op">.</tt><tt class="py-name">Condition</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">)</tt> </tt>
-<a name="L365"></a><tt class="py-lineno"> 365</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">subsystem_table</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> <tt class="py-op">}</tt> </tt>
-</div><a name="L366"></a><tt class="py-lineno"> 366</tt> <tt class="py-line"> </tt>
-<a name="Transport.__repr__"></a><div id="Transport.__repr__-def"><a name="L367"></a><tt class="py-lineno"> 367</tt> <a class="py-toggle" href="#" id="Transport.__repr__-toggle" onclick="return toggle('Transport.__repr__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#__repr__">__repr__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.__repr__-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.__repr__-expanded"><a name="L368"></a><tt class="py-lineno"> 368</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L369"></a><tt class="py-lineno"> 369</tt> <tt class="py-line"><tt class="py-docstring"> Returns a string representation of this object, for debugging.</tt> </tt>
-<a name="L370"></a><tt class="py-lineno"> 370</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L371"></a><tt class="py-lineno"> 371</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: str</tt> </tt>
-<a name="L372"></a><tt class="py-lineno"> 372</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L373"></a><tt class="py-lineno"> 373</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt class="py-string">'&lt;paramiko.Transport at %s'</tt> <tt class="py-op">%</tt> <tt class="py-name">hex</tt><tt class="py-op">(</tt><tt class="py-name">long</tt><tt class="py-op">(</tt><tt class="py-name">id</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">&amp;</tt> <tt class="py-number">0xffffffffL</tt><tt class="py-op">)</tt> </tt>
-<a name="L374"></a><tt class="py-lineno"> 374</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt><tt class="py-op">:</tt> </tt>
-<a name="L375"></a><tt class="py-lineno"> 375</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">+=</tt> <tt class="py-string">' (unconnected)'</tt> </tt>
-<a name="L376"></a><tt class="py-lineno"> 376</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L377"></a><tt class="py-lineno"> 377</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">local_cipher</tt> <tt class="py-op">!=</tt> <tt class="py-string">''</tt><tt class="py-op">:</tt> </tt>
-<a name="L378"></a><tt class="py-lineno"> 378</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">+=</tt> <tt class="py-string">' (cipher %s, %d bits)'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">local_cipher</tt><tt class="py-op">,</tt> </tt>
-<a name="L379"></a><tt class="py-lineno"> 379</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-113" class="py-name"><a title="paramiko.Transport._cipher_info" class="py-name" href="#" onclick="return doclink('link-113', '_cipher_info', 'link-85');">_cipher_info</a></tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">local_cipher</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'key-size'</tt><tt class="py-op">]</tt> <tt class="py-op">*</tt> <tt class="py-number">8</tt><tt class="py-op">)</tt> </tt>
-<a name="L380"></a><tt class="py-lineno"> 380</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-114" class="py-name" targets="Method paramiko.Transport.is_authenticated()=paramiko.Transport-class.html#is_authenticated"><a title="paramiko.Transport.is_authenticated" class="py-name" href="#" onclick="return doclink('link-114', 'is_authenticated', 'link-114');">is_authenticated</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L381"></a><tt class="py-lineno"> 381</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">+=</tt> <tt class="py-string">' (active; %d open channel(s))'</tt> <tt class="py-op">%</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_channels</tt><tt class="py-op">)</tt> </tt>
-<a name="L382"></a><tt class="py-lineno"> 382</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">initial_kex_done</tt><tt class="py-op">:</tt> </tt>
-<a name="L383"></a><tt class="py-lineno"> 383</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">+=</tt> <tt class="py-string">' (connected; awaiting auth)'</tt> </tt>
-<a name="L384"></a><tt class="py-lineno"> 384</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L385"></a><tt class="py-lineno"> 385</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">+=</tt> <tt class="py-string">' (connecting)'</tt> </tt>
-<a name="L386"></a><tt class="py-lineno"> 386</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">+=</tt> <tt class="py-string">'&gt;'</tt> </tt>
-<a name="L387"></a><tt class="py-lineno"> 387</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">out</tt> </tt>
-</div><a name="L388"></a><tt class="py-lineno"> 388</tt> <tt class="py-line"> </tt>
-<a name="Transport.atfork"></a><div id="Transport.atfork-def"><a name="L389"></a><tt class="py-lineno"> 389</tt> <a class="py-toggle" href="#" id="Transport.atfork-toggle" onclick="return toggle('Transport.atfork');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#atfork">atfork</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.atfork-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.atfork-expanded"><a name="L390"></a><tt class="py-lineno"> 390</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L391"></a><tt class="py-lineno"> 391</tt> <tt class="py-line"><tt class="py-docstring"> Terminate this Transport without closing the session. On posix</tt> </tt>
-<a name="L392"></a><tt class="py-lineno"> 392</tt> <tt class="py-line"><tt class="py-docstring"> systems, if a Transport is open during process forking, both parent</tt> </tt>
-<a name="L393"></a><tt class="py-lineno"> 393</tt> <tt class="py-line"><tt class="py-docstring"> and child will share the underlying socket, but only one process can</tt> </tt>
-<a name="L394"></a><tt class="py-lineno"> 394</tt> <tt class="py-line"><tt class="py-docstring"> use the connection (without corrupting the session). Use this method</tt> </tt>
-<a name="L395"></a><tt class="py-lineno"> 395</tt> <tt class="py-line"><tt class="py-docstring"> to clean up a Transport object without disrupting the other process.</tt> </tt>
-<a name="L396"></a><tt class="py-lineno"> 396</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L397"></a><tt class="py-lineno"> 397</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.5.3</tt> </tt>
-<a name="L398"></a><tt class="py-lineno"> 398</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L399"></a><tt class="py-lineno"> 399</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">sock</tt><tt class="py-op">.</tt><tt id="link-115" class="py-name" targets="Method paramiko.Agent.close()=paramiko.Agent-class.html#close,Method paramiko.BufferedFile.close()=paramiko.BufferedFile-class.html#close,Method paramiko.Channel.close()=paramiko.Channel-class.html#close,Method paramiko.SFTPClient.close()=paramiko.SFTPClient-class.html#close,Method paramiko.SFTPFile.close()=paramiko.SFTPFile-class.html#close,Method paramiko.SFTPHandle.close()=paramiko.SFTPHandle-class.html#close,Method paramiko.SSHClient.close()=paramiko.SSHClient-class.html#close,Method paramiko.Transport.close()=paramiko.Transport-class.html#close,Method paramiko.buffered_pipe.BufferedPipe.close()=paramiko.buffered_pipe.BufferedPipe-class.html#close,Method paramiko.pipe.PosixPipe.close()=paramiko.pipe.PosixPipe-class.html#close,Method paramiko.pipe.WindowsPipe.close()=paramiko.pipe.WindowsPipe-class.html#close,Method paramiko.win_pageant.PageantConnection.close()=paramiko.win_pageant.PageantConnection-class.html#close"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-115', 'close', 'link-115');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L400"></a><tt class="py-lineno"> 400</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-116" class="py-name"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-116', 'close', 'link-115');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L401"></a><tt class="py-lineno"> 401</tt> <tt class="py-line"> </tt>
-<a name="Transport.get_security_options"></a><div id="Transport.get_security_options-def"><a name="L402"></a><tt class="py-lineno"> 402</tt> <a class="py-toggle" href="#" id="Transport.get_security_options-toggle" onclick="return toggle('Transport.get_security_options');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#get_security_options">get_security_options</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.get_security_options-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.get_security_options-expanded"><a name="L403"></a><tt class="py-lineno"> 403</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L404"></a><tt class="py-lineno"> 404</tt> <tt class="py-line"><tt class="py-docstring"> Return a L{SecurityOptions} object which can be used to tweak the</tt> </tt>
-<a name="L405"></a><tt class="py-lineno"> 405</tt> <tt class="py-line"><tt class="py-docstring"> encryption algorithms this transport will permit, and the order of</tt> </tt>
-<a name="L406"></a><tt class="py-lineno"> 406</tt> <tt class="py-line"><tt class="py-docstring"> preference for them.</tt> </tt>
-<a name="L407"></a><tt class="py-lineno"> 407</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L408"></a><tt class="py-lineno"> 408</tt> <tt class="py-line"><tt class="py-docstring"> @return: an object that can be used to change the preferred algorithms</tt> </tt>
-<a name="L409"></a><tt class="py-lineno"> 409</tt> <tt class="py-line"><tt class="py-docstring"> for encryption, digest (hash), public key, and key exchange.</tt> </tt>
-<a name="L410"></a><tt class="py-lineno"> 410</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: L{SecurityOptions}</tt> </tt>
-<a name="L411"></a><tt class="py-lineno"> 411</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L412"></a><tt class="py-lineno"> 412</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-117" class="py-name" targets="Class paramiko.SecurityOptions=paramiko.SecurityOptions-class.html"><a title="paramiko.SecurityOptions" class="py-name" href="#" onclick="return doclink('link-117', 'SecurityOptions', 'link-117');">SecurityOptions</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L413"></a><tt class="py-lineno"> 413</tt> <tt class="py-line"> </tt>
-<a name="Transport.start_client"></a><div id="Transport.start_client-def"><a name="L414"></a><tt class="py-lineno"> 414</tt> <a class="py-toggle" href="#" id="Transport.start_client-toggle" onclick="return toggle('Transport.start_client');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#start_client">start_client</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">event</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.start_client-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.start_client-expanded"><a name="L415"></a><tt class="py-lineno"> 415</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L416"></a><tt class="py-lineno"> 416</tt> <tt class="py-line"><tt class="py-docstring"> Negotiate a new SSH2 session as a client. This is the first step after</tt> </tt>
-<a name="L417"></a><tt class="py-lineno"> 417</tt> <tt class="py-line"><tt class="py-docstring"> creating a new L{Transport}. A separate thread is created for protocol</tt> </tt>
-<a name="L418"></a><tt class="py-lineno"> 418</tt> <tt class="py-line"><tt class="py-docstring"> negotiation.</tt> </tt>
-<a name="L419"></a><tt class="py-lineno"> 419</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L420"></a><tt class="py-lineno"> 420</tt> <tt class="py-line"><tt class="py-docstring"> If an event is passed in, this method returns immediately. When</tt> </tt>
-<a name="L421"></a><tt class="py-lineno"> 421</tt> <tt class="py-line"><tt class="py-docstring"> negotiation is done (successful or not), the given C{Event} will</tt> </tt>
-<a name="L422"></a><tt class="py-lineno"> 422</tt> <tt class="py-line"><tt class="py-docstring"> be triggered. On failure, L{is_active} will return C{False}.</tt> </tt>
-<a name="L423"></a><tt class="py-lineno"> 423</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L424"></a><tt class="py-lineno"> 424</tt> <tt class="py-line"><tt class="py-docstring"> (Since 1.4) If C{event} is C{None}, this method will not return until</tt> </tt>
-<a name="L425"></a><tt class="py-lineno"> 425</tt> <tt class="py-line"><tt class="py-docstring"> negotation is done. On success, the method returns normally.</tt> </tt>
-<a name="L426"></a><tt class="py-lineno"> 426</tt> <tt class="py-line"><tt class="py-docstring"> Otherwise an SSHException is raised.</tt> </tt>
-<a name="L427"></a><tt class="py-lineno"> 427</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L428"></a><tt class="py-lineno"> 428</tt> <tt class="py-line"><tt class="py-docstring"> After a successful negotiation, you will usually want to authenticate,</tt> </tt>
-<a name="L429"></a><tt class="py-lineno"> 429</tt> <tt class="py-line"><tt class="py-docstring"> calling L{auth_password &lt;Transport.auth_password&gt;} or</tt> </tt>
-<a name="L430"></a><tt class="py-lineno"> 430</tt> <tt class="py-line"><tt class="py-docstring"> L{auth_publickey &lt;Transport.auth_publickey&gt;}.</tt> </tt>
-<a name="L431"></a><tt class="py-lineno"> 431</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L432"></a><tt class="py-lineno"> 432</tt> <tt class="py-line"><tt class="py-docstring"> @note: L{connect} is a simpler method for connecting as a client.</tt> </tt>
-<a name="L433"></a><tt class="py-lineno"> 433</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L434"></a><tt class="py-lineno"> 434</tt> <tt class="py-line"><tt class="py-docstring"> @note: After calling this method (or L{start_server} or L{connect}),</tt> </tt>
-<a name="L435"></a><tt class="py-lineno"> 435</tt> <tt class="py-line"><tt class="py-docstring"> you should no longer directly read from or write to the original</tt> </tt>
-<a name="L436"></a><tt class="py-lineno"> 436</tt> <tt class="py-line"><tt class="py-docstring"> socket object.</tt> </tt>
-<a name="L437"></a><tt class="py-lineno"> 437</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L438"></a><tt class="py-lineno"> 438</tt> <tt class="py-line"><tt class="py-docstring"> @param event: an event to trigger when negotiation is complete</tt> </tt>
-<a name="L439"></a><tt class="py-lineno"> 439</tt> <tt class="py-line"><tt class="py-docstring"> (optional)</tt> </tt>
-<a name="L440"></a><tt class="py-lineno"> 440</tt> <tt class="py-line"><tt class="py-docstring"> @type event: threading.Event</tt> </tt>
-<a name="L441"></a><tt class="py-lineno"> 441</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L442"></a><tt class="py-lineno"> 442</tt> <tt class="py-line"><tt class="py-docstring"> @raise SSHException: if negotiation fails (and no C{event} was passed</tt> </tt>
-<a name="L443"></a><tt class="py-lineno"> 443</tt> <tt class="py-line"><tt class="py-docstring"> in)</tt> </tt>
-<a name="L444"></a><tt class="py-lineno"> 444</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L445"></a><tt class="py-lineno"> 445</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L446"></a><tt class="py-lineno"> 446</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">event</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L447"></a><tt class="py-lineno"> 447</tt> <tt class="py-line"> <tt class="py-comment"># async, return immediately and let the app poll for completion</tt> </tt>
-<a name="L448"></a><tt class="py-lineno"> 448</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">completion_event</tt> <tt class="py-op">=</tt> <tt class="py-name">event</tt> </tt>
-<a name="L449"></a><tt class="py-lineno"> 449</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L450"></a><tt class="py-lineno"> 450</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L451"></a><tt class="py-lineno"> 451</tt> <tt class="py-line"> </tt>
-<a name="L452"></a><tt class="py-lineno"> 452</tt> <tt class="py-line"> <tt class="py-comment"># synchronous, wait for a result</tt> </tt>
-<a name="L453"></a><tt class="py-lineno"> 453</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">completion_event</tt> <tt class="py-op">=</tt> <tt class="py-name">event</tt> <tt class="py-op">=</tt> <tt class="py-name">threading</tt><tt class="py-op">.</tt><tt class="py-name">Event</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L454"></a><tt class="py-lineno"> 454</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L455"></a><tt class="py-lineno"> 455</tt> <tt class="py-line"> <tt class="py-name">Random</tt><tt class="py-op">.</tt><tt id="link-118" class="py-name" targets="Method paramiko.Transport.atfork()=paramiko.Transport-class.html#atfork"><a title="paramiko.Transport.atfork" class="py-name" href="#" onclick="return doclink('link-118', 'atfork', 'link-118');">atfork</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L456"></a><tt class="py-lineno"> 456</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L457"></a><tt class="py-lineno"> 457</tt> <tt class="py-line"> <tt class="py-name">event</tt><tt class="py-op">.</tt><tt class="py-name">wait</tt><tt class="py-op">(</tt><tt class="py-number">0.1</tt><tt class="py-op">)</tt> </tt>
-<a name="L458"></a><tt class="py-lineno"> 458</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt><tt class="py-op">:</tt> </tt>
-<a name="L459"></a><tt class="py-lineno"> 459</tt> <tt class="py-line"> <tt class="py-name">e</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-119" class="py-name" targets="Method paramiko.Transport.get_exception()=paramiko.Transport-class.html#get_exception"><a title="paramiko.Transport.get_exception" class="py-name" href="#" onclick="return doclink('link-119', 'get_exception', 'link-119');">get_exception</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L460"></a><tt class="py-lineno"> 460</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">e</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L461"></a><tt class="py-lineno"> 461</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">e</tt> </tt>
-<a name="L462"></a><tt class="py-lineno"> 462</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-120" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-120', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Negotiation failed.'</tt><tt class="py-op">)</tt> </tt>
-<a name="L463"></a><tt class="py-lineno"> 463</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">event</tt><tt class="py-op">.</tt><tt class="py-name">isSet</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L464"></a><tt class="py-lineno"> 464</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-</div><a name="L465"></a><tt class="py-lineno"> 465</tt> <tt class="py-line"> </tt>
-<a name="Transport.start_server"></a><div id="Transport.start_server-def"><a name="L466"></a><tt class="py-lineno"> 466</tt> <a class="py-toggle" href="#" id="Transport.start_server-toggle" onclick="return toggle('Transport.start_server');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#start_server">start_server</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">event</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">server</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.start_server-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.start_server-expanded"><a name="L467"></a><tt class="py-lineno"> 467</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L468"></a><tt class="py-lineno"> 468</tt> <tt class="py-line"><tt class="py-docstring"> Negotiate a new SSH2 session as a server. This is the first step after</tt> </tt>
-<a name="L469"></a><tt class="py-lineno"> 469</tt> <tt class="py-line"><tt class="py-docstring"> creating a new L{Transport} and setting up your server host key(s). A</tt> </tt>
-<a name="L470"></a><tt class="py-lineno"> 470</tt> <tt class="py-line"><tt class="py-docstring"> separate thread is created for protocol negotiation.</tt> </tt>
-<a name="L471"></a><tt class="py-lineno"> 471</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L472"></a><tt class="py-lineno"> 472</tt> <tt class="py-line"><tt class="py-docstring"> If an event is passed in, this method returns immediately. When</tt> </tt>
-<a name="L473"></a><tt class="py-lineno"> 473</tt> <tt class="py-line"><tt class="py-docstring"> negotiation is done (successful or not), the given C{Event} will</tt> </tt>
-<a name="L474"></a><tt class="py-lineno"> 474</tt> <tt class="py-line"><tt class="py-docstring"> be triggered. On failure, L{is_active} will return C{False}.</tt> </tt>
-<a name="L475"></a><tt class="py-lineno"> 475</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L476"></a><tt class="py-lineno"> 476</tt> <tt class="py-line"><tt class="py-docstring"> (Since 1.4) If C{event} is C{None}, this method will not return until</tt> </tt>
-<a name="L477"></a><tt class="py-lineno"> 477</tt> <tt class="py-line"><tt class="py-docstring"> negotation is done. On success, the method returns normally.</tt> </tt>
-<a name="L478"></a><tt class="py-lineno"> 478</tt> <tt class="py-line"><tt class="py-docstring"> Otherwise an SSHException is raised.</tt> </tt>
-<a name="L479"></a><tt class="py-lineno"> 479</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L480"></a><tt class="py-lineno"> 480</tt> <tt class="py-line"><tt class="py-docstring"> After a successful negotiation, the client will need to authenticate.</tt> </tt>
-<a name="L481"></a><tt class="py-lineno"> 481</tt> <tt class="py-line"><tt class="py-docstring"> Override the methods</tt> </tt>
-<a name="L482"></a><tt class="py-lineno"> 482</tt> <tt class="py-line"><tt class="py-docstring"> L{get_allowed_auths &lt;ServerInterface.get_allowed_auths&gt;},</tt> </tt>
-<a name="L483"></a><tt class="py-lineno"> 483</tt> <tt class="py-line"><tt class="py-docstring"> L{check_auth_none &lt;ServerInterface.check_auth_none&gt;},</tt> </tt>
-<a name="L484"></a><tt class="py-lineno"> 484</tt> <tt class="py-line"><tt class="py-docstring"> L{check_auth_password &lt;ServerInterface.check_auth_password&gt;}, and</tt> </tt>
-<a name="L485"></a><tt class="py-lineno"> 485</tt> <tt class="py-line"><tt class="py-docstring"> L{check_auth_publickey &lt;ServerInterface.check_auth_publickey&gt;} in the</tt> </tt>
-<a name="L486"></a><tt class="py-lineno"> 486</tt> <tt class="py-line"><tt class="py-docstring"> given C{server} object to control the authentication process.</tt> </tt>
-<a name="L487"></a><tt class="py-lineno"> 487</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L488"></a><tt class="py-lineno"> 488</tt> <tt class="py-line"><tt class="py-docstring"> After a successful authentication, the client should request to open</tt> </tt>
-<a name="L489"></a><tt class="py-lineno"> 489</tt> <tt class="py-line"><tt class="py-docstring"> a channel. Override</tt> </tt>
-<a name="L490"></a><tt class="py-lineno"> 490</tt> <tt class="py-line"><tt class="py-docstring"> L{check_channel_request &lt;ServerInterface.check_channel_request&gt;} in the</tt> </tt>
-<a name="L491"></a><tt class="py-lineno"> 491</tt> <tt class="py-line"><tt class="py-docstring"> given C{server} object to allow channels to be opened.</tt> </tt>
-<a name="L492"></a><tt class="py-lineno"> 492</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L493"></a><tt class="py-lineno"> 493</tt> <tt class="py-line"><tt class="py-docstring"> @note: After calling this method (or L{start_client} or L{connect}),</tt> </tt>
-<a name="L494"></a><tt class="py-lineno"> 494</tt> <tt class="py-line"><tt class="py-docstring"> you should no longer directly read from or write to the original</tt> </tt>
-<a name="L495"></a><tt class="py-lineno"> 495</tt> <tt class="py-line"><tt class="py-docstring"> socket object.</tt> </tt>
-<a name="L496"></a><tt class="py-lineno"> 496</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L497"></a><tt class="py-lineno"> 497</tt> <tt class="py-line"><tt class="py-docstring"> @param event: an event to trigger when negotiation is complete.</tt> </tt>
-<a name="L498"></a><tt class="py-lineno"> 498</tt> <tt class="py-line"><tt class="py-docstring"> @type event: threading.Event</tt> </tt>
-<a name="L499"></a><tt class="py-lineno"> 499</tt> <tt class="py-line"><tt class="py-docstring"> @param server: an object used to perform authentication and create</tt> </tt>
-<a name="L500"></a><tt class="py-lineno"> 500</tt> <tt class="py-line"><tt class="py-docstring"> L{Channel}s.</tt> </tt>
-<a name="L501"></a><tt class="py-lineno"> 501</tt> <tt class="py-line"><tt class="py-docstring"> @type server: L{server.ServerInterface}</tt> </tt>
-<a name="L502"></a><tt class="py-lineno"> 502</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L503"></a><tt class="py-lineno"> 503</tt> <tt class="py-line"><tt class="py-docstring"> @raise SSHException: if negotiation fails (and no C{event} was passed</tt> </tt>
-<a name="L504"></a><tt class="py-lineno"> 504</tt> <tt class="py-line"><tt class="py-docstring"> in)</tt> </tt>
-<a name="L505"></a><tt class="py-lineno"> 505</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L506"></a><tt class="py-lineno"> 506</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-121" class="py-name"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-121', 'server', 'link-35');">server</a></tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L507"></a><tt class="py-lineno"> 507</tt> <tt class="py-line"> <tt id="link-122" class="py-name"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-122', 'server', 'link-35');">server</a></tt> <tt class="py-op">=</tt> <tt id="link-123" class="py-name"><a title="paramiko.ServerInterface" class="py-name" href="#" onclick="return doclink('link-123', 'ServerInterface', 'link-36');">ServerInterface</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L508"></a><tt class="py-lineno"> 508</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_mode</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L509"></a><tt class="py-lineno"> 509</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_object</tt> <tt class="py-op">=</tt> <tt id="link-124" class="py-name"><a title="paramiko.server" class="py-name" href="#" onclick="return doclink('link-124', 'server', 'link-35');">server</a></tt> </tt>
-<a name="L510"></a><tt class="py-lineno"> 510</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L511"></a><tt class="py-lineno"> 511</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">event</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L512"></a><tt class="py-lineno"> 512</tt> <tt class="py-line"> <tt class="py-comment"># async, return immediately and let the app poll for completion</tt> </tt>
-<a name="L513"></a><tt class="py-lineno"> 513</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">completion_event</tt> <tt class="py-op">=</tt> <tt class="py-name">event</tt> </tt>
-<a name="L514"></a><tt class="py-lineno"> 514</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L515"></a><tt class="py-lineno"> 515</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L516"></a><tt class="py-lineno"> 516</tt> <tt class="py-line"> </tt>
-<a name="L517"></a><tt class="py-lineno"> 517</tt> <tt class="py-line"> <tt class="py-comment"># synchronous, wait for a result</tt> </tt>
-<a name="L518"></a><tt class="py-lineno"> 518</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">completion_event</tt> <tt class="py-op">=</tt> <tt class="py-name">event</tt> <tt class="py-op">=</tt> <tt class="py-name">threading</tt><tt class="py-op">.</tt><tt class="py-name">Event</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L519"></a><tt class="py-lineno"> 519</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">start</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L520"></a><tt class="py-lineno"> 520</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L521"></a><tt class="py-lineno"> 521</tt> <tt class="py-line"> <tt class="py-name">event</tt><tt class="py-op">.</tt><tt class="py-name">wait</tt><tt class="py-op">(</tt><tt class="py-number">0.1</tt><tt class="py-op">)</tt> </tt>
-<a name="L522"></a><tt class="py-lineno"> 522</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt><tt class="py-op">:</tt> </tt>
-<a name="L523"></a><tt class="py-lineno"> 523</tt> <tt class="py-line"> <tt class="py-name">e</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-125" class="py-name"><a title="paramiko.Transport.get_exception" class="py-name" href="#" onclick="return doclink('link-125', 'get_exception', 'link-119');">get_exception</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L524"></a><tt class="py-lineno"> 524</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">e</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L525"></a><tt class="py-lineno"> 525</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">e</tt> </tt>
-<a name="L526"></a><tt class="py-lineno"> 526</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-126" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-126', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Negotiation failed.'</tt><tt class="py-op">)</tt> </tt>
-<a name="L527"></a><tt class="py-lineno"> 527</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">event</tt><tt class="py-op">.</tt><tt class="py-name">isSet</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L528"></a><tt class="py-lineno"> 528</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-</div><a name="L529"></a><tt class="py-lineno"> 529</tt> <tt class="py-line"> </tt>
-<a name="Transport.add_server_key"></a><div id="Transport.add_server_key-def"><a name="L530"></a><tt class="py-lineno"> 530</tt> <a class="py-toggle" href="#" id="Transport.add_server_key-toggle" onclick="return toggle('Transport.add_server_key');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#add_server_key">add_server_key</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">key</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.add_server_key-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.add_server_key-expanded"><a name="L531"></a><tt class="py-lineno"> 531</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L532"></a><tt class="py-lineno"> 532</tt> <tt class="py-line"><tt class="py-docstring"> Add a host key to the list of keys used for server mode. When behaving</tt> </tt>
-<a name="L533"></a><tt class="py-lineno"> 533</tt> <tt class="py-line"><tt class="py-docstring"> as a server, the host key is used to sign certain packets during the</tt> </tt>
-<a name="L534"></a><tt class="py-lineno"> 534</tt> <tt class="py-line"><tt class="py-docstring"> SSH2 negotiation, so that the client can trust that we are who we say</tt> </tt>
-<a name="L535"></a><tt class="py-lineno"> 535</tt> <tt class="py-line"><tt class="py-docstring"> we are. Because this is used for signing, the key must contain private</tt> </tt>
-<a name="L536"></a><tt class="py-lineno"> 536</tt> <tt class="py-line"><tt class="py-docstring"> key info, not just the public half. Only one key of each type (RSA or</tt> </tt>
-<a name="L537"></a><tt class="py-lineno"> 537</tt> <tt class="py-line"><tt class="py-docstring"> DSS) is kept.</tt> </tt>
-<a name="L538"></a><tt class="py-lineno"> 538</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L539"></a><tt class="py-lineno"> 539</tt> <tt class="py-line"><tt class="py-docstring"> @param key: the host key to add, usually an L{RSAKey &lt;rsakey.RSAKey&gt;} or</tt> </tt>
-<a name="L540"></a><tt class="py-lineno"> 540</tt> <tt class="py-line"><tt class="py-docstring"> L{DSSKey &lt;dsskey.DSSKey&gt;}.</tt> </tt>
-<a name="L541"></a><tt class="py-lineno"> 541</tt> <tt class="py-line"><tt class="py-docstring"> @type key: L{PKey &lt;pkey.PKey&gt;}</tt> </tt>
-<a name="L542"></a><tt class="py-lineno"> 542</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L543"></a><tt class="py-lineno"> 543</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_key_dict</tt><tt class="py-op">[</tt><tt class="py-name">key</tt><tt class="py-op">.</tt><tt id="link-127" class="py-name" targets="Method paramiko.AgentKey.get_name()=paramiko.AgentKey-class.html#get_name,Method paramiko.Channel.get_name()=paramiko.Channel-class.html#get_name,Method paramiko.DSSKey.get_name()=paramiko.DSSKey-class.html#get_name,Method paramiko.PKey.get_name()=paramiko.PKey-class.html#get_name,Method paramiko.RSAKey.get_name()=paramiko.RSAKey-class.html#get_name"><a title="paramiko.AgentKey.get_name
-paramiko.Channel.get_name
-paramiko.DSSKey.get_name
-paramiko.PKey.get_name
-paramiko.RSAKey.get_name" class="py-name" href="#" onclick="return doclink('link-127', 'get_name', 'link-127');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">key</tt> </tt>
-</div><a name="L544"></a><tt class="py-lineno"> 544</tt> <tt class="py-line"> </tt>
-<a name="Transport.get_server_key"></a><div id="Transport.get_server_key-def"><a name="L545"></a><tt class="py-lineno"> 545</tt> <a class="py-toggle" href="#" id="Transport.get_server_key-toggle" onclick="return toggle('Transport.get_server_key');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#get_server_key">get_server_key</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.get_server_key-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.get_server_key-expanded"><a name="L546"></a><tt class="py-lineno"> 546</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L547"></a><tt class="py-lineno"> 547</tt> <tt class="py-line"><tt class="py-docstring"> Return the active host key, in server mode. After negotiating with the</tt> </tt>
-<a name="L548"></a><tt class="py-lineno"> 548</tt> <tt class="py-line"><tt class="py-docstring"> client, this method will return the negotiated host key. If only one</tt> </tt>
-<a name="L549"></a><tt class="py-lineno"> 549</tt> <tt class="py-line"><tt class="py-docstring"> type of host key was set with L{add_server_key}, that's the only key</tt> </tt>
-<a name="L550"></a><tt class="py-lineno"> 550</tt> <tt class="py-line"><tt class="py-docstring"> that will ever be returned. But in cases where you have set more than</tt> </tt>
-<a name="L551"></a><tt class="py-lineno"> 551</tt> <tt class="py-line"><tt class="py-docstring"> one type of host key (for example, an RSA key and a DSS key), the key</tt> </tt>
-<a name="L552"></a><tt class="py-lineno"> 552</tt> <tt class="py-line"><tt class="py-docstring"> type will be negotiated by the client, and this method will return the</tt> </tt>
-<a name="L553"></a><tt class="py-lineno"> 553</tt> <tt class="py-line"><tt class="py-docstring"> key of the type agreed on. If the host key has not been negotiated</tt> </tt>
-<a name="L554"></a><tt class="py-lineno"> 554</tt> <tt class="py-line"><tt class="py-docstring"> yet, C{None} is returned. In client mode, the behavior is undefined.</tt> </tt>
-<a name="L555"></a><tt class="py-lineno"> 555</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L556"></a><tt class="py-lineno"> 556</tt> <tt class="py-line"><tt class="py-docstring"> @return: host key of the type negotiated by the client, or C{None}.</tt> </tt>
-<a name="L557"></a><tt class="py-lineno"> 557</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: L{PKey &lt;pkey.PKey&gt;}</tt> </tt>
-<a name="L558"></a><tt class="py-lineno"> 558</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L559"></a><tt class="py-lineno"> 559</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L560"></a><tt class="py-lineno"> 560</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_key_dict</tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">host_key_type</tt><tt class="py-op">]</tt> </tt>
-<a name="L561"></a><tt class="py-lineno"> 561</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">KeyError</tt><tt class="py-op">:</tt> </tt>
-<a name="L562"></a><tt class="py-lineno"> 562</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L563"></a><tt class="py-lineno"> 563</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L564"></a><tt class="py-lineno"> 564</tt> <tt class="py-line"> </tt>
-<a name="Transport.load_server_moduli"></a><div id="Transport.load_server_moduli-def"><a name="L565"></a><tt class="py-lineno"> 565</tt> <a class="py-toggle" href="#" id="Transport.load_server_moduli-toggle" onclick="return toggle('Transport.load_server_moduli');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#load_server_moduli">load_server_moduli</a><tt class="py-op">(</tt><tt class="py-param">filename</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.load_server_moduli-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.load_server_moduli-expanded"><a name="L566"></a><tt class="py-lineno"> 566</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L567"></a><tt class="py-lineno"> 567</tt> <tt class="py-line"><tt class="py-docstring"> I{(optional)}</tt> </tt>
-<a name="L568"></a><tt class="py-lineno"> 568</tt> <tt class="py-line"><tt class="py-docstring"> Load a file of prime moduli for use in doing group-exchange key</tt> </tt>
-<a name="L569"></a><tt class="py-lineno"> 569</tt> <tt class="py-line"><tt class="py-docstring"> negotiation in server mode. It's a rather obscure option and can be</tt> </tt>
-<a name="L570"></a><tt class="py-lineno"> 570</tt> <tt class="py-line"><tt class="py-docstring"> safely ignored.</tt> </tt>
-<a name="L571"></a><tt class="py-lineno"> 571</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L572"></a><tt class="py-lineno"> 572</tt> <tt class="py-line"><tt class="py-docstring"> In server mode, the remote client may request "group-exchange" key</tt> </tt>
-<a name="L573"></a><tt class="py-lineno"> 573</tt> <tt class="py-line"><tt class="py-docstring"> negotiation, which asks the server to send a random prime number that</tt> </tt>
-<a name="L574"></a><tt class="py-lineno"> 574</tt> <tt class="py-line"><tt class="py-docstring"> fits certain criteria. These primes are pretty difficult to compute,</tt> </tt>
-<a name="L575"></a><tt class="py-lineno"> 575</tt> <tt class="py-line"><tt class="py-docstring"> so they can't be generated on demand. But many systems contain a file</tt> </tt>
-<a name="L576"></a><tt class="py-lineno"> 576</tt> <tt class="py-line"><tt class="py-docstring"> of suitable primes (usually named something like C{/etc/ssh/moduli}).</tt> </tt>
-<a name="L577"></a><tt class="py-lineno"> 577</tt> <tt class="py-line"><tt class="py-docstring"> If you call C{load_server_moduli} and it returns C{True}, then this</tt> </tt>
-<a name="L578"></a><tt class="py-lineno"> 578</tt> <tt class="py-line"><tt class="py-docstring"> file of primes has been loaded and we will support "group-exchange" in</tt> </tt>
-<a name="L579"></a><tt class="py-lineno"> 579</tt> <tt class="py-line"><tt class="py-docstring"> server mode. Otherwise server mode will just claim that it doesn't</tt> </tt>
-<a name="L580"></a><tt class="py-lineno"> 580</tt> <tt class="py-line"><tt class="py-docstring"> support that method of key negotiation.</tt> </tt>
-<a name="L581"></a><tt class="py-lineno"> 581</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L582"></a><tt class="py-lineno"> 582</tt> <tt class="py-line"><tt class="py-docstring"> @param filename: optional path to the moduli file, if you happen to</tt> </tt>
-<a name="L583"></a><tt class="py-lineno"> 583</tt> <tt class="py-line"><tt class="py-docstring"> know that it's not in a standard location.</tt> </tt>
-<a name="L584"></a><tt class="py-lineno"> 584</tt> <tt class="py-line"><tt class="py-docstring"> @type filename: str</tt> </tt>
-<a name="L585"></a><tt class="py-lineno"> 585</tt> <tt class="py-line"><tt class="py-docstring"> @return: True if a moduli file was successfully loaded; False</tt> </tt>
-<a name="L586"></a><tt class="py-lineno"> 586</tt> <tt class="py-line"><tt class="py-docstring"> otherwise.</tt> </tt>
-<a name="L587"></a><tt class="py-lineno"> 587</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: bool</tt> </tt>
-<a name="L588"></a><tt class="py-lineno"> 588</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L589"></a><tt class="py-lineno"> 589</tt> <tt class="py-line"><tt class="py-docstring"> @note: This has no effect when used in client mode.</tt> </tt>
-<a name="L590"></a><tt class="py-lineno"> 590</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L591"></a><tt class="py-lineno"> 591</tt> <tt class="py-line"> <tt id="link-128" class="py-name" targets="Class paramiko.Transport=paramiko.Transport-class.html"><a title="paramiko.Transport" class="py-name" href="#" onclick="return doclink('link-128', 'Transport', 'link-128');">Transport</a></tt><tt class="py-op">.</tt><tt id="link-129" class="py-name"><a title="paramiko.Transport._modulus_pack" class="py-name" href="#" onclick="return doclink('link-129', '_modulus_pack', 'link-98');">_modulus_pack</a></tt> <tt class="py-op">=</tt> <tt id="link-130" class="py-name"><a title="paramiko.primes.ModulusPack" class="py-name" href="#" onclick="return doclink('link-130', 'ModulusPack', 'link-30');">ModulusPack</a></tt><tt class="py-op">(</tt><tt id="link-131" class="py-name"><a title="paramiko.auth_handler.rng
-paramiko.channel.rng
-paramiko.client.rng
-paramiko.common.rng
-paramiko.dsskey.rng
-paramiko.hostkeys.rng
-paramiko.kex_gex.rng
-paramiko.kex_group1.rng
-paramiko.packet.rng
-paramiko.pkey.rng
-paramiko.rsakey.rng
-paramiko.server.rng
-paramiko.sftp.rng
-paramiko.sftp_attr.rng
-paramiko.sftp_client.rng
-paramiko.sftp_file.rng
-paramiko.sftp_handle.rng
-paramiko.sftp_server.rng
-paramiko.sftp_si.rng
-paramiko.transport.rng
-paramiko.util.rng" class="py-name" href="#" onclick="return doclink('link-131', 'rng', 'link-102');">rng</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L592"></a><tt class="py-lineno"> 592</tt> <tt class="py-line"> <tt class="py-comment"># places to look for the openssh "moduli" file</tt> </tt>
-<a name="L593"></a><tt class="py-lineno"> 593</tt> <tt class="py-line"> <tt class="py-name">file_list</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-string">'/etc/ssh/moduli'</tt><tt class="py-op">,</tt> <tt class="py-string">'/usr/local/etc/moduli'</tt> <tt class="py-op">]</tt> </tt>
-<a name="L594"></a><tt class="py-lineno"> 594</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">filename</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L595"></a><tt class="py-lineno"> 595</tt> <tt class="py-line"> <tt class="py-name">file_list</tt><tt class="py-op">.</tt><tt class="py-name">insert</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">filename</tt><tt class="py-op">)</tt> </tt>
-<a name="L596"></a><tt class="py-lineno"> 596</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">fn</tt> <tt class="py-keyword">in</tt> <tt class="py-name">file_list</tt><tt class="py-op">:</tt> </tt>
-<a name="L597"></a><tt class="py-lineno"> 597</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L598"></a><tt class="py-lineno"> 598</tt> <tt class="py-line"> <tt id="link-132" class="py-name"><a title="paramiko.Transport" class="py-name" href="#" onclick="return doclink('link-132', 'Transport', 'link-128');">Transport</a></tt><tt class="py-op">.</tt><tt id="link-133" class="py-name"><a title="paramiko.Transport._modulus_pack" class="py-name" href="#" onclick="return doclink('link-133', '_modulus_pack', 'link-98');">_modulus_pack</a></tt><tt class="py-op">.</tt><tt id="link-134" class="py-name" targets="Method paramiko.primes.ModulusPack.read_file()=paramiko.primes.ModulusPack-class.html#read_file"><a title="paramiko.primes.ModulusPack.read_file" class="py-name" href="#" onclick="return doclink('link-134', 'read_file', 'link-134');">read_file</a></tt><tt class="py-op">(</tt><tt class="py-name">fn</tt><tt class="py-op">)</tt> </tt>
-<a name="L599"></a><tt class="py-lineno"> 599</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">True</tt> </tt>
-<a name="L600"></a><tt class="py-lineno"> 600</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">IOError</tt><tt class="py-op">:</tt> </tt>
-<a name="L601"></a><tt class="py-lineno"> 601</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L602"></a><tt class="py-lineno"> 602</tt> <tt class="py-line"> <tt class="py-comment"># none succeeded</tt> </tt>
-<a name="L603"></a><tt class="py-lineno"> 603</tt> <tt class="py-line"> <tt id="link-135" class="py-name"><a title="paramiko.Transport" class="py-name" href="#" onclick="return doclink('link-135', 'Transport', 'link-128');">Transport</a></tt><tt class="py-op">.</tt><tt id="link-136" class="py-name"><a title="paramiko.Transport._modulus_pack" class="py-name" href="#" onclick="return doclink('link-136', '_modulus_pack', 'link-98');">_modulus_pack</a></tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L604"></a><tt class="py-lineno"> 604</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">False</tt> </tt>
-</div><a name="L605"></a><tt class="py-lineno"> 605</tt> <tt class="py-line"> <tt id="link-137" class="py-name" targets="Static Method paramiko.Transport.load_server_moduli()=paramiko.Transport-class.html#load_server_moduli"><a title="paramiko.Transport.load_server_moduli" class="py-name" href="#" onclick="return doclink('link-137', 'load_server_moduli', 'link-137');">load_server_moduli</a></tt> <tt class="py-op">=</tt> <tt class="py-name">staticmethod</tt><tt class="py-op">(</tt><tt id="link-138" class="py-name"><a title="paramiko.Transport.load_server_moduli" class="py-name" href="#" onclick="return doclink('link-138', 'load_server_moduli', 'link-137');">load_server_moduli</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L606"></a><tt class="py-lineno"> 606</tt> <tt class="py-line"> </tt>
-<a name="Transport.close"></a><div id="Transport.close-def"><a name="L607"></a><tt class="py-lineno"> 607</tt> <a class="py-toggle" href="#" id="Transport.close-toggle" onclick="return toggle('Transport.close');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#close">close</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.close-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.close-expanded"><a name="L608"></a><tt class="py-lineno"> 608</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L609"></a><tt class="py-lineno"> 609</tt> <tt class="py-line"><tt class="py-docstring"> Close this session, and any open channels that are tied to it.</tt> </tt>
-<a name="L610"></a><tt class="py-lineno"> 610</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L611"></a><tt class="py-lineno"> 611</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt><tt class="py-op">:</tt> </tt>
-<a name="L612"></a><tt class="py-lineno"> 612</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L613"></a><tt class="py-lineno"> 613</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L614"></a><tt class="py-lineno"> 614</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">packetizer</tt><tt class="py-op">.</tt><tt id="link-139" class="py-name"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-139', 'close', 'link-115');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L615"></a><tt class="py-lineno"> 615</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L616"></a><tt class="py-lineno"> 616</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">chan</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_channels</tt><tt class="py-op">.</tt><tt id="link-140" class="py-name"><a title="paramiko.HostKeys.values
-paramiko.transport.ChannelMap.values" class="py-name" href="#" onclick="return doclink('link-140', 'values', 'link-77');">values</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L617"></a><tt class="py-lineno"> 617</tt> <tt class="py-line"> <tt class="py-name">chan</tt><tt class="py-op">.</tt><tt class="py-name">_unlink</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L618"></a><tt class="py-lineno"> 618</tt> <tt class="py-line"> </tt>
-<a name="Transport.get_remote_server_key"></a><div id="Transport.get_remote_server_key-def"><a name="L619"></a><tt class="py-lineno"> 619</tt> <a class="py-toggle" href="#" id="Transport.get_remote_server_key-toggle" onclick="return toggle('Transport.get_remote_server_key');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#get_remote_server_key">get_remote_server_key</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.get_remote_server_key-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.get_remote_server_key-expanded"><a name="L620"></a><tt class="py-lineno"> 620</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L621"></a><tt class="py-lineno"> 621</tt> <tt class="py-line"><tt class="py-docstring"> Return the host key of the server (in client mode).</tt> </tt>
-<a name="L622"></a><tt class="py-lineno"> 622</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L623"></a><tt class="py-lineno"> 623</tt> <tt class="py-line"><tt class="py-docstring"> @note: Previously this call returned a tuple of (key type, key string).</tt> </tt>
-<a name="L624"></a><tt class="py-lineno"> 624</tt> <tt class="py-line"><tt class="py-docstring"> You can get the same effect by calling</tt> </tt>
-<a name="L625"></a><tt class="py-lineno"> 625</tt> <tt class="py-line"><tt class="py-docstring"> L{PKey.get_name &lt;pkey.PKey.get_name&gt;} for the key type, and</tt> </tt>
-<a name="L626"></a><tt class="py-lineno"> 626</tt> <tt class="py-line"><tt class="py-docstring"> C{str(key)} for the key string.</tt> </tt>
-<a name="L627"></a><tt class="py-lineno"> 627</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L628"></a><tt class="py-lineno"> 628</tt> <tt class="py-line"><tt class="py-docstring"> @raise SSHException: if no session is currently active.</tt> </tt>
-<a name="L629"></a><tt class="py-lineno"> 629</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L630"></a><tt class="py-lineno"> 630</tt> <tt class="py-line"><tt class="py-docstring"> @return: public key of the remote server</tt> </tt>
-<a name="L631"></a><tt class="py-lineno"> 631</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: L{PKey &lt;pkey.PKey&gt;}</tt> </tt>
-<a name="L632"></a><tt class="py-lineno"> 632</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L633"></a><tt class="py-lineno"> 633</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">initial_kex_done</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L634"></a><tt class="py-lineno"> 634</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-141" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-141', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'No existing session'</tt><tt class="py-op">)</tt> </tt>
-<a name="L635"></a><tt class="py-lineno"> 635</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">host_key</tt> </tt>
-</div><a name="L636"></a><tt class="py-lineno"> 636</tt> <tt class="py-line"> </tt>
-<a name="Transport.is_active"></a><div id="Transport.is_active-def"><a name="L637"></a><tt class="py-lineno"> 637</tt> <a class="py-toggle" href="#" id="Transport.is_active-toggle" onclick="return toggle('Transport.is_active');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#is_active">is_active</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.is_active-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.is_active-expanded"><a name="L638"></a><tt class="py-lineno"> 638</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L639"></a><tt class="py-lineno"> 639</tt> <tt class="py-line"><tt class="py-docstring"> Return true if this session is active (open).</tt> </tt>
-<a name="L640"></a><tt class="py-lineno"> 640</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L641"></a><tt class="py-lineno"> 641</tt> <tt class="py-line"><tt class="py-docstring"> @return: True if the session is still active (open); False if the</tt> </tt>
-<a name="L642"></a><tt class="py-lineno"> 642</tt> <tt class="py-line"><tt class="py-docstring"> session is closed</tt> </tt>
-<a name="L643"></a><tt class="py-lineno"> 643</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: bool</tt> </tt>
-<a name="L644"></a><tt class="py-lineno"> 644</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L645"></a><tt class="py-lineno"> 645</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt> </tt>
-</div><a name="L646"></a><tt class="py-lineno"> 646</tt> <tt class="py-line"> </tt>
-<a name="Transport.open_session"></a><div id="Transport.open_session-def"><a name="L647"></a><tt class="py-lineno"> 647</tt> <a class="py-toggle" href="#" id="Transport.open_session-toggle" onclick="return toggle('Transport.open_session');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#open_session">open_session</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.open_session-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.open_session-expanded"><a name="L648"></a><tt class="py-lineno"> 648</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L649"></a><tt class="py-lineno"> 649</tt> <tt class="py-line"><tt class="py-docstring"> Request a new channel to the server, of type C{"session"}. This</tt> </tt>
-<a name="L650"></a><tt class="py-lineno"> 650</tt> <tt class="py-line"><tt class="py-docstring"> is just an alias for C{open_channel('session')}.</tt> </tt>
-<a name="L651"></a><tt class="py-lineno"> 651</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L652"></a><tt class="py-lineno"> 652</tt> <tt class="py-line"><tt class="py-docstring"> @return: a new L{Channel}</tt> </tt>
-<a name="L653"></a><tt class="py-lineno"> 653</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: L{Channel}</tt> </tt>
-<a name="L654"></a><tt class="py-lineno"> 654</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L655"></a><tt class="py-lineno"> 655</tt> <tt class="py-line"><tt class="py-docstring"> @raise SSHException: if the request is rejected or the session ends</tt> </tt>
-<a name="L656"></a><tt class="py-lineno"> 656</tt> <tt class="py-line"><tt class="py-docstring"> prematurely</tt> </tt>
-<a name="L657"></a><tt class="py-lineno"> 657</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L658"></a><tt class="py-lineno"> 658</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-142" class="py-name" targets="Method paramiko.Transport.open_channel()=paramiko.Transport-class.html#open_channel"><a title="paramiko.Transport.open_channel" class="py-name" href="#" onclick="return doclink('link-142', 'open_channel', 'link-142');">open_channel</a></tt><tt class="py-op">(</tt><tt class="py-string">'session'</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L659"></a><tt class="py-lineno"> 659</tt> <tt class="py-line"> </tt>
-<a name="Transport.open_x11_channel"></a><div id="Transport.open_x11_channel-def"><a name="L660"></a><tt class="py-lineno"> 660</tt> <a class="py-toggle" href="#" id="Transport.open_x11_channel-toggle" onclick="return toggle('Transport.open_x11_channel');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#open_x11_channel">open_x11_channel</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">src_addr</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.open_x11_channel-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.open_x11_channel-expanded"><a name="L661"></a><tt class="py-lineno"> 661</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L662"></a><tt class="py-lineno"> 662</tt> <tt class="py-line"><tt class="py-docstring"> Request a new channel to the client, of type C{"x11"}. This</tt> </tt>
-<a name="L663"></a><tt class="py-lineno"> 663</tt> <tt class="py-line"><tt class="py-docstring"> is just an alias for C{open_channel('x11', src_addr=src_addr)}.</tt> </tt>
-<a name="L664"></a><tt class="py-lineno"> 664</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L665"></a><tt class="py-lineno"> 665</tt> <tt class="py-line"><tt class="py-docstring"> @param src_addr: the source address of the x11 server (port is the</tt> </tt>
-<a name="L666"></a><tt class="py-lineno"> 666</tt> <tt class="py-line"><tt class="py-docstring"> x11 port, ie. 6010)</tt> </tt>
-<a name="L667"></a><tt class="py-lineno"> 667</tt> <tt class="py-line"><tt class="py-docstring"> @type src_addr: (str, int)</tt> </tt>
-<a name="L668"></a><tt class="py-lineno"> 668</tt> <tt class="py-line"><tt class="py-docstring"> @return: a new L{Channel}</tt> </tt>
-<a name="L669"></a><tt class="py-lineno"> 669</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: L{Channel}</tt> </tt>
-<a name="L670"></a><tt class="py-lineno"> 670</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L671"></a><tt class="py-lineno"> 671</tt> <tt class="py-line"><tt class="py-docstring"> @raise SSHException: if the request is rejected or the session ends</tt> </tt>
-<a name="L672"></a><tt class="py-lineno"> 672</tt> <tt class="py-line"><tt class="py-docstring"> prematurely</tt> </tt>
-<a name="L673"></a><tt class="py-lineno"> 673</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L674"></a><tt class="py-lineno"> 674</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-143" class="py-name"><a title="paramiko.Transport.open_channel" class="py-name" href="#" onclick="return doclink('link-143', 'open_channel', 'link-142');">open_channel</a></tt><tt class="py-op">(</tt><tt class="py-string">'x11'</tt><tt class="py-op">,</tt> <tt class="py-name">src_addr</tt><tt class="py-op">=</tt><tt class="py-name">src_addr</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L675"></a><tt class="py-lineno"> 675</tt> <tt class="py-line"> </tt>
-<a name="Transport.open_forwarded_tcpip_channel"></a><div id="Transport.open_forwarded_tcpip_channel-def"><a name="L676"></a><tt class="py-lineno"> 676</tt> <a class="py-toggle" href="#" id="Transport.open_forwarded_tcpip_channel-toggle" onclick="return toggle('Transport.open_forwarded_tcpip_channel');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#open_forwarded_tcpip_channel">open_forwarded_tcpip_channel</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt><tt class="py-param">src_addr</tt><tt class="py-op">,</tt> <tt class="py-param">src_port</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt><tt class="py-param">dest_addr</tt><tt class="py-op">,</tt> <tt class="py-param">dest_port</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.open_forwarded_tcpip_channel-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.open_forwarded_tcpip_channel-expanded"><a name="L677"></a><tt class="py-lineno"> 677</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L678"></a><tt class="py-lineno"> 678</tt> <tt class="py-line"><tt class="py-docstring"> Request a new channel back to the client, of type C{"forwarded-tcpip"}.</tt> </tt>
-<a name="L679"></a><tt class="py-lineno"> 679</tt> <tt class="py-line"><tt class="py-docstring"> This is used after a client has requested port forwarding, for sending</tt> </tt>
-<a name="L680"></a><tt class="py-lineno"> 680</tt> <tt class="py-line"><tt class="py-docstring"> incoming connections back to the client.</tt> </tt>
-<a name="L681"></a><tt class="py-lineno"> 681</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L682"></a><tt class="py-lineno"> 682</tt> <tt class="py-line"><tt class="py-docstring"> @param src_addr: originator's address</tt> </tt>
-<a name="L683"></a><tt class="py-lineno"> 683</tt> <tt class="py-line"><tt class="py-docstring"> @param src_port: originator's port</tt> </tt>
-<a name="L684"></a><tt class="py-lineno"> 684</tt> <tt class="py-line"><tt class="py-docstring"> @param dest_addr: local (server) connected address</tt> </tt>
-<a name="L685"></a><tt class="py-lineno"> 685</tt> <tt class="py-line"><tt class="py-docstring"> @param dest_port: local (server) connected port</tt> </tt>
-<a name="L686"></a><tt class="py-lineno"> 686</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L687"></a><tt class="py-lineno"> 687</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-144" class="py-name"><a title="paramiko.Transport.open_channel" class="py-name" href="#" onclick="return doclink('link-144', 'open_channel', 'link-142');">open_channel</a></tt><tt class="py-op">(</tt><tt class="py-string">'forwarded-tcpip'</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt><tt class="py-name">dest_addr</tt><tt class="py-op">,</tt> <tt class="py-name">dest_port</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt><tt class="py-name">src_addr</tt><tt class="py-op">,</tt> <tt class="py-name">src_port</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L688"></a><tt class="py-lineno"> 688</tt> <tt class="py-line"> </tt>
-<a name="Transport.open_channel"></a><div id="Transport.open_channel-def"><a name="L689"></a><tt class="py-lineno"> 689</tt> <a class="py-toggle" href="#" id="Transport.open_channel-toggle" onclick="return toggle('Transport.open_channel');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#open_channel">open_channel</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">kind</tt><tt class="py-op">,</tt> <tt class="py-param">dest_addr</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">src_addr</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.open_channel-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.open_channel-expanded"><a name="L690"></a><tt class="py-lineno"> 690</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L691"></a><tt class="py-lineno"> 691</tt> <tt class="py-line"><tt class="py-docstring"> Request a new channel to the server. L{Channel}s are socket-like</tt> </tt>
-<a name="L692"></a><tt class="py-lineno"> 692</tt> <tt class="py-line"><tt class="py-docstring"> objects used for the actual transfer of data across the session.</tt> </tt>
-<a name="L693"></a><tt class="py-lineno"> 693</tt> <tt class="py-line"><tt class="py-docstring"> You may only request a channel after negotiating encryption (using</tt> </tt>
-<a name="L694"></a><tt class="py-lineno"> 694</tt> <tt class="py-line"><tt class="py-docstring"> L{connect} or L{start_client}) and authenticating.</tt> </tt>
-<a name="L695"></a><tt class="py-lineno"> 695</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L696"></a><tt class="py-lineno"> 696</tt> <tt class="py-line"><tt class="py-docstring"> @param kind: the kind of channel requested (usually C{"session"},</tt> </tt>
-<a name="L697"></a><tt class="py-lineno"> 697</tt> <tt class="py-line"><tt class="py-docstring"> C{"forwarded-tcpip"}, C{"direct-tcpip"}, or C{"x11"})</tt> </tt>
-<a name="L698"></a><tt class="py-lineno"> 698</tt> <tt class="py-line"><tt class="py-docstring"> @type kind: str</tt> </tt>
-<a name="L699"></a><tt class="py-lineno"> 699</tt> <tt class="py-line"><tt class="py-docstring"> @param dest_addr: the destination address of this port forwarding,</tt> </tt>
-<a name="L700"></a><tt class="py-lineno"> 700</tt> <tt class="py-line"><tt class="py-docstring"> if C{kind} is C{"forwarded-tcpip"} or C{"direct-tcpip"} (ignored</tt> </tt>
-<a name="L701"></a><tt class="py-lineno"> 701</tt> <tt class="py-line"><tt class="py-docstring"> for other channel types)</tt> </tt>
-<a name="L702"></a><tt class="py-lineno"> 702</tt> <tt class="py-line"><tt class="py-docstring"> @type dest_addr: (str, int)</tt> </tt>
-<a name="L703"></a><tt class="py-lineno"> 703</tt> <tt class="py-line"><tt class="py-docstring"> @param src_addr: the source address of this port forwarding, if</tt> </tt>
-<a name="L704"></a><tt class="py-lineno"> 704</tt> <tt class="py-line"><tt class="py-docstring"> C{kind} is C{"forwarded-tcpip"}, C{"direct-tcpip"}, or C{"x11"}</tt> </tt>
-<a name="L705"></a><tt class="py-lineno"> 705</tt> <tt class="py-line"><tt class="py-docstring"> @type src_addr: (str, int)</tt> </tt>
-<a name="L706"></a><tt class="py-lineno"> 706</tt> <tt class="py-line"><tt class="py-docstring"> @return: a new L{Channel} on success</tt> </tt>
-<a name="L707"></a><tt class="py-lineno"> 707</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: L{Channel}</tt> </tt>
-<a name="L708"></a><tt class="py-lineno"> 708</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L709"></a><tt class="py-lineno"> 709</tt> <tt class="py-line"><tt class="py-docstring"> @raise SSHException: if the request is rejected or the session ends</tt> </tt>
-<a name="L710"></a><tt class="py-lineno"> 710</tt> <tt class="py-line"><tt class="py-docstring"> prematurely</tt> </tt>
-<a name="L711"></a><tt class="py-lineno"> 711</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L712"></a><tt class="py-lineno"> 712</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt><tt class="py-op">:</tt> </tt>
-<a name="L713"></a><tt class="py-lineno"> 713</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-145" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-145', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'SSH session not active'</tt><tt class="py-op">)</tt> </tt>
-<a name="L714"></a><tt class="py-lineno"> 714</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L715"></a><tt class="py-lineno"> 715</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L716"></a><tt class="py-lineno"> 716</tt> <tt class="py-line"> <tt class="py-name">chanid</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_next_channel</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L717"></a><tt class="py-lineno"> 717</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-146" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-146', 'Message', 'link-24');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L718"></a><tt class="py-lineno"> 718</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-147" class="py-name" targets="Method paramiko.Message.add_byte()=paramiko.Message-class.html#add_byte"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-147', 'add_byte', 'link-147');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-148" class="py-name" targets="Variable paramiko.auth_handler.MSG_CHANNEL_OPEN=paramiko.auth_handler-module.html#MSG_CHANNEL_OPEN,Variable paramiko.channel.MSG_CHANNEL_OPEN=paramiko.channel-module.html#MSG_CHANNEL_OPEN,Variable paramiko.client.MSG_CHANNEL_OPEN=paramiko.client-module.html#MSG_CHANNEL_OPEN,Variable paramiko.common.MSG_CHANNEL_OPEN=paramiko.common-module.html#MSG_CHANNEL_OPEN,Variable paramiko.dsskey.MSG_CHANNEL_OPEN=paramiko.dsskey-module.html#MSG_CHANNEL_OPEN,Variable paramiko.hostkeys.MSG_CHANNEL_OPEN=paramiko.hostkeys-module.html#MSG_CHANNEL_OPEN,Variable paramiko.kex_gex.MSG_CHANNEL_OPEN=paramiko.kex_gex-module.html#MSG_CHANNEL_OPEN,Variable paramiko.kex_group1.MSG_CHANNEL_OPEN=paramiko.kex_group1-module.html#MSG_CHANNEL_OPEN,Variable paramiko.packet.MSG_CHANNEL_OPEN=paramiko.packet-module.html#MSG_CHANNEL_OPEN,Variable paramiko.pkey.MSG_CHANNEL_OPEN=paramiko.pkey-module.html#MSG_CHANNEL_OPEN,Variable paramiko.rsakey.MSG_CHANNEL_OPEN=paramiko.rsakey-module.html#MSG_CHANNEL_OPEN,Variable paramiko.server.MSG_CHANNEL_OPEN=paramiko.server-module.html#MSG_CHANNEL_OPEN,Variable paramiko.sftp.MSG_CHANNEL_OPEN=paramiko.sftp-module.html#MSG_CHANNEL_OPEN,Variable paramiko.sftp_attr.MSG_CHANNEL_OPEN=paramiko.sftp_attr-module.html#MSG_CHANNEL_OPEN,Variable paramiko.sftp_client.MSG_CHANNEL_OPEN=paramiko.sftp_client-module.html#MSG_CHANNEL_OPEN,Variable paramiko.sftp_file.MSG_CHANNEL_OPEN=paramiko.sftp_file-module.html#MSG_CHANNEL_OPEN,Variable paramiko.sftp_handle.MSG_CHANNEL_OPEN=paramiko.sftp_handle-module.html#MSG_CHANNEL_OPEN,Variable paramiko.sftp_server.MSG_CHANNEL_OPEN=paramiko.sftp_server-module.html#MSG_CHANNEL_OPEN,Variable paramiko.sftp_si.MSG_CHANNEL_OPEN=paramiko.sftp_si-module.html#MSG_CHANNEL_OPEN,Variable paramiko.transport.MSG_CHANNEL_OPEN=paramiko.transport-module.html#MSG_CHANNEL_OPEN,Variable paramiko.util.MSG_CHANNEL_OPEN=paramiko.util-module.html#MSG_CHANNEL_OPEN"><a title="paramiko.auth_handler.MSG_CHANNEL_OPEN
-paramiko.channel.MSG_CHANNEL_OPEN
-paramiko.client.MSG_CHANNEL_OPEN
-paramiko.common.MSG_CHANNEL_OPEN
-paramiko.dsskey.MSG_CHANNEL_OPEN
-paramiko.hostkeys.MSG_CHANNEL_OPEN
-paramiko.kex_gex.MSG_CHANNEL_OPEN
-paramiko.kex_group1.MSG_CHANNEL_OPEN
-paramiko.packet.MSG_CHANNEL_OPEN
-paramiko.pkey.MSG_CHANNEL_OPEN
-paramiko.rsakey.MSG_CHANNEL_OPEN
-paramiko.server.MSG_CHANNEL_OPEN
-paramiko.sftp.MSG_CHANNEL_OPEN
-paramiko.sftp_attr.MSG_CHANNEL_OPEN
-paramiko.sftp_client.MSG_CHANNEL_OPEN
-paramiko.sftp_file.MSG_CHANNEL_OPEN
-paramiko.sftp_handle.MSG_CHANNEL_OPEN
-paramiko.sftp_server.MSG_CHANNEL_OPEN
-paramiko.sftp_si.MSG_CHANNEL_OPEN
-paramiko.transport.MSG_CHANNEL_OPEN
-paramiko.util.MSG_CHANNEL_OPEN" class="py-name" href="#" onclick="return doclink('link-148', 'MSG_CHANNEL_OPEN', 'link-148');">MSG_CHANNEL_OPEN</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L719"></a><tt class="py-lineno"> 719</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-149" class="py-name" targets="Method paramiko.Message.add_string()=paramiko.Message-class.html#add_string"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-149', 'add_string', 'link-149');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">kind</tt><tt class="py-op">)</tt> </tt>
-<a name="L720"></a><tt class="py-lineno"> 720</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-150" class="py-name" targets="Method paramiko.Message.add_int()=paramiko.Message-class.html#add_int"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-150', 'add_int', 'link-150');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">chanid</tt><tt class="py-op">)</tt> </tt>
-<a name="L721"></a><tt class="py-lineno"> 721</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-151" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-151', 'add_int', 'link-150');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">window_size</tt><tt class="py-op">)</tt> </tt>
-<a name="L722"></a><tt class="py-lineno"> 722</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-152" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-152', 'add_int', 'link-150');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">max_packet_size</tt><tt class="py-op">)</tt> </tt>
-<a name="L723"></a><tt class="py-lineno"> 723</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">kind</tt> <tt class="py-op">==</tt> <tt class="py-string">'forwarded-tcpip'</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">kind</tt> <tt class="py-op">==</tt> <tt class="py-string">'direct-tcpip'</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L724"></a><tt class="py-lineno"> 724</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-153" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-153', 'add_string', 'link-149');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">dest_addr</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L725"></a><tt class="py-lineno"> 725</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-154" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-154', 'add_int', 'link-150');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">dest_addr</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L726"></a><tt class="py-lineno"> 726</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-155" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-155', 'add_string', 'link-149');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">src_addr</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L727"></a><tt class="py-lineno"> 727</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-156" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-156', 'add_int', 'link-150');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">src_addr</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L728"></a><tt class="py-lineno"> 728</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">kind</tt> <tt class="py-op">==</tt> <tt class="py-string">'x11'</tt><tt class="py-op">:</tt> </tt>
-<a name="L729"></a><tt class="py-lineno"> 729</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-157" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-157', 'add_string', 'link-149');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">src_addr</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L730"></a><tt class="py-lineno"> 730</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-158" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-158', 'add_int', 'link-150');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">src_addr</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L731"></a><tt class="py-lineno"> 731</tt> <tt class="py-line"> <tt class="py-name">chan</tt> <tt class="py-op">=</tt> <tt id="link-159" class="py-name"><a title="paramiko.Channel" class="py-name" href="#" onclick="return doclink('link-159', 'Channel', 'link-6');">Channel</a></tt><tt class="py-op">(</tt><tt class="py-name">chanid</tt><tt class="py-op">)</tt> </tt>
-<a name="L732"></a><tt class="py-lineno"> 732</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_channels</tt><tt class="py-op">.</tt><tt id="link-160" class="py-name" targets="Method paramiko.SFTPClient.put()=paramiko.SFTPClient-class.html#put,Method paramiko.transport.ChannelMap.put()=paramiko.transport.ChannelMap-class.html#put"><a title="paramiko.SFTPClient.put
-paramiko.transport.ChannelMap.put" class="py-name" href="#" onclick="return doclink('link-160', 'put', 'link-160');">put</a></tt><tt class="py-op">(</tt><tt class="py-name">chanid</tt><tt class="py-op">,</tt> <tt class="py-name">chan</tt><tt class="py-op">)</tt> </tt>
-<a name="L733"></a><tt class="py-lineno"> 733</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">channel_events</tt><tt class="py-op">[</tt><tt class="py-name">chanid</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">event</tt> <tt class="py-op">=</tt> <tt class="py-name">threading</tt><tt class="py-op">.</tt><tt class="py-name">Event</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L734"></a><tt class="py-lineno"> 734</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">channels_seen</tt><tt class="py-op">[</tt><tt class="py-name">chanid</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L735"></a><tt class="py-lineno"> 735</tt> <tt class="py-line"> <tt class="py-name">chan</tt><tt class="py-op">.</tt><tt class="py-name">_set_transport</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt> </tt>
-<a name="L736"></a><tt class="py-lineno"> 736</tt> <tt class="py-line"> <tt class="py-name">chan</tt><tt class="py-op">.</tt><tt class="py-name">_set_window</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">window_size</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">max_packet_size</tt><tt class="py-op">)</tt> </tt>
-<a name="L737"></a><tt class="py-lineno"> 737</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L738"></a><tt class="py-lineno"> 738</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L739"></a><tt class="py-lineno"> 739</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_user_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L740"></a><tt class="py-lineno"> 740</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L741"></a><tt class="py-lineno"> 741</tt> <tt class="py-line"> <tt class="py-name">event</tt><tt class="py-op">.</tt><tt class="py-name">wait</tt><tt class="py-op">(</tt><tt class="py-number">0.1</tt><tt class="py-op">)</tt><tt class="py-op">;</tt> </tt>
-<a name="L742"></a><tt class="py-lineno"> 742</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt><tt class="py-op">:</tt> </tt>
-<a name="L743"></a><tt class="py-lineno"> 743</tt> <tt class="py-line"> <tt class="py-name">e</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-161" class="py-name"><a title="paramiko.Transport.get_exception" class="py-name" href="#" onclick="return doclink('link-161', 'get_exception', 'link-119');">get_exception</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L744"></a><tt class="py-lineno"> 744</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">e</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L745"></a><tt class="py-lineno"> 745</tt> <tt class="py-line"> <tt class="py-name">e</tt> <tt class="py-op">=</tt> <tt id="link-162" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-162', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Unable to open channel.'</tt><tt class="py-op">)</tt> </tt>
-<a name="L746"></a><tt class="py-lineno"> 746</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">e</tt> </tt>
-<a name="L747"></a><tt class="py-lineno"> 747</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">event</tt><tt class="py-op">.</tt><tt class="py-name">isSet</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L748"></a><tt class="py-lineno"> 748</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L749"></a><tt class="py-lineno"> 749</tt> <tt class="py-line"> <tt class="py-name">chan</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_channels</tt><tt class="py-op">.</tt><tt id="link-163" class="py-name"><a title="paramiko.SFTPClient.get
-paramiko.transport.ChannelMap.get" class="py-name" href="#" onclick="return doclink('link-163', 'get', 'link-76');">get</a></tt><tt class="py-op">(</tt><tt class="py-name">chanid</tt><tt class="py-op">)</tt> </tt>
-<a name="L750"></a><tt class="py-lineno"> 750</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">chan</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L751"></a><tt class="py-lineno"> 751</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">chan</tt> </tt>
-<a name="L752"></a><tt class="py-lineno"> 752</tt> <tt class="py-line"> <tt class="py-name">e</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-164" class="py-name"><a title="paramiko.Transport.get_exception" class="py-name" href="#" onclick="return doclink('link-164', 'get_exception', 'link-119');">get_exception</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L753"></a><tt class="py-lineno"> 753</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">e</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L754"></a><tt class="py-lineno"> 754</tt> <tt class="py-line"> <tt class="py-name">e</tt> <tt class="py-op">=</tt> <tt id="link-165" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-165', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Unable to open channel.'</tt><tt class="py-op">)</tt> </tt>
-<a name="L755"></a><tt class="py-lineno"> 755</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">e</tt> </tt>
-</div><a name="L756"></a><tt class="py-lineno"> 756</tt> <tt class="py-line"> </tt>
-<a name="Transport.request_port_forward"></a><div id="Transport.request_port_forward-def"><a name="L757"></a><tt class="py-lineno"> 757</tt> <a class="py-toggle" href="#" id="Transport.request_port_forward-toggle" onclick="return toggle('Transport.request_port_forward');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#request_port_forward">request_port_forward</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">address</tt><tt class="py-op">,</tt> <tt class="py-param">port</tt><tt class="py-op">,</tt> <tt class="py-param">handler</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.request_port_forward-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.request_port_forward-expanded"><a name="L758"></a><tt class="py-lineno"> 758</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L759"></a><tt class="py-lineno"> 759</tt> <tt class="py-line"><tt class="py-docstring"> Ask the server to forward TCP connections from a listening port on</tt> </tt>
-<a name="L760"></a><tt class="py-lineno"> 760</tt> <tt class="py-line"><tt class="py-docstring"> the server, across this SSH session.</tt> </tt>
-<a name="L761"></a><tt class="py-lineno"> 761</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L762"></a><tt class="py-lineno"> 762</tt> <tt class="py-line"><tt class="py-docstring"> If a handler is given, that handler is called from a different thread</tt> </tt>
-<a name="L763"></a><tt class="py-lineno"> 763</tt> <tt class="py-line"><tt class="py-docstring"> whenever a forwarded connection arrives. The handler parameters are::</tt> </tt>
-<a name="L764"></a><tt class="py-lineno"> 764</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L765"></a><tt class="py-lineno"> 765</tt> <tt class="py-line"><tt class="py-docstring"> handler(channel, (origin_addr, origin_port), (server_addr, server_port))</tt> </tt>
-<a name="L766"></a><tt class="py-lineno"> 766</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L767"></a><tt class="py-lineno"> 767</tt> <tt class="py-line"><tt class="py-docstring"> where C{server_addr} and C{server_port} are the address and port that</tt> </tt>
-<a name="L768"></a><tt class="py-lineno"> 768</tt> <tt class="py-line"><tt class="py-docstring"> the server was listening on.</tt> </tt>
-<a name="L769"></a><tt class="py-lineno"> 769</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L770"></a><tt class="py-lineno"> 770</tt> <tt class="py-line"><tt class="py-docstring"> If no handler is set, the default behavior is to send new incoming</tt> </tt>
-<a name="L771"></a><tt class="py-lineno"> 771</tt> <tt class="py-line"><tt class="py-docstring"> forwarded connections into the accept queue, to be picked up via</tt> </tt>
-<a name="L772"></a><tt class="py-lineno"> 772</tt> <tt class="py-line"><tt class="py-docstring"> L{accept}.</tt> </tt>
-<a name="L773"></a><tt class="py-lineno"> 773</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L774"></a><tt class="py-lineno"> 774</tt> <tt class="py-line"><tt class="py-docstring"> @param address: the address to bind when forwarding</tt> </tt>
-<a name="L775"></a><tt class="py-lineno"> 775</tt> <tt class="py-line"><tt class="py-docstring"> @type address: str</tt> </tt>
-<a name="L776"></a><tt class="py-lineno"> 776</tt> <tt class="py-line"><tt class="py-docstring"> @param port: the port to forward, or 0 to ask the server to allocate</tt> </tt>
-<a name="L777"></a><tt class="py-lineno"> 777</tt> <tt class="py-line"><tt class="py-docstring"> any port</tt> </tt>
-<a name="L778"></a><tt class="py-lineno"> 778</tt> <tt class="py-line"><tt class="py-docstring"> @type port: int</tt> </tt>
-<a name="L779"></a><tt class="py-lineno"> 779</tt> <tt class="py-line"><tt class="py-docstring"> @param handler: optional handler for incoming forwarded connections</tt> </tt>
-<a name="L780"></a><tt class="py-lineno"> 780</tt> <tt class="py-line"><tt class="py-docstring"> @type handler: function(Channel, (str, int), (str, int))</tt> </tt>
-<a name="L781"></a><tt class="py-lineno"> 781</tt> <tt class="py-line"><tt class="py-docstring"> @return: the port # allocated by the server</tt> </tt>
-<a name="L782"></a><tt class="py-lineno"> 782</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: int</tt> </tt>
-<a name="L783"></a><tt class="py-lineno"> 783</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L784"></a><tt class="py-lineno"> 784</tt> <tt class="py-line"><tt class="py-docstring"> @raise SSHException: if the server refused the TCP forward request</tt> </tt>
-<a name="L785"></a><tt class="py-lineno"> 785</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L786"></a><tt class="py-lineno"> 786</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt><tt class="py-op">:</tt> </tt>
-<a name="L787"></a><tt class="py-lineno"> 787</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-166" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-166', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'SSH session not active'</tt><tt class="py-op">)</tt> </tt>
-<a name="L788"></a><tt class="py-lineno"> 788</tt> <tt class="py-line"> <tt class="py-name">address</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">address</tt><tt class="py-op">)</tt> </tt>
-<a name="L789"></a><tt class="py-lineno"> 789</tt> <tt class="py-line"> <tt class="py-name">port</tt> <tt class="py-op">=</tt> <tt class="py-name">int</tt><tt class="py-op">(</tt><tt class="py-name">port</tt><tt class="py-op">)</tt> </tt>
-<a name="L790"></a><tt class="py-lineno"> 790</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-167" class="py-name" targets="Method paramiko.Transport.global_request()=paramiko.Transport-class.html#global_request"><a title="paramiko.Transport.global_request" class="py-name" href="#" onclick="return doclink('link-167', 'global_request', 'link-167');">global_request</a></tt><tt class="py-op">(</tt><tt class="py-string">'tcpip-forward'</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt><tt class="py-name">address</tt><tt class="py-op">,</tt> <tt class="py-name">port</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">wait</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">)</tt> </tt>
-<a name="L791"></a><tt class="py-lineno"> 791</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">response</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L792"></a><tt class="py-lineno"> 792</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-168" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-168', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'TCP forwarding request denied'</tt><tt class="py-op">)</tt> </tt>
-<a name="L793"></a><tt class="py-lineno"> 793</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">port</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L794"></a><tt class="py-lineno"> 794</tt> <tt class="py-line"> <tt class="py-name">port</tt> <tt class="py-op">=</tt> <tt class="py-name">response</tt><tt class="py-op">.</tt><tt id="link-169" class="py-name" targets="Method paramiko.Message.get_int()=paramiko.Message-class.html#get_int"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-169', 'get_int', 'link-169');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L795"></a><tt class="py-lineno"> 795</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">handler</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L796"></a><tt class="py-lineno"> 796</tt> <tt class="py-line"> <tt class="py-keyword">def</tt> <tt class="py-def-name">default_handler</tt><tt class="py-op">(</tt><tt class="py-param">channel</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt><tt class="py-param">src_addr</tt><tt class="py-op">,</tt> <tt class="py-param">src_port</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt><tt class="py-param">dest_addr</tt><tt class="py-op">,</tt> <tt class="py-param">dest_port</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L797"></a><tt class="py-lineno"> 797</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_queue_incoming_channel</tt><tt class="py-op">(</tt><tt id="link-170" class="py-name"><a title="paramiko.channel" class="py-name" href="#" onclick="return doclink('link-170', 'channel', 'link-5');">channel</a></tt><tt class="py-op">)</tt> </tt>
-</div><a name="L798"></a><tt class="py-lineno"> 798</tt> <tt class="py-line"> <tt class="py-name">handler</tt> <tt class="py-op">=</tt> <tt class="py-name">default_handler</tt> </tt>
-<a name="L799"></a><tt class="py-lineno"> 799</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_tcp_handler</tt> <tt class="py-op">=</tt> <tt class="py-name">handler</tt> </tt>
-<a name="L800"></a><tt class="py-lineno"> 800</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">port</tt> </tt>
-</div><a name="L801"></a><tt class="py-lineno"> 801</tt> <tt class="py-line"> </tt>
-<a name="Transport.cancel_port_forward"></a><div id="Transport.cancel_port_forward-def"><a name="L802"></a><tt class="py-lineno"> 802</tt> <a class="py-toggle" href="#" id="Transport.cancel_port_forward-toggle" onclick="return toggle('Transport.cancel_port_forward');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#cancel_port_forward">cancel_port_forward</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">address</tt><tt class="py-op">,</tt> <tt class="py-param">port</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.cancel_port_forward-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.cancel_port_forward-expanded"><a name="L803"></a><tt class="py-lineno"> 803</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L804"></a><tt class="py-lineno"> 804</tt> <tt class="py-line"><tt class="py-docstring"> Ask the server to cancel a previous port-forwarding request. No more</tt> </tt>
-<a name="L805"></a><tt class="py-lineno"> 805</tt> <tt class="py-line"><tt class="py-docstring"> connections to the given address &amp; port will be forwarded across this</tt> </tt>
-<a name="L806"></a><tt class="py-lineno"> 806</tt> <tt class="py-line"><tt class="py-docstring"> ssh connection.</tt> </tt>
-<a name="L807"></a><tt class="py-lineno"> 807</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L808"></a><tt class="py-lineno"> 808</tt> <tt class="py-line"><tt class="py-docstring"> @param address: the address to stop forwarding</tt> </tt>
-<a name="L809"></a><tt class="py-lineno"> 809</tt> <tt class="py-line"><tt class="py-docstring"> @type address: str</tt> </tt>
-<a name="L810"></a><tt class="py-lineno"> 810</tt> <tt class="py-line"><tt class="py-docstring"> @param port: the port to stop forwarding</tt> </tt>
-<a name="L811"></a><tt class="py-lineno"> 811</tt> <tt class="py-line"><tt class="py-docstring"> @type port: int</tt> </tt>
-<a name="L812"></a><tt class="py-lineno"> 812</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L813"></a><tt class="py-lineno"> 813</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt><tt class="py-op">:</tt> </tt>
-<a name="L814"></a><tt class="py-lineno"> 814</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L815"></a><tt class="py-lineno"> 815</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_tcp_handler</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L816"></a><tt class="py-lineno"> 816</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-171" class="py-name"><a title="paramiko.Transport.global_request" class="py-name" href="#" onclick="return doclink('link-171', 'global_request', 'link-167');">global_request</a></tt><tt class="py-op">(</tt><tt class="py-string">'cancel-tcpip-forward'</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt><tt class="py-name">address</tt><tt class="py-op">,</tt> <tt class="py-name">port</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">wait</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L817"></a><tt class="py-lineno"> 817</tt> <tt class="py-line"> </tt>
-<a name="Transport.open_sftp_client"></a><div id="Transport.open_sftp_client-def"><a name="L818"></a><tt class="py-lineno"> 818</tt> <a class="py-toggle" href="#" id="Transport.open_sftp_client-toggle" onclick="return toggle('Transport.open_sftp_client');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#open_sftp_client">open_sftp_client</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.open_sftp_client-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.open_sftp_client-expanded"><a name="L819"></a><tt class="py-lineno"> 819</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L820"></a><tt class="py-lineno"> 820</tt> <tt class="py-line"><tt class="py-docstring"> Create an SFTP client channel from an open transport. On success,</tt> </tt>
-<a name="L821"></a><tt class="py-lineno"> 821</tt> <tt class="py-line"><tt class="py-docstring"> an SFTP session will be opened with the remote host, and a new</tt> </tt>
-<a name="L822"></a><tt class="py-lineno"> 822</tt> <tt class="py-line"><tt class="py-docstring"> SFTPClient object will be returned.</tt> </tt>
-<a name="L823"></a><tt class="py-lineno"> 823</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L824"></a><tt class="py-lineno"> 824</tt> <tt class="py-line"><tt class="py-docstring"> @return: a new L{SFTPClient} object, referring to an sftp session</tt> </tt>
-<a name="L825"></a><tt class="py-lineno"> 825</tt> <tt class="py-line"><tt class="py-docstring"> (channel) across this transport</tt> </tt>
-<a name="L826"></a><tt class="py-lineno"> 826</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: L{SFTPClient}</tt> </tt>
-<a name="L827"></a><tt class="py-lineno"> 827</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L828"></a><tt class="py-lineno"> 828</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-172" class="py-name"><a title="paramiko.SFTPClient" class="py-name" href="#" onclick="return doclink('link-172', 'SFTPClient', 'link-39');">SFTPClient</a></tt><tt class="py-op">.</tt><tt id="link-173" class="py-name" targets="Class Method paramiko.SFTPClient.from_transport()=paramiko.SFTPClient-class.html#from_transport"><a title="paramiko.SFTPClient.from_transport" class="py-name" href="#" onclick="return doclink('link-173', 'from_transport', 'link-173');">from_transport</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L829"></a><tt class="py-lineno"> 829</tt> <tt class="py-line"> </tt>
-<a name="Transport.send_ignore"></a><div id="Transport.send_ignore-def"><a name="L830"></a><tt class="py-lineno"> 830</tt> <a class="py-toggle" href="#" id="Transport.send_ignore-toggle" onclick="return toggle('Transport.send_ignore');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#send_ignore">send_ignore</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">bytes</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.send_ignore-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.send_ignore-expanded"><a name="L831"></a><tt class="py-lineno"> 831</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L832"></a><tt class="py-lineno"> 832</tt> <tt class="py-line"><tt class="py-docstring"> Send a junk packet across the encrypted link. This is sometimes used</tt> </tt>
-<a name="L833"></a><tt class="py-lineno"> 833</tt> <tt class="py-line"><tt class="py-docstring"> to add "noise" to a connection to confuse would-be attackers. It can</tt> </tt>
-<a name="L834"></a><tt class="py-lineno"> 834</tt> <tt class="py-line"><tt class="py-docstring"> also be used as a keep-alive for long lived connections traversing</tt> </tt>
-<a name="L835"></a><tt class="py-lineno"> 835</tt> <tt class="py-line"><tt class="py-docstring"> firewalls.</tt> </tt>
-<a name="L836"></a><tt class="py-lineno"> 836</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L837"></a><tt class="py-lineno"> 837</tt> <tt class="py-line"><tt class="py-docstring"> @param bytes: the number of random bytes to send in the payload of the</tt> </tt>
-<a name="L838"></a><tt class="py-lineno"> 838</tt> <tt class="py-line"><tt class="py-docstring"> ignored packet -- defaults to a random number from 10 to 41.</tt> </tt>
-<a name="L839"></a><tt class="py-lineno"> 839</tt> <tt class="py-line"><tt class="py-docstring"> @type bytes: int</tt> </tt>
-<a name="L840"></a><tt class="py-lineno"> 840</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L841"></a><tt class="py-lineno"> 841</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-174" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-174', 'Message', 'link-24');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L842"></a><tt class="py-lineno"> 842</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-175" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-175', 'add_byte', 'link-147');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-176" class="py-name" targets="Variable paramiko.auth_handler.MSG_IGNORE=paramiko.auth_handler-module.html#MSG_IGNORE,Variable paramiko.channel.MSG_IGNORE=paramiko.channel-module.html#MSG_IGNORE,Variable paramiko.client.MSG_IGNORE=paramiko.client-module.html#MSG_IGNORE,Variable paramiko.common.MSG_IGNORE=paramiko.common-module.html#MSG_IGNORE,Variable paramiko.dsskey.MSG_IGNORE=paramiko.dsskey-module.html#MSG_IGNORE,Variable paramiko.hostkeys.MSG_IGNORE=paramiko.hostkeys-module.html#MSG_IGNORE,Variable paramiko.kex_gex.MSG_IGNORE=paramiko.kex_gex-module.html#MSG_IGNORE,Variable paramiko.kex_group1.MSG_IGNORE=paramiko.kex_group1-module.html#MSG_IGNORE,Variable paramiko.packet.MSG_IGNORE=paramiko.packet-module.html#MSG_IGNORE,Variable paramiko.pkey.MSG_IGNORE=paramiko.pkey-module.html#MSG_IGNORE,Variable paramiko.rsakey.MSG_IGNORE=paramiko.rsakey-module.html#MSG_IGNORE,Variable paramiko.server.MSG_IGNORE=paramiko.server-module.html#MSG_IGNORE,Variable paramiko.sftp.MSG_IGNORE=paramiko.sftp-module.html#MSG_IGNORE,Variable paramiko.sftp_attr.MSG_IGNORE=paramiko.sftp_attr-module.html#MSG_IGNORE,Variable paramiko.sftp_client.MSG_IGNORE=paramiko.sftp_client-module.html#MSG_IGNORE,Variable paramiko.sftp_file.MSG_IGNORE=paramiko.sftp_file-module.html#MSG_IGNORE,Variable paramiko.sftp_handle.MSG_IGNORE=paramiko.sftp_handle-module.html#MSG_IGNORE,Variable paramiko.sftp_server.MSG_IGNORE=paramiko.sftp_server-module.html#MSG_IGNORE,Variable paramiko.sftp_si.MSG_IGNORE=paramiko.sftp_si-module.html#MSG_IGNORE,Variable paramiko.transport.MSG_IGNORE=paramiko.transport-module.html#MSG_IGNORE,Variable paramiko.util.MSG_IGNORE=paramiko.util-module.html#MSG_IGNORE"><a title="paramiko.auth_handler.MSG_IGNORE
-paramiko.channel.MSG_IGNORE
-paramiko.client.MSG_IGNORE
-paramiko.common.MSG_IGNORE
-paramiko.dsskey.MSG_IGNORE
-paramiko.hostkeys.MSG_IGNORE
-paramiko.kex_gex.MSG_IGNORE
-paramiko.kex_group1.MSG_IGNORE
-paramiko.packet.MSG_IGNORE
-paramiko.pkey.MSG_IGNORE
-paramiko.rsakey.MSG_IGNORE
-paramiko.server.MSG_IGNORE
-paramiko.sftp.MSG_IGNORE
-paramiko.sftp_attr.MSG_IGNORE
-paramiko.sftp_client.MSG_IGNORE
-paramiko.sftp_file.MSG_IGNORE
-paramiko.sftp_handle.MSG_IGNORE
-paramiko.sftp_server.MSG_IGNORE
-paramiko.sftp_si.MSG_IGNORE
-paramiko.transport.MSG_IGNORE
-paramiko.util.MSG_IGNORE" class="py-name" href="#" onclick="return doclink('link-176', 'MSG_IGNORE', 'link-176');">MSG_IGNORE</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L843"></a><tt class="py-lineno"> 843</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">bytes</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L844"></a><tt class="py-lineno"> 844</tt> <tt class="py-line"> <tt class="py-name">bytes</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">ord</tt><tt class="py-op">(</tt><tt id="link-177" class="py-name"><a title="paramiko.auth_handler.rng
-paramiko.channel.rng
-paramiko.client.rng
-paramiko.common.rng
-paramiko.dsskey.rng
-paramiko.hostkeys.rng
-paramiko.kex_gex.rng
-paramiko.kex_group1.rng
-paramiko.packet.rng
-paramiko.pkey.rng
-paramiko.rsakey.rng
-paramiko.server.rng
-paramiko.sftp.rng
-paramiko.sftp_attr.rng
-paramiko.sftp_client.rng
-paramiko.sftp_file.rng
-paramiko.sftp_handle.rng
-paramiko.sftp_server.rng
-paramiko.sftp_si.rng
-paramiko.transport.rng
-paramiko.util.rng" class="py-name" href="#" onclick="return doclink('link-177', 'rng', 'link-102');">rng</a></tt><tt class="py-op">.</tt><tt id="link-178" class="py-name" targets="Method paramiko.BufferedFile.read()=paramiko.BufferedFile-class.html#read,Method paramiko.SFTPHandle.read()=paramiko.SFTPHandle-class.html#read,Method paramiko.buffered_pipe.BufferedPipe.read()=paramiko.buffered_pipe.BufferedPipe-class.html#read"><a title="paramiko.BufferedFile.read
-paramiko.SFTPHandle.read
-paramiko.buffered_pipe.BufferedPipe.read" class="py-name" href="#" onclick="return doclink('link-178', 'read', 'link-178');">read</a></tt><tt class="py-op">(</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">%</tt> <tt class="py-number">32</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-number">10</tt> </tt>
-<a name="L845"></a><tt class="py-lineno"> 845</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-179" class="py-name" targets="Method paramiko.Message.add_bytes()=paramiko.Message-class.html#add_bytes"><a title="paramiko.Message.add_bytes" class="py-name" href="#" onclick="return doclink('link-179', 'add_bytes', 'link-179');">add_bytes</a></tt><tt class="py-op">(</tt><tt id="link-180" class="py-name"><a title="paramiko.auth_handler.rng
-paramiko.channel.rng
-paramiko.client.rng
-paramiko.common.rng
-paramiko.dsskey.rng
-paramiko.hostkeys.rng
-paramiko.kex_gex.rng
-paramiko.kex_group1.rng
-paramiko.packet.rng
-paramiko.pkey.rng
-paramiko.rsakey.rng
-paramiko.server.rng
-paramiko.sftp.rng
-paramiko.sftp_attr.rng
-paramiko.sftp_client.rng
-paramiko.sftp_file.rng
-paramiko.sftp_handle.rng
-paramiko.sftp_server.rng
-paramiko.sftp_si.rng
-paramiko.transport.rng
-paramiko.util.rng" class="py-name" href="#" onclick="return doclink('link-180', 'rng', 'link-102');">rng</a></tt><tt class="py-op">.</tt><tt id="link-181" class="py-name"><a title="paramiko.BufferedFile.read
-paramiko.SFTPHandle.read
-paramiko.buffered_pipe.BufferedPipe.read" class="py-name" href="#" onclick="return doclink('link-181', 'read', 'link-178');">read</a></tt><tt class="py-op">(</tt><tt class="py-name">bytes</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L846"></a><tt class="py-lineno"> 846</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_user_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L847"></a><tt class="py-lineno"> 847</tt> <tt class="py-line"> </tt>
-<a name="Transport.renegotiate_keys"></a><div id="Transport.renegotiate_keys-def"><a name="L848"></a><tt class="py-lineno"> 848</tt> <a class="py-toggle" href="#" id="Transport.renegotiate_keys-toggle" onclick="return toggle('Transport.renegotiate_keys');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#renegotiate_keys">renegotiate_keys</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.renegotiate_keys-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.renegotiate_keys-expanded"><a name="L849"></a><tt class="py-lineno"> 849</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L850"></a><tt class="py-lineno"> 850</tt> <tt class="py-line"><tt class="py-docstring"> Force this session to switch to new keys. Normally this is done</tt> </tt>
-<a name="L851"></a><tt class="py-lineno"> 851</tt> <tt class="py-line"><tt class="py-docstring"> automatically after the session hits a certain number of packets or</tt> </tt>
-<a name="L852"></a><tt class="py-lineno"> 852</tt> <tt class="py-line"><tt class="py-docstring"> bytes sent or received, but this method gives you the option of forcing</tt> </tt>
-<a name="L853"></a><tt class="py-lineno"> 853</tt> <tt class="py-line"><tt class="py-docstring"> new keys whenever you want. Negotiating new keys causes a pause in</tt> </tt>
-<a name="L854"></a><tt class="py-lineno"> 854</tt> <tt class="py-line"><tt class="py-docstring"> traffic both ways as the two sides swap keys and do computations. This</tt> </tt>
-<a name="L855"></a><tt class="py-lineno"> 855</tt> <tt class="py-line"><tt class="py-docstring"> method returns when the session has switched to new keys.</tt> </tt>
-<a name="L856"></a><tt class="py-lineno"> 856</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L857"></a><tt class="py-lineno"> 857</tt> <tt class="py-line"><tt class="py-docstring"> @raise SSHException: if the key renegotiation failed (which causes the</tt> </tt>
-<a name="L858"></a><tt class="py-lineno"> 858</tt> <tt class="py-line"><tt class="py-docstring"> session to end)</tt> </tt>
-<a name="L859"></a><tt class="py-lineno"> 859</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L860"></a><tt class="py-lineno"> 860</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">completion_event</tt> <tt class="py-op">=</tt> <tt class="py-name">threading</tt><tt class="py-op">.</tt><tt class="py-name">Event</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L861"></a><tt class="py-lineno"> 861</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_kex_init</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L862"></a><tt class="py-lineno"> 862</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L863"></a><tt class="py-lineno"> 863</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">completion_event</tt><tt class="py-op">.</tt><tt class="py-name">wait</tt><tt class="py-op">(</tt><tt class="py-number">0.1</tt><tt class="py-op">)</tt> </tt>
-<a name="L864"></a><tt class="py-lineno"> 864</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt><tt class="py-op">:</tt> </tt>
-<a name="L865"></a><tt class="py-lineno"> 865</tt> <tt class="py-line"> <tt class="py-name">e</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-182" class="py-name"><a title="paramiko.Transport.get_exception" class="py-name" href="#" onclick="return doclink('link-182', 'get_exception', 'link-119');">get_exception</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L866"></a><tt class="py-lineno"> 866</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">e</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L867"></a><tt class="py-lineno"> 867</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">e</tt> </tt>
-<a name="L868"></a><tt class="py-lineno"> 868</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-183" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-183', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Negotiation failed.'</tt><tt class="py-op">)</tt> </tt>
-<a name="L869"></a><tt class="py-lineno"> 869</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">completion_event</tt><tt class="py-op">.</tt><tt class="py-name">isSet</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L870"></a><tt class="py-lineno"> 870</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L871"></a><tt class="py-lineno"> 871</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-</div><a name="L872"></a><tt class="py-lineno"> 872</tt> <tt class="py-line"> </tt>
-<a name="Transport.set_keepalive"></a><div id="Transport.set_keepalive-def"><a name="L873"></a><tt class="py-lineno"> 873</tt> <a class="py-toggle" href="#" id="Transport.set_keepalive-toggle" onclick="return toggle('Transport.set_keepalive');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#set_keepalive">set_keepalive</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">interval</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.set_keepalive-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.set_keepalive-expanded"><a name="L874"></a><tt class="py-lineno"> 874</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L875"></a><tt class="py-lineno"> 875</tt> <tt class="py-line"><tt class="py-docstring"> Turn on/off keepalive packets (default is off). If this is set, after</tt> </tt>
-<a name="L876"></a><tt class="py-lineno"> 876</tt> <tt class="py-line"><tt class="py-docstring"> C{interval} seconds without sending any data over the connection, a</tt> </tt>
-<a name="L877"></a><tt class="py-lineno"> 877</tt> <tt class="py-line"><tt class="py-docstring"> "keepalive" packet will be sent (and ignored by the remote host). This</tt> </tt>
-<a name="L878"></a><tt class="py-lineno"> 878</tt> <tt class="py-line"><tt class="py-docstring"> can be useful to keep connections alive over a NAT, for example.</tt> </tt>
-<a name="L879"></a><tt class="py-lineno"> 879</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L880"></a><tt class="py-lineno"> 880</tt> <tt class="py-line"><tt class="py-docstring"> @param interval: seconds to wait before sending a keepalive packet (or</tt> </tt>
-<a name="L881"></a><tt class="py-lineno"> 881</tt> <tt class="py-line"><tt class="py-docstring"> 0 to disable keepalives).</tt> </tt>
-<a name="L882"></a><tt class="py-lineno"> 882</tt> <tt class="py-line"><tt class="py-docstring"> @type interval: int</tt> </tt>
-<a name="L883"></a><tt class="py-lineno"> 883</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L884"></a><tt class="py-lineno"> 884</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">packetizer</tt><tt class="py-op">.</tt><tt id="link-184" class="py-name" targets="Method paramiko.Transport.set_keepalive()=paramiko.Transport-class.html#set_keepalive"><a title="paramiko.Transport.set_keepalive" class="py-name" href="#" onclick="return doclink('link-184', 'set_keepalive', 'link-184');">set_keepalive</a></tt><tt class="py-op">(</tt><tt class="py-name">interval</tt><tt class="py-op">,</tt> </tt>
-<a name="L885"></a><tt class="py-lineno"> 885</tt> <tt class="py-line"> <tt class="py-keyword">lambda</tt> <tt class="py-name">x</tt><tt class="py-op">=</tt><tt class="py-name">weakref</tt><tt class="py-op">.</tt><tt class="py-name">proxy</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> <tt class="py-name">x</tt><tt class="py-op">.</tt><tt id="link-185" class="py-name"><a title="paramiko.Transport.global_request" class="py-name" href="#" onclick="return doclink('link-185', 'global_request', 'link-167');">global_request</a></tt><tt class="py-op">(</tt><tt class="py-string">'keepalive@lag.net'</tt><tt class="py-op">,</tt> <tt class="py-name">wait</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L886"></a><tt class="py-lineno"> 886</tt> <tt class="py-line"> </tt>
-<a name="Transport.global_request"></a><div id="Transport.global_request-def"><a name="L887"></a><tt class="py-lineno"> 887</tt> <a class="py-toggle" href="#" id="Transport.global_request-toggle" onclick="return toggle('Transport.global_request');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#global_request">global_request</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">kind</tt><tt class="py-op">,</tt> <tt class="py-param">data</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">wait</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.global_request-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.global_request-expanded"><a name="L888"></a><tt class="py-lineno"> 888</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L889"></a><tt class="py-lineno"> 889</tt> <tt class="py-line"><tt class="py-docstring"> Make a global request to the remote host. These are normally</tt> </tt>
-<a name="L890"></a><tt class="py-lineno"> 890</tt> <tt class="py-line"><tt class="py-docstring"> extensions to the SSH2 protocol.</tt> </tt>
-<a name="L891"></a><tt class="py-lineno"> 891</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L892"></a><tt class="py-lineno"> 892</tt> <tt class="py-line"><tt class="py-docstring"> @param kind: name of the request.</tt> </tt>
-<a name="L893"></a><tt class="py-lineno"> 893</tt> <tt class="py-line"><tt class="py-docstring"> @type kind: str</tt> </tt>
-<a name="L894"></a><tt class="py-lineno"> 894</tt> <tt class="py-line"><tt class="py-docstring"> @param data: an optional tuple containing additional data to attach</tt> </tt>
-<a name="L895"></a><tt class="py-lineno"> 895</tt> <tt class="py-line"><tt class="py-docstring"> to the request.</tt> </tt>
-<a name="L896"></a><tt class="py-lineno"> 896</tt> <tt class="py-line"><tt class="py-docstring"> @type data: tuple</tt> </tt>
-<a name="L897"></a><tt class="py-lineno"> 897</tt> <tt class="py-line"><tt class="py-docstring"> @param wait: C{True} if this method should not return until a response</tt> </tt>
-<a name="L898"></a><tt class="py-lineno"> 898</tt> <tt class="py-line"><tt class="py-docstring"> is received; C{False} otherwise.</tt> </tt>
-<a name="L899"></a><tt class="py-lineno"> 899</tt> <tt class="py-line"><tt class="py-docstring"> @type wait: bool</tt> </tt>
-<a name="L900"></a><tt class="py-lineno"> 900</tt> <tt class="py-line"><tt class="py-docstring"> @return: a L{Message} containing possible additional data if the</tt> </tt>
-<a name="L901"></a><tt class="py-lineno"> 901</tt> <tt class="py-line"><tt class="py-docstring"> request was successful (or an empty L{Message} if C{wait} was</tt> </tt>
-<a name="L902"></a><tt class="py-lineno"> 902</tt> <tt class="py-line"><tt class="py-docstring"> C{False}); C{None} if the request was denied.</tt> </tt>
-<a name="L903"></a><tt class="py-lineno"> 903</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: L{Message}</tt> </tt>
-<a name="L904"></a><tt class="py-lineno"> 904</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L905"></a><tt class="py-lineno"> 905</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">wait</tt><tt class="py-op">:</tt> </tt>
-<a name="L906"></a><tt class="py-lineno"> 906</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">completion_event</tt> <tt class="py-op">=</tt> <tt class="py-name">threading</tt><tt class="py-op">.</tt><tt class="py-name">Event</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L907"></a><tt class="py-lineno"> 907</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-186" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-186', 'Message', 'link-24');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L908"></a><tt class="py-lineno"> 908</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-187" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-187', 'add_byte', 'link-147');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-188" class="py-name" targets="Variable paramiko.auth_handler.MSG_GLOBAL_REQUEST=paramiko.auth_handler-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.channel.MSG_GLOBAL_REQUEST=paramiko.channel-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.client.MSG_GLOBAL_REQUEST=paramiko.client-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.common.MSG_GLOBAL_REQUEST=paramiko.common-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.dsskey.MSG_GLOBAL_REQUEST=paramiko.dsskey-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.hostkeys.MSG_GLOBAL_REQUEST=paramiko.hostkeys-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.kex_gex.MSG_GLOBAL_REQUEST=paramiko.kex_gex-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.kex_group1.MSG_GLOBAL_REQUEST=paramiko.kex_group1-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.packet.MSG_GLOBAL_REQUEST=paramiko.packet-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.pkey.MSG_GLOBAL_REQUEST=paramiko.pkey-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.rsakey.MSG_GLOBAL_REQUEST=paramiko.rsakey-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.server.MSG_GLOBAL_REQUEST=paramiko.server-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.sftp.MSG_GLOBAL_REQUEST=paramiko.sftp-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.sftp_attr.MSG_GLOBAL_REQUEST=paramiko.sftp_attr-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.sftp_client.MSG_GLOBAL_REQUEST=paramiko.sftp_client-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.sftp_file.MSG_GLOBAL_REQUEST=paramiko.sftp_file-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.sftp_handle.MSG_GLOBAL_REQUEST=paramiko.sftp_handle-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.sftp_server.MSG_GLOBAL_REQUEST=paramiko.sftp_server-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.sftp_si.MSG_GLOBAL_REQUEST=paramiko.sftp_si-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.transport.MSG_GLOBAL_REQUEST=paramiko.transport-module.html#MSG_GLOBAL_REQUEST,Variable paramiko.util.MSG_GLOBAL_REQUEST=paramiko.util-module.html#MSG_GLOBAL_REQUEST"><a title="paramiko.auth_handler.MSG_GLOBAL_REQUEST
-paramiko.channel.MSG_GLOBAL_REQUEST
-paramiko.client.MSG_GLOBAL_REQUEST
-paramiko.common.MSG_GLOBAL_REQUEST
-paramiko.dsskey.MSG_GLOBAL_REQUEST
-paramiko.hostkeys.MSG_GLOBAL_REQUEST
-paramiko.kex_gex.MSG_GLOBAL_REQUEST
-paramiko.kex_group1.MSG_GLOBAL_REQUEST
-paramiko.packet.MSG_GLOBAL_REQUEST
-paramiko.pkey.MSG_GLOBAL_REQUEST
-paramiko.rsakey.MSG_GLOBAL_REQUEST
-paramiko.server.MSG_GLOBAL_REQUEST
-paramiko.sftp.MSG_GLOBAL_REQUEST
-paramiko.sftp_attr.MSG_GLOBAL_REQUEST
-paramiko.sftp_client.MSG_GLOBAL_REQUEST
-paramiko.sftp_file.MSG_GLOBAL_REQUEST
-paramiko.sftp_handle.MSG_GLOBAL_REQUEST
-paramiko.sftp_server.MSG_GLOBAL_REQUEST
-paramiko.sftp_si.MSG_GLOBAL_REQUEST
-paramiko.transport.MSG_GLOBAL_REQUEST
-paramiko.util.MSG_GLOBAL_REQUEST" class="py-name" href="#" onclick="return doclink('link-188', 'MSG_GLOBAL_REQUEST', 'link-188');">MSG_GLOBAL_REQUEST</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L909"></a><tt class="py-lineno"> 909</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-189" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-189', 'add_string', 'link-149');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-name">kind</tt><tt class="py-op">)</tt> </tt>
-<a name="L910"></a><tt class="py-lineno"> 910</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-190" class="py-name" targets="Method paramiko.Message.add_boolean()=paramiko.Message-class.html#add_boolean"><a title="paramiko.Message.add_boolean" class="py-name" href="#" onclick="return doclink('link-190', 'add_boolean', 'link-190');">add_boolean</a></tt><tt class="py-op">(</tt><tt class="py-name">wait</tt><tt class="py-op">)</tt> </tt>
-<a name="L911"></a><tt class="py-lineno"> 911</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">data</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L912"></a><tt class="py-lineno"> 912</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-191" class="py-name" targets="Method paramiko.HostKeys.add()=paramiko.HostKeys-class.html#add,Method paramiko.Message.add()=paramiko.Message-class.html#add"><a title="paramiko.HostKeys.add
-paramiko.Message.add" class="py-name" href="#" onclick="return doclink('link-191', 'add', 'link-191');">add</a></tt><tt class="py-op">(</tt><tt class="py-op">*</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L913"></a><tt class="py-lineno"> 913</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-192" class="py-name" targets="Variable paramiko.auth_handler.DEBUG=paramiko.auth_handler-module.html#DEBUG,Variable paramiko.channel.DEBUG=paramiko.channel-module.html#DEBUG,Variable paramiko.client.DEBUG=paramiko.client-module.html#DEBUG,Variable paramiko.common.DEBUG=paramiko.common-module.html#DEBUG,Variable paramiko.dsskey.DEBUG=paramiko.dsskey-module.html#DEBUG,Variable paramiko.hostkeys.DEBUG=paramiko.hostkeys-module.html#DEBUG,Variable paramiko.kex_gex.DEBUG=paramiko.kex_gex-module.html#DEBUG,Variable paramiko.kex_group1.DEBUG=paramiko.kex_group1-module.html#DEBUG,Variable paramiko.logging22.DEBUG=paramiko.logging22-module.html#DEBUG,Variable paramiko.packet.DEBUG=paramiko.packet-module.html#DEBUG,Variable paramiko.pkey.DEBUG=paramiko.pkey-module.html#DEBUG,Variable paramiko.rsakey.DEBUG=paramiko.rsakey-module.html#DEBUG,Variable paramiko.server.DEBUG=paramiko.server-module.html#DEBUG,Variable paramiko.sftp.DEBUG=paramiko.sftp-module.html#DEBUG,Variable paramiko.sftp_attr.DEBUG=paramiko.sftp_attr-module.html#DEBUG,Variable paramiko.sftp_client.DEBUG=paramiko.sftp_client-module.html#DEBUG,Variable paramiko.sftp_file.DEBUG=paramiko.sftp_file-module.html#DEBUG,Variable paramiko.sftp_handle.DEBUG=paramiko.sftp_handle-module.html#DEBUG,Variable paramiko.sftp_server.DEBUG=paramiko.sftp_server-module.html#DEBUG,Variable paramiko.sftp_si.DEBUG=paramiko.sftp_si-module.html#DEBUG,Variable paramiko.transport.DEBUG=paramiko.transport-module.html#DEBUG,Variable paramiko.util.DEBUG=paramiko.util-module.html#DEBUG"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-192', 'DEBUG', 'link-192');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Sending global request "%s"'</tt> <tt class="py-op">%</tt> <tt class="py-name">kind</tt><tt class="py-op">)</tt> </tt>
-<a name="L914"></a><tt class="py-lineno"> 914</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_user_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L915"></a><tt class="py-lineno"> 915</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">wait</tt><tt class="py-op">:</tt> </tt>
-<a name="L916"></a><tt class="py-lineno"> 916</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L917"></a><tt class="py-lineno"> 917</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L918"></a><tt class="py-lineno"> 918</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">completion_event</tt><tt class="py-op">.</tt><tt class="py-name">wait</tt><tt class="py-op">(</tt><tt class="py-number">0.1</tt><tt class="py-op">)</tt> </tt>
-<a name="L919"></a><tt class="py-lineno"> 919</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt><tt class="py-op">:</tt> </tt>
-<a name="L920"></a><tt class="py-lineno"> 920</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L921"></a><tt class="py-lineno"> 921</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">completion_event</tt><tt class="py-op">.</tt><tt class="py-name">isSet</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L922"></a><tt class="py-lineno"> 922</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L923"></a><tt class="py-lineno"> 923</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">global_response</tt> </tt>
-</div><a name="L924"></a><tt class="py-lineno"> 924</tt> <tt class="py-line"> </tt>
-<a name="Transport.accept"></a><div id="Transport.accept-def"><a name="L925"></a><tt class="py-lineno"> 925</tt> <a class="py-toggle" href="#" id="Transport.accept-toggle" onclick="return toggle('Transport.accept');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#accept">accept</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">timeout</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.accept-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.accept-expanded"><a name="L926"></a><tt class="py-lineno"> 926</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L927"></a><tt class="py-lineno"> 927</tt> <tt class="py-line"><tt class="py-docstring"> Return the next channel opened by the client over this transport, in</tt> </tt>
-<a name="L928"></a><tt class="py-lineno"> 928</tt> <tt class="py-line"><tt class="py-docstring"> server mode. If no channel is opened before the given timeout, C{None}</tt> </tt>
-<a name="L929"></a><tt class="py-lineno"> 929</tt> <tt class="py-line"><tt class="py-docstring"> is returned.</tt> </tt>
-<a name="L930"></a><tt class="py-lineno"> 930</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L931"></a><tt class="py-lineno"> 931</tt> <tt class="py-line"><tt class="py-docstring"> @param timeout: seconds to wait for a channel, or C{None} to wait</tt> </tt>
-<a name="L932"></a><tt class="py-lineno"> 932</tt> <tt class="py-line"><tt class="py-docstring"> forever</tt> </tt>
-<a name="L933"></a><tt class="py-lineno"> 933</tt> <tt class="py-line"><tt class="py-docstring"> @type timeout: int</tt> </tt>
-<a name="L934"></a><tt class="py-lineno"> 934</tt> <tt class="py-line"><tt class="py-docstring"> @return: a new Channel opened by the client</tt> </tt>
-<a name="L935"></a><tt class="py-lineno"> 935</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: L{Channel}</tt> </tt>
-<a name="L936"></a><tt class="py-lineno"> 936</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L937"></a><tt class="py-lineno"> 937</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L938"></a><tt class="py-lineno"> 938</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L939"></a><tt class="py-lineno"> 939</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_accepts</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L940"></a><tt class="py-lineno"> 940</tt> <tt class="py-line"> <tt class="py-name">chan</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_accepts</tt><tt class="py-op">.</tt><tt class="py-name">pop</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L941"></a><tt class="py-lineno"> 941</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L942"></a><tt class="py-lineno"> 942</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_accept_cv</tt><tt class="py-op">.</tt><tt class="py-name">wait</tt><tt class="py-op">(</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L943"></a><tt class="py-lineno"> 943</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_accepts</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L944"></a><tt class="py-lineno"> 944</tt> <tt class="py-line"> <tt class="py-name">chan</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_accepts</tt><tt class="py-op">.</tt><tt class="py-name">pop</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L945"></a><tt class="py-lineno"> 945</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L946"></a><tt class="py-lineno"> 946</tt> <tt class="py-line"> <tt class="py-comment"># timeout</tt> </tt>
-<a name="L947"></a><tt class="py-lineno"> 947</tt> <tt class="py-line"> <tt class="py-name">chan</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L948"></a><tt class="py-lineno"> 948</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L949"></a><tt class="py-lineno"> 949</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L950"></a><tt class="py-lineno"> 950</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">chan</tt> </tt>
-</div><a name="L951"></a><tt class="py-lineno"> 951</tt> <tt class="py-line"> </tt>
-<a name="Transport.connect"></a><div id="Transport.connect-def"><a name="L952"></a><tt class="py-lineno"> 952</tt> <a class="py-toggle" href="#" id="Transport.connect-toggle" onclick="return toggle('Transport.connect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#connect">connect</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">hostkey</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">username</tt><tt class="py-op">=</tt><tt class="py-string">''</tt><tt class="py-op">,</tt> <tt class="py-param">password</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">pkey</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.connect-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.connect-expanded"><a name="L953"></a><tt class="py-lineno"> 953</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L954"></a><tt class="py-lineno"> 954</tt> <tt class="py-line"><tt class="py-docstring"> Negotiate an SSH2 session, and optionally verify the server's host key</tt> </tt>
-<a name="L955"></a><tt class="py-lineno"> 955</tt> <tt class="py-line"><tt class="py-docstring"> and authenticate using a password or private key. This is a shortcut</tt> </tt>
-<a name="L956"></a><tt class="py-lineno"> 956</tt> <tt class="py-line"><tt class="py-docstring"> for L{start_client}, L{get_remote_server_key}, and</tt> </tt>
-<a name="L957"></a><tt class="py-lineno"> 957</tt> <tt class="py-line"><tt class="py-docstring"> L{Transport.auth_password} or L{Transport.auth_publickey}. Use those</tt> </tt>
-<a name="L958"></a><tt class="py-lineno"> 958</tt> <tt class="py-line"><tt class="py-docstring"> methods if you want more control.</tt> </tt>
-<a name="L959"></a><tt class="py-lineno"> 959</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L960"></a><tt class="py-lineno"> 960</tt> <tt class="py-line"><tt class="py-docstring"> You can use this method immediately after creating a Transport to</tt> </tt>
-<a name="L961"></a><tt class="py-lineno"> 961</tt> <tt class="py-line"><tt class="py-docstring"> negotiate encryption with a server. If it fails, an exception will be</tt> </tt>
-<a name="L962"></a><tt class="py-lineno"> 962</tt> <tt class="py-line"><tt class="py-docstring"> thrown. On success, the method will return cleanly, and an encrypted</tt> </tt>
-<a name="L963"></a><tt class="py-lineno"> 963</tt> <tt class="py-line"><tt class="py-docstring"> session exists. You may immediately call L{open_channel} or</tt> </tt>
-<a name="L964"></a><tt class="py-lineno"> 964</tt> <tt class="py-line"><tt class="py-docstring"> L{open_session} to get a L{Channel} object, which is used for data</tt> </tt>
-<a name="L965"></a><tt class="py-lineno"> 965</tt> <tt class="py-line"><tt class="py-docstring"> transfer.</tt> </tt>
-<a name="L966"></a><tt class="py-lineno"> 966</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L967"></a><tt class="py-lineno"> 967</tt> <tt class="py-line"><tt class="py-docstring"> @note: If you fail to supply a password or private key, this method may</tt> </tt>
-<a name="L968"></a><tt class="py-lineno"> 968</tt> <tt class="py-line"><tt class="py-docstring"> succeed, but a subsequent L{open_channel} or L{open_session} call may</tt> </tt>
-<a name="L969"></a><tt class="py-lineno"> 969</tt> <tt class="py-line"><tt class="py-docstring"> fail because you haven't authenticated yet.</tt> </tt>
-<a name="L970"></a><tt class="py-lineno"> 970</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L971"></a><tt class="py-lineno"> 971</tt> <tt class="py-line"><tt class="py-docstring"> @param hostkey: the host key expected from the server, or C{None} if</tt> </tt>
-<a name="L972"></a><tt class="py-lineno"> 972</tt> <tt class="py-line"><tt class="py-docstring"> you don't want to do host key verification.</tt> </tt>
-<a name="L973"></a><tt class="py-lineno"> 973</tt> <tt class="py-line"><tt class="py-docstring"> @type hostkey: L{PKey&lt;pkey.PKey&gt;}</tt> </tt>
-<a name="L974"></a><tt class="py-lineno"> 974</tt> <tt class="py-line"><tt class="py-docstring"> @param username: the username to authenticate as.</tt> </tt>
-<a name="L975"></a><tt class="py-lineno"> 975</tt> <tt class="py-line"><tt class="py-docstring"> @type username: str</tt> </tt>
-<a name="L976"></a><tt class="py-lineno"> 976</tt> <tt class="py-line"><tt class="py-docstring"> @param password: a password to use for authentication, if you want to</tt> </tt>
-<a name="L977"></a><tt class="py-lineno"> 977</tt> <tt class="py-line"><tt class="py-docstring"> use password authentication; otherwise C{None}.</tt> </tt>
-<a name="L978"></a><tt class="py-lineno"> 978</tt> <tt class="py-line"><tt class="py-docstring"> @type password: str</tt> </tt>
-<a name="L979"></a><tt class="py-lineno"> 979</tt> <tt class="py-line"><tt class="py-docstring"> @param pkey: a private key to use for authentication, if you want to</tt> </tt>
-<a name="L980"></a><tt class="py-lineno"> 980</tt> <tt class="py-line"><tt class="py-docstring"> use private key authentication; otherwise C{None}.</tt> </tt>
-<a name="L981"></a><tt class="py-lineno"> 981</tt> <tt class="py-line"><tt class="py-docstring"> @type pkey: L{PKey&lt;pkey.PKey&gt;}</tt> </tt>
-<a name="L982"></a><tt class="py-lineno"> 982</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L983"></a><tt class="py-lineno"> 983</tt> <tt class="py-line"><tt class="py-docstring"> @raise SSHException: if the SSH2 negotiation fails, the host key</tt> </tt>
-<a name="L984"></a><tt class="py-lineno"> 984</tt> <tt class="py-line"><tt class="py-docstring"> supplied by the server is incorrect, or authentication fails.</tt> </tt>
-<a name="L985"></a><tt class="py-lineno"> 985</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L986"></a><tt class="py-lineno"> 986</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">hostkey</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L987"></a><tt class="py-lineno"> 987</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-193" class="py-name"><a title="paramiko.Transport._preferred_keys" class="py-name" href="#" onclick="return doclink('link-193', '_preferred_keys', 'link-55');">_preferred_keys</a></tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt> <tt class="py-name">hostkey</tt><tt class="py-op">.</tt><tt id="link-194" class="py-name"><a title="paramiko.AgentKey.get_name
-paramiko.Channel.get_name
-paramiko.DSSKey.get_name
-paramiko.PKey.get_name
-paramiko.RSAKey.get_name" class="py-name" href="#" onclick="return doclink('link-194', 'get_name', 'link-127');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">]</tt> </tt>
-<a name="L988"></a><tt class="py-lineno"> 988</tt> <tt class="py-line"> </tt>
-<a name="L989"></a><tt class="py-lineno"> 989</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-195" class="py-name" targets="Method paramiko.Transport.start_client()=paramiko.Transport-class.html#start_client"><a title="paramiko.Transport.start_client" class="py-name" href="#" onclick="return doclink('link-195', 'start_client', 'link-195');">start_client</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L990"></a><tt class="py-lineno"> 990</tt> <tt class="py-line"> </tt>
-<a name="L991"></a><tt class="py-lineno"> 991</tt> <tt class="py-line"> <tt class="py-comment"># check host key if we were given one</tt> </tt>
-<a name="L992"></a><tt class="py-lineno"> 992</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">hostkey</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L993"></a><tt class="py-lineno"> 993</tt> <tt class="py-line"> <tt class="py-name">key</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-196" class="py-name" targets="Method paramiko.Transport.get_remote_server_key()=paramiko.Transport-class.html#get_remote_server_key"><a title="paramiko.Transport.get_remote_server_key" class="py-name" href="#" onclick="return doclink('link-196', 'get_remote_server_key', 'link-196');">get_remote_server_key</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L994"></a><tt class="py-lineno"> 994</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">.</tt><tt id="link-197" class="py-name"><a title="paramiko.AgentKey.get_name
-paramiko.Channel.get_name
-paramiko.DSSKey.get_name
-paramiko.PKey.get_name
-paramiko.RSAKey.get_name" class="py-name" href="#" onclick="return doclink('link-197', 'get_name', 'link-127');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-name">hostkey</tt><tt class="py-op">.</tt><tt id="link-198" class="py-name"><a title="paramiko.AgentKey.get_name
-paramiko.Channel.get_name
-paramiko.DSSKey.get_name
-paramiko.PKey.get_name
-paramiko.RSAKey.get_name" class="py-name" href="#" onclick="return doclink('link-198', 'get_name', 'link-127');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">)</tt> <tt class="py-op">!=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">hostkey</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L995"></a><tt class="py-lineno"> 995</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-199" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-199', 'DEBUG', 'link-192');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Bad host key from server'</tt><tt class="py-op">)</tt> </tt>
-<a name="L996"></a><tt class="py-lineno"> 996</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-200" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-200', 'DEBUG', 'link-192');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Expected: %s: %s'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">hostkey</tt><tt class="py-op">.</tt><tt id="link-201" class="py-name"><a title="paramiko.AgentKey.get_name
-paramiko.Channel.get_name
-paramiko.DSSKey.get_name
-paramiko.PKey.get_name
-paramiko.RSAKey.get_name" class="py-name" href="#" onclick="return doclink('link-201', 'get_name', 'link-127');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">hostkey</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L997"></a><tt class="py-lineno"> 997</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-202" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-202', 'DEBUG', 'link-192');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Got : %s: %s'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">.</tt><tt id="link-203" class="py-name"><a title="paramiko.AgentKey.get_name
-paramiko.Channel.get_name
-paramiko.DSSKey.get_name
-paramiko.PKey.get_name
-paramiko.RSAKey.get_name" class="py-name" href="#" onclick="return doclink('link-203', 'get_name', 'link-127');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">repr</tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L998"></a><tt class="py-lineno"> 998</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-204" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-204', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Bad host key from server'</tt><tt class="py-op">)</tt> </tt>
-<a name="L999"></a><tt class="py-lineno"> 999</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-205" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-205', 'DEBUG', 'link-192');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Host key verified (%s)'</tt> <tt class="py-op">%</tt> <tt class="py-name">hostkey</tt><tt class="py-op">.</tt><tt id="link-206" class="py-name"><a title="paramiko.AgentKey.get_name
-paramiko.Channel.get_name
-paramiko.DSSKey.get_name
-paramiko.PKey.get_name
-paramiko.RSAKey.get_name" class="py-name" href="#" onclick="return doclink('link-206', 'get_name', 'link-127');">get_name</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1000"></a><tt class="py-lineno">1000</tt> <tt class="py-line"> </tt>
-<a name="L1001"></a><tt class="py-lineno">1001</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt id="link-207" class="py-name" targets="Module paramiko.pkey=paramiko.pkey-module.html"><a title="paramiko.pkey" class="py-name" href="#" onclick="return doclink('link-207', 'pkey', 'link-207');">pkey</a></tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">password</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1002"></a><tt class="py-lineno">1002</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">password</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L1003"></a><tt class="py-lineno">1003</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-208" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-208', 'DEBUG', 'link-192');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Attempting password auth...'</tt><tt class="py-op">)</tt> </tt>
-<a name="L1004"></a><tt class="py-lineno">1004</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-209" class="py-name" targets="Method paramiko.Transport.auth_password()=paramiko.Transport-class.html#auth_password"><a title="paramiko.Transport.auth_password" class="py-name" href="#" onclick="return doclink('link-209', 'auth_password', 'link-209');">auth_password</a></tt><tt class="py-op">(</tt><tt class="py-name">username</tt><tt class="py-op">,</tt> <tt class="py-name">password</tt><tt class="py-op">)</tt> </tt>
-<a name="L1005"></a><tt class="py-lineno">1005</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1006"></a><tt class="py-lineno">1006</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-210" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-210', 'DEBUG', 'link-192');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Attempting public-key auth...'</tt><tt class="py-op">)</tt> </tt>
-<a name="L1007"></a><tt class="py-lineno">1007</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-211" class="py-name" targets="Method paramiko.Transport.auth_publickey()=paramiko.Transport-class.html#auth_publickey"><a title="paramiko.Transport.auth_publickey" class="py-name" href="#" onclick="return doclink('link-211', 'auth_publickey', 'link-211');">auth_publickey</a></tt><tt class="py-op">(</tt><tt class="py-name">username</tt><tt class="py-op">,</tt> <tt id="link-212" class="py-name"><a title="paramiko.pkey" class="py-name" href="#" onclick="return doclink('link-212', 'pkey', 'link-207');">pkey</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L1008"></a><tt class="py-lineno">1008</tt> <tt class="py-line"> </tt>
-<a name="L1009"></a><tt class="py-lineno">1009</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-</div><a name="L1010"></a><tt class="py-lineno">1010</tt> <tt class="py-line"> </tt>
-<a name="Transport.get_exception"></a><div id="Transport.get_exception-def"><a name="L1011"></a><tt class="py-lineno">1011</tt> <a class="py-toggle" href="#" id="Transport.get_exception-toggle" onclick="return toggle('Transport.get_exception');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#get_exception">get_exception</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.get_exception-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.get_exception-expanded"><a name="L1012"></a><tt class="py-lineno">1012</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1013"></a><tt class="py-lineno">1013</tt> <tt class="py-line"><tt class="py-docstring"> Return any exception that happened during the last server request.</tt> </tt>
-<a name="L1014"></a><tt class="py-lineno">1014</tt> <tt class="py-line"><tt class="py-docstring"> This can be used to fetch more specific error information after using</tt> </tt>
-<a name="L1015"></a><tt class="py-lineno">1015</tt> <tt class="py-line"><tt class="py-docstring"> calls like L{start_client}. The exception (if any) is cleared after</tt> </tt>
-<a name="L1016"></a><tt class="py-lineno">1016</tt> <tt class="py-line"><tt class="py-docstring"> this call.</tt> </tt>
-<a name="L1017"></a><tt class="py-lineno">1017</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1018"></a><tt class="py-lineno">1018</tt> <tt class="py-line"><tt class="py-docstring"> @return: an exception, or C{None} if there is no stored exception.</tt> </tt>
-<a name="L1019"></a><tt class="py-lineno">1019</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: Exception</tt> </tt>
-<a name="L1020"></a><tt class="py-lineno">1020</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1021"></a><tt class="py-lineno">1021</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.1</tt> </tt>
-<a name="L1022"></a><tt class="py-lineno">1022</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1023"></a><tt class="py-lineno">1023</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1024"></a><tt class="py-lineno">1024</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1025"></a><tt class="py-lineno">1025</tt> <tt class="py-line"> <tt class="py-name">e</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">saved_exception</tt> </tt>
-<a name="L1026"></a><tt class="py-lineno">1026</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">saved_exception</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1027"></a><tt class="py-lineno">1027</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">e</tt> </tt>
-<a name="L1028"></a><tt class="py-lineno">1028</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L1029"></a><tt class="py-lineno">1029</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1030"></a><tt class="py-lineno">1030</tt> <tt class="py-line"> </tt>
-<a name="Transport.set_subsystem_handler"></a><div id="Transport.set_subsystem_handler-def"><a name="L1031"></a><tt class="py-lineno">1031</tt> <a class="py-toggle" href="#" id="Transport.set_subsystem_handler-toggle" onclick="return toggle('Transport.set_subsystem_handler');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#set_subsystem_handler">set_subsystem_handler</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">name</tt><tt class="py-op">,</tt> <tt class="py-param">handler</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">larg</tt><tt class="py-op">,</tt> <tt class="py-op">**</tt><tt class="py-param">kwarg</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.set_subsystem_handler-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.set_subsystem_handler-expanded"><a name="L1032"></a><tt class="py-lineno">1032</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1033"></a><tt class="py-lineno">1033</tt> <tt class="py-line"><tt class="py-docstring"> Set the handler class for a subsystem in server mode. If a request</tt> </tt>
-<a name="L1034"></a><tt class="py-lineno">1034</tt> <tt class="py-line"><tt class="py-docstring"> for this subsystem is made on an open ssh channel later, this handler</tt> </tt>
-<a name="L1035"></a><tt class="py-lineno">1035</tt> <tt class="py-line"><tt class="py-docstring"> will be constructed and called -- see L{SubsystemHandler} for more</tt> </tt>
-<a name="L1036"></a><tt class="py-lineno">1036</tt> <tt class="py-line"><tt class="py-docstring"> detailed documentation.</tt> </tt>
-<a name="L1037"></a><tt class="py-lineno">1037</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1038"></a><tt class="py-lineno">1038</tt> <tt class="py-line"><tt class="py-docstring"> Any extra parameters (including keyword arguments) are saved and</tt> </tt>
-<a name="L1039"></a><tt class="py-lineno">1039</tt> <tt class="py-line"><tt class="py-docstring"> passed to the L{SubsystemHandler} constructor later.</tt> </tt>
-<a name="L1040"></a><tt class="py-lineno">1040</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1041"></a><tt class="py-lineno">1041</tt> <tt class="py-line"><tt class="py-docstring"> @param name: name of the subsystem.</tt> </tt>
-<a name="L1042"></a><tt class="py-lineno">1042</tt> <tt class="py-line"><tt class="py-docstring"> @type name: str</tt> </tt>
-<a name="L1043"></a><tt class="py-lineno">1043</tt> <tt class="py-line"><tt class="py-docstring"> @param handler: subclass of L{SubsystemHandler} that handles this</tt> </tt>
-<a name="L1044"></a><tt class="py-lineno">1044</tt> <tt class="py-line"><tt class="py-docstring"> subsystem.</tt> </tt>
-<a name="L1045"></a><tt class="py-lineno">1045</tt> <tt class="py-line"><tt class="py-docstring"> @type handler: class</tt> </tt>
-<a name="L1046"></a><tt class="py-lineno">1046</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1047"></a><tt class="py-lineno">1047</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1048"></a><tt class="py-lineno">1048</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1049"></a><tt class="py-lineno">1049</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">subsystem_table</tt><tt class="py-op">[</tt><tt id="link-213" class="py-name"><a title="paramiko.kex_gex.KexGex.name
-paramiko.kex_group1.KexGroup1.name" class="py-name" href="#" onclick="return doclink('link-213', 'name', 'link-60');">name</a></tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">handler</tt><tt class="py-op">,</tt> <tt class="py-name">larg</tt><tt class="py-op">,</tt> <tt class="py-name">kwarg</tt><tt class="py-op">)</tt> </tt>
-<a name="L1050"></a><tt class="py-lineno">1050</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L1051"></a><tt class="py-lineno">1051</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1052"></a><tt class="py-lineno">1052</tt> <tt class="py-line"> </tt>
-<a name="Transport.is_authenticated"></a><div id="Transport.is_authenticated-def"><a name="L1053"></a><tt class="py-lineno">1053</tt> <a class="py-toggle" href="#" id="Transport.is_authenticated-toggle" onclick="return toggle('Transport.is_authenticated');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#is_authenticated">is_authenticated</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.is_authenticated-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.is_authenticated-expanded"><a name="L1054"></a><tt class="py-lineno">1054</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1055"></a><tt class="py-lineno">1055</tt> <tt class="py-line"><tt class="py-docstring"> Return true if this session is active and authenticated.</tt> </tt>
-<a name="L1056"></a><tt class="py-lineno">1056</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1057"></a><tt class="py-lineno">1057</tt> <tt class="py-line"><tt class="py-docstring"> @return: True if the session is still open and has been authenticated</tt> </tt>
-<a name="L1058"></a><tt class="py-lineno">1058</tt> <tt class="py-line"><tt class="py-docstring"> successfully; False if authentication failed and/or the session is</tt> </tt>
-<a name="L1059"></a><tt class="py-lineno">1059</tt> <tt class="py-line"><tt class="py-docstring"> closed.</tt> </tt>
-<a name="L1060"></a><tt class="py-lineno">1060</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: bool</tt> </tt>
-<a name="L1061"></a><tt class="py-lineno">1061</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1062"></a><tt class="py-lineno">1062</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-214" class="py-name"><a title="paramiko.auth_handler" class="py-name" href="#" onclick="return doclink('link-214', 'auth_handler', 'link-3');">auth_handler</a></tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-215" class="py-name"><a title="paramiko.auth_handler" class="py-name" href="#" onclick="return doclink('link-215', 'auth_handler', 'link-3');">auth_handler</a></tt><tt class="py-op">.</tt><tt id="link-216" class="py-name"><a title="paramiko.Transport.is_authenticated" class="py-name" href="#" onclick="return doclink('link-216', 'is_authenticated', 'link-114');">is_authenticated</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1063"></a><tt class="py-lineno">1063</tt> <tt class="py-line"> </tt>
-<a name="Transport.get_username"></a><div id="Transport.get_username-def"><a name="L1064"></a><tt class="py-lineno">1064</tt> <a class="py-toggle" href="#" id="Transport.get_username-toggle" onclick="return toggle('Transport.get_username');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#get_username">get_username</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.get_username-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.get_username-expanded"><a name="L1065"></a><tt class="py-lineno">1065</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1066"></a><tt class="py-lineno">1066</tt> <tt class="py-line"><tt class="py-docstring"> Return the username this connection is authenticated for. If the</tt> </tt>
-<a name="L1067"></a><tt class="py-lineno">1067</tt> <tt class="py-line"><tt class="py-docstring"> session is not authenticated (or authentication failed), this method</tt> </tt>
-<a name="L1068"></a><tt class="py-lineno">1068</tt> <tt class="py-line"><tt class="py-docstring"> returns C{None}.</tt> </tt>
-<a name="L1069"></a><tt class="py-lineno">1069</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1070"></a><tt class="py-lineno">1070</tt> <tt class="py-line"><tt class="py-docstring"> @return: username that was authenticated, or C{None}.</tt> </tt>
-<a name="L1071"></a><tt class="py-lineno">1071</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: string</tt> </tt>
-<a name="L1072"></a><tt class="py-lineno">1072</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1073"></a><tt class="py-lineno">1073</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-217" class="py-name"><a title="paramiko.auth_handler" class="py-name" href="#" onclick="return doclink('link-217', 'auth_handler', 'link-3');">auth_handler</a></tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1074"></a><tt class="py-lineno">1074</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1075"></a><tt class="py-lineno">1075</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-218" class="py-name"><a title="paramiko.auth_handler" class="py-name" href="#" onclick="return doclink('link-218', 'auth_handler', 'link-3');">auth_handler</a></tt><tt class="py-op">.</tt><tt id="link-219" class="py-name" targets="Method paramiko.Transport.get_username()=paramiko.Transport-class.html#get_username"><a title="paramiko.Transport.get_username" class="py-name" href="#" onclick="return doclink('link-219', 'get_username', 'link-219');">get_username</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1076"></a><tt class="py-lineno">1076</tt> <tt class="py-line"> </tt>
-<a name="Transport.auth_none"></a><div id="Transport.auth_none-def"><a name="L1077"></a><tt class="py-lineno">1077</tt> <a class="py-toggle" href="#" id="Transport.auth_none-toggle" onclick="return toggle('Transport.auth_none');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#auth_none">auth_none</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">username</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.auth_none-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.auth_none-expanded"><a name="L1078"></a><tt class="py-lineno">1078</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1079"></a><tt class="py-lineno">1079</tt> <tt class="py-line"><tt class="py-docstring"> Try to authenticate to the server using no authentication at all.</tt> </tt>
-<a name="L1080"></a><tt class="py-lineno">1080</tt> <tt class="py-line"><tt class="py-docstring"> This will almost always fail. It may be useful for determining the</tt> </tt>
-<a name="L1081"></a><tt class="py-lineno">1081</tt> <tt class="py-line"><tt class="py-docstring"> list of authentication types supported by the server, by catching the</tt> </tt>
-<a name="L1082"></a><tt class="py-lineno">1082</tt> <tt class="py-line"><tt class="py-docstring"> L{BadAuthenticationType} exception raised.</tt> </tt>
-<a name="L1083"></a><tt class="py-lineno">1083</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1084"></a><tt class="py-lineno">1084</tt> <tt class="py-line"><tt class="py-docstring"> @param username: the username to authenticate as</tt> </tt>
-<a name="L1085"></a><tt class="py-lineno">1085</tt> <tt class="py-line"><tt class="py-docstring"> @type username: string</tt> </tt>
-<a name="L1086"></a><tt class="py-lineno">1086</tt> <tt class="py-line"><tt class="py-docstring"> @return: list of auth types permissible for the next stage of</tt> </tt>
-<a name="L1087"></a><tt class="py-lineno">1087</tt> <tt class="py-line"><tt class="py-docstring"> authentication (normally empty)</tt> </tt>
-<a name="L1088"></a><tt class="py-lineno">1088</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: list</tt> </tt>
-<a name="L1089"></a><tt class="py-lineno">1089</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1090"></a><tt class="py-lineno">1090</tt> <tt class="py-line"><tt class="py-docstring"> @raise BadAuthenticationType: if "none" authentication isn't allowed</tt> </tt>
-<a name="L1091"></a><tt class="py-lineno">1091</tt> <tt class="py-line"><tt class="py-docstring"> by the server for this user</tt> </tt>
-<a name="L1092"></a><tt class="py-lineno">1092</tt> <tt class="py-line"><tt class="py-docstring"> @raise SSHException: if the authentication failed due to a network</tt> </tt>
-<a name="L1093"></a><tt class="py-lineno">1093</tt> <tt class="py-line"><tt class="py-docstring"> error</tt> </tt>
-<a name="L1094"></a><tt class="py-lineno">1094</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1095"></a><tt class="py-lineno">1095</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.5</tt> </tt>
-<a name="L1096"></a><tt class="py-lineno">1096</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1097"></a><tt class="py-lineno">1097</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">initial_kex_done</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1098"></a><tt class="py-lineno">1098</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-220" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-220', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'No existing session'</tt><tt class="py-op">)</tt> </tt>
-<a name="L1099"></a><tt class="py-lineno">1099</tt> <tt class="py-line"> <tt class="py-name">my_event</tt> <tt class="py-op">=</tt> <tt class="py-name">threading</tt><tt class="py-op">.</tt><tt class="py-name">Event</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1100"></a><tt class="py-lineno">1100</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-221" class="py-name"><a title="paramiko.auth_handler" class="py-name" href="#" onclick="return doclink('link-221', 'auth_handler', 'link-3');">auth_handler</a></tt> <tt class="py-op">=</tt> <tt class="py-name">AuthHandler</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt> </tt>
-<a name="L1101"></a><tt class="py-lineno">1101</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-222" class="py-name"><a title="paramiko.auth_handler" class="py-name" href="#" onclick="return doclink('link-222', 'auth_handler', 'link-3');">auth_handler</a></tt><tt class="py-op">.</tt><tt id="link-223" class="py-name" targets="Method paramiko.Transport.auth_none()=paramiko.Transport-class.html#auth_none"><a title="paramiko.Transport.auth_none" class="py-name" href="#" onclick="return doclink('link-223', 'auth_none', 'link-223');">auth_none</a></tt><tt class="py-op">(</tt><tt class="py-name">username</tt><tt class="py-op">,</tt> <tt class="py-name">my_event</tt><tt class="py-op">)</tt> </tt>
-<a name="L1102"></a><tt class="py-lineno">1102</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-224" class="py-name"><a title="paramiko.auth_handler" class="py-name" href="#" onclick="return doclink('link-224', 'auth_handler', 'link-3');">auth_handler</a></tt><tt class="py-op">.</tt><tt class="py-name">wait_for_response</tt><tt class="py-op">(</tt><tt class="py-name">my_event</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1103"></a><tt class="py-lineno">1103</tt> <tt class="py-line"> </tt>
-<a name="Transport.auth_password"></a><div id="Transport.auth_password-def"><a name="L1104"></a><tt class="py-lineno">1104</tt> <a class="py-toggle" href="#" id="Transport.auth_password-toggle" onclick="return toggle('Transport.auth_password');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#auth_password">auth_password</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">username</tt><tt class="py-op">,</tt> <tt class="py-param">password</tt><tt class="py-op">,</tt> <tt class="py-param">event</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">fallback</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.auth_password-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.auth_password-expanded"><a name="L1105"></a><tt class="py-lineno">1105</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1106"></a><tt class="py-lineno">1106</tt> <tt class="py-line"><tt class="py-docstring"> Authenticate to the server using a password. The username and password</tt> </tt>
-<a name="L1107"></a><tt class="py-lineno">1107</tt> <tt class="py-line"><tt class="py-docstring"> are sent over an encrypted link.</tt> </tt>
-<a name="L1108"></a><tt class="py-lineno">1108</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1109"></a><tt class="py-lineno">1109</tt> <tt class="py-line"><tt class="py-docstring"> If an C{event} is passed in, this method will return immediately, and</tt> </tt>
-<a name="L1110"></a><tt class="py-lineno">1110</tt> <tt class="py-line"><tt class="py-docstring"> the event will be triggered once authentication succeeds or fails. On</tt> </tt>
-<a name="L1111"></a><tt class="py-lineno">1111</tt> <tt class="py-line"><tt class="py-docstring"> success, L{is_authenticated} will return C{True}. On failure, you may</tt> </tt>
-<a name="L1112"></a><tt class="py-lineno">1112</tt> <tt class="py-line"><tt class="py-docstring"> use L{get_exception} to get more detailed error information.</tt> </tt>
-<a name="L1113"></a><tt class="py-lineno">1113</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1114"></a><tt class="py-lineno">1114</tt> <tt class="py-line"><tt class="py-docstring"> Since 1.1, if no event is passed, this method will block until the</tt> </tt>
-<a name="L1115"></a><tt class="py-lineno">1115</tt> <tt class="py-line"><tt class="py-docstring"> authentication succeeds or fails. On failure, an exception is raised.</tt> </tt>
-<a name="L1116"></a><tt class="py-lineno">1116</tt> <tt class="py-line"><tt class="py-docstring"> Otherwise, the method simply returns.</tt> </tt>
-<a name="L1117"></a><tt class="py-lineno">1117</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1118"></a><tt class="py-lineno">1118</tt> <tt class="py-line"><tt class="py-docstring"> Since 1.5, if no event is passed and C{fallback} is C{True} (the</tt> </tt>
-<a name="L1119"></a><tt class="py-lineno">1119</tt> <tt class="py-line"><tt class="py-docstring"> default), if the server doesn't support plain password authentication</tt> </tt>
-<a name="L1120"></a><tt class="py-lineno">1120</tt> <tt class="py-line"><tt class="py-docstring"> but does support so-called "keyboard-interactive" mode, an attempt</tt> </tt>
-<a name="L1121"></a><tt class="py-lineno">1121</tt> <tt class="py-line"><tt class="py-docstring"> will be made to authenticate using this interactive mode. If it fails,</tt> </tt>
-<a name="L1122"></a><tt class="py-lineno">1122</tt> <tt class="py-line"><tt class="py-docstring"> the normal exception will be thrown as if the attempt had never been</tt> </tt>
-<a name="L1123"></a><tt class="py-lineno">1123</tt> <tt class="py-line"><tt class="py-docstring"> made. This is useful for some recent Gentoo and Debian distributions,</tt> </tt>
-<a name="L1124"></a><tt class="py-lineno">1124</tt> <tt class="py-line"><tt class="py-docstring"> which turn off plain password authentication in a misguided belief</tt> </tt>
-<a name="L1125"></a><tt class="py-lineno">1125</tt> <tt class="py-line"><tt class="py-docstring"> that interactive authentication is "more secure". (It's not.)</tt> </tt>
-<a name="L1126"></a><tt class="py-lineno">1126</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1127"></a><tt class="py-lineno">1127</tt> <tt class="py-line"><tt class="py-docstring"> If the server requires multi-step authentication (which is very rare),</tt> </tt>
-<a name="L1128"></a><tt class="py-lineno">1128</tt> <tt class="py-line"><tt class="py-docstring"> this method will return a list of auth types permissible for the next</tt> </tt>
-<a name="L1129"></a><tt class="py-lineno">1129</tt> <tt class="py-line"><tt class="py-docstring"> step. Otherwise, in the normal case, an empty list is returned.</tt> </tt>
-<a name="L1130"></a><tt class="py-lineno">1130</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1131"></a><tt class="py-lineno">1131</tt> <tt class="py-line"><tt class="py-docstring"> @param username: the username to authenticate as</tt> </tt>
-<a name="L1132"></a><tt class="py-lineno">1132</tt> <tt class="py-line"><tt class="py-docstring"> @type username: str</tt> </tt>
-<a name="L1133"></a><tt class="py-lineno">1133</tt> <tt class="py-line"><tt class="py-docstring"> @param password: the password to authenticate with</tt> </tt>
-<a name="L1134"></a><tt class="py-lineno">1134</tt> <tt class="py-line"><tt class="py-docstring"> @type password: str or unicode</tt> </tt>
-<a name="L1135"></a><tt class="py-lineno">1135</tt> <tt class="py-line"><tt class="py-docstring"> @param event: an event to trigger when the authentication attempt is</tt> </tt>
-<a name="L1136"></a><tt class="py-lineno">1136</tt> <tt class="py-line"><tt class="py-docstring"> complete (whether it was successful or not)</tt> </tt>
-<a name="L1137"></a><tt class="py-lineno">1137</tt> <tt class="py-line"><tt class="py-docstring"> @type event: threading.Event</tt> </tt>
-<a name="L1138"></a><tt class="py-lineno">1138</tt> <tt class="py-line"><tt class="py-docstring"> @param fallback: C{True} if an attempt at an automated "interactive"</tt> </tt>
-<a name="L1139"></a><tt class="py-lineno">1139</tt> <tt class="py-line"><tt class="py-docstring"> password auth should be made if the server doesn't support normal</tt> </tt>
-<a name="L1140"></a><tt class="py-lineno">1140</tt> <tt class="py-line"><tt class="py-docstring"> password auth</tt> </tt>
-<a name="L1141"></a><tt class="py-lineno">1141</tt> <tt class="py-line"><tt class="py-docstring"> @type fallback: bool</tt> </tt>
-<a name="L1142"></a><tt class="py-lineno">1142</tt> <tt class="py-line"><tt class="py-docstring"> @return: list of auth types permissible for the next stage of</tt> </tt>
-<a name="L1143"></a><tt class="py-lineno">1143</tt> <tt class="py-line"><tt class="py-docstring"> authentication (normally empty)</tt> </tt>
-<a name="L1144"></a><tt class="py-lineno">1144</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: list</tt> </tt>
-<a name="L1145"></a><tt class="py-lineno">1145</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1146"></a><tt class="py-lineno">1146</tt> <tt class="py-line"><tt class="py-docstring"> @raise BadAuthenticationType: if password authentication isn't</tt> </tt>
-<a name="L1147"></a><tt class="py-lineno">1147</tt> <tt class="py-line"><tt class="py-docstring"> allowed by the server for this user (and no event was passed in)</tt> </tt>
-<a name="L1148"></a><tt class="py-lineno">1148</tt> <tt class="py-line"><tt class="py-docstring"> @raise AuthenticationException: if the authentication failed (and no</tt> </tt>
-<a name="L1149"></a><tt class="py-lineno">1149</tt> <tt class="py-line"><tt class="py-docstring"> event was passed in)</tt> </tt>
-<a name="L1150"></a><tt class="py-lineno">1150</tt> <tt class="py-line"><tt class="py-docstring"> @raise SSHException: if there was a network error</tt> </tt>
-<a name="L1151"></a><tt class="py-lineno">1151</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1152"></a><tt class="py-lineno">1152</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">initial_kex_done</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1153"></a><tt class="py-lineno">1153</tt> <tt class="py-line"> <tt class="py-comment"># we should never try to send the password unless we're on a secure link</tt> </tt>
-<a name="L1154"></a><tt class="py-lineno">1154</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-225" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-225', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'No existing session'</tt><tt class="py-op">)</tt> </tt>
-<a name="L1155"></a><tt class="py-lineno">1155</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">event</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L1156"></a><tt class="py-lineno">1156</tt> <tt class="py-line"> <tt class="py-name">my_event</tt> <tt class="py-op">=</tt> <tt class="py-name">threading</tt><tt class="py-op">.</tt><tt class="py-name">Event</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1157"></a><tt class="py-lineno">1157</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1158"></a><tt class="py-lineno">1158</tt> <tt class="py-line"> <tt class="py-name">my_event</tt> <tt class="py-op">=</tt> <tt class="py-name">event</tt> </tt>
-<a name="L1159"></a><tt class="py-lineno">1159</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-226" class="py-name"><a title="paramiko.auth_handler" class="py-name" href="#" onclick="return doclink('link-226', 'auth_handler', 'link-3');">auth_handler</a></tt> <tt class="py-op">=</tt> <tt class="py-name">AuthHandler</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt> </tt>
-<a name="L1160"></a><tt class="py-lineno">1160</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-227" class="py-name"><a title="paramiko.auth_handler" class="py-name" href="#" onclick="return doclink('link-227', 'auth_handler', 'link-3');">auth_handler</a></tt><tt class="py-op">.</tt><tt id="link-228" class="py-name"><a title="paramiko.Transport.auth_password" class="py-name" href="#" onclick="return doclink('link-228', 'auth_password', 'link-209');">auth_password</a></tt><tt class="py-op">(</tt><tt class="py-name">username</tt><tt class="py-op">,</tt> <tt class="py-name">password</tt><tt class="py-op">,</tt> <tt class="py-name">my_event</tt><tt class="py-op">)</tt> </tt>
-<a name="L1161"></a><tt class="py-lineno">1161</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">event</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L1162"></a><tt class="py-lineno">1162</tt> <tt class="py-line"> <tt class="py-comment"># caller wants to wait for event themselves</tt> </tt>
-<a name="L1163"></a><tt class="py-lineno">1163</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1164"></a><tt class="py-lineno">1164</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1165"></a><tt class="py-lineno">1165</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-229" class="py-name"><a title="paramiko.auth_handler" class="py-name" href="#" onclick="return doclink('link-229', 'auth_handler', 'link-3');">auth_handler</a></tt><tt class="py-op">.</tt><tt class="py-name">wait_for_response</tt><tt class="py-op">(</tt><tt class="py-name">my_event</tt><tt class="py-op">)</tt> </tt>
-<a name="L1166"></a><tt class="py-lineno">1166</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt id="link-230" class="py-name"><a title="paramiko.BadAuthenticationType" class="py-name" href="#" onclick="return doclink('link-230', 'BadAuthenticationType', 'link-43');">BadAuthenticationType</a></tt><tt class="py-op">,</tt> <tt class="py-name">x</tt><tt class="py-op">:</tt> </tt>
-<a name="L1167"></a><tt class="py-lineno">1167</tt> <tt class="py-line"> <tt class="py-comment"># if password auth isn't allowed, but keyboard-interactive *is*, try to fudge it</tt> </tt>
-<a name="L1168"></a><tt class="py-lineno">1168</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">fallback</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-string">'keyboard-interactive'</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">x</tt><tt class="py-op">.</tt><tt id="link-231" class="py-name" targets="Variable paramiko.BadAuthenticationType.allowed_types=paramiko.BadAuthenticationType-class.html#allowed_types,Variable paramiko.ssh_exception.PartialAuthentication.allowed_types=paramiko.ssh_exception.PartialAuthentication-class.html#allowed_types"><a title="paramiko.BadAuthenticationType.allowed_types
-paramiko.ssh_exception.PartialAuthentication.allowed_types" class="py-name" href="#" onclick="return doclink('link-231', 'allowed_types', 'link-231');">allowed_types</a></tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1169"></a><tt class="py-lineno">1169</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> </tt>
-<a name="L1170"></a><tt class="py-lineno">1170</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1171"></a><tt class="py-lineno">1171</tt> <tt class="py-line"> <tt class="py-keyword">def</tt> <tt class="py-def-name">handler</tt><tt class="py-op">(</tt><tt class="py-param">title</tt><tt class="py-op">,</tt> <tt class="py-param">instructions</tt><tt class="py-op">,</tt> <tt class="py-param">fields</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1172"></a><tt class="py-lineno">1172</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">fields</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L1173"></a><tt class="py-lineno">1173</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-232" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-232', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Fallback authentication failed.'</tt><tt class="py-op">)</tt> </tt>
-<a name="L1174"></a><tt class="py-lineno">1174</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">fields</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L1175"></a><tt class="py-lineno">1175</tt> <tt class="py-line"> <tt class="py-comment"># for some reason, at least on os x, a 2nd request will</tt> </tt>
-<a name="L1176"></a><tt class="py-lineno">1176</tt> <tt class="py-line"> <tt class="py-comment"># be made with zero fields requested. maybe it's just</tt> </tt>
-<a name="L1177"></a><tt class="py-lineno">1177</tt> <tt class="py-line"> <tt class="py-comment"># to try to fake out automated scripting of the exact</tt> </tt>
-<a name="L1178"></a><tt class="py-lineno">1178</tt> <tt class="py-line"> <tt class="py-comment"># type we're doing here. *shrug* :)</tt> </tt>
-<a name="L1179"></a><tt class="py-lineno">1179</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1180"></a><tt class="py-lineno">1180</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-op">[</tt> <tt class="py-name">password</tt> <tt class="py-op">]</tt> </tt>
-</div><a name="L1181"></a><tt class="py-lineno">1181</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-233" class="py-name" targets="Method paramiko.Transport.auth_interactive()=paramiko.Transport-class.html#auth_interactive"><a title="paramiko.Transport.auth_interactive" class="py-name" href="#" onclick="return doclink('link-233', 'auth_interactive', 'link-233');">auth_interactive</a></tt><tt class="py-op">(</tt><tt class="py-name">username</tt><tt class="py-op">,</tt> <tt class="py-name">handler</tt><tt class="py-op">)</tt> </tt>
-<a name="L1182"></a><tt class="py-lineno">1182</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt id="link-234" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-234', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">,</tt> <tt class="py-name">ignored</tt><tt class="py-op">:</tt> </tt>
-<a name="L1183"></a><tt class="py-lineno">1183</tt> <tt class="py-line"> <tt class="py-comment"># attempt failed; just raise the original exception</tt> </tt>
-<a name="L1184"></a><tt class="py-lineno">1184</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt class="py-name">x</tt> </tt>
-<a name="L1185"></a><tt class="py-lineno">1185</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L1186"></a><tt class="py-lineno">1186</tt> <tt class="py-line"> </tt>
-<a name="Transport.auth_publickey"></a><div id="Transport.auth_publickey-def"><a name="L1187"></a><tt class="py-lineno">1187</tt> <a class="py-toggle" href="#" id="Transport.auth_publickey-toggle" onclick="return toggle('Transport.auth_publickey');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#auth_publickey">auth_publickey</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">username</tt><tt class="py-op">,</tt> <tt class="py-param">key</tt><tt class="py-op">,</tt> <tt class="py-param">event</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.auth_publickey-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.auth_publickey-expanded"><a name="L1188"></a><tt class="py-lineno">1188</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1189"></a><tt class="py-lineno">1189</tt> <tt class="py-line"><tt class="py-docstring"> Authenticate to the server using a private key. The key is used to</tt> </tt>
-<a name="L1190"></a><tt class="py-lineno">1190</tt> <tt class="py-line"><tt class="py-docstring"> sign data from the server, so it must include the private part.</tt> </tt>
-<a name="L1191"></a><tt class="py-lineno">1191</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1192"></a><tt class="py-lineno">1192</tt> <tt class="py-line"><tt class="py-docstring"> If an C{event} is passed in, this method will return immediately, and</tt> </tt>
-<a name="L1193"></a><tt class="py-lineno">1193</tt> <tt class="py-line"><tt class="py-docstring"> the event will be triggered once authentication succeeds or fails. On</tt> </tt>
-<a name="L1194"></a><tt class="py-lineno">1194</tt> <tt class="py-line"><tt class="py-docstring"> success, L{is_authenticated} will return C{True}. On failure, you may</tt> </tt>
-<a name="L1195"></a><tt class="py-lineno">1195</tt> <tt class="py-line"><tt class="py-docstring"> use L{get_exception} to get more detailed error information.</tt> </tt>
-<a name="L1196"></a><tt class="py-lineno">1196</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1197"></a><tt class="py-lineno">1197</tt> <tt class="py-line"><tt class="py-docstring"> Since 1.1, if no event is passed, this method will block until the</tt> </tt>
-<a name="L1198"></a><tt class="py-lineno">1198</tt> <tt class="py-line"><tt class="py-docstring"> authentication succeeds or fails. On failure, an exception is raised.</tt> </tt>
-<a name="L1199"></a><tt class="py-lineno">1199</tt> <tt class="py-line"><tt class="py-docstring"> Otherwise, the method simply returns.</tt> </tt>
-<a name="L1200"></a><tt class="py-lineno">1200</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1201"></a><tt class="py-lineno">1201</tt> <tt class="py-line"><tt class="py-docstring"> If the server requires multi-step authentication (which is very rare),</tt> </tt>
-<a name="L1202"></a><tt class="py-lineno">1202</tt> <tt class="py-line"><tt class="py-docstring"> this method will return a list of auth types permissible for the next</tt> </tt>
-<a name="L1203"></a><tt class="py-lineno">1203</tt> <tt class="py-line"><tt class="py-docstring"> step. Otherwise, in the normal case, an empty list is returned.</tt> </tt>
-<a name="L1204"></a><tt class="py-lineno">1204</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1205"></a><tt class="py-lineno">1205</tt> <tt class="py-line"><tt class="py-docstring"> @param username: the username to authenticate as</tt> </tt>
-<a name="L1206"></a><tt class="py-lineno">1206</tt> <tt class="py-line"><tt class="py-docstring"> @type username: string</tt> </tt>
-<a name="L1207"></a><tt class="py-lineno">1207</tt> <tt class="py-line"><tt class="py-docstring"> @param key: the private key to authenticate with</tt> </tt>
-<a name="L1208"></a><tt class="py-lineno">1208</tt> <tt class="py-line"><tt class="py-docstring"> @type key: L{PKey &lt;pkey.PKey&gt;}</tt> </tt>
-<a name="L1209"></a><tt class="py-lineno">1209</tt> <tt class="py-line"><tt class="py-docstring"> @param event: an event to trigger when the authentication attempt is</tt> </tt>
-<a name="L1210"></a><tt class="py-lineno">1210</tt> <tt class="py-line"><tt class="py-docstring"> complete (whether it was successful or not)</tt> </tt>
-<a name="L1211"></a><tt class="py-lineno">1211</tt> <tt class="py-line"><tt class="py-docstring"> @type event: threading.Event</tt> </tt>
-<a name="L1212"></a><tt class="py-lineno">1212</tt> <tt class="py-line"><tt class="py-docstring"> @return: list of auth types permissible for the next stage of</tt> </tt>
-<a name="L1213"></a><tt class="py-lineno">1213</tt> <tt class="py-line"><tt class="py-docstring"> authentication (normally empty)</tt> </tt>
-<a name="L1214"></a><tt class="py-lineno">1214</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: list</tt> </tt>
-<a name="L1215"></a><tt class="py-lineno">1215</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1216"></a><tt class="py-lineno">1216</tt> <tt class="py-line"><tt class="py-docstring"> @raise BadAuthenticationType: if public-key authentication isn't</tt> </tt>
-<a name="L1217"></a><tt class="py-lineno">1217</tt> <tt class="py-line"><tt class="py-docstring"> allowed by the server for this user (and no event was passed in)</tt> </tt>
-<a name="L1218"></a><tt class="py-lineno">1218</tt> <tt class="py-line"><tt class="py-docstring"> @raise AuthenticationException: if the authentication failed (and no</tt> </tt>
-<a name="L1219"></a><tt class="py-lineno">1219</tt> <tt class="py-line"><tt class="py-docstring"> event was passed in)</tt> </tt>
-<a name="L1220"></a><tt class="py-lineno">1220</tt> <tt class="py-line"><tt class="py-docstring"> @raise SSHException: if there was a network error</tt> </tt>
-<a name="L1221"></a><tt class="py-lineno">1221</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1222"></a><tt class="py-lineno">1222</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">initial_kex_done</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1223"></a><tt class="py-lineno">1223</tt> <tt class="py-line"> <tt class="py-comment"># we should never try to authenticate unless we're on a secure link</tt> </tt>
-<a name="L1224"></a><tt class="py-lineno">1224</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-235" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-235', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'No existing session'</tt><tt class="py-op">)</tt> </tt>
-<a name="L1225"></a><tt class="py-lineno">1225</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">event</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L1226"></a><tt class="py-lineno">1226</tt> <tt class="py-line"> <tt class="py-name">my_event</tt> <tt class="py-op">=</tt> <tt class="py-name">threading</tt><tt class="py-op">.</tt><tt class="py-name">Event</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1227"></a><tt class="py-lineno">1227</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1228"></a><tt class="py-lineno">1228</tt> <tt class="py-line"> <tt class="py-name">my_event</tt> <tt class="py-op">=</tt> <tt class="py-name">event</tt> </tt>
-<a name="L1229"></a><tt class="py-lineno">1229</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-236" class="py-name"><a title="paramiko.auth_handler" class="py-name" href="#" onclick="return doclink('link-236', 'auth_handler', 'link-3');">auth_handler</a></tt> <tt class="py-op">=</tt> <tt class="py-name">AuthHandler</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt> </tt>
-<a name="L1230"></a><tt class="py-lineno">1230</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-237" class="py-name"><a title="paramiko.auth_handler" class="py-name" href="#" onclick="return doclink('link-237', 'auth_handler', 'link-3');">auth_handler</a></tt><tt class="py-op">.</tt><tt id="link-238" class="py-name"><a title="paramiko.Transport.auth_publickey" class="py-name" href="#" onclick="return doclink('link-238', 'auth_publickey', 'link-211');">auth_publickey</a></tt><tt class="py-op">(</tt><tt class="py-name">username</tt><tt class="py-op">,</tt> <tt class="py-name">key</tt><tt class="py-op">,</tt> <tt class="py-name">my_event</tt><tt class="py-op">)</tt> </tt>
-<a name="L1231"></a><tt class="py-lineno">1231</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">event</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L1232"></a><tt class="py-lineno">1232</tt> <tt class="py-line"> <tt class="py-comment"># caller wants to wait for event themselves</tt> </tt>
-<a name="L1233"></a><tt class="py-lineno">1233</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L1234"></a><tt class="py-lineno">1234</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-239" class="py-name"><a title="paramiko.auth_handler" class="py-name" href="#" onclick="return doclink('link-239', 'auth_handler', 'link-3');">auth_handler</a></tt><tt class="py-op">.</tt><tt class="py-name">wait_for_response</tt><tt class="py-op">(</tt><tt class="py-name">my_event</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1235"></a><tt class="py-lineno">1235</tt> <tt class="py-line"> </tt>
-<a name="Transport.auth_interactive"></a><div id="Transport.auth_interactive-def"><a name="L1236"></a><tt class="py-lineno">1236</tt> <a class="py-toggle" href="#" id="Transport.auth_interactive-toggle" onclick="return toggle('Transport.auth_interactive');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#auth_interactive">auth_interactive</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">username</tt><tt class="py-op">,</tt> <tt class="py-param">handler</tt><tt class="py-op">,</tt> <tt class="py-param">submethods</tt><tt class="py-op">=</tt><tt class="py-string">''</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.auth_interactive-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.auth_interactive-expanded"><a name="L1237"></a><tt class="py-lineno">1237</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1238"></a><tt class="py-lineno">1238</tt> <tt class="py-line"><tt class="py-docstring"> Authenticate to the server interactively. A handler is used to answer</tt> </tt>
-<a name="L1239"></a><tt class="py-lineno">1239</tt> <tt class="py-line"><tt class="py-docstring"> arbitrary questions from the server. On many servers, this is just a</tt> </tt>
-<a name="L1240"></a><tt class="py-lineno">1240</tt> <tt class="py-line"><tt class="py-docstring"> dumb wrapper around PAM.</tt> </tt>
-<a name="L1241"></a><tt class="py-lineno">1241</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1242"></a><tt class="py-lineno">1242</tt> <tt class="py-line"><tt class="py-docstring"> This method will block until the authentication succeeds or fails,</tt> </tt>
-<a name="L1243"></a><tt class="py-lineno">1243</tt> <tt class="py-line"><tt class="py-docstring"> peroidically calling the handler asynchronously to get answers to</tt> </tt>
-<a name="L1244"></a><tt class="py-lineno">1244</tt> <tt class="py-line"><tt class="py-docstring"> authentication questions. The handler may be called more than once</tt> </tt>
-<a name="L1245"></a><tt class="py-lineno">1245</tt> <tt class="py-line"><tt class="py-docstring"> if the server continues to ask questions.</tt> </tt>
-<a name="L1246"></a><tt class="py-lineno">1246</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1247"></a><tt class="py-lineno">1247</tt> <tt class="py-line"><tt class="py-docstring"> The handler is expected to be a callable that will handle calls of the</tt> </tt>
-<a name="L1248"></a><tt class="py-lineno">1248</tt> <tt class="py-line"><tt class="py-docstring"> form: C{handler(title, instructions, prompt_list)}. The C{title} is</tt> </tt>
-<a name="L1249"></a><tt class="py-lineno">1249</tt> <tt class="py-line"><tt class="py-docstring"> meant to be a dialog-window title, and the C{instructions} are user</tt> </tt>
-<a name="L1250"></a><tt class="py-lineno">1250</tt> <tt class="py-line"><tt class="py-docstring"> instructions (both are strings). C{prompt_list} will be a list of</tt> </tt>
-<a name="L1251"></a><tt class="py-lineno">1251</tt> <tt class="py-line"><tt class="py-docstring"> prompts, each prompt being a tuple of C{(str, bool)}. The string is</tt> </tt>
-<a name="L1252"></a><tt class="py-lineno">1252</tt> <tt class="py-line"><tt class="py-docstring"> the prompt and the boolean indicates whether the user text should be</tt> </tt>
-<a name="L1253"></a><tt class="py-lineno">1253</tt> <tt class="py-line"><tt class="py-docstring"> echoed.</tt> </tt>
-<a name="L1254"></a><tt class="py-lineno">1254</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1255"></a><tt class="py-lineno">1255</tt> <tt class="py-line"><tt class="py-docstring"> A sample call would thus be:</tt> </tt>
-<a name="L1256"></a><tt class="py-lineno">1256</tt> <tt class="py-line"><tt class="py-docstring"> C{handler('title', 'instructions', [('Password:', False)])}.</tt> </tt>
-<a name="L1257"></a><tt class="py-lineno">1257</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1258"></a><tt class="py-lineno">1258</tt> <tt class="py-line"><tt class="py-docstring"> The handler should return a list or tuple of answers to the server's</tt> </tt>
-<a name="L1259"></a><tt class="py-lineno">1259</tt> <tt class="py-line"><tt class="py-docstring"> questions.</tt> </tt>
-<a name="L1260"></a><tt class="py-lineno">1260</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1261"></a><tt class="py-lineno">1261</tt> <tt class="py-line"><tt class="py-docstring"> If the server requires multi-step authentication (which is very rare),</tt> </tt>
-<a name="L1262"></a><tt class="py-lineno">1262</tt> <tt class="py-line"><tt class="py-docstring"> this method will return a list of auth types permissible for the next</tt> </tt>
-<a name="L1263"></a><tt class="py-lineno">1263</tt> <tt class="py-line"><tt class="py-docstring"> step. Otherwise, in the normal case, an empty list is returned.</tt> </tt>
-<a name="L1264"></a><tt class="py-lineno">1264</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1265"></a><tt class="py-lineno">1265</tt> <tt class="py-line"><tt class="py-docstring"> @param username: the username to authenticate as</tt> </tt>
-<a name="L1266"></a><tt class="py-lineno">1266</tt> <tt class="py-line"><tt class="py-docstring"> @type username: string</tt> </tt>
-<a name="L1267"></a><tt class="py-lineno">1267</tt> <tt class="py-line"><tt class="py-docstring"> @param handler: a handler for responding to server questions</tt> </tt>
-<a name="L1268"></a><tt class="py-lineno">1268</tt> <tt class="py-line"><tt class="py-docstring"> @type handler: callable</tt> </tt>
-<a name="L1269"></a><tt class="py-lineno">1269</tt> <tt class="py-line"><tt class="py-docstring"> @param submethods: a string list of desired submethods (optional)</tt> </tt>
-<a name="L1270"></a><tt class="py-lineno">1270</tt> <tt class="py-line"><tt class="py-docstring"> @type submethods: str</tt> </tt>
-<a name="L1271"></a><tt class="py-lineno">1271</tt> <tt class="py-line"><tt class="py-docstring"> @return: list of auth types permissible for the next stage of</tt> </tt>
-<a name="L1272"></a><tt class="py-lineno">1272</tt> <tt class="py-line"><tt class="py-docstring"> authentication (normally empty).</tt> </tt>
-<a name="L1273"></a><tt class="py-lineno">1273</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: list</tt> </tt>
-<a name="L1274"></a><tt class="py-lineno">1274</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1275"></a><tt class="py-lineno">1275</tt> <tt class="py-line"><tt class="py-docstring"> @raise BadAuthenticationType: if public-key authentication isn't</tt> </tt>
-<a name="L1276"></a><tt class="py-lineno">1276</tt> <tt class="py-line"><tt class="py-docstring"> allowed by the server for this user</tt> </tt>
-<a name="L1277"></a><tt class="py-lineno">1277</tt> <tt class="py-line"><tt class="py-docstring"> @raise AuthenticationException: if the authentication failed</tt> </tt>
-<a name="L1278"></a><tt class="py-lineno">1278</tt> <tt class="py-line"><tt class="py-docstring"> @raise SSHException: if there was a network error</tt> </tt>
-<a name="L1279"></a><tt class="py-lineno">1279</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1280"></a><tt class="py-lineno">1280</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.5</tt> </tt>
-<a name="L1281"></a><tt class="py-lineno">1281</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1282"></a><tt class="py-lineno">1282</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">initial_kex_done</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1283"></a><tt class="py-lineno">1283</tt> <tt class="py-line"> <tt class="py-comment"># we should never try to authenticate unless we're on a secure link</tt> </tt>
-<a name="L1284"></a><tt class="py-lineno">1284</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-240" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-240', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'No existing session'</tt><tt class="py-op">)</tt> </tt>
-<a name="L1285"></a><tt class="py-lineno">1285</tt> <tt class="py-line"> <tt class="py-name">my_event</tt> <tt class="py-op">=</tt> <tt class="py-name">threading</tt><tt class="py-op">.</tt><tt class="py-name">Event</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1286"></a><tt class="py-lineno">1286</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-241" class="py-name"><a title="paramiko.auth_handler" class="py-name" href="#" onclick="return doclink('link-241', 'auth_handler', 'link-3');">auth_handler</a></tt> <tt class="py-op">=</tt> <tt class="py-name">AuthHandler</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt> </tt>
-<a name="L1287"></a><tt class="py-lineno">1287</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-242" class="py-name"><a title="paramiko.auth_handler" class="py-name" href="#" onclick="return doclink('link-242', 'auth_handler', 'link-3');">auth_handler</a></tt><tt class="py-op">.</tt><tt id="link-243" class="py-name"><a title="paramiko.Transport.auth_interactive" class="py-name" href="#" onclick="return doclink('link-243', 'auth_interactive', 'link-233');">auth_interactive</a></tt><tt class="py-op">(</tt><tt class="py-name">username</tt><tt class="py-op">,</tt> <tt class="py-name">handler</tt><tt class="py-op">,</tt> <tt class="py-name">my_event</tt><tt class="py-op">,</tt> <tt class="py-name">submethods</tt><tt class="py-op">)</tt> </tt>
-<a name="L1288"></a><tt class="py-lineno">1288</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-244" class="py-name"><a title="paramiko.auth_handler" class="py-name" href="#" onclick="return doclink('link-244', 'auth_handler', 'link-3');">auth_handler</a></tt><tt class="py-op">.</tt><tt class="py-name">wait_for_response</tt><tt class="py-op">(</tt><tt class="py-name">my_event</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1289"></a><tt class="py-lineno">1289</tt> <tt class="py-line"> </tt>
-<a name="Transport.set_log_channel"></a><div id="Transport.set_log_channel-def"><a name="L1290"></a><tt class="py-lineno">1290</tt> <a class="py-toggle" href="#" id="Transport.set_log_channel-toggle" onclick="return toggle('Transport.set_log_channel');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#set_log_channel">set_log_channel</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">name</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.set_log_channel-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.set_log_channel-expanded"><a name="L1291"></a><tt class="py-lineno">1291</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1292"></a><tt class="py-lineno">1292</tt> <tt class="py-line"><tt class="py-docstring"> Set the channel for this transport's logging. The default is</tt> </tt>
-<a name="L1293"></a><tt class="py-lineno">1293</tt> <tt class="py-line"><tt class="py-docstring"> C{"paramiko.transport"} but it can be set to anything you want.</tt> </tt>
-<a name="L1294"></a><tt class="py-lineno">1294</tt> <tt class="py-line"><tt class="py-docstring"> (See the C{logging} module for more info.) SSH Channels will log</tt> </tt>
-<a name="L1295"></a><tt class="py-lineno">1295</tt> <tt class="py-line"><tt class="py-docstring"> to a sub-channel of the one specified.</tt> </tt>
-<a name="L1296"></a><tt class="py-lineno">1296</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1297"></a><tt class="py-lineno">1297</tt> <tt class="py-line"><tt class="py-docstring"> @param name: new channel name for logging</tt> </tt>
-<a name="L1298"></a><tt class="py-lineno">1298</tt> <tt class="py-line"><tt class="py-docstring"> @type name: str</tt> </tt>
-<a name="L1299"></a><tt class="py-lineno">1299</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1300"></a><tt class="py-lineno">1300</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.1</tt> </tt>
-<a name="L1301"></a><tt class="py-lineno">1301</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1302"></a><tt class="py-lineno">1302</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">log_name</tt> <tt class="py-op">=</tt> <tt id="link-245" class="py-name"><a title="paramiko.kex_gex.KexGex.name
-paramiko.kex_group1.KexGroup1.name" class="py-name" href="#" onclick="return doclink('link-245', 'name', 'link-60');">name</a></tt> </tt>
-<a name="L1303"></a><tt class="py-lineno">1303</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-246" class="py-name"><a title="paramiko.logging22.logger" class="py-name" href="#" onclick="return doclink('link-246', 'logger', 'link-108');">logger</a></tt> <tt class="py-op">=</tt> <tt id="link-247" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-247', 'util', 'link-1');">util</a></tt><tt class="py-op">.</tt><tt id="link-248" class="py-name"><a title="paramiko.util.get_logger" class="py-name" href="#" onclick="return doclink('link-248', 'get_logger', 'link-110');">get_logger</a></tt><tt class="py-op">(</tt><tt id="link-249" class="py-name"><a title="paramiko.kex_gex.KexGex.name
-paramiko.kex_group1.KexGroup1.name" class="py-name" href="#" onclick="return doclink('link-249', 'name', 'link-60');">name</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L1304"></a><tt class="py-lineno">1304</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">packetizer</tt><tt class="py-op">.</tt><tt class="py-name">set_log</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-250" class="py-name"><a title="paramiko.logging22.logger" class="py-name" href="#" onclick="return doclink('link-250', 'logger', 'link-108');">logger</a></tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1305"></a><tt class="py-lineno">1305</tt> <tt class="py-line"> </tt>
-<a name="Transport.get_log_channel"></a><div id="Transport.get_log_channel-def"><a name="L1306"></a><tt class="py-lineno">1306</tt> <a class="py-toggle" href="#" id="Transport.get_log_channel-toggle" onclick="return toggle('Transport.get_log_channel');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#get_log_channel">get_log_channel</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.get_log_channel-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.get_log_channel-expanded"><a name="L1307"></a><tt class="py-lineno">1307</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1308"></a><tt class="py-lineno">1308</tt> <tt class="py-line"><tt class="py-docstring"> Return the channel name used for this transport's logging.</tt> </tt>
-<a name="L1309"></a><tt class="py-lineno">1309</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1310"></a><tt class="py-lineno">1310</tt> <tt class="py-line"><tt class="py-docstring"> @return: channel name.</tt> </tt>
-<a name="L1311"></a><tt class="py-lineno">1311</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: str</tt> </tt>
-<a name="L1312"></a><tt class="py-lineno">1312</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1313"></a><tt class="py-lineno">1313</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.2</tt> </tt>
-<a name="L1314"></a><tt class="py-lineno">1314</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1315"></a><tt class="py-lineno">1315</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">log_name</tt> </tt>
-</div><a name="L1316"></a><tt class="py-lineno">1316</tt> <tt class="py-line"> </tt>
-<a name="Transport.set_hexdump"></a><div id="Transport.set_hexdump-def"><a name="L1317"></a><tt class="py-lineno">1317</tt> <a class="py-toggle" href="#" id="Transport.set_hexdump-toggle" onclick="return toggle('Transport.set_hexdump');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#set_hexdump">set_hexdump</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">hexdump</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.set_hexdump-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.set_hexdump-expanded"><a name="L1318"></a><tt class="py-lineno">1318</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1319"></a><tt class="py-lineno">1319</tt> <tt class="py-line"><tt class="py-docstring"> Turn on/off logging a hex dump of protocol traffic at DEBUG level in</tt> </tt>
-<a name="L1320"></a><tt class="py-lineno">1320</tt> <tt class="py-line"><tt class="py-docstring"> the logs. Normally you would want this off (which is the default),</tt> </tt>
-<a name="L1321"></a><tt class="py-lineno">1321</tt> <tt class="py-line"><tt class="py-docstring"> but if you are debugging something, it may be useful.</tt> </tt>
-<a name="L1322"></a><tt class="py-lineno">1322</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1323"></a><tt class="py-lineno">1323</tt> <tt class="py-line"><tt class="py-docstring"> @param hexdump: C{True} to log protocol traffix (in hex) to the log;</tt> </tt>
-<a name="L1324"></a><tt class="py-lineno">1324</tt> <tt class="py-line"><tt class="py-docstring"> C{False} otherwise.</tt> </tt>
-<a name="L1325"></a><tt class="py-lineno">1325</tt> <tt class="py-line"><tt class="py-docstring"> @type hexdump: bool</tt> </tt>
-<a name="L1326"></a><tt class="py-lineno">1326</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1327"></a><tt class="py-lineno">1327</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">packetizer</tt><tt class="py-op">.</tt><tt id="link-251" class="py-name" targets="Method paramiko.Transport.set_hexdump()=paramiko.Transport-class.html#set_hexdump"><a title="paramiko.Transport.set_hexdump" class="py-name" href="#" onclick="return doclink('link-251', 'set_hexdump', 'link-251');">set_hexdump</a></tt><tt class="py-op">(</tt><tt class="py-name">hexdump</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1328"></a><tt class="py-lineno">1328</tt> <tt class="py-line"> </tt>
-<a name="Transport.get_hexdump"></a><div id="Transport.get_hexdump-def"><a name="L1329"></a><tt class="py-lineno">1329</tt> <a class="py-toggle" href="#" id="Transport.get_hexdump-toggle" onclick="return toggle('Transport.get_hexdump');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#get_hexdump">get_hexdump</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.get_hexdump-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.get_hexdump-expanded"><a name="L1330"></a><tt class="py-lineno">1330</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1331"></a><tt class="py-lineno">1331</tt> <tt class="py-line"><tt class="py-docstring"> Return C{True} if the transport is currently logging hex dumps of</tt> </tt>
-<a name="L1332"></a><tt class="py-lineno">1332</tt> <tt class="py-line"><tt class="py-docstring"> protocol traffic.</tt> </tt>
-<a name="L1333"></a><tt class="py-lineno">1333</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1334"></a><tt class="py-lineno">1334</tt> <tt class="py-line"><tt class="py-docstring"> @return: C{True} if hex dumps are being logged</tt> </tt>
-<a name="L1335"></a><tt class="py-lineno">1335</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: bool</tt> </tt>
-<a name="L1336"></a><tt class="py-lineno">1336</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1337"></a><tt class="py-lineno">1337</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.4</tt> </tt>
-<a name="L1338"></a><tt class="py-lineno">1338</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1339"></a><tt class="py-lineno">1339</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">packetizer</tt><tt class="py-op">.</tt><tt id="link-252" class="py-name" targets="Method paramiko.Transport.get_hexdump()=paramiko.Transport-class.html#get_hexdump"><a title="paramiko.Transport.get_hexdump" class="py-name" href="#" onclick="return doclink('link-252', 'get_hexdump', 'link-252');">get_hexdump</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1340"></a><tt class="py-lineno">1340</tt> <tt class="py-line"> </tt>
-<a name="Transport.use_compression"></a><div id="Transport.use_compression-def"><a name="L1341"></a><tt class="py-lineno">1341</tt> <a class="py-toggle" href="#" id="Transport.use_compression-toggle" onclick="return toggle('Transport.use_compression');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#use_compression">use_compression</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">compress</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.use_compression-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.use_compression-expanded"><a name="L1342"></a><tt class="py-lineno">1342</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1343"></a><tt class="py-lineno">1343</tt> <tt class="py-line"><tt class="py-docstring"> Turn on/off compression. This will only have an affect before starting</tt> </tt>
-<a name="L1344"></a><tt class="py-lineno">1344</tt> <tt class="py-line"><tt class="py-docstring"> the transport (ie before calling L{connect}, etc). By default,</tt> </tt>
-<a name="L1345"></a><tt class="py-lineno">1345</tt> <tt class="py-line"><tt class="py-docstring"> compression is off since it negatively affects interactive sessions.</tt> </tt>
-<a name="L1346"></a><tt class="py-lineno">1346</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1347"></a><tt class="py-lineno">1347</tt> <tt class="py-line"><tt class="py-docstring"> @param compress: C{True} to ask the remote client/server to compress</tt> </tt>
-<a name="L1348"></a><tt class="py-lineno">1348</tt> <tt class="py-line"><tt class="py-docstring"> traffic; C{False} to refuse compression</tt> </tt>
-<a name="L1349"></a><tt class="py-lineno">1349</tt> <tt class="py-line"><tt class="py-docstring"> @type compress: bool</tt> </tt>
-<a name="L1350"></a><tt class="py-lineno">1350</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1351"></a><tt class="py-lineno">1351</tt> <tt class="py-line"><tt class="py-docstring"> @since: 1.5.2</tt> </tt>
-<a name="L1352"></a><tt class="py-lineno">1352</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1353"></a><tt class="py-lineno">1353</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-253" class="py-name"><a title="paramiko.compress" class="py-name" href="#" onclick="return doclink('link-253', 'compress', 'link-10');">compress</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L1354"></a><tt class="py-lineno">1354</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-254" class="py-name"><a title="paramiko.Transport._preferred_compression" class="py-name" href="#" onclick="return doclink('link-254', '_preferred_compression', 'link-57');">_preferred_compression</a></tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-string">'zlib@openssh.com'</tt><tt class="py-op">,</tt> <tt class="py-string">'zlib'</tt><tt class="py-op">,</tt> <tt class="py-string">'none'</tt> <tt class="py-op">)</tt> </tt>
-<a name="L1355"></a><tt class="py-lineno">1355</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1356"></a><tt class="py-lineno">1356</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-255" class="py-name"><a title="paramiko.Transport._preferred_compression" class="py-name" href="#" onclick="return doclink('link-255', '_preferred_compression', 'link-57');">_preferred_compression</a></tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt> <tt class="py-string">'none'</tt><tt class="py-op">,</tt> <tt class="py-op">)</tt> </tt>
-</div><a name="L1357"></a><tt class="py-lineno">1357</tt> <tt class="py-line"> </tt>
-<a name="Transport.getpeername"></a><div id="Transport.getpeername-def"><a name="L1358"></a><tt class="py-lineno">1358</tt> <a class="py-toggle" href="#" id="Transport.getpeername-toggle" onclick="return toggle('Transport.getpeername');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#getpeername">getpeername</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.getpeername-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.getpeername-expanded"><a name="L1359"></a><tt class="py-lineno">1359</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1360"></a><tt class="py-lineno">1360</tt> <tt class="py-line"><tt class="py-docstring"> Return the address of the remote side of this Transport, if possible.</tt> </tt>
-<a name="L1361"></a><tt class="py-lineno">1361</tt> <tt class="py-line"><tt class="py-docstring"> This is effectively a wrapper around C{'getpeername'} on the underlying</tt> </tt>
-<a name="L1362"></a><tt class="py-lineno">1362</tt> <tt class="py-line"><tt class="py-docstring"> socket. If the socket-like object has no C{'getpeername'} method,</tt> </tt>
-<a name="L1363"></a><tt class="py-lineno">1363</tt> <tt class="py-line"><tt class="py-docstring"> then C{("unknown", 0)} is returned.</tt> </tt>
-<a name="L1364"></a><tt class="py-lineno">1364</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L1365"></a><tt class="py-lineno">1365</tt> <tt class="py-line"><tt class="py-docstring"> @return: the address if the remote host, if known</tt> </tt>
-<a name="L1366"></a><tt class="py-lineno">1366</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: tuple(str, int)</tt> </tt>
-<a name="L1367"></a><tt class="py-lineno">1367</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1368"></a><tt class="py-lineno">1368</tt> <tt class="py-line"> <tt class="py-name">gp</tt> <tt class="py-op">=</tt> <tt class="py-name">getattr</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">sock</tt><tt class="py-op">,</tt> <tt class="py-string">'getpeername'</tt><tt class="py-op">,</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> </tt>
-<a name="L1369"></a><tt class="py-lineno">1369</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">gp</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L1370"></a><tt class="py-lineno">1370</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-op">(</tt><tt class="py-string">'unknown'</tt><tt class="py-op">,</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L1371"></a><tt class="py-lineno">1371</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">gp</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1372"></a><tt class="py-lineno">1372</tt> <tt class="py-line"> </tt>
-<a name="Transport.stop_thread"></a><div id="Transport.stop_thread-def"><a name="L1373"></a><tt class="py-lineno">1373</tt> <a class="py-toggle" href="#" id="Transport.stop_thread-toggle" onclick="return toggle('Transport.stop_thread');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#stop_thread">stop_thread</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.stop_thread-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.stop_thread-expanded"><a name="L1374"></a><tt class="py-lineno">1374</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1375"></a><tt class="py-lineno">1375</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">packetizer</tt><tt class="py-op">.</tt><tt id="link-256" class="py-name"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-256', 'close', 'link-115');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1376"></a><tt class="py-lineno">1376</tt> <tt class="py-line"> </tt>
-<a name="L1377"></a><tt class="py-lineno">1377</tt> <tt class="py-line"> </tt>
-<a name="L1378"></a><tt class="py-lineno">1378</tt> <tt class="py-line"> <tt class="py-comment">### internals...</tt> </tt>
-<a name="L1379"></a><tt class="py-lineno">1379</tt> <tt class="py-line"> </tt>
-<a name="L1380"></a><tt class="py-lineno">1380</tt> <tt class="py-line"> </tt>
-<a name="Transport._log"></a><div id="Transport._log-def"><a name="L1381"></a><tt class="py-lineno">1381</tt> <a class="py-toggle" href="#" id="Transport._log-toggle" onclick="return toggle('Transport._log');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#_log">_log</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">level</tt><tt class="py-op">,</tt> <tt class="py-param">msg</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">args</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport._log-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport._log-expanded"><a name="L1382"></a><tt class="py-lineno">1382</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">issubclass</tt><tt class="py-op">(</tt><tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">list</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1383"></a><tt class="py-lineno">1383</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">m</tt> <tt class="py-keyword">in</tt> <tt class="py-name">msg</tt><tt class="py-op">:</tt> </tt>
-<a name="L1384"></a><tt class="py-lineno">1384</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-257" class="py-name"><a title="paramiko.logging22.logger" class="py-name" href="#" onclick="return doclink('link-257', 'logger', 'link-108');">logger</a></tt><tt class="py-op">.</tt><tt id="link-258" class="py-name" targets="Method paramiko.logging22.logger.log()=paramiko.logging22.logger-class.html#log"><a title="paramiko.logging22.logger.log" class="py-name" href="#" onclick="return doclink('link-258', 'log', 'link-258');">log</a></tt><tt class="py-op">(</tt><tt class="py-name">level</tt><tt class="py-op">,</tt> <tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L1385"></a><tt class="py-lineno">1385</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1386"></a><tt class="py-lineno">1386</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-259" class="py-name"><a title="paramiko.logging22.logger" class="py-name" href="#" onclick="return doclink('link-259', 'logger', 'link-108');">logger</a></tt><tt class="py-op">.</tt><tt id="link-260" class="py-name"><a title="paramiko.logging22.logger.log" class="py-name" href="#" onclick="return doclink('link-260', 'log', 'link-258');">log</a></tt><tt class="py-op">(</tt><tt class="py-name">level</tt><tt class="py-op">,</tt> <tt class="py-name">msg</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-name">args</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1387"></a><tt class="py-lineno">1387</tt> <tt class="py-line"> </tt>
-<a name="Transport._get_modulus_pack"></a><div id="Transport._get_modulus_pack-def"><a name="L1388"></a><tt class="py-lineno">1388</tt> <a class="py-toggle" href="#" id="Transport._get_modulus_pack-toggle" onclick="return toggle('Transport._get_modulus_pack');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#_get_modulus_pack">_get_modulus_pack</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport._get_modulus_pack-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport._get_modulus_pack-expanded"><a name="L1389"></a><tt class="py-lineno">1389</tt> <tt class="py-line"> <tt class="py-docstring">"used by KexGex to find primes for group exchange"</tt> </tt>
-<a name="L1390"></a><tt class="py-lineno">1390</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-261" class="py-name"><a title="paramiko.Transport._modulus_pack" class="py-name" href="#" onclick="return doclink('link-261', '_modulus_pack', 'link-98');">_modulus_pack</a></tt> </tt>
-</div><a name="L1391"></a><tt class="py-lineno">1391</tt> <tt class="py-line"> </tt>
-<a name="Transport._next_channel"></a><div id="Transport._next_channel-def"><a name="L1392"></a><tt class="py-lineno">1392</tt> <a class="py-toggle" href="#" id="Transport._next_channel-toggle" onclick="return toggle('Transport._next_channel');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#_next_channel">_next_channel</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport._next_channel-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport._next_channel-expanded"><a name="L1393"></a><tt class="py-lineno">1393</tt> <tt class="py-line"> <tt class="py-docstring">"you are holding the lock"</tt> </tt>
-<a name="L1394"></a><tt class="py-lineno">1394</tt> <tt class="py-line"> <tt class="py-name">chanid</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_channel_counter</tt> </tt>
-<a name="L1395"></a><tt class="py-lineno">1395</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_channels</tt><tt class="py-op">.</tt><tt id="link-262" class="py-name"><a title="paramiko.SFTPClient.get
-paramiko.transport.ChannelMap.get" class="py-name" href="#" onclick="return doclink('link-262', 'get', 'link-76');">get</a></tt><tt class="py-op">(</tt><tt class="py-name">chanid</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L1396"></a><tt class="py-lineno">1396</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_channel_counter</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_channel_counter</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-op">&amp;</tt> <tt class="py-number">0xffffff</tt> </tt>
-<a name="L1397"></a><tt class="py-lineno">1397</tt> <tt class="py-line"> <tt class="py-name">chanid</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_channel_counter</tt> </tt>
-<a name="L1398"></a><tt class="py-lineno">1398</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_channel_counter</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_channel_counter</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-op">&amp;</tt> <tt class="py-number">0xffffff</tt> </tt>
-<a name="L1399"></a><tt class="py-lineno">1399</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">chanid</tt> </tt>
-</div><a name="L1400"></a><tt class="py-lineno">1400</tt> <tt class="py-line"> </tt>
-<a name="Transport._unlink_channel"></a><div id="Transport._unlink_channel-def"><a name="L1401"></a><tt class="py-lineno">1401</tt> <a class="py-toggle" href="#" id="Transport._unlink_channel-toggle" onclick="return toggle('Transport._unlink_channel');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#_unlink_channel">_unlink_channel</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">chanid</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport._unlink_channel-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport._unlink_channel-expanded"><a name="L1402"></a><tt class="py-lineno">1402</tt> <tt class="py-line"> <tt class="py-docstring">"used by a Channel to remove itself from the active channel list"</tt> </tt>
-<a name="L1403"></a><tt class="py-lineno">1403</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_channels</tt><tt class="py-op">.</tt><tt id="link-263" class="py-name" targets="Method paramiko.transport.ChannelMap.delete()=paramiko.transport.ChannelMap-class.html#delete"><a title="paramiko.transport.ChannelMap.delete" class="py-name" href="#" onclick="return doclink('link-263', 'delete', 'link-263');">delete</a></tt><tt class="py-op">(</tt><tt class="py-name">chanid</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1404"></a><tt class="py-lineno">1404</tt> <tt class="py-line"> </tt>
-<a name="Transport._send_message"></a><div id="Transport._send_message-def"><a name="L1405"></a><tt class="py-lineno">1405</tt> <a class="py-toggle" href="#" id="Transport._send_message-toggle" onclick="return toggle('Transport._send_message');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#_send_message">_send_message</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">data</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport._send_message-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport._send_message-expanded"><a name="L1406"></a><tt class="py-lineno">1406</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">packetizer</tt><tt class="py-op">.</tt><tt class="py-name">send_message</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1407"></a><tt class="py-lineno">1407</tt> <tt class="py-line"> </tt>
-<a name="Transport._send_user_message"></a><div id="Transport._send_user_message-def"><a name="L1408"></a><tt class="py-lineno">1408</tt> <a class="py-toggle" href="#" id="Transport._send_user_message-toggle" onclick="return toggle('Transport._send_user_message');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#_send_user_message">_send_user_message</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">data</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport._send_user_message-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport._send_user_message-expanded"><a name="L1409"></a><tt class="py-lineno">1409</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1410"></a><tt class="py-lineno">1410</tt> <tt class="py-line"><tt class="py-docstring"> send a message, but block if we're in key negotiation. this is used</tt> </tt>
-<a name="L1411"></a><tt class="py-lineno">1411</tt> <tt class="py-line"><tt class="py-docstring"> for user-initiated requests.</tt> </tt>
-<a name="L1412"></a><tt class="py-lineno">1412</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1413"></a><tt class="py-lineno">1413</tt> <tt class="py-line"> <tt class="py-name">start</tt> <tt class="py-op">=</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1414"></a><tt class="py-lineno">1414</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">True</tt><tt class="py-op">:</tt> </tt>
-<a name="L1415"></a><tt class="py-lineno">1415</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">clear_to_send</tt><tt class="py-op">.</tt><tt class="py-name">wait</tt><tt class="py-op">(</tt><tt class="py-number">0.1</tt><tt class="py-op">)</tt> </tt>
-<a name="L1416"></a><tt class="py-lineno">1416</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt><tt class="py-op">:</tt> </tt>
-<a name="L1417"></a><tt class="py-lineno">1417</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-264" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-264', 'DEBUG', 'link-192');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Dropping user packet because connection is dead.'</tt><tt class="py-op">)</tt> </tt>
-<a name="L1418"></a><tt class="py-lineno">1418</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L1419"></a><tt class="py-lineno">1419</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">clear_to_send_lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1420"></a><tt class="py-lineno">1420</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">clear_to_send</tt><tt class="py-op">.</tt><tt class="py-name">isSet</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1421"></a><tt class="py-lineno">1421</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L1422"></a><tt class="py-lineno">1422</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">clear_to_send_lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1423"></a><tt class="py-lineno">1423</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">time</tt><tt class="py-op">.</tt><tt class="py-name">time</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;</tt> <tt class="py-name">start</tt> <tt class="py-op">+</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">clear_to_send_timeout</tt><tt class="py-op">:</tt> </tt>
-<a name="L1424"></a><tt class="py-lineno">1424</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-265" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-265', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Key-exchange timed out waiting for key negotiation'</tt><tt class="py-op">)</tt> </tt>
-<a name="L1425"></a><tt class="py-lineno">1425</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1426"></a><tt class="py-lineno">1426</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_message</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-<a name="L1427"></a><tt class="py-lineno">1427</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L1428"></a><tt class="py-lineno">1428</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">clear_to_send_lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1429"></a><tt class="py-lineno">1429</tt> <tt class="py-line"> </tt>
-<a name="Transport._set_K_H"></a><div id="Transport._set_K_H-def"><a name="L1430"></a><tt class="py-lineno">1430</tt> <a class="py-toggle" href="#" id="Transport._set_K_H-toggle" onclick="return toggle('Transport._set_K_H');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#_set_K_H">_set_K_H</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">k</tt><tt class="py-op">,</tt> <tt class="py-param">h</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport._set_K_H-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport._set_K_H-expanded"><a name="L1431"></a><tt class="py-lineno">1431</tt> <tt class="py-line"> <tt class="py-docstring">"used by a kex object to set the K (root key) and H (exchange hash)"</tt> </tt>
-<a name="L1432"></a><tt class="py-lineno">1432</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">K</tt> <tt class="py-op">=</tt> <tt class="py-name">k</tt> </tt>
-<a name="L1433"></a><tt class="py-lineno">1433</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">H</tt> <tt class="py-op">=</tt> <tt class="py-name">h</tt> </tt>
-<a name="L1434"></a><tt class="py-lineno">1434</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">session_id</tt> <tt class="py-op">==</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L1435"></a><tt class="py-lineno">1435</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">session_id</tt> <tt class="py-op">=</tt> <tt class="py-name">h</tt> </tt>
-</div><a name="L1436"></a><tt class="py-lineno">1436</tt> <tt class="py-line"> </tt>
-<a name="Transport._expect_packet"></a><div id="Transport._expect_packet-def"><a name="L1437"></a><tt class="py-lineno">1437</tt> <a class="py-toggle" href="#" id="Transport._expect_packet-toggle" onclick="return toggle('Transport._expect_packet');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#_expect_packet">_expect_packet</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-op">*</tt><tt class="py-param">ptypes</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport._expect_packet-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport._expect_packet-expanded"><a name="L1438"></a><tt class="py-lineno">1438</tt> <tt class="py-line"> <tt class="py-docstring">"used by a kex object to register the next packet type it expects to see"</tt> </tt>
-<a name="L1439"></a><tt class="py-lineno">1439</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_expected_packet</tt> <tt class="py-op">=</tt> <tt class="py-name">tuple</tt><tt class="py-op">(</tt><tt class="py-name">ptypes</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1440"></a><tt class="py-lineno">1440</tt> <tt class="py-line"> </tt>
-<a name="Transport._verify_key"></a><div id="Transport._verify_key-def"><a name="L1441"></a><tt class="py-lineno">1441</tt> <a class="py-toggle" href="#" id="Transport._verify_key-toggle" onclick="return toggle('Transport._verify_key');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#_verify_key">_verify_key</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">host_key</tt><tt class="py-op">,</tt> <tt class="py-param">sig</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport._verify_key-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport._verify_key-expanded"><a name="L1442"></a><tt class="py-lineno">1442</tt> <tt class="py-line"> <tt class="py-name">key</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-266" class="py-name"><a title="paramiko.Transport._key_info" class="py-name" href="#" onclick="return doclink('link-266', '_key_info', 'link-87');">_key_info</a></tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">host_key_type</tt><tt class="py-op">]</tt><tt class="py-op">(</tt><tt id="link-267" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-267', 'Message', 'link-24');">Message</a></tt><tt class="py-op">(</tt><tt class="py-name">host_key</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1443"></a><tt class="py-lineno">1443</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">key</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L1444"></a><tt class="py-lineno">1444</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-268" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-268', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Unknown host key type'</tt><tt class="py-op">)</tt> </tt>
-<a name="L1445"></a><tt class="py-lineno">1445</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">key</tt><tt class="py-op">.</tt><tt id="link-269" class="py-name" targets="Method paramiko.DSSKey.verify_ssh_sig()=paramiko.DSSKey-class.html#verify_ssh_sig,Method paramiko.PKey.verify_ssh_sig()=paramiko.PKey-class.html#verify_ssh_sig,Method paramiko.RSAKey.verify_ssh_sig()=paramiko.RSAKey-class.html#verify_ssh_sig"><a title="paramiko.DSSKey.verify_ssh_sig
-paramiko.PKey.verify_ssh_sig
-paramiko.RSAKey.verify_ssh_sig" class="py-name" href="#" onclick="return doclink('link-269', 'verify_ssh_sig', 'link-269');">verify_ssh_sig</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">H</tt><tt class="py-op">,</tt> <tt id="link-270" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-270', 'Message', 'link-24');">Message</a></tt><tt class="py-op">(</tt><tt class="py-name">sig</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1446"></a><tt class="py-lineno">1446</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-271" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-271', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Signature verification (%s) failed.'</tt> <tt class="py-op">%</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">host_key_type</tt><tt class="py-op">)</tt> </tt>
-<a name="L1447"></a><tt class="py-lineno">1447</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">host_key</tt> <tt class="py-op">=</tt> <tt class="py-name">key</tt> </tt>
-</div><a name="L1448"></a><tt class="py-lineno">1448</tt> <tt class="py-line"> </tt>
-<a name="Transport._compute_key"></a><div id="Transport._compute_key-def"><a name="L1449"></a><tt class="py-lineno">1449</tt> <a class="py-toggle" href="#" id="Transport._compute_key-toggle" onclick="return toggle('Transport._compute_key');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#_compute_key">_compute_key</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">id</tt><tt class="py-op">,</tt> <tt class="py-param">nbytes</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport._compute_key-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport._compute_key-expanded"><a name="L1450"></a><tt class="py-lineno">1450</tt> <tt class="py-line"> <tt class="py-docstring">"id is 'A' - 'F' for the various keys used by ssh"</tt> </tt>
-<a name="L1451"></a><tt class="py-lineno">1451</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-272" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-272', 'Message', 'link-24');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1452"></a><tt class="py-lineno">1452</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-273" class="py-name" targets="Method paramiko.Message.add_mpint()=paramiko.Message-class.html#add_mpint"><a title="paramiko.Message.add_mpint" class="py-name" href="#" onclick="return doclink('link-273', 'add_mpint', 'link-273');">add_mpint</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">K</tt><tt class="py-op">)</tt> </tt>
-<a name="L1453"></a><tt class="py-lineno">1453</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-274" class="py-name"><a title="paramiko.Message.add_bytes" class="py-name" href="#" onclick="return doclink('link-274', 'add_bytes', 'link-179');">add_bytes</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">H</tt><tt class="py-op">)</tt> </tt>
-<a name="L1454"></a><tt class="py-lineno">1454</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-275" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-275', 'add_byte', 'link-147');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">id</tt><tt class="py-op">)</tt> </tt>
-<a name="L1455"></a><tt class="py-lineno">1455</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-276" class="py-name"><a title="paramiko.Message.add_bytes" class="py-name" href="#" onclick="return doclink('link-276', 'add_bytes', 'link-179');">add_bytes</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">session_id</tt><tt class="py-op">)</tt> </tt>
-<a name="L1456"></a><tt class="py-lineno">1456</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt class="py-name">sofar</tt> <tt class="py-op">=</tt> <tt class="py-name">SHA</tt><tt class="py-op">.</tt><tt id="link-277" class="py-name" targets="Class Method paramiko.util.Counter.new()=paramiko.util.Counter-class.html#new"><a title="paramiko.util.Counter.new" class="py-name" href="#" onclick="return doclink('link-277', 'new', 'link-277');">new</a></tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">digest</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1457"></a><tt class="py-lineno">1457</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">out</tt><tt class="py-op">)</tt> <tt class="py-op">&lt;</tt> <tt class="py-name">nbytes</tt><tt class="py-op">:</tt> </tt>
-<a name="L1458"></a><tt class="py-lineno">1458</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-278" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-278', 'Message', 'link-24');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1459"></a><tt class="py-lineno">1459</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-279" class="py-name"><a title="paramiko.Message.add_mpint" class="py-name" href="#" onclick="return doclink('link-279', 'add_mpint', 'link-273');">add_mpint</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">K</tt><tt class="py-op">)</tt> </tt>
-<a name="L1460"></a><tt class="py-lineno">1460</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-280" class="py-name"><a title="paramiko.Message.add_bytes" class="py-name" href="#" onclick="return doclink('link-280', 'add_bytes', 'link-179');">add_bytes</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">H</tt><tt class="py-op">)</tt> </tt>
-<a name="L1461"></a><tt class="py-lineno">1461</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-281" class="py-name"><a title="paramiko.Message.add_bytes" class="py-name" href="#" onclick="return doclink('link-281', 'add_bytes', 'link-179');">add_bytes</a></tt><tt class="py-op">(</tt><tt class="py-name">sofar</tt><tt class="py-op">)</tt> </tt>
-<a name="L1462"></a><tt class="py-lineno">1462</tt> <tt class="py-line"> <tt class="py-name">digest</tt> <tt class="py-op">=</tt> <tt class="py-name">SHA</tt><tt class="py-op">.</tt><tt id="link-282" class="py-name"><a title="paramiko.util.Counter.new" class="py-name" href="#" onclick="return doclink('link-282', 'new', 'link-277');">new</a></tt><tt class="py-op">(</tt><tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">digest</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1463"></a><tt class="py-lineno">1463</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">+=</tt> <tt class="py-name">digest</tt> </tt>
-<a name="L1464"></a><tt class="py-lineno">1464</tt> <tt class="py-line"> <tt class="py-name">sofar</tt> <tt class="py-op">+=</tt> <tt class="py-name">digest</tt> </tt>
-<a name="L1465"></a><tt class="py-lineno">1465</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">out</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-name">nbytes</tt><tt class="py-op">]</tt> </tt>
-</div><a name="L1466"></a><tt class="py-lineno">1466</tt> <tt class="py-line"> </tt>
-<a name="Transport._get_cipher"></a><div id="Transport._get_cipher-def"><a name="L1467"></a><tt class="py-lineno">1467</tt> <a class="py-toggle" href="#" id="Transport._get_cipher-toggle" onclick="return toggle('Transport._get_cipher');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#_get_cipher">_get_cipher</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">name</tt><tt class="py-op">,</tt> <tt class="py-param">key</tt><tt class="py-op">,</tt> <tt class="py-param">iv</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport._get_cipher-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport._get_cipher-expanded"><a name="L1468"></a><tt class="py-lineno">1468</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-283" class="py-name"><a title="paramiko.kex_gex.KexGex.name
-paramiko.kex_group1.KexGroup1.name" class="py-name" href="#" onclick="return doclink('link-283', 'name', 'link-60');">name</a></tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-284" class="py-name"><a title="paramiko.Transport._cipher_info" class="py-name" href="#" onclick="return doclink('link-284', '_cipher_info', 'link-85');">_cipher_info</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L1469"></a><tt class="py-lineno">1469</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-285" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-285', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Unknown client cipher '</tt> <tt class="py-op">+</tt> <tt id="link-286" class="py-name"><a title="paramiko.kex_gex.KexGex.name
-paramiko.kex_group1.KexGroup1.name" class="py-name" href="#" onclick="return doclink('link-286', 'name', 'link-60');">name</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L1470"></a><tt class="py-lineno">1470</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-287" class="py-name"><a title="paramiko.kex_gex.KexGex.name
-paramiko.kex_group1.KexGroup1.name" class="py-name" href="#" onclick="return doclink('link-287', 'name', 'link-60');">name</a></tt> <tt class="py-keyword">in</tt> <tt class="py-op">(</tt><tt class="py-string">'arcfour128'</tt><tt class="py-op">,</tt> <tt class="py-string">'arcfour256'</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1471"></a><tt class="py-lineno">1471</tt> <tt class="py-line"> <tt class="py-comment"># arcfour cipher</tt> </tt>
-<a name="L1472"></a><tt class="py-lineno">1472</tt> <tt class="py-line"> <tt class="py-name">cipher</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-288" class="py-name"><a title="paramiko.Transport._cipher_info" class="py-name" href="#" onclick="return doclink('link-288', '_cipher_info', 'link-85');">_cipher_info</a></tt><tt class="py-op">[</tt><tt id="link-289" class="py-name"><a title="paramiko.kex_gex.KexGex.name
-paramiko.kex_group1.KexGroup1.name" class="py-name" href="#" onclick="return doclink('link-289', 'name', 'link-60');">name</a></tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'class'</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-290" class="py-name"><a title="paramiko.util.Counter.new" class="py-name" href="#" onclick="return doclink('link-290', 'new', 'link-277');">new</a></tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">)</tt> </tt>
-<a name="L1473"></a><tt class="py-lineno">1473</tt> <tt class="py-line"> <tt class="py-comment"># as per RFC 4345, the first 1536 bytes of keystream</tt> </tt>
-<a name="L1474"></a><tt class="py-lineno">1474</tt> <tt class="py-line"> <tt class="py-comment"># generated by the cipher MUST be discarded</tt> </tt>
-<a name="L1475"></a><tt class="py-lineno">1475</tt> <tt class="py-line"> <tt class="py-name">cipher</tt><tt class="py-op">.</tt><tt class="py-name">encrypt</tt><tt class="py-op">(</tt><tt class="py-string">" "</tt> <tt class="py-op">*</tt> <tt class="py-number">1536</tt><tt class="py-op">)</tt> </tt>
-<a name="L1476"></a><tt class="py-lineno">1476</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">cipher</tt> </tt>
-<a name="L1477"></a><tt class="py-lineno">1477</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt id="link-291" class="py-name"><a title="paramiko.kex_gex.KexGex.name
-paramiko.kex_group1.KexGroup1.name" class="py-name" href="#" onclick="return doclink('link-291', 'name', 'link-60');">name</a></tt><tt class="py-op">.</tt><tt class="py-name">endswith</tt><tt class="py-op">(</tt><tt class="py-string">"-ctr"</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1478"></a><tt class="py-lineno">1478</tt> <tt class="py-line"> <tt class="py-comment"># CTR modes, we need a counter</tt> </tt>
-<a name="L1479"></a><tt class="py-lineno">1479</tt> <tt class="py-line"> <tt class="py-name">counter</tt> <tt class="py-op">=</tt> <tt id="link-292" class="py-name"><a title="paramiko.util.Counter" class="py-name" href="#" onclick="return doclink('link-292', 'Counter', 'link-45');">Counter</a></tt><tt class="py-op">.</tt><tt id="link-293" class="py-name"><a title="paramiko.util.Counter.new" class="py-name" href="#" onclick="return doclink('link-293', 'new', 'link-277');">new</a></tt><tt class="py-op">(</tt><tt class="py-name">nbits</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-294" class="py-name"><a title="paramiko.Transport._cipher_info" class="py-name" href="#" onclick="return doclink('link-294', '_cipher_info', 'link-85');">_cipher_info</a></tt><tt class="py-op">[</tt><tt id="link-295" class="py-name"><a title="paramiko.kex_gex.KexGex.name
-paramiko.kex_group1.KexGroup1.name" class="py-name" href="#" onclick="return doclink('link-295', 'name', 'link-60');">name</a></tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'block-size'</tt><tt class="py-op">]</tt> <tt class="py-op">*</tt> <tt class="py-number">8</tt><tt class="py-op">,</tt> <tt class="py-name">initial_value</tt><tt class="py-op">=</tt><tt id="link-296" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-296', 'util', 'link-1');">util</a></tt><tt class="py-op">.</tt><tt id="link-297" class="py-name" targets="Function paramiko.util.inflate_long()=paramiko.util-module.html#inflate_long"><a title="paramiko.util.inflate_long" class="py-name" href="#" onclick="return doclink('link-297', 'inflate_long', 'link-297');">inflate_long</a></tt><tt class="py-op">(</tt><tt class="py-name">iv</tt><tt class="py-op">,</tt> <tt class="py-name">True</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1480"></a><tt class="py-lineno">1480</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-298" class="py-name"><a title="paramiko.Transport._cipher_info" class="py-name" href="#" onclick="return doclink('link-298', '_cipher_info', 'link-85');">_cipher_info</a></tt><tt class="py-op">[</tt><tt id="link-299" class="py-name"><a title="paramiko.kex_gex.KexGex.name
-paramiko.kex_group1.KexGroup1.name" class="py-name" href="#" onclick="return doclink('link-299', 'name', 'link-60');">name</a></tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'class'</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-300" class="py-name"><a title="paramiko.util.Counter.new" class="py-name" href="#" onclick="return doclink('link-300', 'new', 'link-277');">new</a></tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-301" class="py-name"><a title="paramiko.Transport._cipher_info" class="py-name" href="#" onclick="return doclink('link-301', '_cipher_info', 'link-85');">_cipher_info</a></tt><tt class="py-op">[</tt><tt id="link-302" class="py-name"><a title="paramiko.kex_gex.KexGex.name
-paramiko.kex_group1.KexGroup1.name" class="py-name" href="#" onclick="return doclink('link-302', 'name', 'link-60');">name</a></tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'mode'</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">iv</tt><tt class="py-op">,</tt> <tt class="py-name">counter</tt><tt class="py-op">)</tt> </tt>
-<a name="L1481"></a><tt class="py-lineno">1481</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1482"></a><tt class="py-lineno">1482</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-303" class="py-name"><a title="paramiko.Transport._cipher_info" class="py-name" href="#" onclick="return doclink('link-303', '_cipher_info', 'link-85');">_cipher_info</a></tt><tt class="py-op">[</tt><tt id="link-304" class="py-name"><a title="paramiko.kex_gex.KexGex.name
-paramiko.kex_group1.KexGroup1.name" class="py-name" href="#" onclick="return doclink('link-304', 'name', 'link-60');">name</a></tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'class'</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-305" class="py-name"><a title="paramiko.util.Counter.new" class="py-name" href="#" onclick="return doclink('link-305', 'new', 'link-277');">new</a></tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-306" class="py-name"><a title="paramiko.Transport._cipher_info" class="py-name" href="#" onclick="return doclink('link-306', '_cipher_info', 'link-85');">_cipher_info</a></tt><tt class="py-op">[</tt><tt id="link-307" class="py-name"><a title="paramiko.kex_gex.KexGex.name
-paramiko.kex_group1.KexGroup1.name" class="py-name" href="#" onclick="return doclink('link-307', 'name', 'link-60');">name</a></tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'mode'</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">iv</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1483"></a><tt class="py-lineno">1483</tt> <tt class="py-line"> </tt>
-<a name="Transport._set_x11_handler"></a><div id="Transport._set_x11_handler-def"><a name="L1484"></a><tt class="py-lineno">1484</tt> <a class="py-toggle" href="#" id="Transport._set_x11_handler-toggle" onclick="return toggle('Transport._set_x11_handler');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#_set_x11_handler">_set_x11_handler</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">handler</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport._set_x11_handler-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport._set_x11_handler-expanded"><a name="L1485"></a><tt class="py-lineno">1485</tt> <tt class="py-line"> <tt class="py-comment"># only called if a channel has turned on x11 forwarding</tt> </tt>
-<a name="L1486"></a><tt class="py-lineno">1486</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">handler</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L1487"></a><tt class="py-lineno">1487</tt> <tt class="py-line"> <tt class="py-comment"># by default, use the same mechanism as accept()</tt> </tt>
-<a name="L1488"></a><tt class="py-lineno">1488</tt> <tt class="py-line"> <tt class="py-keyword">def</tt> <tt class="py-def-name">default_handler</tt><tt class="py-op">(</tt><tt class="py-param">channel</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt><tt class="py-param">src_addr</tt><tt class="py-op">,</tt> <tt class="py-param">src_port</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1489"></a><tt class="py-lineno">1489</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_queue_incoming_channel</tt><tt class="py-op">(</tt><tt id="link-308" class="py-name"><a title="paramiko.channel" class="py-name" href="#" onclick="return doclink('link-308', 'channel', 'link-5');">channel</a></tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1490"></a><tt class="py-lineno">1490</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_x11_handler</tt> <tt class="py-op">=</tt> <tt class="py-name">default_handler</tt> </tt>
-<a name="L1491"></a><tt class="py-lineno">1491</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1492"></a><tt class="py-lineno">1492</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_x11_handler</tt> <tt class="py-op">=</tt> <tt class="py-name">handler</tt> </tt>
-</div><a name="L1493"></a><tt class="py-lineno">1493</tt> <tt class="py-line"> </tt>
-<a name="Transport._queue_incoming_channel"></a><div id="Transport._queue_incoming_channel-def"><a name="L1494"></a><tt class="py-lineno">1494</tt> <a class="py-toggle" href="#" id="Transport._queue_incoming_channel-toggle" onclick="return toggle('Transport._queue_incoming_channel');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#_queue_incoming_channel">_queue_incoming_channel</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">channel</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport._queue_incoming_channel-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport._queue_incoming_channel-expanded"><a name="L1495"></a><tt class="py-lineno">1495</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1496"></a><tt class="py-lineno">1496</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1497"></a><tt class="py-lineno">1497</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_accepts</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt id="link-309" class="py-name"><a title="paramiko.channel" class="py-name" href="#" onclick="return doclink('link-309', 'channel', 'link-5');">channel</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L1498"></a><tt class="py-lineno">1498</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_accept_cv</tt><tt class="py-op">.</tt><tt class="py-name">notify</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1499"></a><tt class="py-lineno">1499</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L1500"></a><tt class="py-lineno">1500</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1501"></a><tt class="py-lineno">1501</tt> <tt class="py-line"> </tt>
-<a name="Transport.run"></a><div id="Transport.run-def"><a name="L1502"></a><tt class="py-lineno">1502</tt> <a class="py-toggle" href="#" id="Transport.run-toggle" onclick="return toggle('Transport.run');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#run">run</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport.run-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport.run-expanded"><a name="L1503"></a><tt class="py-lineno">1503</tt> <tt class="py-line"> <tt class="py-comment"># (use the exposed "run" method, because if we specify a thread target</tt> </tt>
-<a name="L1504"></a><tt class="py-lineno">1504</tt> <tt class="py-line"> <tt class="py-comment"># of a private method, threading.Thread will keep a reference to it</tt> </tt>
-<a name="L1505"></a><tt class="py-lineno">1505</tt> <tt class="py-line"> <tt class="py-comment"># indefinitely, creating a GC cycle and not letting Transport ever be</tt> </tt>
-<a name="L1506"></a><tt class="py-lineno">1506</tt> <tt class="py-line"> <tt class="py-comment"># GC'd. it's a bug in Thread.)</tt> </tt>
-<a name="L1507"></a><tt class="py-lineno">1507</tt> <tt class="py-line"> </tt>
-<a name="L1508"></a><tt class="py-lineno">1508</tt> <tt class="py-line"> <tt class="py-comment"># active=True occurs before the thread is launched, to avoid a race</tt> </tt>
-<a name="L1509"></a><tt class="py-lineno">1509</tt> <tt class="py-line"> <tt id="link-310" class="py-name"><a title="paramiko.transport._active_threads" class="py-name" href="#" onclick="return doclink('link-310', '_active_threads', 'link-49');">_active_threads</a></tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt> </tt>
-<a name="L1510"></a><tt class="py-lineno">1510</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_mode</tt><tt class="py-op">:</tt> </tt>
-<a name="L1511"></a><tt class="py-lineno">1511</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-311" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-311', 'DEBUG', 'link-192');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'starting thread (server mode): %s'</tt> <tt class="py-op">%</tt> <tt class="py-name">hex</tt><tt class="py-op">(</tt><tt class="py-name">long</tt><tt class="py-op">(</tt><tt class="py-name">id</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">&amp;</tt> <tt class="py-number">0xffffffffL</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1512"></a><tt class="py-lineno">1512</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1513"></a><tt class="py-lineno">1513</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-312" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-312', 'DEBUG', 'link-192');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'starting thread (client mode): %s'</tt> <tt class="py-op">%</tt> <tt class="py-name">hex</tt><tt class="py-op">(</tt><tt class="py-name">long</tt><tt class="py-op">(</tt><tt class="py-name">id</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">&amp;</tt> <tt class="py-number">0xffffffffL</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1514"></a><tt class="py-lineno">1514</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1515"></a><tt class="py-lineno">1515</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">packetizer</tt><tt class="py-op">.</tt><tt class="py-name">write_all</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">local_version</tt> <tt class="py-op">+</tt> <tt class="py-string">'\r\n'</tt><tt class="py-op">)</tt> </tt>
-<a name="L1516"></a><tt class="py-lineno">1516</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_check_banner</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1517"></a><tt class="py-lineno">1517</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_kex_init</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1518"></a><tt class="py-lineno">1518</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_expect_packet</tt><tt class="py-op">(</tt><tt id="link-313" class="py-name" targets="Variable paramiko.auth_handler.MSG_KEXINIT=paramiko.auth_handler-module.html#MSG_KEXINIT,Variable paramiko.channel.MSG_KEXINIT=paramiko.channel-module.html#MSG_KEXINIT,Variable paramiko.client.MSG_KEXINIT=paramiko.client-module.html#MSG_KEXINIT,Variable paramiko.common.MSG_KEXINIT=paramiko.common-module.html#MSG_KEXINIT,Variable paramiko.dsskey.MSG_KEXINIT=paramiko.dsskey-module.html#MSG_KEXINIT,Variable paramiko.hostkeys.MSG_KEXINIT=paramiko.hostkeys-module.html#MSG_KEXINIT,Variable paramiko.kex_gex.MSG_KEXINIT=paramiko.kex_gex-module.html#MSG_KEXINIT,Variable paramiko.kex_group1.MSG_KEXINIT=paramiko.kex_group1-module.html#MSG_KEXINIT,Variable paramiko.packet.MSG_KEXINIT=paramiko.packet-module.html#MSG_KEXINIT,Variable paramiko.pkey.MSG_KEXINIT=paramiko.pkey-module.html#MSG_KEXINIT,Variable paramiko.rsakey.MSG_KEXINIT=paramiko.rsakey-module.html#MSG_KEXINIT,Variable paramiko.server.MSG_KEXINIT=paramiko.server-module.html#MSG_KEXINIT,Variable paramiko.sftp.MSG_KEXINIT=paramiko.sftp-module.html#MSG_KEXINIT,Variable paramiko.sftp_attr.MSG_KEXINIT=paramiko.sftp_attr-module.html#MSG_KEXINIT,Variable paramiko.sftp_client.MSG_KEXINIT=paramiko.sftp_client-module.html#MSG_KEXINIT,Variable paramiko.sftp_file.MSG_KEXINIT=paramiko.sftp_file-module.html#MSG_KEXINIT,Variable paramiko.sftp_handle.MSG_KEXINIT=paramiko.sftp_handle-module.html#MSG_KEXINIT,Variable paramiko.sftp_server.MSG_KEXINIT=paramiko.sftp_server-module.html#MSG_KEXINIT,Variable paramiko.sftp_si.MSG_KEXINIT=paramiko.sftp_si-module.html#MSG_KEXINIT,Variable paramiko.transport.MSG_KEXINIT=paramiko.transport-module.html#MSG_KEXINIT,Variable paramiko.util.MSG_KEXINIT=paramiko.util-module.html#MSG_KEXINIT"><a title="paramiko.auth_handler.MSG_KEXINIT
-paramiko.channel.MSG_KEXINIT
-paramiko.client.MSG_KEXINIT
-paramiko.common.MSG_KEXINIT
-paramiko.dsskey.MSG_KEXINIT
-paramiko.hostkeys.MSG_KEXINIT
-paramiko.kex_gex.MSG_KEXINIT
-paramiko.kex_group1.MSG_KEXINIT
-paramiko.packet.MSG_KEXINIT
-paramiko.pkey.MSG_KEXINIT
-paramiko.rsakey.MSG_KEXINIT
-paramiko.server.MSG_KEXINIT
-paramiko.sftp.MSG_KEXINIT
-paramiko.sftp_attr.MSG_KEXINIT
-paramiko.sftp_client.MSG_KEXINIT
-paramiko.sftp_file.MSG_KEXINIT
-paramiko.sftp_handle.MSG_KEXINIT
-paramiko.sftp_server.MSG_KEXINIT
-paramiko.sftp_si.MSG_KEXINIT
-paramiko.transport.MSG_KEXINIT
-paramiko.util.MSG_KEXINIT" class="py-name" href="#" onclick="return doclink('link-313', 'MSG_KEXINIT', 'link-313');">MSG_KEXINIT</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L1519"></a><tt class="py-lineno">1519</tt> <tt class="py-line"> </tt>
-<a name="L1520"></a><tt class="py-lineno">1520</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt><tt class="py-op">:</tt> </tt>
-<a name="L1521"></a><tt class="py-lineno">1521</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">packetizer</tt><tt class="py-op">.</tt><tt class="py-name">need_rekey</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_kex</tt><tt class="py-op">:</tt> </tt>
-<a name="L1522"></a><tt class="py-lineno">1522</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_kex_init</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1523"></a><tt class="py-lineno">1523</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1524"></a><tt class="py-lineno">1524</tt> <tt class="py-line"> <tt class="py-name">ptype</tt><tt class="py-op">,</tt> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">packetizer</tt><tt class="py-op">.</tt><tt class="py-name">read_message</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1525"></a><tt class="py-lineno">1525</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt id="link-314" class="py-name"><a title="paramiko.packet.NeedRekeyException" class="py-name" href="#" onclick="return doclink('link-314', 'NeedRekeyException', 'link-27');">NeedRekeyException</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L1526"></a><tt class="py-lineno">1526</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L1527"></a><tt class="py-lineno">1527</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ptype</tt> <tt class="py-op">==</tt> <tt id="link-315" class="py-name"><a title="paramiko.auth_handler.MSG_IGNORE
-paramiko.channel.MSG_IGNORE
-paramiko.client.MSG_IGNORE
-paramiko.common.MSG_IGNORE
-paramiko.dsskey.MSG_IGNORE
-paramiko.hostkeys.MSG_IGNORE
-paramiko.kex_gex.MSG_IGNORE
-paramiko.kex_group1.MSG_IGNORE
-paramiko.packet.MSG_IGNORE
-paramiko.pkey.MSG_IGNORE
-paramiko.rsakey.MSG_IGNORE
-paramiko.server.MSG_IGNORE
-paramiko.sftp.MSG_IGNORE
-paramiko.sftp_attr.MSG_IGNORE
-paramiko.sftp_client.MSG_IGNORE
-paramiko.sftp_file.MSG_IGNORE
-paramiko.sftp_handle.MSG_IGNORE
-paramiko.sftp_server.MSG_IGNORE
-paramiko.sftp_si.MSG_IGNORE
-paramiko.transport.MSG_IGNORE
-paramiko.util.MSG_IGNORE" class="py-name" href="#" onclick="return doclink('link-315', 'MSG_IGNORE', 'link-176');">MSG_IGNORE</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L1528"></a><tt class="py-lineno">1528</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L1529"></a><tt class="py-lineno">1529</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">ptype</tt> <tt class="py-op">==</tt> <tt id="link-316" class="py-name" targets="Variable paramiko.auth_handler.MSG_DISCONNECT=paramiko.auth_handler-module.html#MSG_DISCONNECT,Variable paramiko.channel.MSG_DISCONNECT=paramiko.channel-module.html#MSG_DISCONNECT,Variable paramiko.client.MSG_DISCONNECT=paramiko.client-module.html#MSG_DISCONNECT,Variable paramiko.common.MSG_DISCONNECT=paramiko.common-module.html#MSG_DISCONNECT,Variable paramiko.dsskey.MSG_DISCONNECT=paramiko.dsskey-module.html#MSG_DISCONNECT,Variable paramiko.hostkeys.MSG_DISCONNECT=paramiko.hostkeys-module.html#MSG_DISCONNECT,Variable paramiko.kex_gex.MSG_DISCONNECT=paramiko.kex_gex-module.html#MSG_DISCONNECT,Variable paramiko.kex_group1.MSG_DISCONNECT=paramiko.kex_group1-module.html#MSG_DISCONNECT,Variable paramiko.packet.MSG_DISCONNECT=paramiko.packet-module.html#MSG_DISCONNECT,Variable paramiko.pkey.MSG_DISCONNECT=paramiko.pkey-module.html#MSG_DISCONNECT,Variable paramiko.rsakey.MSG_DISCONNECT=paramiko.rsakey-module.html#MSG_DISCONNECT,Variable paramiko.server.MSG_DISCONNECT=paramiko.server-module.html#MSG_DISCONNECT,Variable paramiko.sftp.MSG_DISCONNECT=paramiko.sftp-module.html#MSG_DISCONNECT,Variable paramiko.sftp_attr.MSG_DISCONNECT=paramiko.sftp_attr-module.html#MSG_DISCONNECT,Variable paramiko.sftp_client.MSG_DISCONNECT=paramiko.sftp_client-module.html#MSG_DISCONNECT,Variable paramiko.sftp_file.MSG_DISCONNECT=paramiko.sftp_file-module.html#MSG_DISCONNECT,Variable paramiko.sftp_handle.MSG_DISCONNECT=paramiko.sftp_handle-module.html#MSG_DISCONNECT,Variable paramiko.sftp_server.MSG_DISCONNECT=paramiko.sftp_server-module.html#MSG_DISCONNECT,Variable paramiko.sftp_si.MSG_DISCONNECT=paramiko.sftp_si-module.html#MSG_DISCONNECT,Variable paramiko.transport.MSG_DISCONNECT=paramiko.transport-module.html#MSG_DISCONNECT,Variable paramiko.util.MSG_DISCONNECT=paramiko.util-module.html#MSG_DISCONNECT"><a title="paramiko.auth_handler.MSG_DISCONNECT
-paramiko.channel.MSG_DISCONNECT
-paramiko.client.MSG_DISCONNECT
-paramiko.common.MSG_DISCONNECT
-paramiko.dsskey.MSG_DISCONNECT
-paramiko.hostkeys.MSG_DISCONNECT
-paramiko.kex_gex.MSG_DISCONNECT
-paramiko.kex_group1.MSG_DISCONNECT
-paramiko.packet.MSG_DISCONNECT
-paramiko.pkey.MSG_DISCONNECT
-paramiko.rsakey.MSG_DISCONNECT
-paramiko.server.MSG_DISCONNECT
-paramiko.sftp.MSG_DISCONNECT
-paramiko.sftp_attr.MSG_DISCONNECT
-paramiko.sftp_client.MSG_DISCONNECT
-paramiko.sftp_file.MSG_DISCONNECT
-paramiko.sftp_handle.MSG_DISCONNECT
-paramiko.sftp_server.MSG_DISCONNECT
-paramiko.sftp_si.MSG_DISCONNECT
-paramiko.transport.MSG_DISCONNECT
-paramiko.util.MSG_DISCONNECT" class="py-name" href="#" onclick="return doclink('link-316', 'MSG_DISCONNECT', 'link-316');">MSG_DISCONNECT</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L1530"></a><tt class="py-lineno">1530</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_parse_disconnect</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L1531"></a><tt class="py-lineno">1531</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1532"></a><tt class="py-lineno">1532</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">packetizer</tt><tt class="py-op">.</tt><tt id="link-317" class="py-name"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-317', 'close', 'link-115');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1533"></a><tt class="py-lineno">1533</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L1534"></a><tt class="py-lineno">1534</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">ptype</tt> <tt class="py-op">==</tt> <tt id="link-318" class="py-name" targets="Variable paramiko.auth_handler.MSG_DEBUG=paramiko.auth_handler-module.html#MSG_DEBUG,Variable paramiko.channel.MSG_DEBUG=paramiko.channel-module.html#MSG_DEBUG,Variable paramiko.client.MSG_DEBUG=paramiko.client-module.html#MSG_DEBUG,Variable paramiko.common.MSG_DEBUG=paramiko.common-module.html#MSG_DEBUG,Variable paramiko.dsskey.MSG_DEBUG=paramiko.dsskey-module.html#MSG_DEBUG,Variable paramiko.hostkeys.MSG_DEBUG=paramiko.hostkeys-module.html#MSG_DEBUG,Variable paramiko.kex_gex.MSG_DEBUG=paramiko.kex_gex-module.html#MSG_DEBUG,Variable paramiko.kex_group1.MSG_DEBUG=paramiko.kex_group1-module.html#MSG_DEBUG,Variable paramiko.packet.MSG_DEBUG=paramiko.packet-module.html#MSG_DEBUG,Variable paramiko.pkey.MSG_DEBUG=paramiko.pkey-module.html#MSG_DEBUG,Variable paramiko.rsakey.MSG_DEBUG=paramiko.rsakey-module.html#MSG_DEBUG,Variable paramiko.server.MSG_DEBUG=paramiko.server-module.html#MSG_DEBUG,Variable paramiko.sftp.MSG_DEBUG=paramiko.sftp-module.html#MSG_DEBUG,Variable paramiko.sftp_attr.MSG_DEBUG=paramiko.sftp_attr-module.html#MSG_DEBUG,Variable paramiko.sftp_client.MSG_DEBUG=paramiko.sftp_client-module.html#MSG_DEBUG,Variable paramiko.sftp_file.MSG_DEBUG=paramiko.sftp_file-module.html#MSG_DEBUG,Variable paramiko.sftp_handle.MSG_DEBUG=paramiko.sftp_handle-module.html#MSG_DEBUG,Variable paramiko.sftp_server.MSG_DEBUG=paramiko.sftp_server-module.html#MSG_DEBUG,Variable paramiko.sftp_si.MSG_DEBUG=paramiko.sftp_si-module.html#MSG_DEBUG,Variable paramiko.transport.MSG_DEBUG=paramiko.transport-module.html#MSG_DEBUG,Variable paramiko.util.MSG_DEBUG=paramiko.util-module.html#MSG_DEBUG"><a title="paramiko.auth_handler.MSG_DEBUG
-paramiko.channel.MSG_DEBUG
-paramiko.client.MSG_DEBUG
-paramiko.common.MSG_DEBUG
-paramiko.dsskey.MSG_DEBUG
-paramiko.hostkeys.MSG_DEBUG
-paramiko.kex_gex.MSG_DEBUG
-paramiko.kex_group1.MSG_DEBUG
-paramiko.packet.MSG_DEBUG
-paramiko.pkey.MSG_DEBUG
-paramiko.rsakey.MSG_DEBUG
-paramiko.server.MSG_DEBUG
-paramiko.sftp.MSG_DEBUG
-paramiko.sftp_attr.MSG_DEBUG
-paramiko.sftp_client.MSG_DEBUG
-paramiko.sftp_file.MSG_DEBUG
-paramiko.sftp_handle.MSG_DEBUG
-paramiko.sftp_server.MSG_DEBUG
-paramiko.sftp_si.MSG_DEBUG
-paramiko.transport.MSG_DEBUG
-paramiko.util.MSG_DEBUG" class="py-name" href="#" onclick="return doclink('link-318', 'MSG_DEBUG', 'link-318');">MSG_DEBUG</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L1535"></a><tt class="py-lineno">1535</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_parse_debug</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L1536"></a><tt class="py-lineno">1536</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L1537"></a><tt class="py-lineno">1537</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_expected_packet</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L1538"></a><tt class="py-lineno">1538</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ptype</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_expected_packet</tt><tt class="py-op">:</tt> </tt>
-<a name="L1539"></a><tt class="py-lineno">1539</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-319" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-319', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Expecting packet from %r, got %d'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_expected_packet</tt><tt class="py-op">,</tt> <tt class="py-name">ptype</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1540"></a><tt class="py-lineno">1540</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_expected_packet</tt> <tt class="py-op">=</tt> <tt class="py-name">tuple</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1541"></a><tt class="py-lineno">1541</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">ptype</tt> <tt class="py-op">&gt;=</tt> <tt class="py-number">30</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">ptype</tt> <tt class="py-op">&lt;=</tt> <tt class="py-number">39</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1542"></a><tt class="py-lineno">1542</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">kex_engine</tt><tt class="py-op">.</tt><tt id="link-320" class="py-name" targets="Method paramiko.kex_gex.KexGex.parse_next()=paramiko.kex_gex.KexGex-class.html#parse_next,Method paramiko.kex_group1.KexGroup1.parse_next()=paramiko.kex_group1.KexGroup1-class.html#parse_next"><a title="paramiko.kex_gex.KexGex.parse_next
-paramiko.kex_group1.KexGroup1.parse_next" class="py-name" href="#" onclick="return doclink('link-320', 'parse_next', 'link-320');">parse_next</a></tt><tt class="py-op">(</tt><tt class="py-name">ptype</tt><tt class="py-op">,</tt> <tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L1543"></a><tt class="py-lineno">1543</tt> <tt class="py-line"> <tt class="py-keyword">continue</tt> </tt>
-<a name="L1544"></a><tt class="py-lineno">1544</tt> <tt class="py-line"> </tt>
-<a name="L1545"></a><tt class="py-lineno">1545</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ptype</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-321" class="py-name" targets="Variable paramiko.Transport._handler_table=paramiko.Transport-class.html#_handler_table"><a title="paramiko.Transport._handler_table" class="py-name" href="#" onclick="return doclink('link-321', '_handler_table', 'link-321');">_handler_table</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L1546"></a><tt class="py-lineno">1546</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-322" class="py-name"><a title="paramiko.Transport._handler_table" class="py-name" href="#" onclick="return doclink('link-322', '_handler_table', 'link-321');">_handler_table</a></tt><tt class="py-op">[</tt><tt class="py-name">ptype</tt><tt class="py-op">]</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">,</tt> <tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L1547"></a><tt class="py-lineno">1547</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">ptype</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-323" class="py-name" targets="Variable paramiko.Transport._channel_handler_table=paramiko.Transport-class.html#_channel_handler_table"><a title="paramiko.Transport._channel_handler_table" class="py-name" href="#" onclick="return doclink('link-323', '_channel_handler_table', 'link-323');">_channel_handler_table</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L1548"></a><tt class="py-lineno">1548</tt> <tt class="py-line"> <tt class="py-name">chanid</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-324" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-324', 'get_int', 'link-169');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1549"></a><tt class="py-lineno">1549</tt> <tt class="py-line"> <tt class="py-name">chan</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_channels</tt><tt class="py-op">.</tt><tt id="link-325" class="py-name"><a title="paramiko.SFTPClient.get
-paramiko.transport.ChannelMap.get" class="py-name" href="#" onclick="return doclink('link-325', 'get', 'link-76');">get</a></tt><tt class="py-op">(</tt><tt class="py-name">chanid</tt><tt class="py-op">)</tt> </tt>
-<a name="L1550"></a><tt class="py-lineno">1550</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">chan</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L1551"></a><tt class="py-lineno">1551</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-326" class="py-name"><a title="paramiko.Transport._channel_handler_table" class="py-name" href="#" onclick="return doclink('link-326', '_channel_handler_table', 'link-323');">_channel_handler_table</a></tt><tt class="py-op">[</tt><tt class="py-name">ptype</tt><tt class="py-op">]</tt><tt class="py-op">(</tt><tt class="py-name">chan</tt><tt class="py-op">,</tt> <tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L1552"></a><tt class="py-lineno">1552</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">chanid</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">channels_seen</tt><tt class="py-op">:</tt> </tt>
-<a name="L1553"></a><tt class="py-lineno">1553</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-327" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-327', 'DEBUG', 'link-192');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Ignoring message for dead channel %d'</tt> <tt class="py-op">%</tt> <tt class="py-name">chanid</tt><tt class="py-op">)</tt> </tt>
-<a name="L1554"></a><tt class="py-lineno">1554</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1555"></a><tt class="py-lineno">1555</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-328" class="py-name" targets="Variable paramiko.auth_handler.ERROR=paramiko.auth_handler-module.html#ERROR,Variable paramiko.channel.ERROR=paramiko.channel-module.html#ERROR,Variable paramiko.client.ERROR=paramiko.client-module.html#ERROR,Variable paramiko.common.ERROR=paramiko.common-module.html#ERROR,Variable paramiko.dsskey.ERROR=paramiko.dsskey-module.html#ERROR,Variable paramiko.hostkeys.ERROR=paramiko.hostkeys-module.html#ERROR,Variable paramiko.kex_gex.ERROR=paramiko.kex_gex-module.html#ERROR,Variable paramiko.kex_group1.ERROR=paramiko.kex_group1-module.html#ERROR,Variable paramiko.logging22.ERROR=paramiko.logging22-module.html#ERROR,Variable paramiko.packet.ERROR=paramiko.packet-module.html#ERROR,Variable paramiko.pkey.ERROR=paramiko.pkey-module.html#ERROR,Variable paramiko.rsakey.ERROR=paramiko.rsakey-module.html#ERROR,Variable paramiko.server.ERROR=paramiko.server-module.html#ERROR,Variable paramiko.sftp.ERROR=paramiko.sftp-module.html#ERROR,Variable paramiko.sftp_attr.ERROR=paramiko.sftp_attr-module.html#ERROR,Variable paramiko.sftp_client.ERROR=paramiko.sftp_client-module.html#ERROR,Variable paramiko.sftp_file.ERROR=paramiko.sftp_file-module.html#ERROR,Variable paramiko.sftp_handle.ERROR=paramiko.sftp_handle-module.html#ERROR,Variable paramiko.sftp_server.ERROR=paramiko.sftp_server-module.html#ERROR,Variable paramiko.sftp_si.ERROR=paramiko.sftp_si-module.html#ERROR,Variable paramiko.transport.ERROR=paramiko.transport-module.html#ERROR,Variable paramiko.util.ERROR=paramiko.util-module.html#ERROR"><a title="paramiko.auth_handler.ERROR
-paramiko.channel.ERROR
-paramiko.client.ERROR
-paramiko.common.ERROR
-paramiko.dsskey.ERROR
-paramiko.hostkeys.ERROR
-paramiko.kex_gex.ERROR
-paramiko.kex_group1.ERROR
-paramiko.logging22.ERROR
-paramiko.packet.ERROR
-paramiko.pkey.ERROR
-paramiko.rsakey.ERROR
-paramiko.server.ERROR
-paramiko.sftp.ERROR
-paramiko.sftp_attr.ERROR
-paramiko.sftp_client.ERROR
-paramiko.sftp_file.ERROR
-paramiko.sftp_handle.ERROR
-paramiko.sftp_server.ERROR
-paramiko.sftp_si.ERROR
-paramiko.transport.ERROR
-paramiko.util.ERROR" class="py-name" href="#" onclick="return doclink('link-328', 'ERROR', 'link-328');">ERROR</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Channel request for unknown channel %d'</tt> <tt class="py-op">%</tt> <tt class="py-name">chanid</tt><tt class="py-op">)</tt> </tt>
-<a name="L1556"></a><tt class="py-lineno">1556</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1557"></a><tt class="py-lineno">1557</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">packetizer</tt><tt class="py-op">.</tt><tt id="link-329" class="py-name"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-329', 'close', 'link-115');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1558"></a><tt class="py-lineno">1558</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-330" class="py-name"><a title="paramiko.auth_handler" class="py-name" href="#" onclick="return doclink('link-330', 'auth_handler', 'link-3');">auth_handler</a></tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">ptype</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-331" class="py-name"><a title="paramiko.auth_handler" class="py-name" href="#" onclick="return doclink('link-331', 'auth_handler', 'link-3');">auth_handler</a></tt><tt class="py-op">.</tt><tt id="link-332" class="py-name"><a title="paramiko.Transport._handler_table" class="py-name" href="#" onclick="return doclink('link-332', '_handler_table', 'link-321');">_handler_table</a></tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1559"></a><tt class="py-lineno">1559</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-333" class="py-name"><a title="paramiko.auth_handler" class="py-name" href="#" onclick="return doclink('link-333', 'auth_handler', 'link-3');">auth_handler</a></tt><tt class="py-op">.</tt><tt id="link-334" class="py-name"><a title="paramiko.Transport._handler_table" class="py-name" href="#" onclick="return doclink('link-334', '_handler_table', 'link-321');">_handler_table</a></tt><tt class="py-op">[</tt><tt class="py-name">ptype</tt><tt class="py-op">]</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-335" class="py-name"><a title="paramiko.auth_handler" class="py-name" href="#" onclick="return doclink('link-335', 'auth_handler', 'link-3');">auth_handler</a></tt><tt class="py-op">,</tt> <tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L1560"></a><tt class="py-lineno">1560</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1561"></a><tt class="py-lineno">1561</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-336" class="py-name" targets="Variable paramiko.auth_handler.WARNING=paramiko.auth_handler-module.html#WARNING,Variable paramiko.channel.WARNING=paramiko.channel-module.html#WARNING,Variable paramiko.client.WARNING=paramiko.client-module.html#WARNING,Variable paramiko.common.WARNING=paramiko.common-module.html#WARNING,Variable paramiko.dsskey.WARNING=paramiko.dsskey-module.html#WARNING,Variable paramiko.hostkeys.WARNING=paramiko.hostkeys-module.html#WARNING,Variable paramiko.kex_gex.WARNING=paramiko.kex_gex-module.html#WARNING,Variable paramiko.kex_group1.WARNING=paramiko.kex_group1-module.html#WARNING,Variable paramiko.logging22.WARNING=paramiko.logging22-module.html#WARNING,Variable paramiko.packet.WARNING=paramiko.packet-module.html#WARNING,Variable paramiko.pkey.WARNING=paramiko.pkey-module.html#WARNING,Variable paramiko.rsakey.WARNING=paramiko.rsakey-module.html#WARNING,Variable paramiko.server.WARNING=paramiko.server-module.html#WARNING,Variable paramiko.sftp.WARNING=paramiko.sftp-module.html#WARNING,Variable paramiko.sftp_attr.WARNING=paramiko.sftp_attr-module.html#WARNING,Variable paramiko.sftp_client.WARNING=paramiko.sftp_client-module.html#WARNING,Variable paramiko.sftp_file.WARNING=paramiko.sftp_file-module.html#WARNING,Variable paramiko.sftp_handle.WARNING=paramiko.sftp_handle-module.html#WARNING,Variable paramiko.sftp_server.WARNING=paramiko.sftp_server-module.html#WARNING,Variable paramiko.sftp_si.WARNING=paramiko.sftp_si-module.html#WARNING,Variable paramiko.transport.WARNING=paramiko.transport-module.html#WARNING,Variable paramiko.util.WARNING=paramiko.util-module.html#WARNING"><a title="paramiko.auth_handler.WARNING
-paramiko.channel.WARNING
-paramiko.client.WARNING
-paramiko.common.WARNING
-paramiko.dsskey.WARNING
-paramiko.hostkeys.WARNING
-paramiko.kex_gex.WARNING
-paramiko.kex_group1.WARNING
-paramiko.logging22.WARNING
-paramiko.packet.WARNING
-paramiko.pkey.WARNING
-paramiko.rsakey.WARNING
-paramiko.server.WARNING
-paramiko.sftp.WARNING
-paramiko.sftp_attr.WARNING
-paramiko.sftp_client.WARNING
-paramiko.sftp_file.WARNING
-paramiko.sftp_handle.WARNING
-paramiko.sftp_server.WARNING
-paramiko.sftp_si.WARNING
-paramiko.transport.WARNING
-paramiko.util.WARNING" class="py-name" href="#" onclick="return doclink('link-336', 'WARNING', 'link-336');">WARNING</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Oops, unhandled type %d'</tt> <tt class="py-op">%</tt> <tt class="py-name">ptype</tt><tt class="py-op">)</tt> </tt>
-<a name="L1562"></a><tt class="py-lineno">1562</tt> <tt class="py-line"> <tt class="py-name">msg</tt> <tt class="py-op">=</tt> <tt id="link-337" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-337', 'Message', 'link-24');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1563"></a><tt class="py-lineno">1563</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-338" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-338', 'add_byte', 'link-147');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-339" class="py-name" targets="Variable paramiko.auth_handler.MSG_UNIMPLEMENTED=paramiko.auth_handler-module.html#MSG_UNIMPLEMENTED,Variable paramiko.channel.MSG_UNIMPLEMENTED=paramiko.channel-module.html#MSG_UNIMPLEMENTED,Variable paramiko.client.MSG_UNIMPLEMENTED=paramiko.client-module.html#MSG_UNIMPLEMENTED,Variable paramiko.common.MSG_UNIMPLEMENTED=paramiko.common-module.html#MSG_UNIMPLEMENTED,Variable paramiko.dsskey.MSG_UNIMPLEMENTED=paramiko.dsskey-module.html#MSG_UNIMPLEMENTED,Variable paramiko.hostkeys.MSG_UNIMPLEMENTED=paramiko.hostkeys-module.html#MSG_UNIMPLEMENTED,Variable paramiko.kex_gex.MSG_UNIMPLEMENTED=paramiko.kex_gex-module.html#MSG_UNIMPLEMENTED,Variable paramiko.kex_group1.MSG_UNIMPLEMENTED=paramiko.kex_group1-module.html#MSG_UNIMPLEMENTED,Variable paramiko.packet.MSG_UNIMPLEMENTED=paramiko.packet-module.html#MSG_UNIMPLEMENTED,Variable paramiko.pkey.MSG_UNIMPLEMENTED=paramiko.pkey-module.html#MSG_UNIMPLEMENTED,Variable paramiko.rsakey.MSG_UNIMPLEMENTED=paramiko.rsakey-module.html#MSG_UNIMPLEMENTED,Variable paramiko.server.MSG_UNIMPLEMENTED=paramiko.server-module.html#MSG_UNIMPLEMENTED,Variable paramiko.sftp.MSG_UNIMPLEMENTED=paramiko.sftp-module.html#MSG_UNIMPLEMENTED,Variable paramiko.sftp_attr.MSG_UNIMPLEMENTED=paramiko.sftp_attr-module.html#MSG_UNIMPLEMENTED,Variable paramiko.sftp_client.MSG_UNIMPLEMENTED=paramiko.sftp_client-module.html#MSG_UNIMPLEMENTED,Variable paramiko.sftp_file.MSG_UNIMPLEMENTED=paramiko.sftp_file-module.html#MSG_UNIMPLEMENTED,Variable paramiko.sftp_handle.MSG_UNIMPLEMENTED=paramiko.sftp_handle-module.html#MSG_UNIMPLEMENTED,Variable paramiko.sftp_server.MSG_UNIMPLEMENTED=paramiko.sftp_server-module.html#MSG_UNIMPLEMENTED,Variable paramiko.sftp_si.MSG_UNIMPLEMENTED=paramiko.sftp_si-module.html#MSG_UNIMPLEMENTED,Variable paramiko.transport.MSG_UNIMPLEMENTED=paramiko.transport-module.html#MSG_UNIMPLEMENTED,Variable paramiko.util.MSG_UNIMPLEMENTED=paramiko.util-module.html#MSG_UNIMPLEMENTED"><a title="paramiko.auth_handler.MSG_UNIMPLEMENTED
-paramiko.channel.MSG_UNIMPLEMENTED
-paramiko.client.MSG_UNIMPLEMENTED
-paramiko.common.MSG_UNIMPLEMENTED
-paramiko.dsskey.MSG_UNIMPLEMENTED
-paramiko.hostkeys.MSG_UNIMPLEMENTED
-paramiko.kex_gex.MSG_UNIMPLEMENTED
-paramiko.kex_group1.MSG_UNIMPLEMENTED
-paramiko.packet.MSG_UNIMPLEMENTED
-paramiko.pkey.MSG_UNIMPLEMENTED
-paramiko.rsakey.MSG_UNIMPLEMENTED
-paramiko.server.MSG_UNIMPLEMENTED
-paramiko.sftp.MSG_UNIMPLEMENTED
-paramiko.sftp_attr.MSG_UNIMPLEMENTED
-paramiko.sftp_client.MSG_UNIMPLEMENTED
-paramiko.sftp_file.MSG_UNIMPLEMENTED
-paramiko.sftp_handle.MSG_UNIMPLEMENTED
-paramiko.sftp_server.MSG_UNIMPLEMENTED
-paramiko.sftp_si.MSG_UNIMPLEMENTED
-paramiko.transport.MSG_UNIMPLEMENTED
-paramiko.util.MSG_UNIMPLEMENTED" class="py-name" href="#" onclick="return doclink('link-339', 'MSG_UNIMPLEMENTED', 'link-339');">MSG_UNIMPLEMENTED</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1564"></a><tt class="py-lineno">1564</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-340" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-340', 'add_int', 'link-150');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">.</tt><tt class="py-name">seqno</tt><tt class="py-op">)</tt> </tt>
-<a name="L1565"></a><tt class="py-lineno">1565</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_message</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">)</tt> </tt>
-<a name="L1566"></a><tt class="py-lineno">1566</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt id="link-341" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-341', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L1567"></a><tt class="py-lineno">1567</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-342" class="py-name"><a title="paramiko.auth_handler.ERROR
-paramiko.channel.ERROR
-paramiko.client.ERROR
-paramiko.common.ERROR
-paramiko.dsskey.ERROR
-paramiko.hostkeys.ERROR
-paramiko.kex_gex.ERROR
-paramiko.kex_group1.ERROR
-paramiko.logging22.ERROR
-paramiko.packet.ERROR
-paramiko.pkey.ERROR
-paramiko.rsakey.ERROR
-paramiko.server.ERROR
-paramiko.sftp.ERROR
-paramiko.sftp_attr.ERROR
-paramiko.sftp_client.ERROR
-paramiko.sftp_file.ERROR
-paramiko.sftp_handle.ERROR
-paramiko.sftp_server.ERROR
-paramiko.sftp_si.ERROR
-paramiko.transport.ERROR
-paramiko.util.ERROR" class="py-name" href="#" onclick="return doclink('link-342', 'ERROR', 'link-328');">ERROR</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Exception: '</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1568"></a><tt class="py-lineno">1568</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-343" class="py-name"><a title="paramiko.auth_handler.ERROR
-paramiko.channel.ERROR
-paramiko.client.ERROR
-paramiko.common.ERROR
-paramiko.dsskey.ERROR
-paramiko.hostkeys.ERROR
-paramiko.kex_gex.ERROR
-paramiko.kex_group1.ERROR
-paramiko.logging22.ERROR
-paramiko.packet.ERROR
-paramiko.pkey.ERROR
-paramiko.rsakey.ERROR
-paramiko.server.ERROR
-paramiko.sftp.ERROR
-paramiko.sftp_attr.ERROR
-paramiko.sftp_client.ERROR
-paramiko.sftp_file.ERROR
-paramiko.sftp_handle.ERROR
-paramiko.sftp_server.ERROR
-paramiko.sftp_si.ERROR
-paramiko.transport.ERROR
-paramiko.util.ERROR" class="py-name" href="#" onclick="return doclink('link-343', 'ERROR', 'link-328');">ERROR</a></tt><tt class="py-op">,</tt> <tt id="link-344" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-344', 'util', 'link-1');">util</a></tt><tt class="py-op">.</tt><tt id="link-345" class="py-name" targets="Function paramiko.util.tb_strings()=paramiko.util-module.html#tb_strings"><a title="paramiko.util.tb_strings" class="py-name" href="#" onclick="return doclink('link-345', 'tb_strings', 'link-345');">tb_strings</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1569"></a><tt class="py-lineno">1569</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">saved_exception</tt> <tt class="py-op">=</tt> <tt class="py-name">e</tt> </tt>
-<a name="L1570"></a><tt class="py-lineno">1570</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">EOFError</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L1571"></a><tt class="py-lineno">1571</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-346" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-346', 'DEBUG', 'link-192');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'EOF in transport thread'</tt><tt class="py-op">)</tt> </tt>
-<a name="L1572"></a><tt class="py-lineno">1572</tt> <tt class="py-line"> <tt class="py-comment">#self._log(DEBUG, util.tb_strings())</tt> </tt>
-<a name="L1573"></a><tt class="py-lineno">1573</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">saved_exception</tt> <tt class="py-op">=</tt> <tt class="py-name">e</tt> </tt>
-<a name="L1574"></a><tt class="py-lineno">1574</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">socket</tt><tt class="py-op">.</tt><tt class="py-name">error</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L1575"></a><tt class="py-lineno">1575</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">args</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">tuple</tt><tt class="py-op">:</tt> </tt>
-<a name="L1576"></a><tt class="py-lineno">1576</tt> <tt class="py-line"> <tt class="py-name">emsg</tt> <tt class="py-op">=</tt> <tt class="py-string">'%s (%d)'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">args</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L1577"></a><tt class="py-lineno">1577</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1578"></a><tt class="py-lineno">1578</tt> <tt class="py-line"> <tt class="py-name">emsg</tt> <tt class="py-op">=</tt> <tt class="py-name">e</tt><tt class="py-op">.</tt><tt class="py-name">args</tt> </tt>
-<a name="L1579"></a><tt class="py-lineno">1579</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-347" class="py-name"><a title="paramiko.auth_handler.ERROR
-paramiko.channel.ERROR
-paramiko.client.ERROR
-paramiko.common.ERROR
-paramiko.dsskey.ERROR
-paramiko.hostkeys.ERROR
-paramiko.kex_gex.ERROR
-paramiko.kex_group1.ERROR
-paramiko.logging22.ERROR
-paramiko.packet.ERROR
-paramiko.pkey.ERROR
-paramiko.rsakey.ERROR
-paramiko.server.ERROR
-paramiko.sftp.ERROR
-paramiko.sftp_attr.ERROR
-paramiko.sftp_client.ERROR
-paramiko.sftp_file.ERROR
-paramiko.sftp_handle.ERROR
-paramiko.sftp_server.ERROR
-paramiko.sftp_si.ERROR
-paramiko.transport.ERROR
-paramiko.util.ERROR" class="py-name" href="#" onclick="return doclink('link-347', 'ERROR', 'link-328');">ERROR</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Socket exception: '</tt> <tt class="py-op">+</tt> <tt class="py-name">emsg</tt><tt class="py-op">)</tt> </tt>
-<a name="L1580"></a><tt class="py-lineno">1580</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">saved_exception</tt> <tt class="py-op">=</tt> <tt class="py-name">e</tt> </tt>
-<a name="L1581"></a><tt class="py-lineno">1581</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
-<a name="L1582"></a><tt class="py-lineno">1582</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-348" class="py-name"><a title="paramiko.auth_handler.ERROR
-paramiko.channel.ERROR
-paramiko.client.ERROR
-paramiko.common.ERROR
-paramiko.dsskey.ERROR
-paramiko.hostkeys.ERROR
-paramiko.kex_gex.ERROR
-paramiko.kex_group1.ERROR
-paramiko.logging22.ERROR
-paramiko.packet.ERROR
-paramiko.pkey.ERROR
-paramiko.rsakey.ERROR
-paramiko.server.ERROR
-paramiko.sftp.ERROR
-paramiko.sftp_attr.ERROR
-paramiko.sftp_client.ERROR
-paramiko.sftp_file.ERROR
-paramiko.sftp_handle.ERROR
-paramiko.sftp_server.ERROR
-paramiko.sftp_si.ERROR
-paramiko.transport.ERROR
-paramiko.util.ERROR" class="py-name" href="#" onclick="return doclink('link-348', 'ERROR', 'link-328');">ERROR</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Unknown exception: '</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">e</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1583"></a><tt class="py-lineno">1583</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-349" class="py-name"><a title="paramiko.auth_handler.ERROR
-paramiko.channel.ERROR
-paramiko.client.ERROR
-paramiko.common.ERROR
-paramiko.dsskey.ERROR
-paramiko.hostkeys.ERROR
-paramiko.kex_gex.ERROR
-paramiko.kex_group1.ERROR
-paramiko.logging22.ERROR
-paramiko.packet.ERROR
-paramiko.pkey.ERROR
-paramiko.rsakey.ERROR
-paramiko.server.ERROR
-paramiko.sftp.ERROR
-paramiko.sftp_attr.ERROR
-paramiko.sftp_client.ERROR
-paramiko.sftp_file.ERROR
-paramiko.sftp_handle.ERROR
-paramiko.sftp_server.ERROR
-paramiko.sftp_si.ERROR
-paramiko.transport.ERROR
-paramiko.util.ERROR" class="py-name" href="#" onclick="return doclink('link-349', 'ERROR', 'link-328');">ERROR</a></tt><tt class="py-op">,</tt> <tt id="link-350" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-350', 'util', 'link-1');">util</a></tt><tt class="py-op">.</tt><tt id="link-351" class="py-name"><a title="paramiko.util.tb_strings" class="py-name" href="#" onclick="return doclink('link-351', 'tb_strings', 'link-345');">tb_strings</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1584"></a><tt class="py-lineno">1584</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">saved_exception</tt> <tt class="py-op">=</tt> <tt class="py-name">e</tt> </tt>
-<a name="L1585"></a><tt class="py-lineno">1585</tt> <tt class="py-line"> <tt id="link-352" class="py-name"><a title="paramiko.transport._active_threads" class="py-name" href="#" onclick="return doclink('link-352', '_active_threads', 'link-49');">_active_threads</a></tt><tt class="py-op">.</tt><tt id="link-353" class="py-name" targets="Method paramiko.SFTPServerInterface.remove()=paramiko.SFTPServerInterface-class.html#remove"><a title="paramiko.SFTPServerInterface.remove" class="py-name" href="#" onclick="return doclink('link-353', 'remove', 'link-353');">remove</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt> </tt>
-<a name="L1586"></a><tt class="py-lineno">1586</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">chan</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_channels</tt><tt class="py-op">.</tt><tt id="link-354" class="py-name"><a title="paramiko.HostKeys.values
-paramiko.transport.ChannelMap.values" class="py-name" href="#" onclick="return doclink('link-354', 'values', 'link-77');">values</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1587"></a><tt class="py-lineno">1587</tt> <tt class="py-line"> <tt class="py-name">chan</tt><tt class="py-op">.</tt><tt class="py-name">_unlink</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1588"></a><tt class="py-lineno">1588</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt><tt class="py-op">:</tt> </tt>
-<a name="L1589"></a><tt class="py-lineno">1589</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">active</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1590"></a><tt class="py-lineno">1590</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">packetizer</tt><tt class="py-op">.</tt><tt id="link-355" class="py-name"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-355', 'close', 'link-115');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1591"></a><tt class="py-lineno">1591</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">completion_event</tt> <tt class="py-op">!=</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L1592"></a><tt class="py-lineno">1592</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">completion_event</tt><tt class="py-op">.</tt><tt id="link-356" class="py-name" targets="Method paramiko.pipe.OrPipe.set()=paramiko.pipe.OrPipe-class.html#set,Method paramiko.pipe.PosixPipe.set()=paramiko.pipe.PosixPipe-class.html#set,Method paramiko.pipe.WindowsPipe.set()=paramiko.pipe.WindowsPipe-class.html#set"><a title="paramiko.pipe.OrPipe.set
-paramiko.pipe.PosixPipe.set
-paramiko.pipe.WindowsPipe.set" class="py-name" href="#" onclick="return doclink('link-356', 'set', 'link-356');">set</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1593"></a><tt class="py-lineno">1593</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-357" class="py-name"><a title="paramiko.auth_handler" class="py-name" href="#" onclick="return doclink('link-357', 'auth_handler', 'link-3');">auth_handler</a></tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L1594"></a><tt class="py-lineno">1594</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-358" class="py-name"><a title="paramiko.auth_handler" class="py-name" href="#" onclick="return doclink('link-358', 'auth_handler', 'link-3');">auth_handler</a></tt><tt class="py-op">.</tt><tt class="py-name">abort</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1595"></a><tt class="py-lineno">1595</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">event</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">channel_events</tt><tt class="py-op">.</tt><tt id="link-359" class="py-name"><a title="paramiko.HostKeys.values
-paramiko.transport.ChannelMap.values" class="py-name" href="#" onclick="return doclink('link-359', 'values', 'link-77');">values</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1596"></a><tt class="py-lineno">1596</tt> <tt class="py-line"> <tt class="py-name">event</tt><tt class="py-op">.</tt><tt id="link-360" class="py-name"><a title="paramiko.pipe.OrPipe.set
-paramiko.pipe.PosixPipe.set
-paramiko.pipe.WindowsPipe.set" class="py-name" href="#" onclick="return doclink('link-360', 'set', 'link-356');">set</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1597"></a><tt class="py-lineno">1597</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1598"></a><tt class="py-lineno">1598</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1599"></a><tt class="py-lineno">1599</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_accept_cv</tt><tt class="py-op">.</tt><tt class="py-name">notify</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1600"></a><tt class="py-lineno">1600</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L1601"></a><tt class="py-lineno">1601</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1602"></a><tt class="py-lineno">1602</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">sock</tt><tt class="py-op">.</tt><tt id="link-361" class="py-name"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-361', 'close', 'link-115');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1603"></a><tt class="py-lineno">1603</tt> <tt class="py-line"> </tt>
-<a name="L1604"></a><tt class="py-lineno">1604</tt> <tt class="py-line"> </tt>
-<a name="L1605"></a><tt class="py-lineno">1605</tt> <tt class="py-line"> <tt class="py-comment">### protocol stages</tt> </tt>
-<a name="L1606"></a><tt class="py-lineno">1606</tt> <tt class="py-line"> </tt>
-<a name="L1607"></a><tt class="py-lineno">1607</tt> <tt class="py-line"> </tt>
-<a name="Transport._negotiate_keys"></a><div id="Transport._negotiate_keys-def"><a name="L1608"></a><tt class="py-lineno">1608</tt> <a class="py-toggle" href="#" id="Transport._negotiate_keys-toggle" onclick="return toggle('Transport._negotiate_keys');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#_negotiate_keys">_negotiate_keys</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport._negotiate_keys-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport._negotiate_keys-expanded"><a name="L1609"></a><tt class="py-lineno">1609</tt> <tt class="py-line"> <tt class="py-comment"># throws SSHException on anything unusual</tt> </tt>
-<a name="L1610"></a><tt class="py-lineno">1610</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">clear_to_send_lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1611"></a><tt class="py-lineno">1611</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1612"></a><tt class="py-lineno">1612</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">clear_to_send</tt><tt class="py-op">.</tt><tt id="link-362" class="py-name" targets="Method paramiko.HostKeys.clear()=paramiko.HostKeys-class.html#clear,Method paramiko.pipe.OrPipe.clear()=paramiko.pipe.OrPipe-class.html#clear,Method paramiko.pipe.PosixPipe.clear()=paramiko.pipe.PosixPipe-class.html#clear,Method paramiko.pipe.WindowsPipe.clear()=paramiko.pipe.WindowsPipe-class.html#clear"><a title="paramiko.HostKeys.clear
-paramiko.pipe.OrPipe.clear
-paramiko.pipe.PosixPipe.clear
-paramiko.pipe.WindowsPipe.clear" class="py-name" href="#" onclick="return doclink('link-362', 'clear', 'link-362');">clear</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1613"></a><tt class="py-lineno">1613</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L1614"></a><tt class="py-lineno">1614</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">clear_to_send_lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1615"></a><tt class="py-lineno">1615</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">local_kex_init</tt> <tt class="py-op">==</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L1616"></a><tt class="py-lineno">1616</tt> <tt class="py-line"> <tt class="py-comment"># remote side wants to renegotiate</tt> </tt>
-<a name="L1617"></a><tt class="py-lineno">1617</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_kex_init</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1618"></a><tt class="py-lineno">1618</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_parse_kex_init</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L1619"></a><tt class="py-lineno">1619</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">kex_engine</tt><tt class="py-op">.</tt><tt id="link-363" class="py-name" targets="Method paramiko.kex_gex.KexGex.start_kex()=paramiko.kex_gex.KexGex-class.html#start_kex,Method paramiko.kex_group1.KexGroup1.start_kex()=paramiko.kex_group1.KexGroup1-class.html#start_kex"><a title="paramiko.kex_gex.KexGex.start_kex
-paramiko.kex_group1.KexGroup1.start_kex" class="py-name" href="#" onclick="return doclink('link-363', 'start_kex', 'link-363');">start_kex</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1620"></a><tt class="py-lineno">1620</tt> <tt class="py-line"> </tt>
-<a name="Transport._check_banner"></a><div id="Transport._check_banner-def"><a name="L1621"></a><tt class="py-lineno">1621</tt> <a class="py-toggle" href="#" id="Transport._check_banner-toggle" onclick="return toggle('Transport._check_banner');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#_check_banner">_check_banner</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport._check_banner-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport._check_banner-expanded"><a name="L1622"></a><tt class="py-lineno">1622</tt> <tt class="py-line"> <tt class="py-comment"># this is slow, but we only have to do it once</tt> </tt>
-<a name="L1623"></a><tt class="py-lineno">1623</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">100</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1624"></a><tt class="py-lineno">1624</tt> <tt class="py-line"> <tt class="py-comment"># give them 15 seconds for the first line, then just 2 seconds</tt> </tt>
-<a name="L1625"></a><tt class="py-lineno">1625</tt> <tt class="py-line"> <tt class="py-comment"># each additional line. (some sites have very high latency.)</tt> </tt>
-<a name="L1626"></a><tt class="py-lineno">1626</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L1627"></a><tt class="py-lineno">1627</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">banner_timeout</tt> </tt>
-<a name="L1628"></a><tt class="py-lineno">1628</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1629"></a><tt class="py-lineno">1629</tt> <tt class="py-line"> <tt class="py-name">timeout</tt> <tt class="py-op">=</tt> <tt class="py-number">2</tt> </tt>
-<a name="L1630"></a><tt class="py-lineno">1630</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1631"></a><tt class="py-lineno">1631</tt> <tt class="py-line"> <tt class="py-name">buf</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">packetizer</tt><tt class="py-op">.</tt><tt id="link-364" class="py-name" targets="Method paramiko.BufferedFile.readline()=paramiko.BufferedFile-class.html#readline"><a title="paramiko.BufferedFile.readline" class="py-name" href="#" onclick="return doclink('link-364', 'readline', 'link-364');">readline</a></tt><tt class="py-op">(</tt><tt class="py-name">timeout</tt><tt class="py-op">)</tt> </tt>
-<a name="L1632"></a><tt class="py-lineno">1632</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">Exception</tt><tt class="py-op">,</tt> <tt class="py-name">x</tt><tt class="py-op">:</tt> </tt>
-<a name="L1633"></a><tt class="py-lineno">1633</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-365" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-365', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Error reading SSH protocol banner'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1634"></a><tt class="py-lineno">1634</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">buf</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-number">4</tt><tt class="py-op">]</tt> <tt class="py-op">==</tt> <tt class="py-string">'SSH-'</tt><tt class="py-op">:</tt> </tt>
-<a name="L1635"></a><tt class="py-lineno">1635</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L1636"></a><tt class="py-lineno">1636</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-366" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-366', 'DEBUG', 'link-192');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Banner: '</tt> <tt class="py-op">+</tt> <tt class="py-name">buf</tt><tt class="py-op">)</tt> </tt>
-<a name="L1637"></a><tt class="py-lineno">1637</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">buf</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-number">4</tt><tt class="py-op">]</tt> <tt class="py-op">!=</tt> <tt class="py-string">'SSH-'</tt><tt class="py-op">:</tt> </tt>
-<a name="L1638"></a><tt class="py-lineno">1638</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-367" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-367', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Indecipherable protocol version "'</tt> <tt class="py-op">+</tt> <tt class="py-name">buf</tt> <tt class="py-op">+</tt> <tt class="py-string">'"'</tt><tt class="py-op">)</tt> </tt>
-<a name="L1639"></a><tt class="py-lineno">1639</tt> <tt class="py-line"> <tt class="py-comment"># save this server version string for later</tt> </tt>
-<a name="L1640"></a><tt class="py-lineno">1640</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_version</tt> <tt class="py-op">=</tt> <tt class="py-name">buf</tt> </tt>
-<a name="L1641"></a><tt class="py-lineno">1641</tt> <tt class="py-line"> <tt class="py-comment"># pull off any attached comment</tt> </tt>
-<a name="L1642"></a><tt class="py-lineno">1642</tt> <tt class="py-line"> <tt class="py-name">comment</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L1643"></a><tt class="py-lineno">1643</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">string</tt><tt class="py-op">.</tt><tt class="py-name">find</tt><tt class="py-op">(</tt><tt class="py-name">buf</tt><tt class="py-op">,</tt> <tt class="py-string">' '</tt><tt class="py-op">)</tt> </tt>
-<a name="L1644"></a><tt class="py-lineno">1644</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt> <tt class="py-op">&gt;=</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L1645"></a><tt class="py-lineno">1645</tt> <tt class="py-line"> <tt class="py-name">comment</tt> <tt class="py-op">=</tt> <tt class="py-name">buf</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">+</tt><tt class="py-number">1</tt><tt class="py-op">:</tt><tt class="py-op">]</tt> </tt>
-<a name="L1646"></a><tt class="py-lineno">1646</tt> <tt class="py-line"> <tt class="py-name">buf</tt> <tt class="py-op">=</tt> <tt class="py-name">buf</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> </tt>
-<a name="L1647"></a><tt class="py-lineno">1647</tt> <tt class="py-line"> <tt class="py-comment"># parse out version string and make sure it matches</tt> </tt>
-<a name="L1648"></a><tt class="py-lineno">1648</tt> <tt class="py-line"> <tt class="py-name">segs</tt> <tt class="py-op">=</tt> <tt class="py-name">buf</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">'-'</tt><tt class="py-op">,</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="L1649"></a><tt class="py-lineno">1649</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">segs</tt><tt class="py-op">)</tt> <tt class="py-op">&lt;</tt> <tt class="py-number">3</tt><tt class="py-op">:</tt> </tt>
-<a name="L1650"></a><tt class="py-lineno">1650</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-368" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-368', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Invalid SSH banner'</tt><tt class="py-op">)</tt> </tt>
-<a name="L1651"></a><tt class="py-lineno">1651</tt> <tt class="py-line"> <tt class="py-name">version</tt> <tt class="py-op">=</tt> <tt class="py-name">segs</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L1652"></a><tt class="py-lineno">1652</tt> <tt class="py-line"> <tt id="link-369" class="py-name" targets="Module paramiko.client=paramiko.client-module.html"><a title="paramiko.client" class="py-name" href="#" onclick="return doclink('link-369', 'client', 'link-369');">client</a></tt> <tt class="py-op">=</tt> <tt class="py-name">segs</tt><tt class="py-op">[</tt><tt class="py-number">2</tt><tt class="py-op">]</tt> </tt>
-<a name="L1653"></a><tt class="py-lineno">1653</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">version</tt> <tt class="py-op">!=</tt> <tt class="py-string">'1.99'</tt> <tt class="py-keyword">and</tt> <tt class="py-name">version</tt> <tt class="py-op">!=</tt> <tt class="py-string">'2.0'</tt><tt class="py-op">:</tt> </tt>
-<a name="L1654"></a><tt class="py-lineno">1654</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-370" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-370', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Incompatible version (%s instead of 2.0)'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">version</tt><tt class="py-op">,</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1655"></a><tt class="py-lineno">1655</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-371" class="py-name" targets="Variable paramiko.auth_handler.INFO=paramiko.auth_handler-module.html#INFO,Variable paramiko.channel.INFO=paramiko.channel-module.html#INFO,Variable paramiko.client.INFO=paramiko.client-module.html#INFO,Variable paramiko.common.INFO=paramiko.common-module.html#INFO,Variable paramiko.dsskey.INFO=paramiko.dsskey-module.html#INFO,Variable paramiko.hostkeys.INFO=paramiko.hostkeys-module.html#INFO,Variable paramiko.kex_gex.INFO=paramiko.kex_gex-module.html#INFO,Variable paramiko.kex_group1.INFO=paramiko.kex_group1-module.html#INFO,Variable paramiko.logging22.INFO=paramiko.logging22-module.html#INFO,Variable paramiko.packet.INFO=paramiko.packet-module.html#INFO,Variable paramiko.pkey.INFO=paramiko.pkey-module.html#INFO,Variable paramiko.rsakey.INFO=paramiko.rsakey-module.html#INFO,Variable paramiko.server.INFO=paramiko.server-module.html#INFO,Variable paramiko.sftp.INFO=paramiko.sftp-module.html#INFO,Variable paramiko.sftp_attr.INFO=paramiko.sftp_attr-module.html#INFO,Variable paramiko.sftp_client.INFO=paramiko.sftp_client-module.html#INFO,Variable paramiko.sftp_file.INFO=paramiko.sftp_file-module.html#INFO,Variable paramiko.sftp_handle.INFO=paramiko.sftp_handle-module.html#INFO,Variable paramiko.sftp_server.INFO=paramiko.sftp_server-module.html#INFO,Variable paramiko.sftp_si.INFO=paramiko.sftp_si-module.html#INFO,Variable paramiko.transport.INFO=paramiko.transport-module.html#INFO,Variable paramiko.util.INFO=paramiko.util-module.html#INFO"><a title="paramiko.auth_handler.INFO
-paramiko.channel.INFO
-paramiko.client.INFO
-paramiko.common.INFO
-paramiko.dsskey.INFO
-paramiko.hostkeys.INFO
-paramiko.kex_gex.INFO
-paramiko.kex_group1.INFO
-paramiko.logging22.INFO
-paramiko.packet.INFO
-paramiko.pkey.INFO
-paramiko.rsakey.INFO
-paramiko.server.INFO
-paramiko.sftp.INFO
-paramiko.sftp_attr.INFO
-paramiko.sftp_client.INFO
-paramiko.sftp_file.INFO
-paramiko.sftp_handle.INFO
-paramiko.sftp_server.INFO
-paramiko.sftp_si.INFO
-paramiko.transport.INFO
-paramiko.util.INFO" class="py-name" href="#" onclick="return doclink('link-371', 'INFO', 'link-371');">INFO</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Connected (version %s, client %s)'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">version</tt><tt class="py-op">,</tt> <tt id="link-372" class="py-name"><a title="paramiko.client" class="py-name" href="#" onclick="return doclink('link-372', 'client', 'link-369');">client</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1656"></a><tt class="py-lineno">1656</tt> <tt class="py-line"> </tt>
-<a name="Transport._send_kex_init"></a><div id="Transport._send_kex_init-def"><a name="L1657"></a><tt class="py-lineno">1657</tt> <a class="py-toggle" href="#" id="Transport._send_kex_init-toggle" onclick="return toggle('Transport._send_kex_init');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#_send_kex_init">_send_kex_init</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport._send_kex_init-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport._send_kex_init-expanded"><a name="L1658"></a><tt class="py-lineno">1658</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L1659"></a><tt class="py-lineno">1659</tt> <tt class="py-line"><tt class="py-docstring"> announce to the other side that we'd like to negotiate keys, and what</tt> </tt>
-<a name="L1660"></a><tt class="py-lineno">1660</tt> <tt class="py-line"><tt class="py-docstring"> kind of key negotiation we support.</tt> </tt>
-<a name="L1661"></a><tt class="py-lineno">1661</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L1662"></a><tt class="py-lineno">1662</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">clear_to_send_lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1663"></a><tt class="py-lineno">1663</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1664"></a><tt class="py-lineno">1664</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">clear_to_send</tt><tt class="py-op">.</tt><tt id="link-373" class="py-name"><a title="paramiko.HostKeys.clear
-paramiko.pipe.OrPipe.clear
-paramiko.pipe.PosixPipe.clear
-paramiko.pipe.WindowsPipe.clear" class="py-name" href="#" onclick="return doclink('link-373', 'clear', 'link-362');">clear</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1665"></a><tt class="py-lineno">1665</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L1666"></a><tt class="py-lineno">1666</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">clear_to_send_lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1667"></a><tt class="py-lineno">1667</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_kex</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1668"></a><tt class="py-lineno">1668</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_mode</tt><tt class="py-op">:</tt> </tt>
-<a name="L1669"></a><tt class="py-lineno">1669</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-374" class="py-name"><a title="paramiko.Transport._modulus_pack" class="py-name" href="#" onclick="return doclink('link-374', '_modulus_pack', 'link-98');">_modulus_pack</a></tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-string">'diffie-hellman-group-exchange-sha1'</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-375" class="py-name"><a title="paramiko.Transport._preferred_kex" class="py-name" href="#" onclick="return doclink('link-375', '_preferred_kex', 'link-56');">_preferred_kex</a></tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1670"></a><tt class="py-lineno">1670</tt> <tt class="py-line"> <tt class="py-comment"># can't do group-exchange if we don't have a pack of potential primes</tt> </tt>
-<a name="L1671"></a><tt class="py-lineno">1671</tt> <tt class="py-line"> <tt class="py-name">pkex</tt> <tt class="py-op">=</tt> <tt class="py-name">list</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-376" class="py-name" targets="Method paramiko.Transport.get_security_options()=paramiko.Transport-class.html#get_security_options"><a title="paramiko.Transport.get_security_options" class="py-name" href="#" onclick="return doclink('link-376', 'get_security_options', 'link-376');">get_security_options</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-377" class="py-name"><a title="paramiko.SecurityOptions.kex" class="py-name" href="#" onclick="return doclink('link-377', 'kex', 'link-70');">kex</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L1672"></a><tt class="py-lineno">1672</tt> <tt class="py-line"> <tt class="py-name">pkex</tt><tt class="py-op">.</tt><tt id="link-378" class="py-name"><a title="paramiko.SFTPServerInterface.remove" class="py-name" href="#" onclick="return doclink('link-378', 'remove', 'link-353');">remove</a></tt><tt class="py-op">(</tt><tt class="py-string">'diffie-hellman-group-exchange-sha1'</tt><tt class="py-op">)</tt> </tt>
-<a name="L1673"></a><tt class="py-lineno">1673</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-379" class="py-name"><a title="paramiko.Transport.get_security_options" class="py-name" href="#" onclick="return doclink('link-379', 'get_security_options', 'link-376');">get_security_options</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-380" class="py-name"><a title="paramiko.SecurityOptions.kex" class="py-name" href="#" onclick="return doclink('link-380', 'kex', 'link-70');">kex</a></tt> <tt class="py-op">=</tt> <tt class="py-name">pkex</tt> </tt>
-<a name="L1674"></a><tt class="py-lineno">1674</tt> <tt class="py-line"> <tt class="py-name">available_server_keys</tt> <tt class="py-op">=</tt> <tt id="link-381" class="py-name"><a title="paramiko.util.PFilter.filter" class="py-name" href="#" onclick="return doclink('link-381', 'filter', 'link-59');">filter</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_key_dict</tt><tt class="py-op">.</tt><tt id="link-382" class="py-name"><a title="paramiko.HostKeys.keys" class="py-name" href="#" onclick="return doclink('link-382', 'keys', 'link-58');">keys</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">__contains__</tt><tt class="py-op">,</tt> </tt>
-<a name="L1675"></a><tt class="py-lineno">1675</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-383" class="py-name"><a title="paramiko.Transport._preferred_keys" class="py-name" href="#" onclick="return doclink('link-383', '_preferred_keys', 'link-55');">_preferred_keys</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L1676"></a><tt class="py-lineno">1676</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1677"></a><tt class="py-lineno">1677</tt> <tt class="py-line"> <tt class="py-name">available_server_keys</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-384" class="py-name"><a title="paramiko.Transport._preferred_keys" class="py-name" href="#" onclick="return doclink('link-384', '_preferred_keys', 'link-55');">_preferred_keys</a></tt> </tt>
-<a name="L1678"></a><tt class="py-lineno">1678</tt> <tt class="py-line"> </tt>
-<a name="L1679"></a><tt class="py-lineno">1679</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-385" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-385', 'Message', 'link-24');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1680"></a><tt class="py-lineno">1680</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-386" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-386', 'add_byte', 'link-147');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-387" class="py-name"><a title="paramiko.auth_handler.MSG_KEXINIT
-paramiko.channel.MSG_KEXINIT
-paramiko.client.MSG_KEXINIT
-paramiko.common.MSG_KEXINIT
-paramiko.dsskey.MSG_KEXINIT
-paramiko.hostkeys.MSG_KEXINIT
-paramiko.kex_gex.MSG_KEXINIT
-paramiko.kex_group1.MSG_KEXINIT
-paramiko.packet.MSG_KEXINIT
-paramiko.pkey.MSG_KEXINIT
-paramiko.rsakey.MSG_KEXINIT
-paramiko.server.MSG_KEXINIT
-paramiko.sftp.MSG_KEXINIT
-paramiko.sftp_attr.MSG_KEXINIT
-paramiko.sftp_client.MSG_KEXINIT
-paramiko.sftp_file.MSG_KEXINIT
-paramiko.sftp_handle.MSG_KEXINIT
-paramiko.sftp_server.MSG_KEXINIT
-paramiko.sftp_si.MSG_KEXINIT
-paramiko.transport.MSG_KEXINIT
-paramiko.util.MSG_KEXINIT" class="py-name" href="#" onclick="return doclink('link-387', 'MSG_KEXINIT', 'link-313');">MSG_KEXINIT</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1681"></a><tt class="py-lineno">1681</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-388" class="py-name"><a title="paramiko.Message.add_bytes" class="py-name" href="#" onclick="return doclink('link-388', 'add_bytes', 'link-179');">add_bytes</a></tt><tt class="py-op">(</tt><tt id="link-389" class="py-name"><a title="paramiko.auth_handler.rng
-paramiko.channel.rng
-paramiko.client.rng
-paramiko.common.rng
-paramiko.dsskey.rng
-paramiko.hostkeys.rng
-paramiko.kex_gex.rng
-paramiko.kex_group1.rng
-paramiko.packet.rng
-paramiko.pkey.rng
-paramiko.rsakey.rng
-paramiko.server.rng
-paramiko.sftp.rng
-paramiko.sftp_attr.rng
-paramiko.sftp_client.rng
-paramiko.sftp_file.rng
-paramiko.sftp_handle.rng
-paramiko.sftp_server.rng
-paramiko.sftp_si.rng
-paramiko.transport.rng
-paramiko.util.rng" class="py-name" href="#" onclick="return doclink('link-389', 'rng', 'link-102');">rng</a></tt><tt class="py-op">.</tt><tt id="link-390" class="py-name"><a title="paramiko.BufferedFile.read
-paramiko.SFTPHandle.read
-paramiko.buffered_pipe.BufferedPipe.read" class="py-name" href="#" onclick="return doclink('link-390', 'read', 'link-178');">read</a></tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1682"></a><tt class="py-lineno">1682</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-391" class="py-name" targets="Method paramiko.Message.add_list()=paramiko.Message-class.html#add_list"><a title="paramiko.Message.add_list" class="py-name" href="#" onclick="return doclink('link-391', 'add_list', 'link-391');">add_list</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-392" class="py-name"><a title="paramiko.Transport._preferred_kex" class="py-name" href="#" onclick="return doclink('link-392', '_preferred_kex', 'link-56');">_preferred_kex</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L1683"></a><tt class="py-lineno">1683</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-393" class="py-name"><a title="paramiko.Message.add_list" class="py-name" href="#" onclick="return doclink('link-393', 'add_list', 'link-391');">add_list</a></tt><tt class="py-op">(</tt><tt class="py-name">available_server_keys</tt><tt class="py-op">)</tt> </tt>
-<a name="L1684"></a><tt class="py-lineno">1684</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-394" class="py-name"><a title="paramiko.Message.add_list" class="py-name" href="#" onclick="return doclink('link-394', 'add_list', 'link-391');">add_list</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-395" class="py-name"><a title="paramiko.Transport._preferred_ciphers" class="py-name" href="#" onclick="return doclink('link-395', '_preferred_ciphers', 'link-53');">_preferred_ciphers</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L1685"></a><tt class="py-lineno">1685</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-396" class="py-name"><a title="paramiko.Message.add_list" class="py-name" href="#" onclick="return doclink('link-396', 'add_list', 'link-391');">add_list</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-397" class="py-name"><a title="paramiko.Transport._preferred_ciphers" class="py-name" href="#" onclick="return doclink('link-397', '_preferred_ciphers', 'link-53');">_preferred_ciphers</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L1686"></a><tt class="py-lineno">1686</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-398" class="py-name"><a title="paramiko.Message.add_list" class="py-name" href="#" onclick="return doclink('link-398', 'add_list', 'link-391');">add_list</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-399" class="py-name"><a title="paramiko.Transport._preferred_macs" class="py-name" href="#" onclick="return doclink('link-399', '_preferred_macs', 'link-54');">_preferred_macs</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L1687"></a><tt class="py-lineno">1687</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-400" class="py-name"><a title="paramiko.Message.add_list" class="py-name" href="#" onclick="return doclink('link-400', 'add_list', 'link-391');">add_list</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-401" class="py-name"><a title="paramiko.Transport._preferred_macs" class="py-name" href="#" onclick="return doclink('link-401', '_preferred_macs', 'link-54');">_preferred_macs</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L1688"></a><tt class="py-lineno">1688</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-402" class="py-name"><a title="paramiko.Message.add_list" class="py-name" href="#" onclick="return doclink('link-402', 'add_list', 'link-391');">add_list</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-403" class="py-name"><a title="paramiko.Transport._preferred_compression" class="py-name" href="#" onclick="return doclink('link-403', '_preferred_compression', 'link-57');">_preferred_compression</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L1689"></a><tt class="py-lineno">1689</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-404" class="py-name"><a title="paramiko.Message.add_list" class="py-name" href="#" onclick="return doclink('link-404', 'add_list', 'link-391');">add_list</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-405" class="py-name"><a title="paramiko.Transport._preferred_compression" class="py-name" href="#" onclick="return doclink('link-405', '_preferred_compression', 'link-57');">_preferred_compression</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L1690"></a><tt class="py-lineno">1690</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-406" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-406', 'add_string', 'link-149');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-string">''</tt><tt class="py-op">)</tt> </tt>
-<a name="L1691"></a><tt class="py-lineno">1691</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-407" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-407', 'add_string', 'link-149');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-string">''</tt><tt class="py-op">)</tt> </tt>
-<a name="L1692"></a><tt class="py-lineno">1692</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-408" class="py-name"><a title="paramiko.Message.add_boolean" class="py-name" href="#" onclick="return doclink('link-408', 'add_boolean', 'link-190');">add_boolean</a></tt><tt class="py-op">(</tt><tt class="py-name">False</tt><tt class="py-op">)</tt> </tt>
-<a name="L1693"></a><tt class="py-lineno">1693</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-409" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-409', 'add_int', 'link-150');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L1694"></a><tt class="py-lineno">1694</tt> <tt class="py-line"> <tt class="py-comment"># save a copy for later (needed to compute a hash)</tt> </tt>
-<a name="L1695"></a><tt class="py-lineno">1695</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">local_kex_init</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L1696"></a><tt class="py-lineno">1696</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1697"></a><tt class="py-lineno">1697</tt> <tt class="py-line"> </tt>
-<a name="Transport._parse_kex_init"></a><div id="Transport._parse_kex_init-def"><a name="L1698"></a><tt class="py-lineno">1698</tt> <a class="py-toggle" href="#" id="Transport._parse_kex_init-toggle" onclick="return toggle('Transport._parse_kex_init');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#_parse_kex_init">_parse_kex_init</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport._parse_kex_init-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport._parse_kex_init-expanded"><a name="L1699"></a><tt class="py-lineno">1699</tt> <tt class="py-line"> <tt class="py-name">cookie</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-410" class="py-name" targets="Method paramiko.Message.get_bytes()=paramiko.Message-class.html#get_bytes"><a title="paramiko.Message.get_bytes" class="py-name" href="#" onclick="return doclink('link-410', 'get_bytes', 'link-410');">get_bytes</a></tt><tt class="py-op">(</tt><tt class="py-number">16</tt><tt class="py-op">)</tt> </tt>
-<a name="L1700"></a><tt class="py-lineno">1700</tt> <tt class="py-line"> <tt class="py-name">kex_algo_list</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-411" class="py-name" targets="Method paramiko.Message.get_list()=paramiko.Message-class.html#get_list"><a title="paramiko.Message.get_list" class="py-name" href="#" onclick="return doclink('link-411', 'get_list', 'link-411');">get_list</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1701"></a><tt class="py-lineno">1701</tt> <tt class="py-line"> <tt class="py-name">server_key_algo_list</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-412" class="py-name"><a title="paramiko.Message.get_list" class="py-name" href="#" onclick="return doclink('link-412', 'get_list', 'link-411');">get_list</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1702"></a><tt class="py-lineno">1702</tt> <tt class="py-line"> <tt class="py-name">client_encrypt_algo_list</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-413" class="py-name"><a title="paramiko.Message.get_list" class="py-name" href="#" onclick="return doclink('link-413', 'get_list', 'link-411');">get_list</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1703"></a><tt class="py-lineno">1703</tt> <tt class="py-line"> <tt class="py-name">server_encrypt_algo_list</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-414" class="py-name"><a title="paramiko.Message.get_list" class="py-name" href="#" onclick="return doclink('link-414', 'get_list', 'link-411');">get_list</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1704"></a><tt class="py-lineno">1704</tt> <tt class="py-line"> <tt class="py-name">client_mac_algo_list</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-415" class="py-name"><a title="paramiko.Message.get_list" class="py-name" href="#" onclick="return doclink('link-415', 'get_list', 'link-411');">get_list</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1705"></a><tt class="py-lineno">1705</tt> <tt class="py-line"> <tt class="py-name">server_mac_algo_list</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-416" class="py-name"><a title="paramiko.Message.get_list" class="py-name" href="#" onclick="return doclink('link-416', 'get_list', 'link-411');">get_list</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1706"></a><tt class="py-lineno">1706</tt> <tt class="py-line"> <tt class="py-name">client_compress_algo_list</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-417" class="py-name"><a title="paramiko.Message.get_list" class="py-name" href="#" onclick="return doclink('link-417', 'get_list', 'link-411');">get_list</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1707"></a><tt class="py-lineno">1707</tt> <tt class="py-line"> <tt class="py-name">server_compress_algo_list</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-418" class="py-name"><a title="paramiko.Message.get_list" class="py-name" href="#" onclick="return doclink('link-418', 'get_list', 'link-411');">get_list</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1708"></a><tt class="py-lineno">1708</tt> <tt class="py-line"> <tt class="py-name">client_lang_list</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-419" class="py-name"><a title="paramiko.Message.get_list" class="py-name" href="#" onclick="return doclink('link-419', 'get_list', 'link-411');">get_list</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1709"></a><tt class="py-lineno">1709</tt> <tt class="py-line"> <tt class="py-name">server_lang_list</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-420" class="py-name"><a title="paramiko.Message.get_list" class="py-name" href="#" onclick="return doclink('link-420', 'get_list', 'link-411');">get_list</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1710"></a><tt class="py-lineno">1710</tt> <tt class="py-line"> <tt class="py-name">kex_follows</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-421" class="py-name" targets="Method paramiko.Message.get_boolean()=paramiko.Message-class.html#get_boolean"><a title="paramiko.Message.get_boolean" class="py-name" href="#" onclick="return doclink('link-421', 'get_boolean', 'link-421');">get_boolean</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1711"></a><tt class="py-lineno">1711</tt> <tt class="py-line"> <tt class="py-name">unused</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-422" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-422', 'get_int', 'link-169');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1712"></a><tt class="py-lineno">1712</tt> <tt class="py-line"> </tt>
-<a name="L1713"></a><tt class="py-lineno">1713</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-423" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-423', 'DEBUG', 'link-192');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'kex algos:'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">kex_algo_list</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">' server key:'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">server_key_algo_list</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L1714"></a><tt class="py-lineno">1714</tt> <tt class="py-line"> <tt class="py-string">' client encrypt:'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">client_encrypt_algo_list</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L1715"></a><tt class="py-lineno">1715</tt> <tt class="py-line"> <tt class="py-string">' server encrypt:'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">server_encrypt_algo_list</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L1716"></a><tt class="py-lineno">1716</tt> <tt class="py-line"> <tt class="py-string">' client mac:'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">client_mac_algo_list</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L1717"></a><tt class="py-lineno">1717</tt> <tt class="py-line"> <tt class="py-string">' server mac:'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">server_mac_algo_list</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L1718"></a><tt class="py-lineno">1718</tt> <tt class="py-line"> <tt class="py-string">' client compress:'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">client_compress_algo_list</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L1719"></a><tt class="py-lineno">1719</tt> <tt class="py-line"> <tt class="py-string">' server compress:'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">server_compress_algo_list</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L1720"></a><tt class="py-lineno">1720</tt> <tt class="py-line"> <tt class="py-string">' client lang:'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">client_lang_list</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L1721"></a><tt class="py-lineno">1721</tt> <tt class="py-line"> <tt class="py-string">' server lang:'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">server_lang_list</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> \ </tt>
-<a name="L1722"></a><tt class="py-lineno">1722</tt> <tt class="py-line"> <tt class="py-string">' kex follows?'</tt> <tt class="py-op">+</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">kex_follows</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1723"></a><tt class="py-lineno">1723</tt> <tt class="py-line"> </tt>
-<a name="L1724"></a><tt class="py-lineno">1724</tt> <tt class="py-line"> <tt class="py-comment"># as a server, we pick the first item in the client's list that we support.</tt> </tt>
-<a name="L1725"></a><tt class="py-lineno">1725</tt> <tt class="py-line"> <tt class="py-comment"># as a client, we pick the first item in our list that the server supports.</tt> </tt>
-<a name="L1726"></a><tt class="py-lineno">1726</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_mode</tt><tt class="py-op">:</tt> </tt>
-<a name="L1727"></a><tt class="py-lineno">1727</tt> <tt class="py-line"> <tt class="py-name">agreed_kex</tt> <tt class="py-op">=</tt> <tt id="link-424" class="py-name"><a title="paramiko.util.PFilter.filter" class="py-name" href="#" onclick="return doclink('link-424', 'filter', 'link-59');">filter</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-425" class="py-name"><a title="paramiko.Transport._preferred_kex" class="py-name" href="#" onclick="return doclink('link-425', '_preferred_kex', 'link-56');">_preferred_kex</a></tt><tt class="py-op">.</tt><tt class="py-name">__contains__</tt><tt class="py-op">,</tt> <tt class="py-name">kex_algo_list</tt><tt class="py-op">)</tt> </tt>
-<a name="L1728"></a><tt class="py-lineno">1728</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1729"></a><tt class="py-lineno">1729</tt> <tt class="py-line"> <tt class="py-name">agreed_kex</tt> <tt class="py-op">=</tt> <tt id="link-426" class="py-name"><a title="paramiko.util.PFilter.filter" class="py-name" href="#" onclick="return doclink('link-426', 'filter', 'link-59');">filter</a></tt><tt class="py-op">(</tt><tt class="py-name">kex_algo_list</tt><tt class="py-op">.</tt><tt class="py-name">__contains__</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-427" class="py-name"><a title="paramiko.Transport._preferred_kex" class="py-name" href="#" onclick="return doclink('link-427', '_preferred_kex', 'link-56');">_preferred_kex</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L1730"></a><tt class="py-lineno">1730</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">agreed_kex</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L1731"></a><tt class="py-lineno">1731</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-428" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-428', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Incompatible ssh peer (no acceptable kex algorithm)'</tt><tt class="py-op">)</tt> </tt>
-<a name="L1732"></a><tt class="py-lineno">1732</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">kex_engine</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-429" class="py-name"><a title="paramiko.Transport._kex_info" class="py-name" href="#" onclick="return doclink('link-429', '_kex_info', 'link-90');">_kex_info</a></tt><tt class="py-op">[</tt><tt class="py-name">agreed_kex</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">]</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt> </tt>
-<a name="L1733"></a><tt class="py-lineno">1733</tt> <tt class="py-line"> </tt>
-<a name="L1734"></a><tt class="py-lineno">1734</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_mode</tt><tt class="py-op">:</tt> </tt>
-<a name="L1735"></a><tt class="py-lineno">1735</tt> <tt class="py-line"> <tt class="py-name">available_server_keys</tt> <tt class="py-op">=</tt> <tt id="link-430" class="py-name"><a title="paramiko.util.PFilter.filter" class="py-name" href="#" onclick="return doclink('link-430', 'filter', 'link-59');">filter</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_key_dict</tt><tt class="py-op">.</tt><tt id="link-431" class="py-name"><a title="paramiko.HostKeys.keys" class="py-name" href="#" onclick="return doclink('link-431', 'keys', 'link-58');">keys</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">__contains__</tt><tt class="py-op">,</tt> </tt>
-<a name="L1736"></a><tt class="py-lineno">1736</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-432" class="py-name"><a title="paramiko.Transport._preferred_keys" class="py-name" href="#" onclick="return doclink('link-432', '_preferred_keys', 'link-55');">_preferred_keys</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L1737"></a><tt class="py-lineno">1737</tt> <tt class="py-line"> <tt class="py-name">agreed_keys</tt> <tt class="py-op">=</tt> <tt id="link-433" class="py-name"><a title="paramiko.util.PFilter.filter" class="py-name" href="#" onclick="return doclink('link-433', 'filter', 'link-59');">filter</a></tt><tt class="py-op">(</tt><tt class="py-name">available_server_keys</tt><tt class="py-op">.</tt><tt class="py-name">__contains__</tt><tt class="py-op">,</tt> <tt class="py-name">server_key_algo_list</tt><tt class="py-op">)</tt> </tt>
-<a name="L1738"></a><tt class="py-lineno">1738</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1739"></a><tt class="py-lineno">1739</tt> <tt class="py-line"> <tt class="py-name">agreed_keys</tt> <tt class="py-op">=</tt> <tt id="link-434" class="py-name"><a title="paramiko.util.PFilter.filter" class="py-name" href="#" onclick="return doclink('link-434', 'filter', 'link-59');">filter</a></tt><tt class="py-op">(</tt><tt class="py-name">server_key_algo_list</tt><tt class="py-op">.</tt><tt class="py-name">__contains__</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-435" class="py-name"><a title="paramiko.Transport._preferred_keys" class="py-name" href="#" onclick="return doclink('link-435', '_preferred_keys', 'link-55');">_preferred_keys</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L1740"></a><tt class="py-lineno">1740</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">agreed_keys</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L1741"></a><tt class="py-lineno">1741</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-436" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-436', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Incompatible ssh peer (no acceptable host key)'</tt><tt class="py-op">)</tt> </tt>
-<a name="L1742"></a><tt class="py-lineno">1742</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">host_key_type</tt> <tt class="py-op">=</tt> <tt class="py-name">agreed_keys</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L1743"></a><tt class="py-lineno">1743</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_mode</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-437" class="py-name" targets="Method paramiko.Transport.get_server_key()=paramiko.Transport-class.html#get_server_key"><a title="paramiko.Transport.get_server_key" class="py-name" href="#" onclick="return doclink('link-437', 'get_server_key', 'link-437');">get_server_key</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1744"></a><tt class="py-lineno">1744</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-438" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-438', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Incompatible ssh peer (can\'t match requested host key type)'</tt><tt class="py-op">)</tt> </tt>
-<a name="L1745"></a><tt class="py-lineno">1745</tt> <tt class="py-line"> </tt>
-<a name="L1746"></a><tt class="py-lineno">1746</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_mode</tt><tt class="py-op">:</tt> </tt>
-<a name="L1747"></a><tt class="py-lineno">1747</tt> <tt class="py-line"> <tt class="py-name">agreed_local_ciphers</tt> <tt class="py-op">=</tt> <tt id="link-439" class="py-name"><a title="paramiko.util.PFilter.filter" class="py-name" href="#" onclick="return doclink('link-439', 'filter', 'link-59');">filter</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-440" class="py-name"><a title="paramiko.Transport._preferred_ciphers" class="py-name" href="#" onclick="return doclink('link-440', '_preferred_ciphers', 'link-53');">_preferred_ciphers</a></tt><tt class="py-op">.</tt><tt class="py-name">__contains__</tt><tt class="py-op">,</tt> </tt>
-<a name="L1748"></a><tt class="py-lineno">1748</tt> <tt class="py-line"> <tt class="py-name">server_encrypt_algo_list</tt><tt class="py-op">)</tt> </tt>
-<a name="L1749"></a><tt class="py-lineno">1749</tt> <tt class="py-line"> <tt class="py-name">agreed_remote_ciphers</tt> <tt class="py-op">=</tt> <tt id="link-441" class="py-name"><a title="paramiko.util.PFilter.filter" class="py-name" href="#" onclick="return doclink('link-441', 'filter', 'link-59');">filter</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-442" class="py-name"><a title="paramiko.Transport._preferred_ciphers" class="py-name" href="#" onclick="return doclink('link-442', '_preferred_ciphers', 'link-53');">_preferred_ciphers</a></tt><tt class="py-op">.</tt><tt class="py-name">__contains__</tt><tt class="py-op">,</tt> </tt>
-<a name="L1750"></a><tt class="py-lineno">1750</tt> <tt class="py-line"> <tt class="py-name">client_encrypt_algo_list</tt><tt class="py-op">)</tt> </tt>
-<a name="L1751"></a><tt class="py-lineno">1751</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1752"></a><tt class="py-lineno">1752</tt> <tt class="py-line"> <tt class="py-name">agreed_local_ciphers</tt> <tt class="py-op">=</tt> <tt id="link-443" class="py-name"><a title="paramiko.util.PFilter.filter" class="py-name" href="#" onclick="return doclink('link-443', 'filter', 'link-59');">filter</a></tt><tt class="py-op">(</tt><tt class="py-name">client_encrypt_algo_list</tt><tt class="py-op">.</tt><tt class="py-name">__contains__</tt><tt class="py-op">,</tt> </tt>
-<a name="L1753"></a><tt class="py-lineno">1753</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-444" class="py-name"><a title="paramiko.Transport._preferred_ciphers" class="py-name" href="#" onclick="return doclink('link-444', '_preferred_ciphers', 'link-53');">_preferred_ciphers</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L1754"></a><tt class="py-lineno">1754</tt> <tt class="py-line"> <tt class="py-name">agreed_remote_ciphers</tt> <tt class="py-op">=</tt> <tt id="link-445" class="py-name"><a title="paramiko.util.PFilter.filter" class="py-name" href="#" onclick="return doclink('link-445', 'filter', 'link-59');">filter</a></tt><tt class="py-op">(</tt><tt class="py-name">server_encrypt_algo_list</tt><tt class="py-op">.</tt><tt class="py-name">__contains__</tt><tt class="py-op">,</tt> </tt>
-<a name="L1755"></a><tt class="py-lineno">1755</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-446" class="py-name"><a title="paramiko.Transport._preferred_ciphers" class="py-name" href="#" onclick="return doclink('link-446', '_preferred_ciphers', 'link-53');">_preferred_ciphers</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L1756"></a><tt class="py-lineno">1756</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">agreed_local_ciphers</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">agreed_remote_ciphers</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1757"></a><tt class="py-lineno">1757</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-447" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-447', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Incompatible ssh server (no acceptable ciphers)'</tt><tt class="py-op">)</tt> </tt>
-<a name="L1758"></a><tt class="py-lineno">1758</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">local_cipher</tt> <tt class="py-op">=</tt> <tt class="py-name">agreed_local_ciphers</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L1759"></a><tt class="py-lineno">1759</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_cipher</tt> <tt class="py-op">=</tt> <tt class="py-name">agreed_remote_ciphers</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L1760"></a><tt class="py-lineno">1760</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-448" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-448', 'DEBUG', 'link-192');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Ciphers agreed: local=%s, remote=%s'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">local_cipher</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_cipher</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1761"></a><tt class="py-lineno">1761</tt> <tt class="py-line"> </tt>
-<a name="L1762"></a><tt class="py-lineno">1762</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_mode</tt><tt class="py-op">:</tt> </tt>
-<a name="L1763"></a><tt class="py-lineno">1763</tt> <tt class="py-line"> <tt class="py-name">agreed_remote_macs</tt> <tt class="py-op">=</tt> <tt id="link-449" class="py-name"><a title="paramiko.util.PFilter.filter" class="py-name" href="#" onclick="return doclink('link-449', 'filter', 'link-59');">filter</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-450" class="py-name"><a title="paramiko.Transport._preferred_macs" class="py-name" href="#" onclick="return doclink('link-450', '_preferred_macs', 'link-54');">_preferred_macs</a></tt><tt class="py-op">.</tt><tt class="py-name">__contains__</tt><tt class="py-op">,</tt> <tt class="py-name">client_mac_algo_list</tt><tt class="py-op">)</tt> </tt>
-<a name="L1764"></a><tt class="py-lineno">1764</tt> <tt class="py-line"> <tt class="py-name">agreed_local_macs</tt> <tt class="py-op">=</tt> <tt id="link-451" class="py-name"><a title="paramiko.util.PFilter.filter" class="py-name" href="#" onclick="return doclink('link-451', 'filter', 'link-59');">filter</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-452" class="py-name"><a title="paramiko.Transport._preferred_macs" class="py-name" href="#" onclick="return doclink('link-452', '_preferred_macs', 'link-54');">_preferred_macs</a></tt><tt class="py-op">.</tt><tt class="py-name">__contains__</tt><tt class="py-op">,</tt> <tt class="py-name">server_mac_algo_list</tt><tt class="py-op">)</tt> </tt>
-<a name="L1765"></a><tt class="py-lineno">1765</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1766"></a><tt class="py-lineno">1766</tt> <tt class="py-line"> <tt class="py-name">agreed_local_macs</tt> <tt class="py-op">=</tt> <tt id="link-453" class="py-name"><a title="paramiko.util.PFilter.filter" class="py-name" href="#" onclick="return doclink('link-453', 'filter', 'link-59');">filter</a></tt><tt class="py-op">(</tt><tt class="py-name">client_mac_algo_list</tt><tt class="py-op">.</tt><tt class="py-name">__contains__</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-454" class="py-name"><a title="paramiko.Transport._preferred_macs" class="py-name" href="#" onclick="return doclink('link-454', '_preferred_macs', 'link-54');">_preferred_macs</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L1767"></a><tt class="py-lineno">1767</tt> <tt class="py-line"> <tt class="py-name">agreed_remote_macs</tt> <tt class="py-op">=</tt> <tt id="link-455" class="py-name"><a title="paramiko.util.PFilter.filter" class="py-name" href="#" onclick="return doclink('link-455', 'filter', 'link-59');">filter</a></tt><tt class="py-op">(</tt><tt class="py-name">server_mac_algo_list</tt><tt class="py-op">.</tt><tt class="py-name">__contains__</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-456" class="py-name"><a title="paramiko.Transport._preferred_macs" class="py-name" href="#" onclick="return doclink('link-456', '_preferred_macs', 'link-54');">_preferred_macs</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L1768"></a><tt class="py-lineno">1768</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">agreed_local_macs</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">agreed_remote_macs</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1769"></a><tt class="py-lineno">1769</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-457" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-457', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Incompatible ssh server (no acceptable macs)'</tt><tt class="py-op">)</tt> </tt>
-<a name="L1770"></a><tt class="py-lineno">1770</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">local_mac</tt> <tt class="py-op">=</tt> <tt class="py-name">agreed_local_macs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L1771"></a><tt class="py-lineno">1771</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_mac</tt> <tt class="py-op">=</tt> <tt class="py-name">agreed_remote_macs</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L1772"></a><tt class="py-lineno">1772</tt> <tt class="py-line"> </tt>
-<a name="L1773"></a><tt class="py-lineno">1773</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_mode</tt><tt class="py-op">:</tt> </tt>
-<a name="L1774"></a><tt class="py-lineno">1774</tt> <tt class="py-line"> <tt class="py-name">agreed_remote_compression</tt> <tt class="py-op">=</tt> <tt id="link-458" class="py-name"><a title="paramiko.util.PFilter.filter" class="py-name" href="#" onclick="return doclink('link-458', 'filter', 'link-59');">filter</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-459" class="py-name"><a title="paramiko.Transport._preferred_compression" class="py-name" href="#" onclick="return doclink('link-459', '_preferred_compression', 'link-57');">_preferred_compression</a></tt><tt class="py-op">.</tt><tt class="py-name">__contains__</tt><tt class="py-op">,</tt> <tt class="py-name">client_compress_algo_list</tt><tt class="py-op">)</tt> </tt>
-<a name="L1775"></a><tt class="py-lineno">1775</tt> <tt class="py-line"> <tt class="py-name">agreed_local_compression</tt> <tt class="py-op">=</tt> <tt id="link-460" class="py-name"><a title="paramiko.util.PFilter.filter" class="py-name" href="#" onclick="return doclink('link-460', 'filter', 'link-59');">filter</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-461" class="py-name"><a title="paramiko.Transport._preferred_compression" class="py-name" href="#" onclick="return doclink('link-461', '_preferred_compression', 'link-57');">_preferred_compression</a></tt><tt class="py-op">.</tt><tt class="py-name">__contains__</tt><tt class="py-op">,</tt> <tt class="py-name">server_compress_algo_list</tt><tt class="py-op">)</tt> </tt>
-<a name="L1776"></a><tt class="py-lineno">1776</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1777"></a><tt class="py-lineno">1777</tt> <tt class="py-line"> <tt class="py-name">agreed_local_compression</tt> <tt class="py-op">=</tt> <tt id="link-462" class="py-name"><a title="paramiko.util.PFilter.filter" class="py-name" href="#" onclick="return doclink('link-462', 'filter', 'link-59');">filter</a></tt><tt class="py-op">(</tt><tt class="py-name">client_compress_algo_list</tt><tt class="py-op">.</tt><tt class="py-name">__contains__</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-463" class="py-name"><a title="paramiko.Transport._preferred_compression" class="py-name" href="#" onclick="return doclink('link-463', '_preferred_compression', 'link-57');">_preferred_compression</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L1778"></a><tt class="py-lineno">1778</tt> <tt class="py-line"> <tt class="py-name">agreed_remote_compression</tt> <tt class="py-op">=</tt> <tt id="link-464" class="py-name"><a title="paramiko.util.PFilter.filter" class="py-name" href="#" onclick="return doclink('link-464', 'filter', 'link-59');">filter</a></tt><tt class="py-op">(</tt><tt class="py-name">server_compress_algo_list</tt><tt class="py-op">.</tt><tt class="py-name">__contains__</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-465" class="py-name"><a title="paramiko.Transport._preferred_compression" class="py-name" href="#" onclick="return doclink('link-465', '_preferred_compression', 'link-57');">_preferred_compression</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L1779"></a><tt class="py-lineno">1779</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">agreed_local_compression</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">agreed_remote_compression</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1780"></a><tt class="py-lineno">1780</tt> <tt class="py-line"> <tt class="py-keyword">raise</tt> <tt id="link-466" class="py-name"><a title="paramiko.SSHException" class="py-name" href="#" onclick="return doclink('link-466', 'SSHException', 'link-42');">SSHException</a></tt><tt class="py-op">(</tt><tt class="py-string">'Incompatible ssh server (no acceptable compression) %r %r %r'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">agreed_local_compression</tt><tt class="py-op">,</tt> <tt class="py-name">agreed_remote_compression</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-467" class="py-name"><a title="paramiko.Transport._preferred_compression" class="py-name" href="#" onclick="return doclink('link-467', '_preferred_compression', 'link-57');">_preferred_compression</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1781"></a><tt class="py-lineno">1781</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">local_compression</tt> <tt class="py-op">=</tt> <tt class="py-name">agreed_local_compression</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L1782"></a><tt class="py-lineno">1782</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_compression</tt> <tt class="py-op">=</tt> <tt class="py-name">agreed_remote_compression</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L1783"></a><tt class="py-lineno">1783</tt> <tt class="py-line"> </tt>
-<a name="L1784"></a><tt class="py-lineno">1784</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-468" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-468', 'DEBUG', 'link-192');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'using kex %s; server key type %s; cipher: local %s, remote %s; mac: local %s, remote %s; compression: local %s, remote %s'</tt> <tt class="py-op">%</tt> </tt>
-<a name="L1785"></a><tt class="py-lineno">1785</tt> <tt class="py-line"> <tt class="py-op">(</tt><tt class="py-name">agreed_kex</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">host_key_type</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">local_cipher</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_cipher</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">local_mac</tt><tt class="py-op">,</tt> </tt>
-<a name="L1786"></a><tt class="py-lineno">1786</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_mac</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">local_compression</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_compression</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1787"></a><tt class="py-lineno">1787</tt> <tt class="py-line"> </tt>
-<a name="L1788"></a><tt class="py-lineno">1788</tt> <tt class="py-line"> <tt class="py-comment"># save for computing hash later...</tt> </tt>
-<a name="L1789"></a><tt class="py-lineno">1789</tt> <tt class="py-line"> <tt class="py-comment"># now wait! openssh has a bug (and others might too) where there are</tt> </tt>
-<a name="L1790"></a><tt class="py-lineno">1790</tt> <tt class="py-line"> <tt class="py-comment"># actually some extra bytes (one NUL byte in openssh's case) added to</tt> </tt>
-<a name="L1791"></a><tt class="py-lineno">1791</tt> <tt class="py-line"> <tt class="py-comment"># the end of the packet but not parsed. turns out we need to throw</tt> </tt>
-<a name="L1792"></a><tt class="py-lineno">1792</tt> <tt class="py-line"> <tt class="py-comment"># away those bytes because they aren't part of the hash.</tt> </tt>
-<a name="L1793"></a><tt class="py-lineno">1793</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_kex_init</tt> <tt class="py-op">=</tt> <tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-469" class="py-name"><a title="paramiko.auth_handler.MSG_KEXINIT
-paramiko.channel.MSG_KEXINIT
-paramiko.client.MSG_KEXINIT
-paramiko.common.MSG_KEXINIT
-paramiko.dsskey.MSG_KEXINIT
-paramiko.hostkeys.MSG_KEXINIT
-paramiko.kex_gex.MSG_KEXINIT
-paramiko.kex_group1.MSG_KEXINIT
-paramiko.packet.MSG_KEXINIT
-paramiko.pkey.MSG_KEXINIT
-paramiko.rsakey.MSG_KEXINIT
-paramiko.server.MSG_KEXINIT
-paramiko.sftp.MSG_KEXINIT
-paramiko.sftp_attr.MSG_KEXINIT
-paramiko.sftp_client.MSG_KEXINIT
-paramiko.sftp_file.MSG_KEXINIT
-paramiko.sftp_handle.MSG_KEXINIT
-paramiko.sftp_server.MSG_KEXINIT
-paramiko.sftp_si.MSG_KEXINIT
-paramiko.transport.MSG_KEXINIT
-paramiko.util.MSG_KEXINIT" class="py-name" href="#" onclick="return doclink('link-469', 'MSG_KEXINIT', 'link-313');">MSG_KEXINIT</a></tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-470" class="py-name" targets="Method paramiko.Message.get_so_far()=paramiko.Message-class.html#get_so_far"><a title="paramiko.Message.get_so_far" class="py-name" href="#" onclick="return doclink('link-470', 'get_so_far', 'link-470');">get_so_far</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1794"></a><tt class="py-lineno">1794</tt> <tt class="py-line"> </tt>
-<a name="Transport._activate_inbound"></a><div id="Transport._activate_inbound-def"><a name="L1795"></a><tt class="py-lineno">1795</tt> <a class="py-toggle" href="#" id="Transport._activate_inbound-toggle" onclick="return toggle('Transport._activate_inbound');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#_activate_inbound">_activate_inbound</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport._activate_inbound-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport._activate_inbound-expanded"><a name="L1796"></a><tt class="py-lineno">1796</tt> <tt class="py-line"> <tt class="py-docstring">"switch on newly negotiated encryption parameters for inbound traffic"</tt> </tt>
-<a name="L1797"></a><tt class="py-lineno">1797</tt> <tt class="py-line"> <tt class="py-name">block_size</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-471" class="py-name"><a title="paramiko.Transport._cipher_info" class="py-name" href="#" onclick="return doclink('link-471', '_cipher_info', 'link-85');">_cipher_info</a></tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_cipher</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'block-size'</tt><tt class="py-op">]</tt> </tt>
-<a name="L1798"></a><tt class="py-lineno">1798</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_mode</tt><tt class="py-op">:</tt> </tt>
-<a name="L1799"></a><tt class="py-lineno">1799</tt> <tt class="py-line"> <tt class="py-name">IV_in</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_compute_key</tt><tt class="py-op">(</tt><tt class="py-string">'A'</tt><tt class="py-op">,</tt> <tt class="py-name">block_size</tt><tt class="py-op">)</tt> </tt>
-<a name="L1800"></a><tt class="py-lineno">1800</tt> <tt class="py-line"> <tt class="py-name">key_in</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_compute_key</tt><tt class="py-op">(</tt><tt class="py-string">'C'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-472" class="py-name"><a title="paramiko.Transport._cipher_info" class="py-name" href="#" onclick="return doclink('link-472', '_cipher_info', 'link-85');">_cipher_info</a></tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_cipher</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'key-size'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L1801"></a><tt class="py-lineno">1801</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1802"></a><tt class="py-lineno">1802</tt> <tt class="py-line"> <tt class="py-name">IV_in</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_compute_key</tt><tt class="py-op">(</tt><tt class="py-string">'B'</tt><tt class="py-op">,</tt> <tt class="py-name">block_size</tt><tt class="py-op">)</tt> </tt>
-<a name="L1803"></a><tt class="py-lineno">1803</tt> <tt class="py-line"> <tt class="py-name">key_in</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_compute_key</tt><tt class="py-op">(</tt><tt class="py-string">'D'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-473" class="py-name"><a title="paramiko.Transport._cipher_info" class="py-name" href="#" onclick="return doclink('link-473', '_cipher_info', 'link-85');">_cipher_info</a></tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_cipher</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'key-size'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L1804"></a><tt class="py-lineno">1804</tt> <tt class="py-line"> <tt class="py-name">engine</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_get_cipher</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_cipher</tt><tt class="py-op">,</tt> <tt class="py-name">key_in</tt><tt class="py-op">,</tt> <tt class="py-name">IV_in</tt><tt class="py-op">)</tt> </tt>
-<a name="L1805"></a><tt class="py-lineno">1805</tt> <tt class="py-line"> <tt class="py-name">mac_size</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-474" class="py-name"><a title="paramiko.Transport._mac_info" class="py-name" href="#" onclick="return doclink('link-474', '_mac_info', 'link-86');">_mac_info</a></tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_mac</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'size'</tt><tt class="py-op">]</tt> </tt>
-<a name="L1806"></a><tt class="py-lineno">1806</tt> <tt class="py-line"> <tt class="py-name">mac_engine</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-475" class="py-name"><a title="paramiko.Transport._mac_info" class="py-name" href="#" onclick="return doclink('link-475', '_mac_info', 'link-86');">_mac_info</a></tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_mac</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'class'</tt><tt class="py-op">]</tt> </tt>
-<a name="L1807"></a><tt class="py-lineno">1807</tt> <tt class="py-line"> <tt class="py-comment"># initial mac keys are done in the hash's natural size (not the potentially truncated</tt> </tt>
-<a name="L1808"></a><tt class="py-lineno">1808</tt> <tt class="py-line"> <tt class="py-comment"># transmission size)</tt> </tt>
-<a name="L1809"></a><tt class="py-lineno">1809</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_mode</tt><tt class="py-op">:</tt> </tt>
-<a name="L1810"></a><tt class="py-lineno">1810</tt> <tt class="py-line"> <tt class="py-name">mac_key</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_compute_key</tt><tt class="py-op">(</tt><tt class="py-string">'E'</tt><tt class="py-op">,</tt> <tt class="py-name">mac_engine</tt><tt class="py-op">.</tt><tt class="py-name">digest_size</tt><tt class="py-op">)</tt> </tt>
-<a name="L1811"></a><tt class="py-lineno">1811</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1812"></a><tt class="py-lineno">1812</tt> <tt class="py-line"> <tt class="py-name">mac_key</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_compute_key</tt><tt class="py-op">(</tt><tt class="py-string">'F'</tt><tt class="py-op">,</tt> <tt class="py-name">mac_engine</tt><tt class="py-op">.</tt><tt class="py-name">digest_size</tt><tt class="py-op">)</tt> </tt>
-<a name="L1813"></a><tt class="py-lineno">1813</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">packetizer</tt><tt class="py-op">.</tt><tt class="py-name">set_inbound_cipher</tt><tt class="py-op">(</tt><tt class="py-name">engine</tt><tt class="py-op">,</tt> <tt class="py-name">block_size</tt><tt class="py-op">,</tt> <tt class="py-name">mac_engine</tt><tt class="py-op">,</tt> <tt class="py-name">mac_size</tt><tt class="py-op">,</tt> <tt class="py-name">mac_key</tt><tt class="py-op">)</tt> </tt>
-<a name="L1814"></a><tt class="py-lineno">1814</tt> <tt class="py-line"> <tt class="py-name">compress_in</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-476" class="py-name"><a title="paramiko.Transport._compression_info" class="py-name" href="#" onclick="return doclink('link-476', '_compression_info', 'link-93');">_compression_info</a></tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_compression</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L1815"></a><tt class="py-lineno">1815</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">compress_in</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_compression</tt> <tt class="py-op">!=</tt> <tt class="py-string">'zlib@openssh.com'</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">authenticated</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1816"></a><tt class="py-lineno">1816</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-477" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-477', 'DEBUG', 'link-192');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Switching on inbound compression ...'</tt><tt class="py-op">)</tt> </tt>
-<a name="L1817"></a><tt class="py-lineno">1817</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">packetizer</tt><tt class="py-op">.</tt><tt class="py-name">set_inbound_compressor</tt><tt class="py-op">(</tt><tt class="py-name">compress_in</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1818"></a><tt class="py-lineno">1818</tt> <tt class="py-line"> </tt>
-<a name="Transport._activate_outbound"></a><div id="Transport._activate_outbound-def"><a name="L1819"></a><tt class="py-lineno">1819</tt> <a class="py-toggle" href="#" id="Transport._activate_outbound-toggle" onclick="return toggle('Transport._activate_outbound');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#_activate_outbound">_activate_outbound</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport._activate_outbound-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport._activate_outbound-expanded"><a name="L1820"></a><tt class="py-lineno">1820</tt> <tt class="py-line"> <tt class="py-docstring">"switch on newly negotiated encryption parameters for outbound traffic"</tt> </tt>
-<a name="L1821"></a><tt class="py-lineno">1821</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-478" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-478', 'Message', 'link-24');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1822"></a><tt class="py-lineno">1822</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-479" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-479', 'add_byte', 'link-147');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-480" class="py-name" targets="Variable paramiko.auth_handler.MSG_NEWKEYS=paramiko.auth_handler-module.html#MSG_NEWKEYS,Variable paramiko.channel.MSG_NEWKEYS=paramiko.channel-module.html#MSG_NEWKEYS,Variable paramiko.client.MSG_NEWKEYS=paramiko.client-module.html#MSG_NEWKEYS,Variable paramiko.common.MSG_NEWKEYS=paramiko.common-module.html#MSG_NEWKEYS,Variable paramiko.dsskey.MSG_NEWKEYS=paramiko.dsskey-module.html#MSG_NEWKEYS,Variable paramiko.hostkeys.MSG_NEWKEYS=paramiko.hostkeys-module.html#MSG_NEWKEYS,Variable paramiko.kex_gex.MSG_NEWKEYS=paramiko.kex_gex-module.html#MSG_NEWKEYS,Variable paramiko.kex_group1.MSG_NEWKEYS=paramiko.kex_group1-module.html#MSG_NEWKEYS,Variable paramiko.packet.MSG_NEWKEYS=paramiko.packet-module.html#MSG_NEWKEYS,Variable paramiko.pkey.MSG_NEWKEYS=paramiko.pkey-module.html#MSG_NEWKEYS,Variable paramiko.rsakey.MSG_NEWKEYS=paramiko.rsakey-module.html#MSG_NEWKEYS,Variable paramiko.server.MSG_NEWKEYS=paramiko.server-module.html#MSG_NEWKEYS,Variable paramiko.sftp.MSG_NEWKEYS=paramiko.sftp-module.html#MSG_NEWKEYS,Variable paramiko.sftp_attr.MSG_NEWKEYS=paramiko.sftp_attr-module.html#MSG_NEWKEYS,Variable paramiko.sftp_client.MSG_NEWKEYS=paramiko.sftp_client-module.html#MSG_NEWKEYS,Variable paramiko.sftp_file.MSG_NEWKEYS=paramiko.sftp_file-module.html#MSG_NEWKEYS,Variable paramiko.sftp_handle.MSG_NEWKEYS=paramiko.sftp_handle-module.html#MSG_NEWKEYS,Variable paramiko.sftp_server.MSG_NEWKEYS=paramiko.sftp_server-module.html#MSG_NEWKEYS,Variable paramiko.sftp_si.MSG_NEWKEYS=paramiko.sftp_si-module.html#MSG_NEWKEYS,Variable paramiko.transport.MSG_NEWKEYS=paramiko.transport-module.html#MSG_NEWKEYS,Variable paramiko.util.MSG_NEWKEYS=paramiko.util-module.html#MSG_NEWKEYS"><a title="paramiko.auth_handler.MSG_NEWKEYS
-paramiko.channel.MSG_NEWKEYS
-paramiko.client.MSG_NEWKEYS
-paramiko.common.MSG_NEWKEYS
-paramiko.dsskey.MSG_NEWKEYS
-paramiko.hostkeys.MSG_NEWKEYS
-paramiko.kex_gex.MSG_NEWKEYS
-paramiko.kex_group1.MSG_NEWKEYS
-paramiko.packet.MSG_NEWKEYS
-paramiko.pkey.MSG_NEWKEYS
-paramiko.rsakey.MSG_NEWKEYS
-paramiko.server.MSG_NEWKEYS
-paramiko.sftp.MSG_NEWKEYS
-paramiko.sftp_attr.MSG_NEWKEYS
-paramiko.sftp_client.MSG_NEWKEYS
-paramiko.sftp_file.MSG_NEWKEYS
-paramiko.sftp_handle.MSG_NEWKEYS
-paramiko.sftp_server.MSG_NEWKEYS
-paramiko.sftp_si.MSG_NEWKEYS
-paramiko.transport.MSG_NEWKEYS
-paramiko.util.MSG_NEWKEYS" class="py-name" href="#" onclick="return doclink('link-480', 'MSG_NEWKEYS', 'link-480');">MSG_NEWKEYS</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1823"></a><tt class="py-lineno">1823</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L1824"></a><tt class="py-lineno">1824</tt> <tt class="py-line"> <tt class="py-name">block_size</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-481" class="py-name"><a title="paramiko.Transport._cipher_info" class="py-name" href="#" onclick="return doclink('link-481', '_cipher_info', 'link-85');">_cipher_info</a></tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">local_cipher</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'block-size'</tt><tt class="py-op">]</tt> </tt>
-<a name="L1825"></a><tt class="py-lineno">1825</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_mode</tt><tt class="py-op">:</tt> </tt>
-<a name="L1826"></a><tt class="py-lineno">1826</tt> <tt class="py-line"> <tt class="py-name">IV_out</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_compute_key</tt><tt class="py-op">(</tt><tt class="py-string">'B'</tt><tt class="py-op">,</tt> <tt class="py-name">block_size</tt><tt class="py-op">)</tt> </tt>
-<a name="L1827"></a><tt class="py-lineno">1827</tt> <tt class="py-line"> <tt class="py-name">key_out</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_compute_key</tt><tt class="py-op">(</tt><tt class="py-string">'D'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-482" class="py-name"><a title="paramiko.Transport._cipher_info" class="py-name" href="#" onclick="return doclink('link-482', '_cipher_info', 'link-85');">_cipher_info</a></tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">local_cipher</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'key-size'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L1828"></a><tt class="py-lineno">1828</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1829"></a><tt class="py-lineno">1829</tt> <tt class="py-line"> <tt class="py-name">IV_out</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_compute_key</tt><tt class="py-op">(</tt><tt class="py-string">'A'</tt><tt class="py-op">,</tt> <tt class="py-name">block_size</tt><tt class="py-op">)</tt> </tt>
-<a name="L1830"></a><tt class="py-lineno">1830</tt> <tt class="py-line"> <tt class="py-name">key_out</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_compute_key</tt><tt class="py-op">(</tt><tt class="py-string">'C'</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-483" class="py-name"><a title="paramiko.Transport._cipher_info" class="py-name" href="#" onclick="return doclink('link-483', '_cipher_info', 'link-85');">_cipher_info</a></tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">local_cipher</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'key-size'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L1831"></a><tt class="py-lineno">1831</tt> <tt class="py-line"> <tt class="py-name">engine</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_get_cipher</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">local_cipher</tt><tt class="py-op">,</tt> <tt class="py-name">key_out</tt><tt class="py-op">,</tt> <tt class="py-name">IV_out</tt><tt class="py-op">)</tt> </tt>
-<a name="L1832"></a><tt class="py-lineno">1832</tt> <tt class="py-line"> <tt class="py-name">mac_size</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-484" class="py-name"><a title="paramiko.Transport._mac_info" class="py-name" href="#" onclick="return doclink('link-484', '_mac_info', 'link-86');">_mac_info</a></tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">local_mac</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'size'</tt><tt class="py-op">]</tt> </tt>
-<a name="L1833"></a><tt class="py-lineno">1833</tt> <tt class="py-line"> <tt class="py-name">mac_engine</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-485" class="py-name"><a title="paramiko.Transport._mac_info" class="py-name" href="#" onclick="return doclink('link-485', '_mac_info', 'link-86');">_mac_info</a></tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">local_mac</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'class'</tt><tt class="py-op">]</tt> </tt>
-<a name="L1834"></a><tt class="py-lineno">1834</tt> <tt class="py-line"> <tt class="py-comment"># initial mac keys are done in the hash's natural size (not the potentially truncated</tt> </tt>
-<a name="L1835"></a><tt class="py-lineno">1835</tt> <tt class="py-line"> <tt class="py-comment"># transmission size)</tt> </tt>
-<a name="L1836"></a><tt class="py-lineno">1836</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_mode</tt><tt class="py-op">:</tt> </tt>
-<a name="L1837"></a><tt class="py-lineno">1837</tt> <tt class="py-line"> <tt class="py-name">mac_key</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_compute_key</tt><tt class="py-op">(</tt><tt class="py-string">'F'</tt><tt class="py-op">,</tt> <tt class="py-name">mac_engine</tt><tt class="py-op">.</tt><tt class="py-name">digest_size</tt><tt class="py-op">)</tt> </tt>
-<a name="L1838"></a><tt class="py-lineno">1838</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1839"></a><tt class="py-lineno">1839</tt> <tt class="py-line"> <tt class="py-name">mac_key</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_compute_key</tt><tt class="py-op">(</tt><tt class="py-string">'E'</tt><tt class="py-op">,</tt> <tt class="py-name">mac_engine</tt><tt class="py-op">.</tt><tt class="py-name">digest_size</tt><tt class="py-op">)</tt> </tt>
-<a name="L1840"></a><tt class="py-lineno">1840</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">packetizer</tt><tt class="py-op">.</tt><tt class="py-name">set_outbound_cipher</tt><tt class="py-op">(</tt><tt class="py-name">engine</tt><tt class="py-op">,</tt> <tt class="py-name">block_size</tt><tt class="py-op">,</tt> <tt class="py-name">mac_engine</tt><tt class="py-op">,</tt> <tt class="py-name">mac_size</tt><tt class="py-op">,</tt> <tt class="py-name">mac_key</tt><tt class="py-op">)</tt> </tt>
-<a name="L1841"></a><tt class="py-lineno">1841</tt> <tt class="py-line"> <tt class="py-name">compress_out</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-486" class="py-name"><a title="paramiko.Transport._compression_info" class="py-name" href="#" onclick="return doclink('link-486', '_compression_info', 'link-93');">_compression_info</a></tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">local_compression</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L1842"></a><tt class="py-lineno">1842</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">compress_out</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">local_compression</tt> <tt class="py-op">!=</tt> <tt class="py-string">'zlib@openssh.com'</tt><tt class="py-op">)</tt> <tt class="py-keyword">or</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">authenticated</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1843"></a><tt class="py-lineno">1843</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-487" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-487', 'DEBUG', 'link-192');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Switching on outbound compression ...'</tt><tt class="py-op">)</tt> </tt>
-<a name="L1844"></a><tt class="py-lineno">1844</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">packetizer</tt><tt class="py-op">.</tt><tt class="py-name">set_outbound_compressor</tt><tt class="py-op">(</tt><tt class="py-name">compress_out</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1845"></a><tt class="py-lineno">1845</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">packetizer</tt><tt class="py-op">.</tt><tt class="py-name">need_rekey</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1846"></a><tt class="py-lineno">1846</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_kex</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1847"></a><tt class="py-lineno">1847</tt> <tt class="py-line"> <tt class="py-comment"># we always expect to receive NEWKEYS now</tt> </tt>
-<a name="L1848"></a><tt class="py-lineno">1848</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_expect_packet</tt><tt class="py-op">(</tt><tt id="link-488" class="py-name"><a title="paramiko.auth_handler.MSG_NEWKEYS
-paramiko.channel.MSG_NEWKEYS
-paramiko.client.MSG_NEWKEYS
-paramiko.common.MSG_NEWKEYS
-paramiko.dsskey.MSG_NEWKEYS
-paramiko.hostkeys.MSG_NEWKEYS
-paramiko.kex_gex.MSG_NEWKEYS
-paramiko.kex_group1.MSG_NEWKEYS
-paramiko.packet.MSG_NEWKEYS
-paramiko.pkey.MSG_NEWKEYS
-paramiko.rsakey.MSG_NEWKEYS
-paramiko.server.MSG_NEWKEYS
-paramiko.sftp.MSG_NEWKEYS
-paramiko.sftp_attr.MSG_NEWKEYS
-paramiko.sftp_client.MSG_NEWKEYS
-paramiko.sftp_file.MSG_NEWKEYS
-paramiko.sftp_handle.MSG_NEWKEYS
-paramiko.sftp_server.MSG_NEWKEYS
-paramiko.sftp_si.MSG_NEWKEYS
-paramiko.transport.MSG_NEWKEYS
-paramiko.util.MSG_NEWKEYS" class="py-name" href="#" onclick="return doclink('link-488', 'MSG_NEWKEYS', 'link-480');">MSG_NEWKEYS</a></tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1849"></a><tt class="py-lineno">1849</tt> <tt class="py-line"> </tt>
-<a name="Transport._auth_trigger"></a><div id="Transport._auth_trigger-def"><a name="L1850"></a><tt class="py-lineno">1850</tt> <a class="py-toggle" href="#" id="Transport._auth_trigger-toggle" onclick="return toggle('Transport._auth_trigger');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#_auth_trigger">_auth_trigger</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport._auth_trigger-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport._auth_trigger-expanded"><a name="L1851"></a><tt class="py-lineno">1851</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">authenticated</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1852"></a><tt class="py-lineno">1852</tt> <tt class="py-line"> <tt class="py-comment"># delayed initiation of compression</tt> </tt>
-<a name="L1853"></a><tt class="py-lineno">1853</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">local_compression</tt> <tt class="py-op">==</tt> <tt class="py-string">'zlib@openssh.com'</tt><tt class="py-op">:</tt> </tt>
-<a name="L1854"></a><tt class="py-lineno">1854</tt> <tt class="py-line"> <tt class="py-name">compress_out</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-489" class="py-name"><a title="paramiko.Transport._compression_info" class="py-name" href="#" onclick="return doclink('link-489', '_compression_info', 'link-93');">_compression_info</a></tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">local_compression</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L1855"></a><tt class="py-lineno">1855</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-490" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-490', 'DEBUG', 'link-192');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Switching on outbound compression ...'</tt><tt class="py-op">)</tt> </tt>
-<a name="L1856"></a><tt class="py-lineno">1856</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">packetizer</tt><tt class="py-op">.</tt><tt class="py-name">set_outbound_compressor</tt><tt class="py-op">(</tt><tt class="py-name">compress_out</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1857"></a><tt class="py-lineno">1857</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_compression</tt> <tt class="py-op">==</tt> <tt class="py-string">'zlib@openssh.com'</tt><tt class="py-op">:</tt> </tt>
-<a name="L1858"></a><tt class="py-lineno">1858</tt> <tt class="py-line"> <tt class="py-name">compress_in</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-491" class="py-name"><a title="paramiko.Transport._compression_info" class="py-name" href="#" onclick="return doclink('link-491', '_compression_info', 'link-93');">_compression_info</a></tt><tt class="py-op">[</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_compression</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> </tt>
-<a name="L1859"></a><tt class="py-lineno">1859</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-492" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-492', 'DEBUG', 'link-192');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Switching on inbound compression ...'</tt><tt class="py-op">)</tt> </tt>
-<a name="L1860"></a><tt class="py-lineno">1860</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">packetizer</tt><tt class="py-op">.</tt><tt class="py-name">set_inbound_compressor</tt><tt class="py-op">(</tt><tt class="py-name">compress_in</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1861"></a><tt class="py-lineno">1861</tt> <tt class="py-line"> </tt>
-<a name="Transport._parse_newkeys"></a><div id="Transport._parse_newkeys-def"><a name="L1862"></a><tt class="py-lineno">1862</tt> <a class="py-toggle" href="#" id="Transport._parse_newkeys-toggle" onclick="return toggle('Transport._parse_newkeys');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#_parse_newkeys">_parse_newkeys</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport._parse_newkeys-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport._parse_newkeys-expanded"><a name="L1863"></a><tt class="py-lineno">1863</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-493" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-493', 'DEBUG', 'link-192');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Switch to new keys ...'</tt><tt class="py-op">)</tt> </tt>
-<a name="L1864"></a><tt class="py-lineno">1864</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_activate_inbound</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1865"></a><tt class="py-lineno">1865</tt> <tt class="py-line"> <tt class="py-comment"># can also free a bunch of stuff here</tt> </tt>
-<a name="L1866"></a><tt class="py-lineno">1866</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">local_kex_init</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">remote_kex_init</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1867"></a><tt class="py-lineno">1867</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">K</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1868"></a><tt class="py-lineno">1868</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">kex_engine</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1869"></a><tt class="py-lineno">1869</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_mode</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-494" class="py-name"><a title="paramiko.auth_handler" class="py-name" href="#" onclick="return doclink('link-494', 'auth_handler', 'link-3');">auth_handler</a></tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1870"></a><tt class="py-lineno">1870</tt> <tt class="py-line"> <tt class="py-comment"># create auth handler for server mode</tt> </tt>
-<a name="L1871"></a><tt class="py-lineno">1871</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-495" class="py-name"><a title="paramiko.auth_handler" class="py-name" href="#" onclick="return doclink('link-495', 'auth_handler', 'link-3');">auth_handler</a></tt> <tt class="py-op">=</tt> <tt class="py-name">AuthHandler</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt> </tt>
-<a name="L1872"></a><tt class="py-lineno">1872</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">initial_kex_done</tt><tt class="py-op">:</tt> </tt>
-<a name="L1873"></a><tt class="py-lineno">1873</tt> <tt class="py-line"> <tt class="py-comment"># this was the first key exchange</tt> </tt>
-<a name="L1874"></a><tt class="py-lineno">1874</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">initial_kex_done</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1875"></a><tt class="py-lineno">1875</tt> <tt class="py-line"> <tt class="py-comment"># send an event?</tt> </tt>
-<a name="L1876"></a><tt class="py-lineno">1876</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">completion_event</tt> <tt class="py-op">!=</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L1877"></a><tt class="py-lineno">1877</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">completion_event</tt><tt class="py-op">.</tt><tt id="link-496" class="py-name"><a title="paramiko.pipe.OrPipe.set
-paramiko.pipe.PosixPipe.set
-paramiko.pipe.WindowsPipe.set" class="py-name" href="#" onclick="return doclink('link-496', 'set', 'link-356');">set</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1878"></a><tt class="py-lineno">1878</tt> <tt class="py-line"> <tt class="py-comment"># it's now okay to send data again (if this was a re-key)</tt> </tt>
-<a name="L1879"></a><tt class="py-lineno">1879</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">packetizer</tt><tt class="py-op">.</tt><tt class="py-name">need_rekey</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1880"></a><tt class="py-lineno">1880</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">in_kex</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1881"></a><tt class="py-lineno">1881</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">clear_to_send_lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1882"></a><tt class="py-lineno">1882</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1883"></a><tt class="py-lineno">1883</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">clear_to_send</tt><tt class="py-op">.</tt><tt id="link-497" class="py-name"><a title="paramiko.pipe.OrPipe.set
-paramiko.pipe.PosixPipe.set
-paramiko.pipe.WindowsPipe.set" class="py-name" href="#" onclick="return doclink('link-497', 'set', 'link-356');">set</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1884"></a><tt class="py-lineno">1884</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L1885"></a><tt class="py-lineno">1885</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">clear_to_send_lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1886"></a><tt class="py-lineno">1886</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-</div><a name="L1887"></a><tt class="py-lineno">1887</tt> <tt class="py-line"> </tt>
-<a name="Transport._parse_disconnect"></a><div id="Transport._parse_disconnect-def"><a name="L1888"></a><tt class="py-lineno">1888</tt> <a class="py-toggle" href="#" id="Transport._parse_disconnect-toggle" onclick="return toggle('Transport._parse_disconnect');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#_parse_disconnect">_parse_disconnect</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport._parse_disconnect-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport._parse_disconnect-expanded"><a name="L1889"></a><tt class="py-lineno">1889</tt> <tt class="py-line"> <tt class="py-name">code</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-498" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-498', 'get_int', 'link-169');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1890"></a><tt class="py-lineno">1890</tt> <tt class="py-line"> <tt class="py-name">desc</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-499" class="py-name" targets="Method paramiko.Message.get_string()=paramiko.Message-class.html#get_string"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-499', 'get_string', 'link-499');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1891"></a><tt class="py-lineno">1891</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-500" class="py-name"><a title="paramiko.auth_handler.INFO
-paramiko.channel.INFO
-paramiko.client.INFO
-paramiko.common.INFO
-paramiko.dsskey.INFO
-paramiko.hostkeys.INFO
-paramiko.kex_gex.INFO
-paramiko.kex_group1.INFO
-paramiko.logging22.INFO
-paramiko.packet.INFO
-paramiko.pkey.INFO
-paramiko.rsakey.INFO
-paramiko.server.INFO
-paramiko.sftp.INFO
-paramiko.sftp_attr.INFO
-paramiko.sftp_client.INFO
-paramiko.sftp_file.INFO
-paramiko.sftp_handle.INFO
-paramiko.sftp_server.INFO
-paramiko.sftp_si.INFO
-paramiko.transport.INFO
-paramiko.util.INFO" class="py-name" href="#" onclick="return doclink('link-500', 'INFO', 'link-371');">INFO</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Disconnect (code %d): %s'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">code</tt><tt class="py-op">,</tt> <tt class="py-name">desc</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1892"></a><tt class="py-lineno">1892</tt> <tt class="py-line"> </tt>
-<a name="Transport._parse_global_request"></a><div id="Transport._parse_global_request-def"><a name="L1893"></a><tt class="py-lineno">1893</tt> <a class="py-toggle" href="#" id="Transport._parse_global_request-toggle" onclick="return toggle('Transport._parse_global_request');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#_parse_global_request">_parse_global_request</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport._parse_global_request-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport._parse_global_request-expanded"><a name="L1894"></a><tt class="py-lineno">1894</tt> <tt class="py-line"> <tt class="py-name">kind</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-501" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-501', 'get_string', 'link-499');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1895"></a><tt class="py-lineno">1895</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-502" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-502', 'DEBUG', 'link-192');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Received global request "%s"'</tt> <tt class="py-op">%</tt> <tt class="py-name">kind</tt><tt class="py-op">)</tt> </tt>
-<a name="L1896"></a><tt class="py-lineno">1896</tt> <tt class="py-line"> <tt class="py-name">want_reply</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-503" class="py-name"><a title="paramiko.Message.get_boolean" class="py-name" href="#" onclick="return doclink('link-503', 'get_boolean', 'link-421');">get_boolean</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1897"></a><tt class="py-lineno">1897</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_mode</tt><tt class="py-op">:</tt> </tt>
-<a name="L1898"></a><tt class="py-lineno">1898</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-504" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-504', 'DEBUG', 'link-192');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Rejecting "%s" global request from server.'</tt> <tt class="py-op">%</tt> <tt class="py-name">kind</tt><tt class="py-op">)</tt> </tt>
-<a name="L1899"></a><tt class="py-lineno">1899</tt> <tt class="py-line"> <tt class="py-name">ok</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1900"></a><tt class="py-lineno">1900</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">kind</tt> <tt class="py-op">==</tt> <tt class="py-string">'tcpip-forward'</tt><tt class="py-op">:</tt> </tt>
-<a name="L1901"></a><tt class="py-lineno">1901</tt> <tt class="py-line"> <tt class="py-name">address</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-505" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-505', 'get_string', 'link-499');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1902"></a><tt class="py-lineno">1902</tt> <tt class="py-line"> <tt class="py-name">port</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-506" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-506', 'get_int', 'link-169');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1903"></a><tt class="py-lineno">1903</tt> <tt class="py-line"> <tt class="py-name">ok</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_object</tt><tt class="py-op">.</tt><tt id="link-507" class="py-name" targets="Method paramiko.ServerInterface.check_port_forward_request()=paramiko.ServerInterface-class.html#check_port_forward_request"><a title="paramiko.ServerInterface.check_port_forward_request" class="py-name" href="#" onclick="return doclink('link-507', 'check_port_forward_request', 'link-507');">check_port_forward_request</a></tt><tt class="py-op">(</tt><tt class="py-name">address</tt><tt class="py-op">,</tt> <tt class="py-name">port</tt><tt class="py-op">)</tt> </tt>
-<a name="L1904"></a><tt class="py-lineno">1904</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ok</tt> <tt class="py-op">!=</tt> <tt class="py-name">False</tt><tt class="py-op">:</tt> </tt>
-<a name="L1905"></a><tt class="py-lineno">1905</tt> <tt class="py-line"> <tt class="py-name">ok</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">ok</tt><tt class="py-op">,</tt><tt class="py-op">)</tt> </tt>
-<a name="L1906"></a><tt class="py-lineno">1906</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">kind</tt> <tt class="py-op">==</tt> <tt class="py-string">'cancel-tcpip-forward'</tt><tt class="py-op">:</tt> </tt>
-<a name="L1907"></a><tt class="py-lineno">1907</tt> <tt class="py-line"> <tt class="py-name">address</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-508" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-508', 'get_string', 'link-499');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1908"></a><tt class="py-lineno">1908</tt> <tt class="py-line"> <tt class="py-name">port</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-509" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-509', 'get_int', 'link-169');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1909"></a><tt class="py-lineno">1909</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_object</tt><tt class="py-op">.</tt><tt id="link-510" class="py-name" targets="Method paramiko.ServerInterface.cancel_port_forward_request()=paramiko.ServerInterface-class.html#cancel_port_forward_request"><a title="paramiko.ServerInterface.cancel_port_forward_request" class="py-name" href="#" onclick="return doclink('link-510', 'cancel_port_forward_request', 'link-510');">cancel_port_forward_request</a></tt><tt class="py-op">(</tt><tt class="py-name">address</tt><tt class="py-op">,</tt> <tt class="py-name">port</tt><tt class="py-op">)</tt> </tt>
-<a name="L1910"></a><tt class="py-lineno">1910</tt> <tt class="py-line"> <tt class="py-name">ok</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1911"></a><tt class="py-lineno">1911</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1912"></a><tt class="py-lineno">1912</tt> <tt class="py-line"> <tt class="py-name">ok</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_object</tt><tt class="py-op">.</tt><tt id="link-511" class="py-name" targets="Method paramiko.ServerInterface.check_global_request()=paramiko.ServerInterface-class.html#check_global_request"><a title="paramiko.ServerInterface.check_global_request" class="py-name" href="#" onclick="return doclink('link-511', 'check_global_request', 'link-511');">check_global_request</a></tt><tt class="py-op">(</tt><tt class="py-name">kind</tt><tt class="py-op">,</tt> <tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L1913"></a><tt class="py-lineno">1913</tt> <tt class="py-line"> <tt class="py-name">extra</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1914"></a><tt class="py-lineno">1914</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">type</tt><tt class="py-op">(</tt><tt class="py-name">ok</tt><tt class="py-op">)</tt> <tt class="py-keyword">is</tt> <tt class="py-name">tuple</tt><tt class="py-op">:</tt> </tt>
-<a name="L1915"></a><tt class="py-lineno">1915</tt> <tt class="py-line"> <tt class="py-name">extra</tt> <tt class="py-op">=</tt> <tt class="py-name">ok</tt> </tt>
-<a name="L1916"></a><tt class="py-lineno">1916</tt> <tt class="py-line"> <tt class="py-name">ok</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L1917"></a><tt class="py-lineno">1917</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">want_reply</tt><tt class="py-op">:</tt> </tt>
-<a name="L1918"></a><tt class="py-lineno">1918</tt> <tt class="py-line"> <tt class="py-name">msg</tt> <tt class="py-op">=</tt> <tt id="link-512" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-512', 'Message', 'link-24');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1919"></a><tt class="py-lineno">1919</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">ok</tt><tt class="py-op">:</tt> </tt>
-<a name="L1920"></a><tt class="py-lineno">1920</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-513" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-513', 'add_byte', 'link-147');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-514" class="py-name" targets="Variable paramiko.auth_handler.MSG_REQUEST_SUCCESS=paramiko.auth_handler-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.channel.MSG_REQUEST_SUCCESS=paramiko.channel-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.client.MSG_REQUEST_SUCCESS=paramiko.client-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.common.MSG_REQUEST_SUCCESS=paramiko.common-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.dsskey.MSG_REQUEST_SUCCESS=paramiko.dsskey-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.hostkeys.MSG_REQUEST_SUCCESS=paramiko.hostkeys-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.kex_gex.MSG_REQUEST_SUCCESS=paramiko.kex_gex-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.kex_group1.MSG_REQUEST_SUCCESS=paramiko.kex_group1-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.packet.MSG_REQUEST_SUCCESS=paramiko.packet-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.pkey.MSG_REQUEST_SUCCESS=paramiko.pkey-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.rsakey.MSG_REQUEST_SUCCESS=paramiko.rsakey-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.server.MSG_REQUEST_SUCCESS=paramiko.server-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.sftp.MSG_REQUEST_SUCCESS=paramiko.sftp-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.sftp_attr.MSG_REQUEST_SUCCESS=paramiko.sftp_attr-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.sftp_client.MSG_REQUEST_SUCCESS=paramiko.sftp_client-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.sftp_file.MSG_REQUEST_SUCCESS=paramiko.sftp_file-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.sftp_handle.MSG_REQUEST_SUCCESS=paramiko.sftp_handle-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.sftp_server.MSG_REQUEST_SUCCESS=paramiko.sftp_server-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.sftp_si.MSG_REQUEST_SUCCESS=paramiko.sftp_si-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.transport.MSG_REQUEST_SUCCESS=paramiko.transport-module.html#MSG_REQUEST_SUCCESS,Variable paramiko.util.MSG_REQUEST_SUCCESS=paramiko.util-module.html#MSG_REQUEST_SUCCESS"><a title="paramiko.auth_handler.MSG_REQUEST_SUCCESS
-paramiko.channel.MSG_REQUEST_SUCCESS
-paramiko.client.MSG_REQUEST_SUCCESS
-paramiko.common.MSG_REQUEST_SUCCESS
-paramiko.dsskey.MSG_REQUEST_SUCCESS
-paramiko.hostkeys.MSG_REQUEST_SUCCESS
-paramiko.kex_gex.MSG_REQUEST_SUCCESS
-paramiko.kex_group1.MSG_REQUEST_SUCCESS
-paramiko.packet.MSG_REQUEST_SUCCESS
-paramiko.pkey.MSG_REQUEST_SUCCESS
-paramiko.rsakey.MSG_REQUEST_SUCCESS
-paramiko.server.MSG_REQUEST_SUCCESS
-paramiko.sftp.MSG_REQUEST_SUCCESS
-paramiko.sftp_attr.MSG_REQUEST_SUCCESS
-paramiko.sftp_client.MSG_REQUEST_SUCCESS
-paramiko.sftp_file.MSG_REQUEST_SUCCESS
-paramiko.sftp_handle.MSG_REQUEST_SUCCESS
-paramiko.sftp_server.MSG_REQUEST_SUCCESS
-paramiko.sftp_si.MSG_REQUEST_SUCCESS
-paramiko.transport.MSG_REQUEST_SUCCESS
-paramiko.util.MSG_REQUEST_SUCCESS" class="py-name" href="#" onclick="return doclink('link-514', 'MSG_REQUEST_SUCCESS', 'link-514');">MSG_REQUEST_SUCCESS</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1921"></a><tt class="py-lineno">1921</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-515" class="py-name"><a title="paramiko.HostKeys.add
-paramiko.Message.add" class="py-name" href="#" onclick="return doclink('link-515', 'add', 'link-191');">add</a></tt><tt class="py-op">(</tt><tt class="py-op">*</tt><tt class="py-name">extra</tt><tt class="py-op">)</tt> </tt>
-<a name="L1922"></a><tt class="py-lineno">1922</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L1923"></a><tt class="py-lineno">1923</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-516" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-516', 'add_byte', 'link-147');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-517" class="py-name" targets="Variable paramiko.auth_handler.MSG_REQUEST_FAILURE=paramiko.auth_handler-module.html#MSG_REQUEST_FAILURE,Variable paramiko.channel.MSG_REQUEST_FAILURE=paramiko.channel-module.html#MSG_REQUEST_FAILURE,Variable paramiko.client.MSG_REQUEST_FAILURE=paramiko.client-module.html#MSG_REQUEST_FAILURE,Variable paramiko.common.MSG_REQUEST_FAILURE=paramiko.common-module.html#MSG_REQUEST_FAILURE,Variable paramiko.dsskey.MSG_REQUEST_FAILURE=paramiko.dsskey-module.html#MSG_REQUEST_FAILURE,Variable paramiko.hostkeys.MSG_REQUEST_FAILURE=paramiko.hostkeys-module.html#MSG_REQUEST_FAILURE,Variable paramiko.kex_gex.MSG_REQUEST_FAILURE=paramiko.kex_gex-module.html#MSG_REQUEST_FAILURE,Variable paramiko.kex_group1.MSG_REQUEST_FAILURE=paramiko.kex_group1-module.html#MSG_REQUEST_FAILURE,Variable paramiko.packet.MSG_REQUEST_FAILURE=paramiko.packet-module.html#MSG_REQUEST_FAILURE,Variable paramiko.pkey.MSG_REQUEST_FAILURE=paramiko.pkey-module.html#MSG_REQUEST_FAILURE,Variable paramiko.rsakey.MSG_REQUEST_FAILURE=paramiko.rsakey-module.html#MSG_REQUEST_FAILURE,Variable paramiko.server.MSG_REQUEST_FAILURE=paramiko.server-module.html#MSG_REQUEST_FAILURE,Variable paramiko.sftp.MSG_REQUEST_FAILURE=paramiko.sftp-module.html#MSG_REQUEST_FAILURE,Variable paramiko.sftp_attr.MSG_REQUEST_FAILURE=paramiko.sftp_attr-module.html#MSG_REQUEST_FAILURE,Variable paramiko.sftp_client.MSG_REQUEST_FAILURE=paramiko.sftp_client-module.html#MSG_REQUEST_FAILURE,Variable paramiko.sftp_file.MSG_REQUEST_FAILURE=paramiko.sftp_file-module.html#MSG_REQUEST_FAILURE,Variable paramiko.sftp_handle.MSG_REQUEST_FAILURE=paramiko.sftp_handle-module.html#MSG_REQUEST_FAILURE,Variable paramiko.sftp_server.MSG_REQUEST_FAILURE=paramiko.sftp_server-module.html#MSG_REQUEST_FAILURE,Variable paramiko.sftp_si.MSG_REQUEST_FAILURE=paramiko.sftp_si-module.html#MSG_REQUEST_FAILURE,Variable paramiko.transport.MSG_REQUEST_FAILURE=paramiko.transport-module.html#MSG_REQUEST_FAILURE,Variable paramiko.util.MSG_REQUEST_FAILURE=paramiko.util-module.html#MSG_REQUEST_FAILURE"><a title="paramiko.auth_handler.MSG_REQUEST_FAILURE
-paramiko.channel.MSG_REQUEST_FAILURE
-paramiko.client.MSG_REQUEST_FAILURE
-paramiko.common.MSG_REQUEST_FAILURE
-paramiko.dsskey.MSG_REQUEST_FAILURE
-paramiko.hostkeys.MSG_REQUEST_FAILURE
-paramiko.kex_gex.MSG_REQUEST_FAILURE
-paramiko.kex_group1.MSG_REQUEST_FAILURE
-paramiko.packet.MSG_REQUEST_FAILURE
-paramiko.pkey.MSG_REQUEST_FAILURE
-paramiko.rsakey.MSG_REQUEST_FAILURE
-paramiko.server.MSG_REQUEST_FAILURE
-paramiko.sftp.MSG_REQUEST_FAILURE
-paramiko.sftp_attr.MSG_REQUEST_FAILURE
-paramiko.sftp_client.MSG_REQUEST_FAILURE
-paramiko.sftp_file.MSG_REQUEST_FAILURE
-paramiko.sftp_handle.MSG_REQUEST_FAILURE
-paramiko.sftp_server.MSG_REQUEST_FAILURE
-paramiko.sftp_si.MSG_REQUEST_FAILURE
-paramiko.transport.MSG_REQUEST_FAILURE
-paramiko.util.MSG_REQUEST_FAILURE" class="py-name" href="#" onclick="return doclink('link-517', 'MSG_REQUEST_FAILURE', 'link-517');">MSG_REQUEST_FAILURE</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1924"></a><tt class="py-lineno">1924</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_message</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1925"></a><tt class="py-lineno">1925</tt> <tt class="py-line"> </tt>
-<a name="Transport._parse_request_success"></a><div id="Transport._parse_request_success-def"><a name="L1926"></a><tt class="py-lineno">1926</tt> <a class="py-toggle" href="#" id="Transport._parse_request_success-toggle" onclick="return toggle('Transport._parse_request_success');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#_parse_request_success">_parse_request_success</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport._parse_request_success-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport._parse_request_success-expanded"><a name="L1927"></a><tt class="py-lineno">1927</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-518" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-518', 'DEBUG', 'link-192');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Global request successful.'</tt><tt class="py-op">)</tt> </tt>
-<a name="L1928"></a><tt class="py-lineno">1928</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">global_response</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt> </tt>
-<a name="L1929"></a><tt class="py-lineno">1929</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">completion_event</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L1930"></a><tt class="py-lineno">1930</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">completion_event</tt><tt class="py-op">.</tt><tt id="link-519" class="py-name"><a title="paramiko.pipe.OrPipe.set
-paramiko.pipe.PosixPipe.set
-paramiko.pipe.WindowsPipe.set" class="py-name" href="#" onclick="return doclink('link-519', 'set', 'link-356');">set</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1931"></a><tt class="py-lineno">1931</tt> <tt class="py-line"> </tt>
-<a name="Transport._parse_request_failure"></a><div id="Transport._parse_request_failure-def"><a name="L1932"></a><tt class="py-lineno">1932</tt> <a class="py-toggle" href="#" id="Transport._parse_request_failure-toggle" onclick="return toggle('Transport._parse_request_failure');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#_parse_request_failure">_parse_request_failure</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport._parse_request_failure-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport._parse_request_failure-expanded"><a name="L1933"></a><tt class="py-lineno">1933</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-520" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-520', 'DEBUG', 'link-192');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Global request denied.'</tt><tt class="py-op">)</tt> </tt>
-<a name="L1934"></a><tt class="py-lineno">1934</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">global_response</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L1935"></a><tt class="py-lineno">1935</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">completion_event</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L1936"></a><tt class="py-lineno">1936</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">completion_event</tt><tt class="py-op">.</tt><tt id="link-521" class="py-name"><a title="paramiko.pipe.OrPipe.set
-paramiko.pipe.PosixPipe.set
-paramiko.pipe.WindowsPipe.set" class="py-name" href="#" onclick="return doclink('link-521', 'set', 'link-356');">set</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L1937"></a><tt class="py-lineno">1937</tt> <tt class="py-line"> </tt>
-<a name="Transport._parse_channel_open_success"></a><div id="Transport._parse_channel_open_success-def"><a name="L1938"></a><tt class="py-lineno">1938</tt> <a class="py-toggle" href="#" id="Transport._parse_channel_open_success-toggle" onclick="return toggle('Transport._parse_channel_open_success');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#_parse_channel_open_success">_parse_channel_open_success</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport._parse_channel_open_success-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport._parse_channel_open_success-expanded"><a name="L1939"></a><tt class="py-lineno">1939</tt> <tt class="py-line"> <tt class="py-name">chanid</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-522" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-522', 'get_int', 'link-169');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1940"></a><tt class="py-lineno">1940</tt> <tt class="py-line"> <tt class="py-name">server_chanid</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-523" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-523', 'get_int', 'link-169');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1941"></a><tt class="py-lineno">1941</tt> <tt class="py-line"> <tt class="py-name">server_window_size</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-524" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-524', 'get_int', 'link-169');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1942"></a><tt class="py-lineno">1942</tt> <tt class="py-line"> <tt class="py-name">server_max_packet_size</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-525" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-525', 'get_int', 'link-169');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1943"></a><tt class="py-lineno">1943</tt> <tt class="py-line"> <tt class="py-name">chan</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_channels</tt><tt class="py-op">.</tt><tt id="link-526" class="py-name"><a title="paramiko.SFTPClient.get
-paramiko.transport.ChannelMap.get" class="py-name" href="#" onclick="return doclink('link-526', 'get', 'link-76');">get</a></tt><tt class="py-op">(</tt><tt class="py-name">chanid</tt><tt class="py-op">)</tt> </tt>
-<a name="L1944"></a><tt class="py-lineno">1944</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">chan</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L1945"></a><tt class="py-lineno">1945</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-527" class="py-name"><a title="paramiko.auth_handler.WARNING
-paramiko.channel.WARNING
-paramiko.client.WARNING
-paramiko.common.WARNING
-paramiko.dsskey.WARNING
-paramiko.hostkeys.WARNING
-paramiko.kex_gex.WARNING
-paramiko.kex_group1.WARNING
-paramiko.logging22.WARNING
-paramiko.packet.WARNING
-paramiko.pkey.WARNING
-paramiko.rsakey.WARNING
-paramiko.server.WARNING
-paramiko.sftp.WARNING
-paramiko.sftp_attr.WARNING
-paramiko.sftp_client.WARNING
-paramiko.sftp_file.WARNING
-paramiko.sftp_handle.WARNING
-paramiko.sftp_server.WARNING
-paramiko.sftp_si.WARNING
-paramiko.transport.WARNING
-paramiko.util.WARNING" class="py-name" href="#" onclick="return doclink('link-527', 'WARNING', 'link-336');">WARNING</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Success for unrequested channel! [??]'</tt><tt class="py-op">)</tt> </tt>
-<a name="L1946"></a><tt class="py-lineno">1946</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L1947"></a><tt class="py-lineno">1947</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1948"></a><tt class="py-lineno">1948</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1949"></a><tt class="py-lineno">1949</tt> <tt class="py-line"> <tt class="py-name">chan</tt><tt class="py-op">.</tt><tt class="py-name">_set_remote_channel</tt><tt class="py-op">(</tt><tt class="py-name">server_chanid</tt><tt class="py-op">,</tt> <tt class="py-name">server_window_size</tt><tt class="py-op">,</tt> <tt class="py-name">server_max_packet_size</tt><tt class="py-op">)</tt> </tt>
-<a name="L1950"></a><tt class="py-lineno">1950</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-528" class="py-name"><a title="paramiko.auth_handler.INFO
-paramiko.channel.INFO
-paramiko.client.INFO
-paramiko.common.INFO
-paramiko.dsskey.INFO
-paramiko.hostkeys.INFO
-paramiko.kex_gex.INFO
-paramiko.kex_group1.INFO
-paramiko.logging22.INFO
-paramiko.packet.INFO
-paramiko.pkey.INFO
-paramiko.rsakey.INFO
-paramiko.server.INFO
-paramiko.sftp.INFO
-paramiko.sftp_attr.INFO
-paramiko.sftp_client.INFO
-paramiko.sftp_file.INFO
-paramiko.sftp_handle.INFO
-paramiko.sftp_server.INFO
-paramiko.sftp_si.INFO
-paramiko.transport.INFO
-paramiko.util.INFO" class="py-name" href="#" onclick="return doclink('link-528', 'INFO', 'link-371');">INFO</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Secsh channel %d opened.'</tt> <tt class="py-op">%</tt> <tt class="py-name">chanid</tt><tt class="py-op">)</tt> </tt>
-<a name="L1951"></a><tt class="py-lineno">1951</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">chanid</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">channel_events</tt><tt class="py-op">:</tt> </tt>
-<a name="L1952"></a><tt class="py-lineno">1952</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">channel_events</tt><tt class="py-op">[</tt><tt class="py-name">chanid</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-529" class="py-name"><a title="paramiko.pipe.OrPipe.set
-paramiko.pipe.PosixPipe.set
-paramiko.pipe.WindowsPipe.set" class="py-name" href="#" onclick="return doclink('link-529', 'set', 'link-356');">set</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1953"></a><tt class="py-lineno">1953</tt> <tt class="py-line"> <tt class="py-keyword">del</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">channel_events</tt><tt class="py-op">[</tt><tt class="py-name">chanid</tt><tt class="py-op">]</tt> </tt>
-<a name="L1954"></a><tt class="py-lineno">1954</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L1955"></a><tt class="py-lineno">1955</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1956"></a><tt class="py-lineno">1956</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-</div><a name="L1957"></a><tt class="py-lineno">1957</tt> <tt class="py-line"> </tt>
-<a name="Transport._parse_channel_open_failure"></a><div id="Transport._parse_channel_open_failure-def"><a name="L1958"></a><tt class="py-lineno">1958</tt> <a class="py-toggle" href="#" id="Transport._parse_channel_open_failure-toggle" onclick="return toggle('Transport._parse_channel_open_failure');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#_parse_channel_open_failure">_parse_channel_open_failure</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport._parse_channel_open_failure-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport._parse_channel_open_failure-expanded"><a name="L1959"></a><tt class="py-lineno">1959</tt> <tt class="py-line"> <tt class="py-name">chanid</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-530" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-530', 'get_int', 'link-169');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1960"></a><tt class="py-lineno">1960</tt> <tt class="py-line"> <tt class="py-name">reason</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-531" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-531', 'get_int', 'link-169');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1961"></a><tt class="py-lineno">1961</tt> <tt class="py-line"> <tt class="py-name">reason_str</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-532" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-532', 'get_string', 'link-499');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1962"></a><tt class="py-lineno">1962</tt> <tt class="py-line"> <tt class="py-name">lang</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-533" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-533', 'get_string', 'link-499');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1963"></a><tt class="py-lineno">1963</tt> <tt class="py-line"> <tt class="py-name">reason_text</tt> <tt class="py-op">=</tt> <tt id="link-534" class="py-name" targets="Variable paramiko.auth_handler.CONNECTION_FAILED_CODE=paramiko.auth_handler-module.html#CONNECTION_FAILED_CODE,Variable paramiko.channel.CONNECTION_FAILED_CODE=paramiko.channel-module.html#CONNECTION_FAILED_CODE,Variable paramiko.client.CONNECTION_FAILED_CODE=paramiko.client-module.html#CONNECTION_FAILED_CODE,Variable paramiko.common.CONNECTION_FAILED_CODE=paramiko.common-module.html#CONNECTION_FAILED_CODE,Variable paramiko.dsskey.CONNECTION_FAILED_CODE=paramiko.dsskey-module.html#CONNECTION_FAILED_CODE,Variable paramiko.hostkeys.CONNECTION_FAILED_CODE=paramiko.hostkeys-module.html#CONNECTION_FAILED_CODE,Variable paramiko.kex_gex.CONNECTION_FAILED_CODE=paramiko.kex_gex-module.html#CONNECTION_FAILED_CODE,Variable paramiko.kex_group1.CONNECTION_FAILED_CODE=paramiko.kex_group1-module.html#CONNECTION_FAILED_CODE,Variable paramiko.packet.CONNECTION_FAILED_CODE=paramiko.packet-module.html#CONNECTION_FAILED_CODE,Variable paramiko.pkey.CONNECTION_FAILED_CODE=paramiko.pkey-module.html#CONNECTION_FAILED_CODE,Variable paramiko.rsakey.CONNECTION_FAILED_CODE=paramiko.rsakey-module.html#CONNECTION_FAILED_CODE,Variable paramiko.server.CONNECTION_FAILED_CODE=paramiko.server-module.html#CONNECTION_FAILED_CODE,Variable paramiko.sftp.CONNECTION_FAILED_CODE=paramiko.sftp-module.html#CONNECTION_FAILED_CODE,Variable paramiko.sftp_attr.CONNECTION_FAILED_CODE=paramiko.sftp_attr-module.html#CONNECTION_FAILED_CODE,Variable paramiko.sftp_client.CONNECTION_FAILED_CODE=paramiko.sftp_client-module.html#CONNECTION_FAILED_CODE,Variable paramiko.sftp_file.CONNECTION_FAILED_CODE=paramiko.sftp_file-module.html#CONNECTION_FAILED_CODE,Variable paramiko.sftp_handle.CONNECTION_FAILED_CODE=paramiko.sftp_handle-module.html#CONNECTION_FAILED_CODE,Variable paramiko.sftp_server.CONNECTION_FAILED_CODE=paramiko.sftp_server-module.html#CONNECTION_FAILED_CODE,Variable paramiko.sftp_si.CONNECTION_FAILED_CODE=paramiko.sftp_si-module.html#CONNECTION_FAILED_CODE,Variable paramiko.transport.CONNECTION_FAILED_CODE=paramiko.transport-module.html#CONNECTION_FAILED_CODE,Variable paramiko.util.CONNECTION_FAILED_CODE=paramiko.util-module.html#CONNECTION_FAILED_CODE"><a title="paramiko.auth_handler.CONNECTION_FAILED_CODE
-paramiko.channel.CONNECTION_FAILED_CODE
-paramiko.client.CONNECTION_FAILED_CODE
-paramiko.common.CONNECTION_FAILED_CODE
-paramiko.dsskey.CONNECTION_FAILED_CODE
-paramiko.hostkeys.CONNECTION_FAILED_CODE
-paramiko.kex_gex.CONNECTION_FAILED_CODE
-paramiko.kex_group1.CONNECTION_FAILED_CODE
-paramiko.packet.CONNECTION_FAILED_CODE
-paramiko.pkey.CONNECTION_FAILED_CODE
-paramiko.rsakey.CONNECTION_FAILED_CODE
-paramiko.server.CONNECTION_FAILED_CODE
-paramiko.sftp.CONNECTION_FAILED_CODE
-paramiko.sftp_attr.CONNECTION_FAILED_CODE
-paramiko.sftp_client.CONNECTION_FAILED_CODE
-paramiko.sftp_file.CONNECTION_FAILED_CODE
-paramiko.sftp_handle.CONNECTION_FAILED_CODE
-paramiko.sftp_server.CONNECTION_FAILED_CODE
-paramiko.sftp_si.CONNECTION_FAILED_CODE
-paramiko.transport.CONNECTION_FAILED_CODE
-paramiko.util.CONNECTION_FAILED_CODE" class="py-name" href="#" onclick="return doclink('link-534', 'CONNECTION_FAILED_CODE', 'link-534');">CONNECTION_FAILED_CODE</a></tt><tt class="py-op">.</tt><tt id="link-535" class="py-name"><a title="paramiko.SFTPClient.get
-paramiko.transport.ChannelMap.get" class="py-name" href="#" onclick="return doclink('link-535', 'get', 'link-76');">get</a></tt><tt class="py-op">(</tt><tt class="py-name">reason</tt><tt class="py-op">,</tt> <tt class="py-string">'(unknown code)'</tt><tt class="py-op">)</tt> </tt>
-<a name="L1964"></a><tt class="py-lineno">1964</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-536" class="py-name"><a title="paramiko.auth_handler.INFO
-paramiko.channel.INFO
-paramiko.client.INFO
-paramiko.common.INFO
-paramiko.dsskey.INFO
-paramiko.hostkeys.INFO
-paramiko.kex_gex.INFO
-paramiko.kex_group1.INFO
-paramiko.logging22.INFO
-paramiko.packet.INFO
-paramiko.pkey.INFO
-paramiko.rsakey.INFO
-paramiko.server.INFO
-paramiko.sftp.INFO
-paramiko.sftp_attr.INFO
-paramiko.sftp_client.INFO
-paramiko.sftp_file.INFO
-paramiko.sftp_handle.INFO
-paramiko.sftp_server.INFO
-paramiko.sftp_si.INFO
-paramiko.transport.INFO
-paramiko.util.INFO" class="py-name" href="#" onclick="return doclink('link-536', 'INFO', 'link-371');">INFO</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Secsh channel %d open FAILED: %s: %s'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">chanid</tt><tt class="py-op">,</tt> <tt class="py-name">reason_str</tt><tt class="py-op">,</tt> <tt class="py-name">reason_text</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1965"></a><tt class="py-lineno">1965</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1966"></a><tt class="py-lineno">1966</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1967"></a><tt class="py-lineno">1967</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">saved_exception</tt> <tt class="py-op">=</tt> <tt id="link-537" class="py-name"><a title="paramiko.ChannelException" class="py-name" href="#" onclick="return doclink('link-537', 'ChannelException', 'link-44');">ChannelException</a></tt><tt class="py-op">(</tt><tt class="py-name">reason</tt><tt class="py-op">,</tt> <tt class="py-name">reason_text</tt><tt class="py-op">)</tt> </tt>
-<a name="L1968"></a><tt class="py-lineno">1968</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">chanid</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">channel_events</tt><tt class="py-op">:</tt> </tt>
-<a name="L1969"></a><tt class="py-lineno">1969</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_channels</tt><tt class="py-op">.</tt><tt id="link-538" class="py-name"><a title="paramiko.transport.ChannelMap.delete" class="py-name" href="#" onclick="return doclink('link-538', 'delete', 'link-263');">delete</a></tt><tt class="py-op">(</tt><tt class="py-name">chanid</tt><tt class="py-op">)</tt> </tt>
-<a name="L1970"></a><tt class="py-lineno">1970</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">chanid</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">channel_events</tt><tt class="py-op">:</tt> </tt>
-<a name="L1971"></a><tt class="py-lineno">1971</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">channel_events</tt><tt class="py-op">[</tt><tt class="py-name">chanid</tt><tt class="py-op">]</tt><tt class="py-op">.</tt><tt id="link-539" class="py-name"><a title="paramiko.pipe.OrPipe.set
-paramiko.pipe.PosixPipe.set
-paramiko.pipe.WindowsPipe.set" class="py-name" href="#" onclick="return doclink('link-539', 'set', 'link-356');">set</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1972"></a><tt class="py-lineno">1972</tt> <tt class="py-line"> <tt class="py-keyword">del</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">channel_events</tt><tt class="py-op">[</tt><tt class="py-name">chanid</tt><tt class="py-op">]</tt> </tt>
-<a name="L1973"></a><tt class="py-lineno">1973</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L1974"></a><tt class="py-lineno">1974</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1975"></a><tt class="py-lineno">1975</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-</div><a name="L1976"></a><tt class="py-lineno">1976</tt> <tt class="py-line"> </tt>
-<a name="Transport._parse_channel_open"></a><div id="Transport._parse_channel_open-def"><a name="L1977"></a><tt class="py-lineno">1977</tt> <a class="py-toggle" href="#" id="Transport._parse_channel_open-toggle" onclick="return toggle('Transport._parse_channel_open');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#_parse_channel_open">_parse_channel_open</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport._parse_channel_open-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport._parse_channel_open-expanded"><a name="L1978"></a><tt class="py-lineno">1978</tt> <tt class="py-line"> <tt class="py-name">kind</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-540" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-540', 'get_string', 'link-499');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1979"></a><tt class="py-lineno">1979</tt> <tt class="py-line"> <tt class="py-name">chanid</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-541" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-541', 'get_int', 'link-169');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1980"></a><tt class="py-lineno">1980</tt> <tt class="py-line"> <tt class="py-name">initial_window_size</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-542" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-542', 'get_int', 'link-169');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1981"></a><tt class="py-lineno">1981</tt> <tt class="py-line"> <tt class="py-name">max_packet_size</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-543" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-543', 'get_int', 'link-169');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1982"></a><tt class="py-lineno">1982</tt> <tt class="py-line"> <tt class="py-name">reject</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L1983"></a><tt class="py-lineno">1983</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">kind</tt> <tt class="py-op">==</tt> <tt class="py-string">'x11'</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_x11_handler</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1984"></a><tt class="py-lineno">1984</tt> <tt class="py-line"> <tt class="py-name">origin_addr</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-544" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-544', 'get_string', 'link-499');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1985"></a><tt class="py-lineno">1985</tt> <tt class="py-line"> <tt class="py-name">origin_port</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-545" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-545', 'get_int', 'link-169');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1986"></a><tt class="py-lineno">1986</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-546" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-546', 'DEBUG', 'link-192');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Incoming x11 connection from %s:%d'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">origin_addr</tt><tt class="py-op">,</tt> <tt class="py-name">origin_port</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1987"></a><tt class="py-lineno">1987</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1988"></a><tt class="py-lineno">1988</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L1989"></a><tt class="py-lineno">1989</tt> <tt class="py-line"> <tt class="py-name">my_chanid</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_next_channel</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1990"></a><tt class="py-lineno">1990</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L1991"></a><tt class="py-lineno">1991</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1992"></a><tt class="py-lineno">1992</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-op">(</tt><tt class="py-name">kind</tt> <tt class="py-op">==</tt> <tt class="py-string">'forwarded-tcpip'</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_tcp_handler</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1993"></a><tt class="py-lineno">1993</tt> <tt class="py-line"> <tt class="py-name">server_addr</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-547" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-547', 'get_string', 'link-499');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1994"></a><tt class="py-lineno">1994</tt> <tt class="py-line"> <tt class="py-name">server_port</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-548" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-548', 'get_int', 'link-169');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1995"></a><tt class="py-lineno">1995</tt> <tt class="py-line"> <tt class="py-name">origin_addr</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-549" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-549', 'get_string', 'link-499');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1996"></a><tt class="py-lineno">1996</tt> <tt class="py-line"> <tt class="py-name">origin_port</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-550" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-550', 'get_int', 'link-169');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1997"></a><tt class="py-lineno">1997</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-551" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-551', 'DEBUG', 'link-192');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Incoming tcp forwarded connection from %s:%d'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">origin_addr</tt><tt class="py-op">,</tt> <tt class="py-name">origin_port</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L1998"></a><tt class="py-lineno">1998</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L1999"></a><tt class="py-lineno">1999</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2000"></a><tt class="py-lineno">2000</tt> <tt class="py-line"> <tt class="py-name">my_chanid</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_next_channel</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2001"></a><tt class="py-lineno">2001</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L2002"></a><tt class="py-lineno">2002</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2003"></a><tt class="py-lineno">2003</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-keyword">not</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_mode</tt><tt class="py-op">:</tt> </tt>
-<a name="L2004"></a><tt class="py-lineno">2004</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-552" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-552', 'DEBUG', 'link-192');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Rejecting "%s" channel request from server.'</tt> <tt class="py-op">%</tt> <tt class="py-name">kind</tt><tt class="py-op">)</tt> </tt>
-<a name="L2005"></a><tt class="py-lineno">2005</tt> <tt class="py-line"> <tt class="py-name">reject</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L2006"></a><tt class="py-lineno">2006</tt> <tt class="py-line"> <tt class="py-name">reason</tt> <tt class="py-op">=</tt> <tt id="link-553" class="py-name" targets="Variable paramiko.auth_handler.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.auth_handler-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.channel.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.channel-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.client.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.client-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.common.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.common-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.dsskey.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.dsskey-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.hostkeys.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.hostkeys-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.kex_gex.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.kex_gex-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.kex_group1.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.kex_group1-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.packet.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.packet-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.pkey.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.pkey-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.rsakey.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.rsakey-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.server.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.server-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.sftp.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.sftp-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.sftp_attr.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.sftp_attr-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.sftp_client.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.sftp_client-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.sftp_file.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.sftp_file-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.sftp_handle.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.sftp_handle-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.sftp_server.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.sftp_server-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.sftp_si.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.sftp_si-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.transport.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.transport-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED,Variable paramiko.util.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED=paramiko.util-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED"><a title="paramiko.auth_handler.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.channel.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.client.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.common.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.dsskey.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.hostkeys.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.kex_gex.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.kex_group1.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.packet.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.pkey.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.rsakey.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.server.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_attr.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_client.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_file.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_handle.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_server.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.sftp_si.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.transport.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED
-paramiko.util.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED" class="py-name" href="#" onclick="return doclink('link-553', 'OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED', 'link-553');">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</a></tt> </tt>
-<a name="L2007"></a><tt class="py-lineno">2007</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2008"></a><tt class="py-lineno">2008</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2009"></a><tt class="py-lineno">2009</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2010"></a><tt class="py-lineno">2010</tt> <tt class="py-line"> <tt class="py-name">my_chanid</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_next_channel</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2011"></a><tt class="py-lineno">2011</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L2012"></a><tt class="py-lineno">2012</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2013"></a><tt class="py-lineno">2013</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">kind</tt> <tt class="py-op">==</tt> <tt class="py-string">'direct-tcpip'</tt><tt class="py-op">:</tt> </tt>
-<a name="L2014"></a><tt class="py-lineno">2014</tt> <tt class="py-line"> <tt class="py-comment"># handle direct-tcpip requests comming from the client</tt> </tt>
-<a name="L2015"></a><tt class="py-lineno">2015</tt> <tt class="py-line"> <tt class="py-name">dest_addr</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-554" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-554', 'get_string', 'link-499');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2016"></a><tt class="py-lineno">2016</tt> <tt class="py-line"> <tt class="py-name">dest_port</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-555" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-555', 'get_int', 'link-169');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2017"></a><tt class="py-lineno">2017</tt> <tt class="py-line"> <tt class="py-name">origin_addr</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-556" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-556', 'get_string', 'link-499');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2018"></a><tt class="py-lineno">2018</tt> <tt class="py-line"> <tt class="py-name">origin_port</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-557" class="py-name"><a title="paramiko.Message.get_int" class="py-name" href="#" onclick="return doclink('link-557', 'get_int', 'link-169');">get_int</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2019"></a><tt class="py-lineno">2019</tt> <tt class="py-line"> <tt class="py-name">reason</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_object</tt><tt class="py-op">.</tt><tt id="link-558" class="py-name" targets="Method paramiko.ServerInterface.check_channel_direct_tcpip_request()=paramiko.ServerInterface-class.html#check_channel_direct_tcpip_request"><a title="paramiko.ServerInterface.check_channel_direct_tcpip_request" class="py-name" href="#" onclick="return doclink('link-558', 'check_channel_direct_tcpip_request', 'link-558');">check_channel_direct_tcpip_request</a></tt><tt class="py-op">(</tt> </tt>
-<a name="L2020"></a><tt class="py-lineno">2020</tt> <tt class="py-line"> <tt class="py-name">my_chanid</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt><tt class="py-name">origin_addr</tt><tt class="py-op">,</tt> <tt class="py-name">origin_port</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L2021"></a><tt class="py-lineno">2021</tt> <tt class="py-line"> <tt class="py-op">(</tt><tt class="py-name">dest_addr</tt><tt class="py-op">,</tt> <tt class="py-name">dest_port</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L2022"></a><tt class="py-lineno">2022</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2023"></a><tt class="py-lineno">2023</tt> <tt class="py-line"> <tt class="py-name">reason</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">server_object</tt><tt class="py-op">.</tt><tt id="link-559" class="py-name" targets="Method paramiko.ServerInterface.check_channel_request()=paramiko.ServerInterface-class.html#check_channel_request"><a title="paramiko.ServerInterface.check_channel_request" class="py-name" href="#" onclick="return doclink('link-559', 'check_channel_request', 'link-559');">check_channel_request</a></tt><tt class="py-op">(</tt><tt class="py-name">kind</tt><tt class="py-op">,</tt> <tt class="py-name">my_chanid</tt><tt class="py-op">)</tt> </tt>
-<a name="L2024"></a><tt class="py-lineno">2024</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">reason</tt> <tt class="py-op">!=</tt> <tt id="link-560" class="py-name" targets="Variable paramiko.auth_handler.OPEN_SUCCEEDED=paramiko.auth_handler-module.html#OPEN_SUCCEEDED,Variable paramiko.channel.OPEN_SUCCEEDED=paramiko.channel-module.html#OPEN_SUCCEEDED,Variable paramiko.client.OPEN_SUCCEEDED=paramiko.client-module.html#OPEN_SUCCEEDED,Variable paramiko.common.OPEN_SUCCEEDED=paramiko.common-module.html#OPEN_SUCCEEDED,Variable paramiko.dsskey.OPEN_SUCCEEDED=paramiko.dsskey-module.html#OPEN_SUCCEEDED,Variable paramiko.hostkeys.OPEN_SUCCEEDED=paramiko.hostkeys-module.html#OPEN_SUCCEEDED,Variable paramiko.kex_gex.OPEN_SUCCEEDED=paramiko.kex_gex-module.html#OPEN_SUCCEEDED,Variable paramiko.kex_group1.OPEN_SUCCEEDED=paramiko.kex_group1-module.html#OPEN_SUCCEEDED,Variable paramiko.packet.OPEN_SUCCEEDED=paramiko.packet-module.html#OPEN_SUCCEEDED,Variable paramiko.pkey.OPEN_SUCCEEDED=paramiko.pkey-module.html#OPEN_SUCCEEDED,Variable paramiko.rsakey.OPEN_SUCCEEDED=paramiko.rsakey-module.html#OPEN_SUCCEEDED,Variable paramiko.server.OPEN_SUCCEEDED=paramiko.server-module.html#OPEN_SUCCEEDED,Variable paramiko.sftp.OPEN_SUCCEEDED=paramiko.sftp-module.html#OPEN_SUCCEEDED,Variable paramiko.sftp_attr.OPEN_SUCCEEDED=paramiko.sftp_attr-module.html#OPEN_SUCCEEDED,Variable paramiko.sftp_client.OPEN_SUCCEEDED=paramiko.sftp_client-module.html#OPEN_SUCCEEDED,Variable paramiko.sftp_file.OPEN_SUCCEEDED=paramiko.sftp_file-module.html#OPEN_SUCCEEDED,Variable paramiko.sftp_handle.OPEN_SUCCEEDED=paramiko.sftp_handle-module.html#OPEN_SUCCEEDED,Variable paramiko.sftp_server.OPEN_SUCCEEDED=paramiko.sftp_server-module.html#OPEN_SUCCEEDED,Variable paramiko.sftp_si.OPEN_SUCCEEDED=paramiko.sftp_si-module.html#OPEN_SUCCEEDED,Variable paramiko.transport.OPEN_SUCCEEDED=paramiko.transport-module.html#OPEN_SUCCEEDED,Variable paramiko.util.OPEN_SUCCEEDED=paramiko.util-module.html#OPEN_SUCCEEDED"><a title="paramiko.auth_handler.OPEN_SUCCEEDED
-paramiko.channel.OPEN_SUCCEEDED
-paramiko.client.OPEN_SUCCEEDED
-paramiko.common.OPEN_SUCCEEDED
-paramiko.dsskey.OPEN_SUCCEEDED
-paramiko.hostkeys.OPEN_SUCCEEDED
-paramiko.kex_gex.OPEN_SUCCEEDED
-paramiko.kex_group1.OPEN_SUCCEEDED
-paramiko.packet.OPEN_SUCCEEDED
-paramiko.pkey.OPEN_SUCCEEDED
-paramiko.rsakey.OPEN_SUCCEEDED
-paramiko.server.OPEN_SUCCEEDED
-paramiko.sftp.OPEN_SUCCEEDED
-paramiko.sftp_attr.OPEN_SUCCEEDED
-paramiko.sftp_client.OPEN_SUCCEEDED
-paramiko.sftp_file.OPEN_SUCCEEDED
-paramiko.sftp_handle.OPEN_SUCCEEDED
-paramiko.sftp_server.OPEN_SUCCEEDED
-paramiko.sftp_si.OPEN_SUCCEEDED
-paramiko.transport.OPEN_SUCCEEDED
-paramiko.util.OPEN_SUCCEEDED" class="py-name" href="#" onclick="return doclink('link-560', 'OPEN_SUCCEEDED', 'link-560');">OPEN_SUCCEEDED</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L2025"></a><tt class="py-lineno">2025</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-561" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-561', 'DEBUG', 'link-192');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Rejecting "%s" channel request from client.'</tt> <tt class="py-op">%</tt> <tt class="py-name">kind</tt><tt class="py-op">)</tt> </tt>
-<a name="L2026"></a><tt class="py-lineno">2026</tt> <tt class="py-line"> <tt class="py-name">reject</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L2027"></a><tt class="py-lineno">2027</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">reject</tt><tt class="py-op">:</tt> </tt>
-<a name="L2028"></a><tt class="py-lineno">2028</tt> <tt class="py-line"> <tt class="py-name">msg</tt> <tt class="py-op">=</tt> <tt id="link-562" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-562', 'Message', 'link-24');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2029"></a><tt class="py-lineno">2029</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-563" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-563', 'add_byte', 'link-147');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-564" class="py-name" targets="Variable paramiko.auth_handler.MSG_CHANNEL_OPEN_FAILURE=paramiko.auth_handler-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.channel.MSG_CHANNEL_OPEN_FAILURE=paramiko.channel-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.client.MSG_CHANNEL_OPEN_FAILURE=paramiko.client-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.common.MSG_CHANNEL_OPEN_FAILURE=paramiko.common-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.dsskey.MSG_CHANNEL_OPEN_FAILURE=paramiko.dsskey-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.hostkeys.MSG_CHANNEL_OPEN_FAILURE=paramiko.hostkeys-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.kex_gex.MSG_CHANNEL_OPEN_FAILURE=paramiko.kex_gex-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.kex_group1.MSG_CHANNEL_OPEN_FAILURE=paramiko.kex_group1-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.packet.MSG_CHANNEL_OPEN_FAILURE=paramiko.packet-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.pkey.MSG_CHANNEL_OPEN_FAILURE=paramiko.pkey-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.rsakey.MSG_CHANNEL_OPEN_FAILURE=paramiko.rsakey-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.server.MSG_CHANNEL_OPEN_FAILURE=paramiko.server-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.sftp.MSG_CHANNEL_OPEN_FAILURE=paramiko.sftp-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.sftp_attr.MSG_CHANNEL_OPEN_FAILURE=paramiko.sftp_attr-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.sftp_client.MSG_CHANNEL_OPEN_FAILURE=paramiko.sftp_client-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.sftp_file.MSG_CHANNEL_OPEN_FAILURE=paramiko.sftp_file-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.sftp_handle.MSG_CHANNEL_OPEN_FAILURE=paramiko.sftp_handle-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.sftp_server.MSG_CHANNEL_OPEN_FAILURE=paramiko.sftp_server-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.sftp_si.MSG_CHANNEL_OPEN_FAILURE=paramiko.sftp_si-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.transport.MSG_CHANNEL_OPEN_FAILURE=paramiko.transport-module.html#MSG_CHANNEL_OPEN_FAILURE,Variable paramiko.util.MSG_CHANNEL_OPEN_FAILURE=paramiko.util-module.html#MSG_CHANNEL_OPEN_FAILURE"><a title="paramiko.auth_handler.MSG_CHANNEL_OPEN_FAILURE
-paramiko.channel.MSG_CHANNEL_OPEN_FAILURE
-paramiko.client.MSG_CHANNEL_OPEN_FAILURE
-paramiko.common.MSG_CHANNEL_OPEN_FAILURE
-paramiko.dsskey.MSG_CHANNEL_OPEN_FAILURE
-paramiko.hostkeys.MSG_CHANNEL_OPEN_FAILURE
-paramiko.kex_gex.MSG_CHANNEL_OPEN_FAILURE
-paramiko.kex_group1.MSG_CHANNEL_OPEN_FAILURE
-paramiko.packet.MSG_CHANNEL_OPEN_FAILURE
-paramiko.pkey.MSG_CHANNEL_OPEN_FAILURE
-paramiko.rsakey.MSG_CHANNEL_OPEN_FAILURE
-paramiko.server.MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp.MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp_attr.MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp_client.MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp_file.MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp_handle.MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp_server.MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp_si.MSG_CHANNEL_OPEN_FAILURE
-paramiko.transport.MSG_CHANNEL_OPEN_FAILURE
-paramiko.util.MSG_CHANNEL_OPEN_FAILURE" class="py-name" href="#" onclick="return doclink('link-564', 'MSG_CHANNEL_OPEN_FAILURE', 'link-564');">MSG_CHANNEL_OPEN_FAILURE</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L2030"></a><tt class="py-lineno">2030</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-565" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-565', 'add_int', 'link-150');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">chanid</tt><tt class="py-op">)</tt> </tt>
-<a name="L2031"></a><tt class="py-lineno">2031</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-566" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-566', 'add_int', 'link-150');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">reason</tt><tt class="py-op">)</tt> </tt>
-<a name="L2032"></a><tt class="py-lineno">2032</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-567" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-567', 'add_string', 'link-149');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-string">''</tt><tt class="py-op">)</tt> </tt>
-<a name="L2033"></a><tt class="py-lineno">2033</tt> <tt class="py-line"> <tt class="py-name">msg</tt><tt class="py-op">.</tt><tt id="link-568" class="py-name"><a title="paramiko.Message.add_string" class="py-name" href="#" onclick="return doclink('link-568', 'add_string', 'link-149');">add_string</a></tt><tt class="py-op">(</tt><tt class="py-string">'en'</tt><tt class="py-op">)</tt> </tt>
-<a name="L2034"></a><tt class="py-lineno">2034</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_message</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">)</tt> </tt>
-<a name="L2035"></a><tt class="py-lineno">2035</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L2036"></a><tt class="py-lineno">2036</tt> <tt class="py-line"> </tt>
-<a name="L2037"></a><tt class="py-lineno">2037</tt> <tt class="py-line"> <tt class="py-name">chan</tt> <tt class="py-op">=</tt> <tt id="link-569" class="py-name"><a title="paramiko.Channel" class="py-name" href="#" onclick="return doclink('link-569', 'Channel', 'link-6');">Channel</a></tt><tt class="py-op">(</tt><tt class="py-name">my_chanid</tt><tt class="py-op">)</tt> </tt>
-<a name="L2038"></a><tt class="py-lineno">2038</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2039"></a><tt class="py-lineno">2039</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2040"></a><tt class="py-lineno">2040</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_channels</tt><tt class="py-op">.</tt><tt id="link-570" class="py-name"><a title="paramiko.SFTPClient.put
-paramiko.transport.ChannelMap.put" class="py-name" href="#" onclick="return doclink('link-570', 'put', 'link-160');">put</a></tt><tt class="py-op">(</tt><tt class="py-name">my_chanid</tt><tt class="py-op">,</tt> <tt class="py-name">chan</tt><tt class="py-op">)</tt> </tt>
-<a name="L2041"></a><tt class="py-lineno">2041</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">channels_seen</tt><tt class="py-op">[</tt><tt class="py-name">my_chanid</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L2042"></a><tt class="py-lineno">2042</tt> <tt class="py-line"> <tt class="py-name">chan</tt><tt class="py-op">.</tt><tt class="py-name">_set_transport</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">)</tt> </tt>
-<a name="L2043"></a><tt class="py-lineno">2043</tt> <tt class="py-line"> <tt class="py-name">chan</tt><tt class="py-op">.</tt><tt class="py-name">_set_window</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">window_size</tt><tt class="py-op">,</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">max_packet_size</tt><tt class="py-op">)</tt> </tt>
-<a name="L2044"></a><tt class="py-lineno">2044</tt> <tt class="py-line"> <tt class="py-name">chan</tt><tt class="py-op">.</tt><tt class="py-name">_set_remote_channel</tt><tt class="py-op">(</tt><tt class="py-name">chanid</tt><tt class="py-op">,</tt> <tt class="py-name">initial_window_size</tt><tt class="py-op">,</tt> <tt class="py-name">max_packet_size</tt><tt class="py-op">)</tt> </tt>
-<a name="L2045"></a><tt class="py-lineno">2045</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L2046"></a><tt class="py-lineno">2046</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2047"></a><tt class="py-lineno">2047</tt> <tt class="py-line"> <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt id="link-571" class="py-name"><a title="paramiko.Message" class="py-name" href="#" onclick="return doclink('link-571', 'Message', 'link-24');">Message</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2048"></a><tt class="py-lineno">2048</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-572" class="py-name"><a title="paramiko.Message.add_byte" class="py-name" href="#" onclick="return doclink('link-572', 'add_byte', 'link-147');">add_byte</a></tt><tt class="py-op">(</tt><tt class="py-name">chr</tt><tt class="py-op">(</tt><tt id="link-573" class="py-name" targets="Variable paramiko.auth_handler.MSG_CHANNEL_OPEN_SUCCESS=paramiko.auth_handler-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.channel.MSG_CHANNEL_OPEN_SUCCESS=paramiko.channel-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.client.MSG_CHANNEL_OPEN_SUCCESS=paramiko.client-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.common.MSG_CHANNEL_OPEN_SUCCESS=paramiko.common-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.dsskey.MSG_CHANNEL_OPEN_SUCCESS=paramiko.dsskey-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.hostkeys.MSG_CHANNEL_OPEN_SUCCESS=paramiko.hostkeys-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.kex_gex.MSG_CHANNEL_OPEN_SUCCESS=paramiko.kex_gex-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.kex_group1.MSG_CHANNEL_OPEN_SUCCESS=paramiko.kex_group1-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.packet.MSG_CHANNEL_OPEN_SUCCESS=paramiko.packet-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.pkey.MSG_CHANNEL_OPEN_SUCCESS=paramiko.pkey-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.rsakey.MSG_CHANNEL_OPEN_SUCCESS=paramiko.rsakey-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.server.MSG_CHANNEL_OPEN_SUCCESS=paramiko.server-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.sftp.MSG_CHANNEL_OPEN_SUCCESS=paramiko.sftp-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.sftp_attr.MSG_CHANNEL_OPEN_SUCCESS=paramiko.sftp_attr-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.sftp_client.MSG_CHANNEL_OPEN_SUCCESS=paramiko.sftp_client-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.sftp_file.MSG_CHANNEL_OPEN_SUCCESS=paramiko.sftp_file-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.sftp_handle.MSG_CHANNEL_OPEN_SUCCESS=paramiko.sftp_handle-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.sftp_server.MSG_CHANNEL_OPEN_SUCCESS=paramiko.sftp_server-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.sftp_si.MSG_CHANNEL_OPEN_SUCCESS=paramiko.sftp_si-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.transport.MSG_CHANNEL_OPEN_SUCCESS=paramiko.transport-module.html#MSG_CHANNEL_OPEN_SUCCESS,Variable paramiko.util.MSG_CHANNEL_OPEN_SUCCESS=paramiko.util-module.html#MSG_CHANNEL_OPEN_SUCCESS"><a title="paramiko.auth_handler.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.channel.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.client.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.common.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.dsskey.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.hostkeys.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.kex_gex.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.kex_group1.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.packet.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.pkey.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.rsakey.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.server.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp_attr.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp_client.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp_file.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp_handle.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp_server.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp_si.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.transport.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.util.MSG_CHANNEL_OPEN_SUCCESS" class="py-name" href="#" onclick="return doclink('link-573', 'MSG_CHANNEL_OPEN_SUCCESS', 'link-573');">MSG_CHANNEL_OPEN_SUCCESS</a></tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L2049"></a><tt class="py-lineno">2049</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-574" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-574', 'add_int', 'link-150');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">chanid</tt><tt class="py-op">)</tt> </tt>
-<a name="L2050"></a><tt class="py-lineno">2050</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-575" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-575', 'add_int', 'link-150');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">my_chanid</tt><tt class="py-op">)</tt> </tt>
-<a name="L2051"></a><tt class="py-lineno">2051</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-576" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-576', 'add_int', 'link-150');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">window_size</tt><tt class="py-op">)</tt> </tt>
-<a name="L2052"></a><tt class="py-lineno">2052</tt> <tt class="py-line"> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-577" class="py-name"><a title="paramiko.Message.add_int" class="py-name" href="#" onclick="return doclink('link-577', 'add_int', 'link-150');">add_int</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">max_packet_size</tt><tt class="py-op">)</tt> </tt>
-<a name="L2053"></a><tt class="py-lineno">2053</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_send_message</tt><tt class="py-op">(</tt><tt class="py-name">m</tt><tt class="py-op">)</tt> </tt>
-<a name="L2054"></a><tt class="py-lineno">2054</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-578" class="py-name"><a title="paramiko.auth_handler.INFO
-paramiko.channel.INFO
-paramiko.client.INFO
-paramiko.common.INFO
-paramiko.dsskey.INFO
-paramiko.hostkeys.INFO
-paramiko.kex_gex.INFO
-paramiko.kex_group1.INFO
-paramiko.logging22.INFO
-paramiko.packet.INFO
-paramiko.pkey.INFO
-paramiko.rsakey.INFO
-paramiko.server.INFO
-paramiko.sftp.INFO
-paramiko.sftp_attr.INFO
-paramiko.sftp_client.INFO
-paramiko.sftp_file.INFO
-paramiko.sftp_handle.INFO
-paramiko.sftp_server.INFO
-paramiko.sftp_si.INFO
-paramiko.transport.INFO
-paramiko.util.INFO" class="py-name" href="#" onclick="return doclink('link-578', 'INFO', 'link-371');">INFO</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Secsh channel %d (%s) opened.'</tt><tt class="py-op">,</tt> <tt class="py-name">my_chanid</tt><tt class="py-op">,</tt> <tt class="py-name">kind</tt><tt class="py-op">)</tt> </tt>
-<a name="L2055"></a><tt class="py-lineno">2055</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">kind</tt> <tt class="py-op">==</tt> <tt class="py-string">'x11'</tt><tt class="py-op">:</tt> </tt>
-<a name="L2056"></a><tt class="py-lineno">2056</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_x11_handler</tt><tt class="py-op">(</tt><tt class="py-name">chan</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt><tt class="py-name">origin_addr</tt><tt class="py-op">,</tt> <tt class="py-name">origin_port</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L2057"></a><tt class="py-lineno">2057</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt class="py-name">kind</tt> <tt class="py-op">==</tt> <tt class="py-string">'forwarded-tcpip'</tt><tt class="py-op">:</tt> </tt>
-<a name="L2058"></a><tt class="py-lineno">2058</tt> <tt class="py-line"> <tt class="py-name">chan</tt><tt class="py-op">.</tt><tt class="py-name">origin_addr</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">origin_addr</tt><tt class="py-op">,</tt> <tt class="py-name">origin_port</tt><tt class="py-op">)</tt> </tt>
-<a name="L2059"></a><tt class="py-lineno">2059</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_tcp_handler</tt><tt class="py-op">(</tt><tt class="py-name">chan</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt><tt class="py-name">origin_addr</tt><tt class="py-op">,</tt> <tt class="py-name">origin_port</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-op">(</tt><tt class="py-name">server_addr</tt><tt class="py-op">,</tt> <tt class="py-name">server_port</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L2060"></a><tt class="py-lineno">2060</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L2061"></a><tt class="py-lineno">2061</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_queue_incoming_channel</tt><tt class="py-op">(</tt><tt class="py-name">chan</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2062"></a><tt class="py-lineno">2062</tt> <tt class="py-line"> </tt>
-<a name="Transport._parse_debug"></a><div id="Transport._parse_debug-def"><a name="L2063"></a><tt class="py-lineno">2063</tt> <a class="py-toggle" href="#" id="Transport._parse_debug-toggle" onclick="return toggle('Transport._parse_debug');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#_parse_debug">_parse_debug</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport._parse_debug-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport._parse_debug-expanded"><a name="L2064"></a><tt class="py-lineno">2064</tt> <tt class="py-line"> <tt class="py-name">always_display</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-579" class="py-name"><a title="paramiko.Message.get_boolean" class="py-name" href="#" onclick="return doclink('link-579', 'get_boolean', 'link-421');">get_boolean</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2065"></a><tt class="py-lineno">2065</tt> <tt class="py-line"> <tt class="py-name">msg</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-580" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-580', 'get_string', 'link-499');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2066"></a><tt class="py-lineno">2066</tt> <tt class="py-line"> <tt class="py-name">lang</tt> <tt class="py-op">=</tt> <tt class="py-name">m</tt><tt class="py-op">.</tt><tt id="link-581" class="py-name"><a title="paramiko.Message.get_string" class="py-name" href="#" onclick="return doclink('link-581', 'get_string', 'link-499');">get_string</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2067"></a><tt class="py-lineno">2067</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_log</tt><tt class="py-op">(</tt><tt id="link-582" class="py-name"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-582', 'DEBUG', 'link-192');">DEBUG</a></tt><tt class="py-op">,</tt> <tt class="py-string">'Debug msg: '</tt> <tt class="py-op">+</tt> <tt id="link-583" class="py-name"><a title="paramiko.util" class="py-name" href="#" onclick="return doclink('link-583', 'util', 'link-1');">util</a></tt><tt class="py-op">.</tt><tt id="link-584" class="py-name" targets="Function paramiko.util.safe_string()=paramiko.util-module.html#safe_string"><a title="paramiko.util.safe_string" class="py-name" href="#" onclick="return doclink('link-584', 'safe_string', 'link-584');">safe_string</a></tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2068"></a><tt class="py-lineno">2068</tt> <tt class="py-line"> </tt>
-<a name="Transport._get_subsystem_handler"></a><div id="Transport._get_subsystem_handler-def"><a name="L2069"></a><tt class="py-lineno">2069</tt> <a class="py-toggle" href="#" id="Transport._get_subsystem_handler-toggle" onclick="return toggle('Transport._get_subsystem_handler');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.transport.Transport-class.html#_get_subsystem_handler">_get_subsystem_handler</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">name</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Transport._get_subsystem_handler-collapsed" style="display:none;" pad="++++" indent="++++++++"></div><div id="Transport._get_subsystem_handler-expanded"><a name="L2070"></a><tt class="py-lineno">2070</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L2071"></a><tt class="py-lineno">2071</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L2072"></a><tt class="py-lineno">2072</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-585" class="py-name"><a title="paramiko.kex_gex.KexGex.name
-paramiko.kex_group1.KexGroup1.name" class="py-name" href="#" onclick="return doclink('link-585', 'name', 'link-60');">name</a></tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">subsystem_table</tt><tt class="py-op">:</tt> </tt>
-<a name="L2073"></a><tt class="py-lineno">2073</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-op">(</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt><tt class="py-op">)</tt> </tt>
-<a name="L2074"></a><tt class="py-lineno">2074</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">subsystem_table</tt><tt class="py-op">[</tt><tt id="link-586" class="py-name"><a title="paramiko.kex_gex.KexGex.name
-paramiko.kex_group1.KexGroup1.name" class="py-name" href="#" onclick="return doclink('link-586', 'name', 'link-60');">name</a></tt><tt class="py-op">]</tt> </tt>
-<a name="L2075"></a><tt class="py-lineno">2075</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L2076"></a><tt class="py-lineno">2076</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">lock</tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L2077"></a><tt class="py-lineno">2077</tt> <tt class="py-line"> </tt>
-<a name="L2078"></a><tt class="py-lineno">2078</tt> <tt class="py-line"> <tt id="link-587" class="py-name"><a title="paramiko.Transport._handler_table" class="py-name" href="#" onclick="return doclink('link-587', '_handler_table', 'link-321');">_handler_table</a></tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> </tt>
-<a name="L2079"></a><tt class="py-lineno">2079</tt> <tt class="py-line"> <tt id="link-588" class="py-name"><a title="paramiko.auth_handler.MSG_NEWKEYS
-paramiko.channel.MSG_NEWKEYS
-paramiko.client.MSG_NEWKEYS
-paramiko.common.MSG_NEWKEYS
-paramiko.dsskey.MSG_NEWKEYS
-paramiko.hostkeys.MSG_NEWKEYS
-paramiko.kex_gex.MSG_NEWKEYS
-paramiko.kex_group1.MSG_NEWKEYS
-paramiko.packet.MSG_NEWKEYS
-paramiko.pkey.MSG_NEWKEYS
-paramiko.rsakey.MSG_NEWKEYS
-paramiko.server.MSG_NEWKEYS
-paramiko.sftp.MSG_NEWKEYS
-paramiko.sftp_attr.MSG_NEWKEYS
-paramiko.sftp_client.MSG_NEWKEYS
-paramiko.sftp_file.MSG_NEWKEYS
-paramiko.sftp_handle.MSG_NEWKEYS
-paramiko.sftp_server.MSG_NEWKEYS
-paramiko.sftp_si.MSG_NEWKEYS
-paramiko.transport.MSG_NEWKEYS
-paramiko.util.MSG_NEWKEYS" class="py-name" href="#" onclick="return doclink('link-588', 'MSG_NEWKEYS', 'link-480');">MSG_NEWKEYS</a></tt><tt class="py-op">:</tt> <tt class="py-name">_parse_newkeys</tt><tt class="py-op">,</tt> </tt>
-<a name="L2080"></a><tt class="py-lineno">2080</tt> <tt class="py-line"> <tt id="link-589" class="py-name"><a title="paramiko.auth_handler.MSG_GLOBAL_REQUEST
-paramiko.channel.MSG_GLOBAL_REQUEST
-paramiko.client.MSG_GLOBAL_REQUEST
-paramiko.common.MSG_GLOBAL_REQUEST
-paramiko.dsskey.MSG_GLOBAL_REQUEST
-paramiko.hostkeys.MSG_GLOBAL_REQUEST
-paramiko.kex_gex.MSG_GLOBAL_REQUEST
-paramiko.kex_group1.MSG_GLOBAL_REQUEST
-paramiko.packet.MSG_GLOBAL_REQUEST
-paramiko.pkey.MSG_GLOBAL_REQUEST
-paramiko.rsakey.MSG_GLOBAL_REQUEST
-paramiko.server.MSG_GLOBAL_REQUEST
-paramiko.sftp.MSG_GLOBAL_REQUEST
-paramiko.sftp_attr.MSG_GLOBAL_REQUEST
-paramiko.sftp_client.MSG_GLOBAL_REQUEST
-paramiko.sftp_file.MSG_GLOBAL_REQUEST
-paramiko.sftp_handle.MSG_GLOBAL_REQUEST
-paramiko.sftp_server.MSG_GLOBAL_REQUEST
-paramiko.sftp_si.MSG_GLOBAL_REQUEST
-paramiko.transport.MSG_GLOBAL_REQUEST
-paramiko.util.MSG_GLOBAL_REQUEST" class="py-name" href="#" onclick="return doclink('link-589', 'MSG_GLOBAL_REQUEST', 'link-188');">MSG_GLOBAL_REQUEST</a></tt><tt class="py-op">:</tt> <tt class="py-name">_parse_global_request</tt><tt class="py-op">,</tt> </tt>
-<a name="L2081"></a><tt class="py-lineno">2081</tt> <tt class="py-line"> <tt id="link-590" class="py-name"><a title="paramiko.auth_handler.MSG_REQUEST_SUCCESS
-paramiko.channel.MSG_REQUEST_SUCCESS
-paramiko.client.MSG_REQUEST_SUCCESS
-paramiko.common.MSG_REQUEST_SUCCESS
-paramiko.dsskey.MSG_REQUEST_SUCCESS
-paramiko.hostkeys.MSG_REQUEST_SUCCESS
-paramiko.kex_gex.MSG_REQUEST_SUCCESS
-paramiko.kex_group1.MSG_REQUEST_SUCCESS
-paramiko.packet.MSG_REQUEST_SUCCESS
-paramiko.pkey.MSG_REQUEST_SUCCESS
-paramiko.rsakey.MSG_REQUEST_SUCCESS
-paramiko.server.MSG_REQUEST_SUCCESS
-paramiko.sftp.MSG_REQUEST_SUCCESS
-paramiko.sftp_attr.MSG_REQUEST_SUCCESS
-paramiko.sftp_client.MSG_REQUEST_SUCCESS
-paramiko.sftp_file.MSG_REQUEST_SUCCESS
-paramiko.sftp_handle.MSG_REQUEST_SUCCESS
-paramiko.sftp_server.MSG_REQUEST_SUCCESS
-paramiko.sftp_si.MSG_REQUEST_SUCCESS
-paramiko.transport.MSG_REQUEST_SUCCESS
-paramiko.util.MSG_REQUEST_SUCCESS" class="py-name" href="#" onclick="return doclink('link-590', 'MSG_REQUEST_SUCCESS', 'link-514');">MSG_REQUEST_SUCCESS</a></tt><tt class="py-op">:</tt> <tt class="py-name">_parse_request_success</tt><tt class="py-op">,</tt> </tt>
-<a name="L2082"></a><tt class="py-lineno">2082</tt> <tt class="py-line"> <tt id="link-591" class="py-name"><a title="paramiko.auth_handler.MSG_REQUEST_FAILURE
-paramiko.channel.MSG_REQUEST_FAILURE
-paramiko.client.MSG_REQUEST_FAILURE
-paramiko.common.MSG_REQUEST_FAILURE
-paramiko.dsskey.MSG_REQUEST_FAILURE
-paramiko.hostkeys.MSG_REQUEST_FAILURE
-paramiko.kex_gex.MSG_REQUEST_FAILURE
-paramiko.kex_group1.MSG_REQUEST_FAILURE
-paramiko.packet.MSG_REQUEST_FAILURE
-paramiko.pkey.MSG_REQUEST_FAILURE
-paramiko.rsakey.MSG_REQUEST_FAILURE
-paramiko.server.MSG_REQUEST_FAILURE
-paramiko.sftp.MSG_REQUEST_FAILURE
-paramiko.sftp_attr.MSG_REQUEST_FAILURE
-paramiko.sftp_client.MSG_REQUEST_FAILURE
-paramiko.sftp_file.MSG_REQUEST_FAILURE
-paramiko.sftp_handle.MSG_REQUEST_FAILURE
-paramiko.sftp_server.MSG_REQUEST_FAILURE
-paramiko.sftp_si.MSG_REQUEST_FAILURE
-paramiko.transport.MSG_REQUEST_FAILURE
-paramiko.util.MSG_REQUEST_FAILURE" class="py-name" href="#" onclick="return doclink('link-591', 'MSG_REQUEST_FAILURE', 'link-517');">MSG_REQUEST_FAILURE</a></tt><tt class="py-op">:</tt> <tt class="py-name">_parse_request_failure</tt><tt class="py-op">,</tt> </tt>
-<a name="L2083"></a><tt class="py-lineno">2083</tt> <tt class="py-line"> <tt id="link-592" class="py-name"><a title="paramiko.auth_handler.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.channel.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.client.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.common.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.dsskey.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.hostkeys.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.kex_gex.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.kex_group1.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.packet.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.pkey.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.rsakey.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.server.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp_attr.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp_client.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp_file.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp_handle.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp_server.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.sftp_si.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.transport.MSG_CHANNEL_OPEN_SUCCESS
-paramiko.util.MSG_CHANNEL_OPEN_SUCCESS" class="py-name" href="#" onclick="return doclink('link-592', 'MSG_CHANNEL_OPEN_SUCCESS', 'link-573');">MSG_CHANNEL_OPEN_SUCCESS</a></tt><tt class="py-op">:</tt> <tt class="py-name">_parse_channel_open_success</tt><tt class="py-op">,</tt> </tt>
-<a name="L2084"></a><tt class="py-lineno">2084</tt> <tt class="py-line"> <tt id="link-593" class="py-name"><a title="paramiko.auth_handler.MSG_CHANNEL_OPEN_FAILURE
-paramiko.channel.MSG_CHANNEL_OPEN_FAILURE
-paramiko.client.MSG_CHANNEL_OPEN_FAILURE
-paramiko.common.MSG_CHANNEL_OPEN_FAILURE
-paramiko.dsskey.MSG_CHANNEL_OPEN_FAILURE
-paramiko.hostkeys.MSG_CHANNEL_OPEN_FAILURE
-paramiko.kex_gex.MSG_CHANNEL_OPEN_FAILURE
-paramiko.kex_group1.MSG_CHANNEL_OPEN_FAILURE
-paramiko.packet.MSG_CHANNEL_OPEN_FAILURE
-paramiko.pkey.MSG_CHANNEL_OPEN_FAILURE
-paramiko.rsakey.MSG_CHANNEL_OPEN_FAILURE
-paramiko.server.MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp.MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp_attr.MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp_client.MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp_file.MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp_handle.MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp_server.MSG_CHANNEL_OPEN_FAILURE
-paramiko.sftp_si.MSG_CHANNEL_OPEN_FAILURE
-paramiko.transport.MSG_CHANNEL_OPEN_FAILURE
-paramiko.util.MSG_CHANNEL_OPEN_FAILURE" class="py-name" href="#" onclick="return doclink('link-593', 'MSG_CHANNEL_OPEN_FAILURE', 'link-564');">MSG_CHANNEL_OPEN_FAILURE</a></tt><tt class="py-op">:</tt> <tt class="py-name">_parse_channel_open_failure</tt><tt class="py-op">,</tt> </tt>
-<a name="L2085"></a><tt class="py-lineno">2085</tt> <tt class="py-line"> <tt id="link-594" class="py-name"><a title="paramiko.auth_handler.MSG_CHANNEL_OPEN
-paramiko.channel.MSG_CHANNEL_OPEN
-paramiko.client.MSG_CHANNEL_OPEN
-paramiko.common.MSG_CHANNEL_OPEN
-paramiko.dsskey.MSG_CHANNEL_OPEN
-paramiko.hostkeys.MSG_CHANNEL_OPEN
-paramiko.kex_gex.MSG_CHANNEL_OPEN
-paramiko.kex_group1.MSG_CHANNEL_OPEN
-paramiko.packet.MSG_CHANNEL_OPEN
-paramiko.pkey.MSG_CHANNEL_OPEN
-paramiko.rsakey.MSG_CHANNEL_OPEN
-paramiko.server.MSG_CHANNEL_OPEN
-paramiko.sftp.MSG_CHANNEL_OPEN
-paramiko.sftp_attr.MSG_CHANNEL_OPEN
-paramiko.sftp_client.MSG_CHANNEL_OPEN
-paramiko.sftp_file.MSG_CHANNEL_OPEN
-paramiko.sftp_handle.MSG_CHANNEL_OPEN
-paramiko.sftp_server.MSG_CHANNEL_OPEN
-paramiko.sftp_si.MSG_CHANNEL_OPEN
-paramiko.transport.MSG_CHANNEL_OPEN
-paramiko.util.MSG_CHANNEL_OPEN" class="py-name" href="#" onclick="return doclink('link-594', 'MSG_CHANNEL_OPEN', 'link-148');">MSG_CHANNEL_OPEN</a></tt><tt class="py-op">:</tt> <tt class="py-name">_parse_channel_open</tt><tt class="py-op">,</tt> </tt>
-<a name="L2086"></a><tt class="py-lineno">2086</tt> <tt class="py-line"> <tt id="link-595" class="py-name"><a title="paramiko.auth_handler.MSG_KEXINIT
-paramiko.channel.MSG_KEXINIT
-paramiko.client.MSG_KEXINIT
-paramiko.common.MSG_KEXINIT
-paramiko.dsskey.MSG_KEXINIT
-paramiko.hostkeys.MSG_KEXINIT
-paramiko.kex_gex.MSG_KEXINIT
-paramiko.kex_group1.MSG_KEXINIT
-paramiko.packet.MSG_KEXINIT
-paramiko.pkey.MSG_KEXINIT
-paramiko.rsakey.MSG_KEXINIT
-paramiko.server.MSG_KEXINIT
-paramiko.sftp.MSG_KEXINIT
-paramiko.sftp_attr.MSG_KEXINIT
-paramiko.sftp_client.MSG_KEXINIT
-paramiko.sftp_file.MSG_KEXINIT
-paramiko.sftp_handle.MSG_KEXINIT
-paramiko.sftp_server.MSG_KEXINIT
-paramiko.sftp_si.MSG_KEXINIT
-paramiko.transport.MSG_KEXINIT
-paramiko.util.MSG_KEXINIT" class="py-name" href="#" onclick="return doclink('link-595', 'MSG_KEXINIT', 'link-313');">MSG_KEXINIT</a></tt><tt class="py-op">:</tt> <tt class="py-name">_negotiate_keys</tt><tt class="py-op">,</tt> </tt>
-<a name="L2087"></a><tt class="py-lineno">2087</tt> <tt class="py-line"> <tt class="py-op">}</tt> </tt>
-<a name="L2088"></a><tt class="py-lineno">2088</tt> <tt class="py-line"> </tt>
-<a name="L2089"></a><tt class="py-lineno">2089</tt> <tt class="py-line"> <tt id="link-596" class="py-name"><a title="paramiko.Transport._channel_handler_table" class="py-name" href="#" onclick="return doclink('link-596', '_channel_handler_table', 'link-323');">_channel_handler_table</a></tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> </tt>
-<a name="L2090"></a><tt class="py-lineno">2090</tt> <tt class="py-line"> <tt id="link-597" class="py-name" targets="Variable paramiko.auth_handler.MSG_CHANNEL_SUCCESS=paramiko.auth_handler-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.channel.MSG_CHANNEL_SUCCESS=paramiko.channel-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.client.MSG_CHANNEL_SUCCESS=paramiko.client-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.common.MSG_CHANNEL_SUCCESS=paramiko.common-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.dsskey.MSG_CHANNEL_SUCCESS=paramiko.dsskey-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.hostkeys.MSG_CHANNEL_SUCCESS=paramiko.hostkeys-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.kex_gex.MSG_CHANNEL_SUCCESS=paramiko.kex_gex-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.kex_group1.MSG_CHANNEL_SUCCESS=paramiko.kex_group1-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.packet.MSG_CHANNEL_SUCCESS=paramiko.packet-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.pkey.MSG_CHANNEL_SUCCESS=paramiko.pkey-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.rsakey.MSG_CHANNEL_SUCCESS=paramiko.rsakey-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.server.MSG_CHANNEL_SUCCESS=paramiko.server-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.sftp.MSG_CHANNEL_SUCCESS=paramiko.sftp-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.sftp_attr.MSG_CHANNEL_SUCCESS=paramiko.sftp_attr-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.sftp_client.MSG_CHANNEL_SUCCESS=paramiko.sftp_client-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.sftp_file.MSG_CHANNEL_SUCCESS=paramiko.sftp_file-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.sftp_handle.MSG_CHANNEL_SUCCESS=paramiko.sftp_handle-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.sftp_server.MSG_CHANNEL_SUCCESS=paramiko.sftp_server-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.sftp_si.MSG_CHANNEL_SUCCESS=paramiko.sftp_si-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.transport.MSG_CHANNEL_SUCCESS=paramiko.transport-module.html#MSG_CHANNEL_SUCCESS,Variable paramiko.util.MSG_CHANNEL_SUCCESS=paramiko.util-module.html#MSG_CHANNEL_SUCCESS"><a title="paramiko.auth_handler.MSG_CHANNEL_SUCCESS
-paramiko.channel.MSG_CHANNEL_SUCCESS
-paramiko.client.MSG_CHANNEL_SUCCESS
-paramiko.common.MSG_CHANNEL_SUCCESS
-paramiko.dsskey.MSG_CHANNEL_SUCCESS
-paramiko.hostkeys.MSG_CHANNEL_SUCCESS
-paramiko.kex_gex.MSG_CHANNEL_SUCCESS
-paramiko.kex_group1.MSG_CHANNEL_SUCCESS
-paramiko.packet.MSG_CHANNEL_SUCCESS
-paramiko.pkey.MSG_CHANNEL_SUCCESS
-paramiko.rsakey.MSG_CHANNEL_SUCCESS
-paramiko.server.MSG_CHANNEL_SUCCESS
-paramiko.sftp.MSG_CHANNEL_SUCCESS
-paramiko.sftp_attr.MSG_CHANNEL_SUCCESS
-paramiko.sftp_client.MSG_CHANNEL_SUCCESS
-paramiko.sftp_file.MSG_CHANNEL_SUCCESS
-paramiko.sftp_handle.MSG_CHANNEL_SUCCESS
-paramiko.sftp_server.MSG_CHANNEL_SUCCESS
-paramiko.sftp_si.MSG_CHANNEL_SUCCESS
-paramiko.transport.MSG_CHANNEL_SUCCESS
-paramiko.util.MSG_CHANNEL_SUCCESS" class="py-name" href="#" onclick="return doclink('link-597', 'MSG_CHANNEL_SUCCESS', 'link-597');">MSG_CHANNEL_SUCCESS</a></tt><tt class="py-op">:</tt> <tt id="link-598" class="py-name"><a title="paramiko.Channel" class="py-name" href="#" onclick="return doclink('link-598', 'Channel', 'link-6');">Channel</a></tt><tt class="py-op">.</tt><tt class="py-name">_request_success</tt><tt class="py-op">,</tt> </tt>
-<a name="L2091"></a><tt class="py-lineno">2091</tt> <tt class="py-line"> <tt id="link-599" class="py-name" targets="Variable paramiko.auth_handler.MSG_CHANNEL_FAILURE=paramiko.auth_handler-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.channel.MSG_CHANNEL_FAILURE=paramiko.channel-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.client.MSG_CHANNEL_FAILURE=paramiko.client-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.common.MSG_CHANNEL_FAILURE=paramiko.common-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.dsskey.MSG_CHANNEL_FAILURE=paramiko.dsskey-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.hostkeys.MSG_CHANNEL_FAILURE=paramiko.hostkeys-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.kex_gex.MSG_CHANNEL_FAILURE=paramiko.kex_gex-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.kex_group1.MSG_CHANNEL_FAILURE=paramiko.kex_group1-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.packet.MSG_CHANNEL_FAILURE=paramiko.packet-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.pkey.MSG_CHANNEL_FAILURE=paramiko.pkey-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.rsakey.MSG_CHANNEL_FAILURE=paramiko.rsakey-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.server.MSG_CHANNEL_FAILURE=paramiko.server-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.sftp.MSG_CHANNEL_FAILURE=paramiko.sftp-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.sftp_attr.MSG_CHANNEL_FAILURE=paramiko.sftp_attr-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.sftp_client.MSG_CHANNEL_FAILURE=paramiko.sftp_client-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.sftp_file.MSG_CHANNEL_FAILURE=paramiko.sftp_file-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.sftp_handle.MSG_CHANNEL_FAILURE=paramiko.sftp_handle-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.sftp_server.MSG_CHANNEL_FAILURE=paramiko.sftp_server-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.sftp_si.MSG_CHANNEL_FAILURE=paramiko.sftp_si-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.transport.MSG_CHANNEL_FAILURE=paramiko.transport-module.html#MSG_CHANNEL_FAILURE,Variable paramiko.util.MSG_CHANNEL_FAILURE=paramiko.util-module.html#MSG_CHANNEL_FAILURE"><a title="paramiko.auth_handler.MSG_CHANNEL_FAILURE
-paramiko.channel.MSG_CHANNEL_FAILURE
-paramiko.client.MSG_CHANNEL_FAILURE
-paramiko.common.MSG_CHANNEL_FAILURE
-paramiko.dsskey.MSG_CHANNEL_FAILURE
-paramiko.hostkeys.MSG_CHANNEL_FAILURE
-paramiko.kex_gex.MSG_CHANNEL_FAILURE
-paramiko.kex_group1.MSG_CHANNEL_FAILURE
-paramiko.packet.MSG_CHANNEL_FAILURE
-paramiko.pkey.MSG_CHANNEL_FAILURE
-paramiko.rsakey.MSG_CHANNEL_FAILURE
-paramiko.server.MSG_CHANNEL_FAILURE
-paramiko.sftp.MSG_CHANNEL_FAILURE
-paramiko.sftp_attr.MSG_CHANNEL_FAILURE
-paramiko.sftp_client.MSG_CHANNEL_FAILURE
-paramiko.sftp_file.MSG_CHANNEL_FAILURE
-paramiko.sftp_handle.MSG_CHANNEL_FAILURE
-paramiko.sftp_server.MSG_CHANNEL_FAILURE
-paramiko.sftp_si.MSG_CHANNEL_FAILURE
-paramiko.transport.MSG_CHANNEL_FAILURE
-paramiko.util.MSG_CHANNEL_FAILURE" class="py-name" href="#" onclick="return doclink('link-599', 'MSG_CHANNEL_FAILURE', 'link-599');">MSG_CHANNEL_FAILURE</a></tt><tt class="py-op">:</tt> <tt id="link-600" class="py-name"><a title="paramiko.Channel" class="py-name" href="#" onclick="return doclink('link-600', 'Channel', 'link-6');">Channel</a></tt><tt class="py-op">.</tt><tt class="py-name">_request_failed</tt><tt class="py-op">,</tt> </tt>
-<a name="L2092"></a><tt class="py-lineno">2092</tt> <tt class="py-line"> <tt id="link-601" class="py-name" targets="Variable paramiko.auth_handler.MSG_CHANNEL_DATA=paramiko.auth_handler-module.html#MSG_CHANNEL_DATA,Variable paramiko.channel.MSG_CHANNEL_DATA=paramiko.channel-module.html#MSG_CHANNEL_DATA,Variable paramiko.client.MSG_CHANNEL_DATA=paramiko.client-module.html#MSG_CHANNEL_DATA,Variable paramiko.common.MSG_CHANNEL_DATA=paramiko.common-module.html#MSG_CHANNEL_DATA,Variable paramiko.dsskey.MSG_CHANNEL_DATA=paramiko.dsskey-module.html#MSG_CHANNEL_DATA,Variable paramiko.hostkeys.MSG_CHANNEL_DATA=paramiko.hostkeys-module.html#MSG_CHANNEL_DATA,Variable paramiko.kex_gex.MSG_CHANNEL_DATA=paramiko.kex_gex-module.html#MSG_CHANNEL_DATA,Variable paramiko.kex_group1.MSG_CHANNEL_DATA=paramiko.kex_group1-module.html#MSG_CHANNEL_DATA,Variable paramiko.packet.MSG_CHANNEL_DATA=paramiko.packet-module.html#MSG_CHANNEL_DATA,Variable paramiko.pkey.MSG_CHANNEL_DATA=paramiko.pkey-module.html#MSG_CHANNEL_DATA,Variable paramiko.rsakey.MSG_CHANNEL_DATA=paramiko.rsakey-module.html#MSG_CHANNEL_DATA,Variable paramiko.server.MSG_CHANNEL_DATA=paramiko.server-module.html#MSG_CHANNEL_DATA,Variable paramiko.sftp.MSG_CHANNEL_DATA=paramiko.sftp-module.html#MSG_CHANNEL_DATA,Variable paramiko.sftp_attr.MSG_CHANNEL_DATA=paramiko.sftp_attr-module.html#MSG_CHANNEL_DATA,Variable paramiko.sftp_client.MSG_CHANNEL_DATA=paramiko.sftp_client-module.html#MSG_CHANNEL_DATA,Variable paramiko.sftp_file.MSG_CHANNEL_DATA=paramiko.sftp_file-module.html#MSG_CHANNEL_DATA,Variable paramiko.sftp_handle.MSG_CHANNEL_DATA=paramiko.sftp_handle-module.html#MSG_CHANNEL_DATA,Variable paramiko.sftp_server.MSG_CHANNEL_DATA=paramiko.sftp_server-module.html#MSG_CHANNEL_DATA,Variable paramiko.sftp_si.MSG_CHANNEL_DATA=paramiko.sftp_si-module.html#MSG_CHANNEL_DATA,Variable paramiko.transport.MSG_CHANNEL_DATA=paramiko.transport-module.html#MSG_CHANNEL_DATA,Variable paramiko.util.MSG_CHANNEL_DATA=paramiko.util-module.html#MSG_CHANNEL_DATA"><a title="paramiko.auth_handler.MSG_CHANNEL_DATA
-paramiko.channel.MSG_CHANNEL_DATA
-paramiko.client.MSG_CHANNEL_DATA
-paramiko.common.MSG_CHANNEL_DATA
-paramiko.dsskey.MSG_CHANNEL_DATA
-paramiko.hostkeys.MSG_CHANNEL_DATA
-paramiko.kex_gex.MSG_CHANNEL_DATA
-paramiko.kex_group1.MSG_CHANNEL_DATA
-paramiko.packet.MSG_CHANNEL_DATA
-paramiko.pkey.MSG_CHANNEL_DATA
-paramiko.rsakey.MSG_CHANNEL_DATA
-paramiko.server.MSG_CHANNEL_DATA
-paramiko.sftp.MSG_CHANNEL_DATA
-paramiko.sftp_attr.MSG_CHANNEL_DATA
-paramiko.sftp_client.MSG_CHANNEL_DATA
-paramiko.sftp_file.MSG_CHANNEL_DATA
-paramiko.sftp_handle.MSG_CHANNEL_DATA
-paramiko.sftp_server.MSG_CHANNEL_DATA
-paramiko.sftp_si.MSG_CHANNEL_DATA
-paramiko.transport.MSG_CHANNEL_DATA
-paramiko.util.MSG_CHANNEL_DATA" class="py-name" href="#" onclick="return doclink('link-601', 'MSG_CHANNEL_DATA', 'link-601');">MSG_CHANNEL_DATA</a></tt><tt class="py-op">:</tt> <tt id="link-602" class="py-name"><a title="paramiko.Channel" class="py-name" href="#" onclick="return doclink('link-602', 'Channel', 'link-6');">Channel</a></tt><tt class="py-op">.</tt><tt class="py-name">_feed</tt><tt class="py-op">,</tt> </tt>
-<a name="L2093"></a><tt class="py-lineno">2093</tt> <tt class="py-line"> <tt id="link-603" class="py-name" targets="Variable paramiko.auth_handler.MSG_CHANNEL_EXTENDED_DATA=paramiko.auth_handler-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.channel.MSG_CHANNEL_EXTENDED_DATA=paramiko.channel-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.client.MSG_CHANNEL_EXTENDED_DATA=paramiko.client-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.common.MSG_CHANNEL_EXTENDED_DATA=paramiko.common-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.dsskey.MSG_CHANNEL_EXTENDED_DATA=paramiko.dsskey-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.hostkeys.MSG_CHANNEL_EXTENDED_DATA=paramiko.hostkeys-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.kex_gex.MSG_CHANNEL_EXTENDED_DATA=paramiko.kex_gex-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.kex_group1.MSG_CHANNEL_EXTENDED_DATA=paramiko.kex_group1-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.packet.MSG_CHANNEL_EXTENDED_DATA=paramiko.packet-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.pkey.MSG_CHANNEL_EXTENDED_DATA=paramiko.pkey-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.rsakey.MSG_CHANNEL_EXTENDED_DATA=paramiko.rsakey-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.server.MSG_CHANNEL_EXTENDED_DATA=paramiko.server-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.sftp.MSG_CHANNEL_EXTENDED_DATA=paramiko.sftp-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.sftp_attr.MSG_CHANNEL_EXTENDED_DATA=paramiko.sftp_attr-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.sftp_client.MSG_CHANNEL_EXTENDED_DATA=paramiko.sftp_client-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.sftp_file.MSG_CHANNEL_EXTENDED_DATA=paramiko.sftp_file-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.sftp_handle.MSG_CHANNEL_EXTENDED_DATA=paramiko.sftp_handle-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.sftp_server.MSG_CHANNEL_EXTENDED_DATA=paramiko.sftp_server-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.sftp_si.MSG_CHANNEL_EXTENDED_DATA=paramiko.sftp_si-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.transport.MSG_CHANNEL_EXTENDED_DATA=paramiko.transport-module.html#MSG_CHANNEL_EXTENDED_DATA,Variable paramiko.util.MSG_CHANNEL_EXTENDED_DATA=paramiko.util-module.html#MSG_CHANNEL_EXTENDED_DATA"><a title="paramiko.auth_handler.MSG_CHANNEL_EXTENDED_DATA
-paramiko.channel.MSG_CHANNEL_EXTENDED_DATA
-paramiko.client.MSG_CHANNEL_EXTENDED_DATA
-paramiko.common.MSG_CHANNEL_EXTENDED_DATA
-paramiko.dsskey.MSG_CHANNEL_EXTENDED_DATA
-paramiko.hostkeys.MSG_CHANNEL_EXTENDED_DATA
-paramiko.kex_gex.MSG_CHANNEL_EXTENDED_DATA
-paramiko.kex_group1.MSG_CHANNEL_EXTENDED_DATA
-paramiko.packet.MSG_CHANNEL_EXTENDED_DATA
-paramiko.pkey.MSG_CHANNEL_EXTENDED_DATA
-paramiko.rsakey.MSG_CHANNEL_EXTENDED_DATA
-paramiko.server.MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp.MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp_attr.MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp_client.MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp_file.MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp_handle.MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp_server.MSG_CHANNEL_EXTENDED_DATA
-paramiko.sftp_si.MSG_CHANNEL_EXTENDED_DATA
-paramiko.transport.MSG_CHANNEL_EXTENDED_DATA
-paramiko.util.MSG_CHANNEL_EXTENDED_DATA" class="py-name" href="#" onclick="return doclink('link-603', 'MSG_CHANNEL_EXTENDED_DATA', 'link-603');">MSG_CHANNEL_EXTENDED_DATA</a></tt><tt class="py-op">:</tt> <tt id="link-604" class="py-name"><a title="paramiko.Channel" class="py-name" href="#" onclick="return doclink('link-604', 'Channel', 'link-6');">Channel</a></tt><tt class="py-op">.</tt><tt class="py-name">_feed_extended</tt><tt class="py-op">,</tt> </tt>
-<a name="L2094"></a><tt class="py-lineno">2094</tt> <tt class="py-line"> <tt id="link-605" class="py-name" targets="Variable paramiko.auth_handler.MSG_CHANNEL_WINDOW_ADJUST=paramiko.auth_handler-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.channel.MSG_CHANNEL_WINDOW_ADJUST=paramiko.channel-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.client.MSG_CHANNEL_WINDOW_ADJUST=paramiko.client-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.common.MSG_CHANNEL_WINDOW_ADJUST=paramiko.common-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.dsskey.MSG_CHANNEL_WINDOW_ADJUST=paramiko.dsskey-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.hostkeys.MSG_CHANNEL_WINDOW_ADJUST=paramiko.hostkeys-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.kex_gex.MSG_CHANNEL_WINDOW_ADJUST=paramiko.kex_gex-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.kex_group1.MSG_CHANNEL_WINDOW_ADJUST=paramiko.kex_group1-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.packet.MSG_CHANNEL_WINDOW_ADJUST=paramiko.packet-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.pkey.MSG_CHANNEL_WINDOW_ADJUST=paramiko.pkey-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.rsakey.MSG_CHANNEL_WINDOW_ADJUST=paramiko.rsakey-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.server.MSG_CHANNEL_WINDOW_ADJUST=paramiko.server-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.sftp.MSG_CHANNEL_WINDOW_ADJUST=paramiko.sftp-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.sftp_attr.MSG_CHANNEL_WINDOW_ADJUST=paramiko.sftp_attr-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.sftp_client.MSG_CHANNEL_WINDOW_ADJUST=paramiko.sftp_client-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.sftp_file.MSG_CHANNEL_WINDOW_ADJUST=paramiko.sftp_file-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.sftp_handle.MSG_CHANNEL_WINDOW_ADJUST=paramiko.sftp_handle-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.sftp_server.MSG_CHANNEL_WINDOW_ADJUST=paramiko.sftp_server-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.sftp_si.MSG_CHANNEL_WINDOW_ADJUST=paramiko.sftp_si-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.transport.MSG_CHANNEL_WINDOW_ADJUST=paramiko.transport-module.html#MSG_CHANNEL_WINDOW_ADJUST,Variable paramiko.util.MSG_CHANNEL_WINDOW_ADJUST=paramiko.util-module.html#MSG_CHANNEL_WINDOW_ADJUST"><a title="paramiko.auth_handler.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.channel.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.client.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.common.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.dsskey.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.hostkeys.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.kex_gex.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.kex_group1.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.packet.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.pkey.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.rsakey.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.server.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_attr.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_client.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_file.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_handle.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_server.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.sftp_si.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.transport.MSG_CHANNEL_WINDOW_ADJUST
-paramiko.util.MSG_CHANNEL_WINDOW_ADJUST" class="py-name" href="#" onclick="return doclink('link-605', 'MSG_CHANNEL_WINDOW_ADJUST', 'link-605');">MSG_CHANNEL_WINDOW_ADJUST</a></tt><tt class="py-op">:</tt> <tt id="link-606" class="py-name"><a title="paramiko.Channel" class="py-name" href="#" onclick="return doclink('link-606', 'Channel', 'link-6');">Channel</a></tt><tt class="py-op">.</tt><tt class="py-name">_window_adjust</tt><tt class="py-op">,</tt> </tt>
-<a name="L2095"></a><tt class="py-lineno">2095</tt> <tt class="py-line"> <tt id="link-607" class="py-name" targets="Variable paramiko.auth_handler.MSG_CHANNEL_REQUEST=paramiko.auth_handler-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.channel.MSG_CHANNEL_REQUEST=paramiko.channel-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.client.MSG_CHANNEL_REQUEST=paramiko.client-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.common.MSG_CHANNEL_REQUEST=paramiko.common-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.dsskey.MSG_CHANNEL_REQUEST=paramiko.dsskey-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.hostkeys.MSG_CHANNEL_REQUEST=paramiko.hostkeys-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.kex_gex.MSG_CHANNEL_REQUEST=paramiko.kex_gex-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.kex_group1.MSG_CHANNEL_REQUEST=paramiko.kex_group1-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.packet.MSG_CHANNEL_REQUEST=paramiko.packet-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.pkey.MSG_CHANNEL_REQUEST=paramiko.pkey-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.rsakey.MSG_CHANNEL_REQUEST=paramiko.rsakey-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.server.MSG_CHANNEL_REQUEST=paramiko.server-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.sftp.MSG_CHANNEL_REQUEST=paramiko.sftp-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.sftp_attr.MSG_CHANNEL_REQUEST=paramiko.sftp_attr-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.sftp_client.MSG_CHANNEL_REQUEST=paramiko.sftp_client-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.sftp_file.MSG_CHANNEL_REQUEST=paramiko.sftp_file-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.sftp_handle.MSG_CHANNEL_REQUEST=paramiko.sftp_handle-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.sftp_server.MSG_CHANNEL_REQUEST=paramiko.sftp_server-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.sftp_si.MSG_CHANNEL_REQUEST=paramiko.sftp_si-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.transport.MSG_CHANNEL_REQUEST=paramiko.transport-module.html#MSG_CHANNEL_REQUEST,Variable paramiko.util.MSG_CHANNEL_REQUEST=paramiko.util-module.html#MSG_CHANNEL_REQUEST"><a title="paramiko.auth_handler.MSG_CHANNEL_REQUEST
-paramiko.channel.MSG_CHANNEL_REQUEST
-paramiko.client.MSG_CHANNEL_REQUEST
-paramiko.common.MSG_CHANNEL_REQUEST
-paramiko.dsskey.MSG_CHANNEL_REQUEST
-paramiko.hostkeys.MSG_CHANNEL_REQUEST
-paramiko.kex_gex.MSG_CHANNEL_REQUEST
-paramiko.kex_group1.MSG_CHANNEL_REQUEST
-paramiko.packet.MSG_CHANNEL_REQUEST
-paramiko.pkey.MSG_CHANNEL_REQUEST
-paramiko.rsakey.MSG_CHANNEL_REQUEST
-paramiko.server.MSG_CHANNEL_REQUEST
-paramiko.sftp.MSG_CHANNEL_REQUEST
-paramiko.sftp_attr.MSG_CHANNEL_REQUEST
-paramiko.sftp_client.MSG_CHANNEL_REQUEST
-paramiko.sftp_file.MSG_CHANNEL_REQUEST
-paramiko.sftp_handle.MSG_CHANNEL_REQUEST
-paramiko.sftp_server.MSG_CHANNEL_REQUEST
-paramiko.sftp_si.MSG_CHANNEL_REQUEST
-paramiko.transport.MSG_CHANNEL_REQUEST
-paramiko.util.MSG_CHANNEL_REQUEST" class="py-name" href="#" onclick="return doclink('link-607', 'MSG_CHANNEL_REQUEST', 'link-607');">MSG_CHANNEL_REQUEST</a></tt><tt class="py-op">:</tt> <tt id="link-608" class="py-name"><a title="paramiko.Channel" class="py-name" href="#" onclick="return doclink('link-608', 'Channel', 'link-6');">Channel</a></tt><tt class="py-op">.</tt><tt class="py-name">_handle_request</tt><tt class="py-op">,</tt> </tt>
-<a name="L2096"></a><tt class="py-lineno">2096</tt> <tt class="py-line"> <tt id="link-609" class="py-name" targets="Variable paramiko.auth_handler.MSG_CHANNEL_EOF=paramiko.auth_handler-module.html#MSG_CHANNEL_EOF,Variable paramiko.channel.MSG_CHANNEL_EOF=paramiko.channel-module.html#MSG_CHANNEL_EOF,Variable paramiko.client.MSG_CHANNEL_EOF=paramiko.client-module.html#MSG_CHANNEL_EOF,Variable paramiko.common.MSG_CHANNEL_EOF=paramiko.common-module.html#MSG_CHANNEL_EOF,Variable paramiko.dsskey.MSG_CHANNEL_EOF=paramiko.dsskey-module.html#MSG_CHANNEL_EOF,Variable paramiko.hostkeys.MSG_CHANNEL_EOF=paramiko.hostkeys-module.html#MSG_CHANNEL_EOF,Variable paramiko.kex_gex.MSG_CHANNEL_EOF=paramiko.kex_gex-module.html#MSG_CHANNEL_EOF,Variable paramiko.kex_group1.MSG_CHANNEL_EOF=paramiko.kex_group1-module.html#MSG_CHANNEL_EOF,Variable paramiko.packet.MSG_CHANNEL_EOF=paramiko.packet-module.html#MSG_CHANNEL_EOF,Variable paramiko.pkey.MSG_CHANNEL_EOF=paramiko.pkey-module.html#MSG_CHANNEL_EOF,Variable paramiko.rsakey.MSG_CHANNEL_EOF=paramiko.rsakey-module.html#MSG_CHANNEL_EOF,Variable paramiko.server.MSG_CHANNEL_EOF=paramiko.server-module.html#MSG_CHANNEL_EOF,Variable paramiko.sftp.MSG_CHANNEL_EOF=paramiko.sftp-module.html#MSG_CHANNEL_EOF,Variable paramiko.sftp_attr.MSG_CHANNEL_EOF=paramiko.sftp_attr-module.html#MSG_CHANNEL_EOF,Variable paramiko.sftp_client.MSG_CHANNEL_EOF=paramiko.sftp_client-module.html#MSG_CHANNEL_EOF,Variable paramiko.sftp_file.MSG_CHANNEL_EOF=paramiko.sftp_file-module.html#MSG_CHANNEL_EOF,Variable paramiko.sftp_handle.MSG_CHANNEL_EOF=paramiko.sftp_handle-module.html#MSG_CHANNEL_EOF,Variable paramiko.sftp_server.MSG_CHANNEL_EOF=paramiko.sftp_server-module.html#MSG_CHANNEL_EOF,Variable paramiko.sftp_si.MSG_CHANNEL_EOF=paramiko.sftp_si-module.html#MSG_CHANNEL_EOF,Variable paramiko.transport.MSG_CHANNEL_EOF=paramiko.transport-module.html#MSG_CHANNEL_EOF,Variable paramiko.util.MSG_CHANNEL_EOF=paramiko.util-module.html#MSG_CHANNEL_EOF"><a title="paramiko.auth_handler.MSG_CHANNEL_EOF
-paramiko.channel.MSG_CHANNEL_EOF
-paramiko.client.MSG_CHANNEL_EOF
-paramiko.common.MSG_CHANNEL_EOF
-paramiko.dsskey.MSG_CHANNEL_EOF
-paramiko.hostkeys.MSG_CHANNEL_EOF
-paramiko.kex_gex.MSG_CHANNEL_EOF
-paramiko.kex_group1.MSG_CHANNEL_EOF
-paramiko.packet.MSG_CHANNEL_EOF
-paramiko.pkey.MSG_CHANNEL_EOF
-paramiko.rsakey.MSG_CHANNEL_EOF
-paramiko.server.MSG_CHANNEL_EOF
-paramiko.sftp.MSG_CHANNEL_EOF
-paramiko.sftp_attr.MSG_CHANNEL_EOF
-paramiko.sftp_client.MSG_CHANNEL_EOF
-paramiko.sftp_file.MSG_CHANNEL_EOF
-paramiko.sftp_handle.MSG_CHANNEL_EOF
-paramiko.sftp_server.MSG_CHANNEL_EOF
-paramiko.sftp_si.MSG_CHANNEL_EOF
-paramiko.transport.MSG_CHANNEL_EOF
-paramiko.util.MSG_CHANNEL_EOF" class="py-name" href="#" onclick="return doclink('link-609', 'MSG_CHANNEL_EOF', 'link-609');">MSG_CHANNEL_EOF</a></tt><tt class="py-op">:</tt> <tt id="link-610" class="py-name"><a title="paramiko.Channel" class="py-name" href="#" onclick="return doclink('link-610', 'Channel', 'link-6');">Channel</a></tt><tt class="py-op">.</tt><tt class="py-name">_handle_eof</tt><tt class="py-op">,</tt> </tt>
-<a name="L2097"></a><tt class="py-lineno">2097</tt> <tt class="py-line"> <tt id="link-611" class="py-name" targets="Variable paramiko.auth_handler.MSG_CHANNEL_CLOSE=paramiko.auth_handler-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.channel.MSG_CHANNEL_CLOSE=paramiko.channel-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.client.MSG_CHANNEL_CLOSE=paramiko.client-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.common.MSG_CHANNEL_CLOSE=paramiko.common-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.dsskey.MSG_CHANNEL_CLOSE=paramiko.dsskey-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.hostkeys.MSG_CHANNEL_CLOSE=paramiko.hostkeys-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.kex_gex.MSG_CHANNEL_CLOSE=paramiko.kex_gex-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.kex_group1.MSG_CHANNEL_CLOSE=paramiko.kex_group1-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.packet.MSG_CHANNEL_CLOSE=paramiko.packet-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.pkey.MSG_CHANNEL_CLOSE=paramiko.pkey-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.rsakey.MSG_CHANNEL_CLOSE=paramiko.rsakey-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.server.MSG_CHANNEL_CLOSE=paramiko.server-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.sftp.MSG_CHANNEL_CLOSE=paramiko.sftp-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.sftp_attr.MSG_CHANNEL_CLOSE=paramiko.sftp_attr-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.sftp_client.MSG_CHANNEL_CLOSE=paramiko.sftp_client-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.sftp_file.MSG_CHANNEL_CLOSE=paramiko.sftp_file-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.sftp_handle.MSG_CHANNEL_CLOSE=paramiko.sftp_handle-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.sftp_server.MSG_CHANNEL_CLOSE=paramiko.sftp_server-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.sftp_si.MSG_CHANNEL_CLOSE=paramiko.sftp_si-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.transport.MSG_CHANNEL_CLOSE=paramiko.transport-module.html#MSG_CHANNEL_CLOSE,Variable paramiko.util.MSG_CHANNEL_CLOSE=paramiko.util-module.html#MSG_CHANNEL_CLOSE"><a title="paramiko.auth_handler.MSG_CHANNEL_CLOSE
-paramiko.channel.MSG_CHANNEL_CLOSE
-paramiko.client.MSG_CHANNEL_CLOSE
-paramiko.common.MSG_CHANNEL_CLOSE
-paramiko.dsskey.MSG_CHANNEL_CLOSE
-paramiko.hostkeys.MSG_CHANNEL_CLOSE
-paramiko.kex_gex.MSG_CHANNEL_CLOSE
-paramiko.kex_group1.MSG_CHANNEL_CLOSE
-paramiko.packet.MSG_CHANNEL_CLOSE
-paramiko.pkey.MSG_CHANNEL_CLOSE
-paramiko.rsakey.MSG_CHANNEL_CLOSE
-paramiko.server.MSG_CHANNEL_CLOSE
-paramiko.sftp.MSG_CHANNEL_CLOSE
-paramiko.sftp_attr.MSG_CHANNEL_CLOSE
-paramiko.sftp_client.MSG_CHANNEL_CLOSE
-paramiko.sftp_file.MSG_CHANNEL_CLOSE
-paramiko.sftp_handle.MSG_CHANNEL_CLOSE
-paramiko.sftp_server.MSG_CHANNEL_CLOSE
-paramiko.sftp_si.MSG_CHANNEL_CLOSE
-paramiko.transport.MSG_CHANNEL_CLOSE
-paramiko.util.MSG_CHANNEL_CLOSE" class="py-name" href="#" onclick="return doclink('link-611', 'MSG_CHANNEL_CLOSE', 'link-611');">MSG_CHANNEL_CLOSE</a></tt><tt class="py-op">:</tt> <tt id="link-612" class="py-name"><a title="paramiko.Channel" class="py-name" href="#" onclick="return doclink('link-612', 'Channel', 'link-6');">Channel</a></tt><tt class="py-op">.</tt><tt class="py-name">_handle_close</tt><tt class="py-op">,</tt> </tt>
-<a name="L2098"></a><tt class="py-lineno">2098</tt> <tt class="py-line"> <tt class="py-op">}</tt> </tt>
-</div><a name="L2099"></a><tt class="py-lineno">2099</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:06 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.transport.ChannelMap-class.html b/docs/paramiko.transport.ChannelMap-class.html
deleted file mode 100644
index b9d6b70..0000000
--- a/docs/paramiko.transport.ChannelMap-class.html
+++ /dev/null
@@ -1,289 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.transport.ChannelMap</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- <a href="paramiko.transport-module.html" onclick="show_private();">Module&nbsp;transport</a> ::
- Class&nbsp;ChannelMap
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.transport.ChannelMap-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class ChannelMap</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.transport-pysrc.html#ChannelMap">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- <strong class="uidshort">ChannelMap</strong>
-</pre>
-
-<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.transport.ChannelMap-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- x.__init__(...) initializes x; see x.__class__.__doc__ for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html#ChannelMap.__init__">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="put"></a><span class="summary-sig-name">put</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">chanid</span>,
- <span class="summary-sig-arg">chan</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html#ChannelMap.put">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="get"></a><span class="summary-sig-name">get</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">chanid</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html#ChannelMap.get">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="delete"></a><span class="summary-sig-name">delete</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">chanid</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html#ChannelMap.delete">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="values"></a><span class="summary-sig-name">values</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html#ChannelMap.values">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__len__"></a><span class="summary-sig-name">__len__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.transport-pysrc.html#ChannelMap.__len__">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.transport-pysrc.html#ChannelMap.__init__">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see x.__class__.__doc__ for
- signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:04 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.util-module.html b/docs/paramiko.util-module.html
deleted file mode 100644
index e35440e..0000000
--- a/docs/paramiko.util-module.html
+++ /dev/null
@@ -1,965 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.util</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;util
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.util-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module util</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.util-pysrc.html">source&nbsp;code</a></span></p>
-<p>Useful functions used by the rest of paramiko.</p>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Classes</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.util.enumerate-class.html" class="summary-name">enumerate</a>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.util.PFilter-class.html" class="summary-name">PFilter</a>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.util.Counter-class.html" class="summary-name">Counter</a><br />
- Stateful counter for CTR mode crypto
- </td>
- </tr>
-</table>
-<!-- ==================== FUNCTIONS ==================== -->
-<a name="section-Functions"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Functions</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="inflate_long"></a><span class="summary-sig-name">inflate_long</span>(<span class="summary-sig-arg">s</span>,
- <span class="summary-sig-arg">always_positive</span>=<span class="summary-sig-default">False</span>)</span><br />
- turns a normalized byte string into a long-int (adapted from
- Crypto.Util.number)</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.util-pysrc.html#inflate_long">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="deflate_long"></a><span class="summary-sig-name">deflate_long</span>(<span class="summary-sig-arg">n</span>,
- <span class="summary-sig-arg">add_sign_padding</span>=<span class="summary-sig-default">True</span>)</span><br />
- turns a long-int into a normalized byte string (adapted from
- Crypto.Util.number)</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.util-pysrc.html#deflate_long">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="format_binary_weird"></a><span class="summary-sig-name">format_binary_weird</span>(<span class="summary-sig-arg">data</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.util-pysrc.html#format_binary_weird">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="format_binary"></a><span class="summary-sig-name">format_binary</span>(<span class="summary-sig-arg">data</span>,
- <span class="summary-sig-arg">prefix</span>=<span class="summary-sig-default"><code class="variable-quote">'</code><code class="variable-string"></code><code class="variable-quote">'</code></span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.util-pysrc.html#format_binary">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="format_binary_line"></a><span class="summary-sig-name">format_binary_line</span>(<span class="summary-sig-arg">data</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.util-pysrc.html#format_binary_line">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="hexify"></a><span class="summary-sig-name">hexify</span>(<span class="summary-sig-arg">s</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.util-pysrc.html#hexify">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="unhexify"></a><span class="summary-sig-name">unhexify</span>(<span class="summary-sig-arg">s</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.util-pysrc.html#unhexify">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="safe_string"></a><span class="summary-sig-name">safe_string</span>(<span class="summary-sig-arg">s</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.util-pysrc.html#safe_string">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="bit_length"></a><span class="summary-sig-name">bit_length</span>(<span class="summary-sig-arg">n</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.util-pysrc.html#bit_length">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="tb_strings"></a><span class="summary-sig-name">tb_strings</span>()</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.util-pysrc.html#tb_strings">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">string</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.util-module.html#generate_key_bytes" class="summary-sig-name">generate_key_bytes</a>(<span class="summary-sig-arg">hashclass</span>,
- <span class="summary-sig-arg">salt</span>,
- <span class="summary-sig-arg">key</span>,
- <span class="summary-sig-arg">nbytes</span>)</span><br />
- Given a password, passphrase, or other human-source key, scramble it
- through a secure hash into some keyworthy bytes.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.util-pysrc.html#generate_key_bytes">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">dict(hostname, dict(keytype, <a href="paramiko.PKey-class.html"
- class="link">PKey</a>))</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.util-module.html#load_host_keys" class="summary-sig-name">load_host_keys</a>(<span class="summary-sig-arg">filename</span>)</span><br />
- Read a file of known SSH host keys, in the format used by openssh,
- and return a compound dict of <code>hostname -&gt; keytype
- -&gt;</code> <a href="paramiko.PKey-class.html"
- class="link">PKey</a>.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.util-pysrc.html#load_host_keys">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="parse_ssh_config"></a><span class="summary-sig-name">parse_ssh_config</span>(<span class="summary-sig-arg">file_obj</span>)</span><br />
- Provided only as a backward-compatible wrapper around <a
- href="paramiko.SSHConfig-class.html" class="link">SSHConfig</a>.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.util-pysrc.html#parse_ssh_config">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="lookup_ssh_host_config"></a><span class="summary-sig-name">lookup_ssh_host_config</span>(<span class="summary-sig-arg">hostname</span>,
- <span class="summary-sig-arg">config</span>)</span><br />
- Provided only as a backward-compatible wrapper around <a
- href="paramiko.SSHConfig-class.html" class="link">SSHConfig</a>.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.util-pysrc.html#lookup_ssh_host_config">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="mod_inverse"></a><span class="summary-sig-name">mod_inverse</span>(<span class="summary-sig-arg">x</span>,
- <span class="summary-sig-arg">m</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.util-pysrc.html#mod_inverse">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="get_thread_id"></a><span class="summary-sig-name">get_thread_id</span>()</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.util-pysrc.html#get_thread_id">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="log_to_file"></a><span class="summary-sig-name">log_to_file</span>(<span class="summary-sig-arg">filename</span>,
- <span class="summary-sig-arg">level</span>=<span class="summary-sig-default">10</span>)</span><br />
- send paramiko logs to a logfile, if they're not already going
- somewhere</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.util-pysrc.html#log_to_file">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="get_logger"></a><span class="summary-sig-name">get_logger</span>(<span class="summary-sig-arg">name</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.util-pysrc.html#get_logger">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_FAILED"></a><span class="summary-name">AUTH_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_PARTIALLY_SUCCESSFUL"></a><span class="summary-name">AUTH_PARTIALLY_SUCCESSFUL</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="AUTH_SUCCESSFUL"></a><span class="summary-name">AUTH_SUCCESSFUL</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.util-module.html#CONNECTION_FAILED_CODE" class="summary-name">CONNECTION_FAILED_CODE</a> = <code title="{1: 'Administratively prohibited',
- 2: 'Connect failed',
- 3: 'Unknown channel type',
- 4: 'Resource shortage'}"><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">:</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="CRITICAL"></a><span class="summary-name">CRITICAL</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DEBUG"></a><span class="summary-name">DEBUG</span> = <code title="10">10</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_AUTH_CANCELLED_BY_USER"></a><span class="summary-name">DISCONNECT_AUTH_CANCELLED_BY_USER</span> = <code title="13">13</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE"></a><span class="summary-name">DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</span> = <code title="14">14</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="DISCONNECT_SERVICE_NOT_AVAILABLE"></a><span class="summary-name">DISCONNECT_SERVICE_NOT_AVAILABLE</span> = <code title="7">7</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="ERROR"></a><span class="summary-name">ERROR</span> = <code title="40">40</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="INFO"></a><span class="summary-name">INFO</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_CLOSE"></a><span class="summary-name">MSG_CHANNEL_CLOSE</span> = <code title="97">97</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_DATA"></a><span class="summary-name">MSG_CHANNEL_DATA</span> = <code title="94">94</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EOF"></a><span class="summary-name">MSG_CHANNEL_EOF</span> = <code title="96">96</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_EXTENDED_DATA"></a><span class="summary-name">MSG_CHANNEL_EXTENDED_DATA</span> = <code title="95">95</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_FAILURE"></a><span class="summary-name">MSG_CHANNEL_FAILURE</span> = <code title="100">100</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN"></a><span class="summary-name">MSG_CHANNEL_OPEN</span> = <code title="90">90</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_FAILURE"></a><span class="summary-name">MSG_CHANNEL_OPEN_FAILURE</span> = <code title="92">92</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_OPEN_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_OPEN_SUCCESS</span> = <code title="91">91</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_REQUEST"></a><span class="summary-name">MSG_CHANNEL_REQUEST</span> = <code title="98">98</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_SUCCESS"></a><span class="summary-name">MSG_CHANNEL_SUCCESS</span> = <code title="99">99</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_CHANNEL_WINDOW_ADJUST"></a><span class="summary-name">MSG_CHANNEL_WINDOW_ADJUST</span> = <code title="93">93</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DEBUG"></a><span class="summary-name">MSG_DEBUG</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_DISCONNECT"></a><span class="summary-name">MSG_DISCONNECT</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_GLOBAL_REQUEST"></a><span class="summary-name">MSG_GLOBAL_REQUEST</span> = <code title="80">80</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_IGNORE"></a><span class="summary-name">MSG_IGNORE</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_KEXINIT"></a><span class="summary-name">MSG_KEXINIT</span> = <code title="20">20</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.util-module.html#MSG_NAMES" class="summary-name">MSG_NAMES</a> = <code title="{1: 'disconnect',
- 2: 'ignore',
- 3: 'unimplemented',
- 4: 'debug',
- 5: 'service-request',
- 6: 'service-accept',
- 20: 'kexinit',
- 21: 'newkeys',
-..."><code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">, </code>2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">, </code>3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code><code class="variable-ellipsis">...</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_NEWKEYS"></a><span class="summary-name">MSG_NEWKEYS</span> = <code title="21">21</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_FAILURE"></a><span class="summary-name">MSG_REQUEST_FAILURE</span> = <code title="82">82</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_REQUEST_SUCCESS"></a><span class="summary-name">MSG_REQUEST_SUCCESS</span> = <code title="81">81</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_ACCEPT"></a><span class="summary-name">MSG_SERVICE_ACCEPT</span> = <code title="6">6</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_SERVICE_REQUEST"></a><span class="summary-name">MSG_SERVICE_REQUEST</span> = <code title="5">5</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_UNIMPLEMENTED"></a><span class="summary-name">MSG_UNIMPLEMENTED</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_BANNER"></a><span class="summary-name">MSG_USERAUTH_BANNER</span> = <code title="53">53</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_FAILURE"></a><span class="summary-name">MSG_USERAUTH_FAILURE</span> = <code title="51">51</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_REQUEST"></a><span class="summary-name">MSG_USERAUTH_INFO_REQUEST</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_INFO_RESPONSE"></a><span class="summary-name">MSG_USERAUTH_INFO_RESPONSE</span> = <code title="61">61</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_PK_OK"></a><span class="summary-name">MSG_USERAUTH_PK_OK</span> = <code title="60">60</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_REQUEST"></a><span class="summary-name">MSG_USERAUTH_REQUEST</span> = <code title="50">50</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="MSG_USERAUTH_SUCCESS"></a><span class="summary-name">MSG_USERAUTH_SUCCESS</span> = <code title="52">52</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED"></a><span class="summary-name">OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</span> = <code title="1">1</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_CONNECT_FAILED"></a><span class="summary-name">OPEN_FAILED_CONNECT_FAILED</span> = <code title="2">2</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_RESOURCE_SHORTAGE"></a><span class="summary-name">OPEN_FAILED_RESOURCE_SHORTAGE</span> = <code title="4">4</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_FAILED_UNKNOWN_CHANNEL_TYPE"></a><span class="summary-name">OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</span> = <code title="3">3</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="OPEN_SUCCEEDED"></a><span class="summary-name">OPEN_SUCCEEDED</span> = <code title="0">0</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="PY22"></a><span class="summary-name">PY22</span> = <code title="False">False</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="WARNING"></a><span class="summary-name">WARNING</span> = <code title="30">30</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'paramiko'"><code class="variable-quote">'</code><code class="variable-string">paramiko</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="rng"></a><span class="summary-name">rng</span> = <code title="Random.new()">Random.new()</code>
- </td>
- </tr>
-</table>
-<!-- ==================== FUNCTION DETAILS ==================== -->
-<a name="section-FunctionDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Function Details</span></td>
-</tr>
-</table>
-<a name="generate_key_bytes"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">generate_key_bytes</span>(<span class="sig-arg">hashclass</span>,
- <span class="sig-arg">salt</span>,
- <span class="sig-arg">key</span>,
- <span class="sig-arg">nbytes</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.util-pysrc.html#generate_key_bytes">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Given a password, passphrase, or other human-source key, scramble it
- through a secure hash into some keyworthy bytes. This specific algorithm
- is used for encrypting/decrypting private key files.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>hashclass</code></strong> (<code class="link">Crypto.Hash</code>) - class from <code class="link">Crypto.Hash</code> that can be used
- as a secure hashing function (like <code>MD5</code> or
- <code>SHA</code>).</li>
- <li><strong class="pname"><code>salt</code></strong> (string) - data to salt the hash with.</li>
- <li><strong class="pname"><code>key</code></strong> (string) - human-entered password or passphrase.</li>
- <li><strong class="pname"><code>nbytes</code></strong> (int) - number of bytes to generate.</li>
- </ul></dd>
- <dt>Returns: string</dt>
- <dd>key data</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="load_host_keys"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">load_host_keys</span>(<span class="sig-arg">filename</span>)</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.util-pysrc.html#load_host_keys">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Read a file of known SSH host keys, in the format used by openssh, and
- return a compound dict of <code>hostname -&gt; keytype -&gt;</code> <a
- href="paramiko.PKey-class.html" class="link">PKey</a>. The hostname may
- be an IP address or DNS name. The keytype will be either
- <code>&quot;ssh-rsa&quot;</code> or <code>&quot;ssh-dss&quot;</code>.</p>
- <p>This type of file unfortunately doesn't exist on Windows, but on
- posix, it will usually be stored in
- <code>os.path.expanduser(&quot;~/.ssh/known_hosts&quot;)</code>.</p>
- <p>Since 1.5.3, this is just a wrapper around <a
- href="paramiko.HostKeys-class.html" class="link">HostKeys</a>.</p>
- <dl class="fields">
- <dt>Parameters:</dt>
- <dd><ul class="nomargin-top">
- <li><strong class="pname"><code>filename</code></strong> (str) - name of the file to read host keys from</li>
- </ul></dd>
- <dt>Returns: dict(hostname, dict(keytype, <a href="paramiko.PKey-class.html"
- class="link">PKey</a>))</dt>
- <dd>dict of host keys, indexed by hostname and then keytype</dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== VARIABLES DETAILS ==================== -->
-<a name="section-VariablesDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables Details</span></td>
-</tr>
-</table>
-<a name="CONNECTION_FAILED_CODE"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">CONNECTION_FAILED_CODE</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Administratively prohibited</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Connect failed</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Unknown channel type</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">Resource shortage</code><code class="variable-quote">'</code><code class="variable-group">}</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<a name="MSG_NAMES"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <h3 class="epydoc">MSG_NAMES</h3>
-
- <dl class="fields">
- </dl>
- <dl class="fields">
- <dt>Value:</dt>
- <dd><table><tr><td><pre class="variable">
-<code class="variable-group">{</code>1<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">disconnect</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 2<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">ignore</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 3<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">unimplemented</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 4<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">debug</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 5<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-request</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 6<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">service-accept</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 20<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">kexinit</code><code class="variable-quote">'</code><code class="variable-op">,</code>
- 21<code class="variable-op">: </code><code class="variable-quote">'</code><code class="variable-string">newkeys</code><code class="variable-quote">'</code><code class="variable-op">,</code>
-<code class="variable-ellipsis">...</code>
-</pre></td></tr></table>
-</dd>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.util-pysrc.html b/docs/paramiko.util-pysrc.html
deleted file mode 100644
index 9a922d6..0000000
--- a/docs/paramiko.util-pysrc.html
+++ /dev/null
@@ -1,434 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.util</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;util
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.util-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.util-module.html">Module paramiko.util</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2003-2007 Robey Pointer &lt;robeypointer@gmail.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring">Useful functions used by the rest of paramiko.</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">__future__</tt> <tt class="py-keyword">import</tt> <tt class="py-name">generators</tt> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">array</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">binascii</tt> <tt class="py-keyword">import</tt> <tt class="py-name">hexlify</tt><tt class="py-op">,</tt> <tt class="py-name">unhexlify</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">struct</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">traceback</tt> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">threading</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package paramiko=paramiko-module.html"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-0', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Module paramiko.common=paramiko.common-module.html"><a title="paramiko.common" class="py-name" href="#" onclick="return doclink('link-1', 'common', 'link-1');">common</a></tt> <tt class="py-keyword">import</tt> <tt class="py-op">*</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-2" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-2', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Module paramiko.config=paramiko.config-module.html"><a title="paramiko.config" class="py-name" href="#" onclick="return doclink('link-3', 'config', 'link-3');">config</a></tt> <tt class="py-keyword">import</tt> <tt id="link-4" class="py-name" targets="Class paramiko.SSHConfig=paramiko.SSHConfig-class.html"><a title="paramiko.SSHConfig" class="py-name" href="#" onclick="return doclink('link-4', 'SSHConfig', 'link-4');">SSHConfig</a></tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"><tt class="py-comment"># Change by RogerB - python &lt; 2.3 doesn't have enumerate so we implement it</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"><tt class="py-keyword">if</tt> <tt class="py-name">sys</tt><tt class="py-op">.</tt><tt class="py-name">version_info</tt> <tt class="py-op">&lt;</tt> <tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">,</tt><tt class="py-number">3</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="enumerate"></a><div id="enumerate-def"><a name="L38"></a><tt class="py-lineno"> 38</tt> <a class="py-toggle" href="#" id="enumerate-toggle" onclick="return toggle('enumerate');">-</a><tt class="py-line"> <tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.util.enumerate-class.html">enumerate</a><tt class="py-op">:</tt> </tt>
-</div><div id="enumerate-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="enumerate-expanded"><a name="enumerate.__init__"></a><div id="enumerate.__init__-def"><a name="L39"></a><tt class="py-lineno"> 39</tt> <a class="py-toggle" href="#" id="enumerate.__init__-toggle" onclick="return toggle('enumerate.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.util.enumerate-class.html#__init__">__init__</a> <tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">sequence</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="enumerate.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++++++++++"></div><div id="enumerate.__init__-expanded"><a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">sequence</tt> <tt class="py-op">=</tt> <tt class="py-name">sequence</tt> </tt>
-</div><a name="enumerate.__iter__"></a><div id="enumerate.__iter__-def"><a name="L41"></a><tt class="py-lineno"> 41</tt> <a class="py-toggle" href="#" id="enumerate.__iter__-toggle" onclick="return toggle('enumerate.__iter__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.util.enumerate-class.html#__iter__">__iter__</a> <tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="enumerate.__iter__-collapsed" style="display:none;" pad="+++" indent="++++++++++++++++"></div><div id="enumerate.__iter__-expanded"><a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">item</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">sequence</tt><tt class="py-op">:</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> <tt class="py-keyword">yield</tt> <tt class="py-op">(</tt><tt class="py-name">count</tt><tt class="py-op">,</tt> <tt class="py-name">item</tt><tt class="py-op">)</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> <tt class="py-name">count</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-</div></div><a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"> </tt>
-<a name="inflate_long"></a><div id="inflate_long-def"><a name="L48"></a><tt class="py-lineno"> 48</tt> <a class="py-toggle" href="#" id="inflate_long-toggle" onclick="return toggle('inflate_long');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.util-module.html#inflate_long">inflate_long</a><tt class="py-op">(</tt><tt class="py-param">s</tt><tt class="py-op">,</tt> <tt class="py-param">always_positive</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="inflate_long-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="inflate_long-expanded"><a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"> <tt class="py-docstring">"turns a normalized byte string into a long-int (adapted from Crypto.Util.number)"</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt class="py-number">0L</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> <tt class="py-name">negative</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">always_positive</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">ord</tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;=</tt> <tt class="py-number">0x80</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt> <tt class="py-line"> <tt class="py-name">negative</tt> <tt class="py-op">=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">)</tt> <tt class="py-op">%</tt> <tt class="py-number">4</tt><tt class="py-op">:</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-name">filler</tt> <tt class="py-op">=</tt> <tt class="py-string">'\x00'</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">negative</tt><tt class="py-op">:</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-name">filler</tt> <tt class="py-op">=</tt> <tt class="py-string">'\xff'</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-name">s</tt> <tt class="py-op">=</tt> <tt class="py-name">filler</tt> <tt class="py-op">*</tt> <tt class="py-op">(</tt><tt class="py-number">4</tt> <tt class="py-op">-</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">)</tt> <tt class="py-op">%</tt> <tt class="py-number">4</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-name">s</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt class="py-name">range</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-number">4</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-name">out</tt> <tt class="py-op">&lt;&lt;</tt> <tt class="py-number">32</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-name">struct</tt><tt class="py-op">.</tt><tt class="py-name">unpack</tt><tt class="py-op">(</tt><tt class="py-string">'&gt;I'</tt><tt class="py-op">,</tt> <tt class="py-name">s</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">:</tt><tt class="py-name">i</tt><tt class="py-op">+</tt><tt class="py-number">4</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">negative</tt><tt class="py-op">:</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">-=</tt> <tt class="py-op">(</tt><tt class="py-number">1L</tt> <tt class="py-op">&lt;&lt;</tt> <tt class="py-op">(</tt><tt class="py-number">8</tt> <tt class="py-op">*</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">out</tt> </tt>
-</div><a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> </tt>
-<a name="deflate_long"></a><div id="deflate_long-def"><a name="L65"></a><tt class="py-lineno"> 65</tt> <a class="py-toggle" href="#" id="deflate_long-toggle" onclick="return toggle('deflate_long');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.util-module.html#deflate_long">deflate_long</a><tt class="py-op">(</tt><tt class="py-param">n</tt><tt class="py-op">,</tt> <tt class="py-param">add_sign_padding</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="deflate_long-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="deflate_long-expanded"><a name="L66"></a><tt class="py-lineno"> 66</tt> <tt class="py-line"> <tt class="py-docstring">"turns a long-int into a normalized byte string (adapted from Crypto.Util.number)"</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-comment"># after much testing, this algorithm was deemed to be the fastest</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"> <tt class="py-name">s</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"> <tt class="py-name">n</tt> <tt class="py-op">=</tt> <tt class="py-name">long</tt><tt class="py-op">(</tt><tt class="py-name">n</tt><tt class="py-op">)</tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-op">(</tt><tt class="py-name">n</tt> <tt class="py-op">!=</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">n</tt> <tt class="py-op">!=</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"> <tt class="py-name">s</tt> <tt class="py-op">=</tt> <tt class="py-name">struct</tt><tt class="py-op">.</tt><tt class="py-name">pack</tt><tt class="py-op">(</tt><tt class="py-string">'&gt;I'</tt><tt class="py-op">,</tt> <tt class="py-name">n</tt> <tt class="py-op">&amp;</tt> <tt class="py-number">0xffffffffL</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-name">s</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"> <tt class="py-name">n</tt> <tt class="py-op">=</tt> <tt class="py-name">n</tt> <tt class="py-op">&gt;&gt;</tt> <tt class="py-number">32</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-comment"># strip off leading zeros, FFs</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt id="link-5" class="py-name" targets="Class paramiko.util.enumerate=paramiko.util.enumerate-class.html"><a title="paramiko.util.enumerate" class="py-name" href="#" onclick="return doclink('link-5', 'enumerate', 'link-5');">enumerate</a></tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">n</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> <tt class="py-op">!=</tt> <tt class="py-string">'\000'</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">n</tt> <tt class="py-op">==</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt> <tt class="py-op">!=</tt> <tt class="py-string">'\xff'</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt> <tt class="py-line"> <tt class="py-keyword">break</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-comment"># degenerate case, n was either 0 or -1</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">,</tt><tt class="py-op">)</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">n</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> <tt class="py-name">s</tt> <tt class="py-op">=</tt> <tt class="py-string">'\000'</tt> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-name">s</tt> <tt class="py-op">=</tt> <tt class="py-string">'\xff'</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-name">s</tt> <tt class="py-op">=</tt> <tt class="py-name">s</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">:</tt><tt class="py-op">]</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">add_sign_padding</tt><tt class="py-op">:</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">n</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">ord</tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;=</tt> <tt class="py-number">0x80</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-name">s</tt> <tt class="py-op">=</tt> <tt class="py-string">'\x00'</tt> <tt class="py-op">+</tt> <tt class="py-name">s</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">n</tt> <tt class="py-op">==</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">ord</tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">&lt;</tt> <tt class="py-number">0x80</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-name">s</tt> <tt class="py-op">=</tt> <tt class="py-string">'\xff'</tt> <tt class="py-op">+</tt> <tt class="py-name">s</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">s</tt> </tt>
-</div><a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> </tt>
-<a name="format_binary_weird"></a><div id="format_binary_weird-def"><a name="L94"></a><tt class="py-lineno"> 94</tt> <a class="py-toggle" href="#" id="format_binary_weird-toggle" onclick="return toggle('format_binary_weird');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.util-module.html#format_binary_weird">format_binary_weird</a><tt class="py-op">(</tt><tt class="py-param">data</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="format_binary_weird-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="format_binary_weird-expanded"><a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">i</tt> <tt class="py-keyword">in</tt> <tt id="link-6" class="py-name"><a title="paramiko.util.enumerate" class="py-name" href="#" onclick="return doclink('link-6', 'enumerate', 'link-5');">enumerate</a></tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">+=</tt> <tt class="py-string">'%02X'</tt> <tt class="py-op">%</tt> <tt class="py-name">ord</tt><tt class="py-op">(</tt><tt class="py-name">i</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">%</tt> <tt class="py-number">2</tt><tt class="py-op">:</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">+=</tt> <tt class="py-string">' '</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">i</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> <tt class="py-op">%</tt> <tt class="py-number">16</tt> <tt class="py-op">==</tt> <tt class="py-number">15</tt><tt class="py-op">:</tt> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">+=</tt> <tt class="py-string">'\n'</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">out</tt> </tt>
-</div><a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> </tt>
-<a name="format_binary"></a><div id="format_binary-def"><a name="L104"></a><tt class="py-lineno">104</tt> <a class="py-toggle" href="#" id="format_binary-toggle" onclick="return toggle('format_binary');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.util-module.html#format_binary">format_binary</a><tt class="py-op">(</tt><tt class="py-param">data</tt><tt class="py-op">,</tt> <tt class="py-param">prefix</tt><tt class="py-op">=</tt><tt class="py-string">''</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="format_binary-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="format_binary-expanded"><a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-name">x</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;</tt> <tt class="py-name">x</tt> <tt class="py-op">+</tt> <tt class="py-number">16</tt><tt class="py-op">:</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt class="py-name">out</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt id="link-7" class="py-name" targets="Function paramiko.util.format_binary_line()=paramiko.util-module.html#format_binary_line"><a title="paramiko.util.format_binary_line" class="py-name" href="#" onclick="return doclink('link-7', 'format_binary_line', 'link-7');">format_binary_line</a></tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">[</tt><tt class="py-name">x</tt><tt class="py-op">:</tt><tt class="py-name">x</tt><tt class="py-op">+</tt><tt class="py-number">16</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-name">x</tt> <tt class="py-op">+=</tt> <tt class="py-number">16</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">x</tt> <tt class="py-op">&lt;</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> <tt class="py-name">out</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt id="link-8" class="py-name"><a title="paramiko.util.format_binary_line" class="py-name" href="#" onclick="return doclink('link-8', 'format_binary_line', 'link-7');">format_binary_line</a></tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">[</tt><tt class="py-name">x</tt><tt class="py-op">:</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-op">[</tt><tt class="py-name">prefix</tt> <tt class="py-op">+</tt> <tt class="py-name">x</tt> <tt class="py-keyword">for</tt> <tt class="py-name">x</tt> <tt class="py-keyword">in</tt> <tt class="py-name">out</tt><tt class="py-op">]</tt> </tt>
-</div><a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> </tt>
-<a name="format_binary_line"></a><div id="format_binary_line-def"><a name="L114"></a><tt class="py-lineno">114</tt> <a class="py-toggle" href="#" id="format_binary_line-toggle" onclick="return toggle('format_binary_line');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.util-module.html#format_binary_line">format_binary_line</a><tt class="py-op">(</tt><tt class="py-param">data</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="format_binary_line-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="format_binary_line-expanded"><a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-name">left</tt> <tt class="py-op">=</tt> <tt class="py-string">' '</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-string">'%02X'</tt> <tt class="py-op">%</tt> <tt class="py-name">ord</tt><tt class="py-op">(</tt><tt class="py-name">c</tt><tt class="py-op">)</tt> <tt class="py-keyword">for</tt> <tt class="py-name">c</tt> <tt class="py-keyword">in</tt> <tt class="py-name">data</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-name">right</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-op">(</tt><tt class="py-string">'.%c..'</tt> <tt class="py-op">%</tt> <tt class="py-name">c</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-op">(</tt><tt class="py-name">ord</tt><tt class="py-op">(</tt><tt class="py-name">c</tt><tt class="py-op">)</tt><tt class="py-op">+</tt><tt class="py-number">63</tt><tt class="py-op">)</tt><tt class="py-op">//</tt><tt class="py-number">95</tt><tt class="py-op">]</tt> <tt class="py-keyword">for</tt> <tt class="py-name">c</tt> <tt class="py-keyword">in</tt> <tt class="py-name">data</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">'%-50s %s'</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">left</tt><tt class="py-op">,</tt> <tt class="py-name">right</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> </tt>
-<a name="hexify"></a><div id="hexify-def"><a name="L119"></a><tt class="py-lineno">119</tt> <a class="py-toggle" href="#" id="hexify-toggle" onclick="return toggle('hexify');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.util-module.html#hexify">hexify</a><tt class="py-op">(</tt><tt class="py-param">s</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="hexify-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="hexify-expanded"><a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">hexlify</tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">upper</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> </tt>
-<a name="unhexify"></a><div id="unhexify-def"><a name="L122"></a><tt class="py-lineno">122</tt> <a class="py-toggle" href="#" id="unhexify-toggle" onclick="return toggle('unhexify');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.util-module.html#unhexify">unhexify</a><tt class="py-op">(</tt><tt class="py-param">s</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="unhexify-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="unhexify-expanded"><a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">unhexlify</tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L124"></a><tt class="py-lineno">124</tt> <tt class="py-line"> </tt>
-<a name="safe_string"></a><div id="safe_string-def"><a name="L125"></a><tt class="py-lineno">125</tt> <a class="py-toggle" href="#" id="safe_string-toggle" onclick="return toggle('safe_string');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.util-module.html#safe_string">safe_string</a><tt class="py-op">(</tt><tt class="py-param">s</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="safe_string-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="safe_string-expanded"><a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">c</tt> <tt class="py-keyword">in</tt> <tt class="py-name">s</tt><tt class="py-op">:</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">ord</tt><tt class="py-op">(</tt><tt class="py-name">c</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;=</tt> <tt class="py-number">32</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-op">(</tt><tt class="py-name">ord</tt><tt class="py-op">(</tt><tt class="py-name">c</tt><tt class="py-op">)</tt> <tt class="py-op">&lt;=</tt> <tt class="py-number">127</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">+=</tt> <tt class="py-name">c</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> <tt class="py-name">out</tt> <tt class="py-op">+=</tt> <tt class="py-string">'%%%02X'</tt> <tt class="py-op">%</tt> <tt class="py-name">ord</tt><tt class="py-op">(</tt><tt class="py-name">c</tt><tt class="py-op">)</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">out</tt> </tt>
-</div><a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"><tt class="py-comment"># ''.join([['%%%02X' % ord(c), c][(ord(c) &gt;= 32) and (ord(c) &lt;= 127)] for c in s])</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt> <tt class="py-line"> </tt>
-<a name="bit_length"></a><div id="bit_length-def"><a name="L136"></a><tt class="py-lineno">136</tt> <a class="py-toggle" href="#" id="bit_length-toggle" onclick="return toggle('bit_length');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.util-module.html#bit_length">bit_length</a><tt class="py-op">(</tt><tt class="py-param">n</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="bit_length-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="bit_length-expanded"><a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> <tt class="py-name">norm</tt> <tt class="py-op">=</tt> <tt id="link-9" class="py-name" targets="Function paramiko.util.deflate_long()=paramiko.util-module.html#deflate_long"><a title="paramiko.util.deflate_long" class="py-name" href="#" onclick="return doclink('link-9', 'deflate_long', 'link-9');">deflate_long</a></tt><tt class="py-op">(</tt><tt class="py-name">n</tt><tt class="py-op">,</tt> <tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt> <tt class="py-line"> <tt class="py-name">hbyte</tt> <tt class="py-op">=</tt> <tt class="py-name">ord</tt><tt class="py-op">(</tt><tt class="py-name">norm</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">hbyte</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-number">1</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-name">bitlen</tt> <tt class="py-op">=</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">norm</tt><tt class="py-op">)</tt> <tt class="py-op">*</tt> <tt class="py-number">8</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-keyword">not</tt> <tt class="py-op">(</tt><tt class="py-name">hbyte</tt> <tt class="py-op">&amp;</tt> <tt class="py-number">0x80</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> <tt class="py-name">hbyte</tt> <tt class="py-op">&lt;&lt;=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-name">bitlen</tt> <tt class="py-op">-=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">bitlen</tt> </tt>
-</div><a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> </tt>
-<a name="tb_strings"></a><div id="tb_strings-def"><a name="L147"></a><tt class="py-lineno">147</tt> <a class="py-toggle" href="#" id="tb_strings-toggle" onclick="return toggle('tb_strings');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.util-module.html#tb_strings">tb_strings</a><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="tb_strings-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="tb_strings-expanded"><a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">''</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-name">traceback</tt><tt class="py-op">.</tt><tt class="py-name">format_exception</tt><tt class="py-op">(</tt><tt class="py-op">*</tt><tt class="py-name">sys</tt><tt class="py-op">.</tt><tt class="py-name">exc_info</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">'\n'</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> </tt>
-<a name="generate_key_bytes"></a><div id="generate_key_bytes-def"><a name="L150"></a><tt class="py-lineno">150</tt> <a class="py-toggle" href="#" id="generate_key_bytes-toggle" onclick="return toggle('generate_key_bytes');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.util-module.html#generate_key_bytes">generate_key_bytes</a><tt class="py-op">(</tt><tt class="py-param">hashclass</tt><tt class="py-op">,</tt> <tt class="py-param">salt</tt><tt class="py-op">,</tt> <tt class="py-param">key</tt><tt class="py-op">,</tt> <tt class="py-param">nbytes</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="generate_key_bytes-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="generate_key_bytes-expanded"><a name="L151"></a><tt class="py-lineno">151</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt> <tt class="py-line"><tt class="py-docstring"> Given a password, passphrase, or other human-source key, scramble it</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt> <tt class="py-line"><tt class="py-docstring"> through a secure hash into some keyworthy bytes. This specific algorithm</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt> <tt class="py-line"><tt class="py-docstring"> is used for encrypting/decrypting private key files.</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt> <tt class="py-line"><tt class="py-docstring"> @param hashclass: class from L{Crypto.Hash} that can be used as a secure</tt> </tt>
-<a name="L157"></a><tt class="py-lineno">157</tt> <tt class="py-line"><tt class="py-docstring"> hashing function (like C{MD5} or C{SHA}).</tt> </tt>
-<a name="L158"></a><tt class="py-lineno">158</tt> <tt class="py-line"><tt class="py-docstring"> @type hashclass: L{Crypto.Hash}</tt> </tt>
-<a name="L159"></a><tt class="py-lineno">159</tt> <tt class="py-line"><tt class="py-docstring"> @param salt: data to salt the hash with.</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt> <tt class="py-line"><tt class="py-docstring"> @type salt: string</tt> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt> <tt class="py-line"><tt class="py-docstring"> @param key: human-entered password or passphrase.</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt> <tt class="py-line"><tt class="py-docstring"> @type key: string</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt> <tt class="py-line"><tt class="py-docstring"> @param nbytes: number of bytes to generate.</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt> <tt class="py-line"><tt class="py-docstring"> @type nbytes: int</tt> </tt>
-<a name="L165"></a><tt class="py-lineno">165</tt> <tt class="py-line"><tt class="py-docstring"> @return: key data</tt> </tt>
-<a name="L166"></a><tt class="py-lineno">166</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: string</tt> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L168"></a><tt class="py-lineno">168</tt> <tt class="py-line"> <tt class="py-name">keydata</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt> <tt class="py-line"> <tt class="py-name">digest</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">salt</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">8</tt><tt class="py-op">:</tt> </tt>
-<a name="L171"></a><tt class="py-lineno">171</tt> <tt class="py-line"> <tt class="py-name">salt</tt> <tt class="py-op">=</tt> <tt class="py-name">salt</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-number">8</tt><tt class="py-op">]</tt> </tt>
-<a name="L172"></a><tt class="py-lineno">172</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">nbytes</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt> <tt class="py-line"> <tt class="py-name">hash_obj</tt> <tt class="py-op">=</tt> <tt class="py-name">hashclass</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name" targets="Class Method paramiko.util.Counter.new()=paramiko.util.Counter-class.html#new"><a title="paramiko.util.Counter.new" class="py-name" href="#" onclick="return doclink('link-10', 'new', 'link-10');">new</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">digest</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt> <tt class="py-line"> <tt class="py-name">hash_obj</tt><tt class="py-op">.</tt><tt class="py-name">update</tt><tt class="py-op">(</tt><tt class="py-name">digest</tt><tt class="py-op">)</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt> <tt class="py-line"> <tt class="py-name">hash_obj</tt><tt class="py-op">.</tt><tt class="py-name">update</tt><tt class="py-op">(</tt><tt class="py-name">key</tt><tt class="py-op">)</tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt> <tt class="py-line"> <tt class="py-name">hash_obj</tt><tt class="py-op">.</tt><tt class="py-name">update</tt><tt class="py-op">(</tt><tt class="py-name">salt</tt><tt class="py-op">)</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt> <tt class="py-line"> <tt class="py-name">digest</tt> <tt class="py-op">=</tt> <tt class="py-name">hash_obj</tt><tt class="py-op">.</tt><tt class="py-name">digest</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt> <tt class="py-line"> <tt class="py-name">size</tt> <tt class="py-op">=</tt> <tt class="py-name">min</tt><tt class="py-op">(</tt><tt class="py-name">nbytes</tt><tt class="py-op">,</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">digest</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt> <tt class="py-line"> <tt class="py-name">keydata</tt> <tt class="py-op">+=</tt> <tt class="py-name">digest</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-name">size</tt><tt class="py-op">]</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt> <tt class="py-line"> <tt class="py-name">nbytes</tt> <tt class="py-op">-=</tt> <tt class="py-name">size</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">keydata</tt> </tt>
-</div><a name="L183"></a><tt class="py-lineno">183</tt> <tt class="py-line"> </tt>
-<a name="load_host_keys"></a><div id="load_host_keys-def"><a name="L184"></a><tt class="py-lineno">184</tt> <a class="py-toggle" href="#" id="load_host_keys-toggle" onclick="return toggle('load_host_keys');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.util-module.html#load_host_keys">load_host_keys</a><tt class="py-op">(</tt><tt class="py-param">filename</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="load_host_keys-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="load_host_keys-expanded"><a name="L185"></a><tt class="py-lineno">185</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt> <tt class="py-line"><tt class="py-docstring"> Read a file of known SSH host keys, in the format used by openssh, and</tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt> <tt class="py-line"><tt class="py-docstring"> return a compound dict of C{hostname -&gt; keytype -&gt;} L{PKey &lt;paramiko.pkey.PKey&gt;}.</tt> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt> <tt class="py-line"><tt class="py-docstring"> The hostname may be an IP address or DNS name. The keytype will be either</tt> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt> <tt class="py-line"><tt class="py-docstring"> C{"ssh-rsa"} or C{"ssh-dss"}.</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt> <tt class="py-line"><tt class="py-docstring"> This type of file unfortunately doesn't exist on Windows, but on posix,</tt> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt> <tt class="py-line"><tt class="py-docstring"> it will usually be stored in C{os.path.expanduser("~/.ssh/known_hosts")}.</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt> <tt class="py-line"><tt class="py-docstring"> Since 1.5.3, this is just a wrapper around L{HostKeys}.</tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt> <tt class="py-line"><tt class="py-docstring"> @param filename: name of the file to read host keys from</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt> <tt class="py-line"><tt class="py-docstring"> @type filename: str</tt> </tt>
-<a name="L198"></a><tt class="py-lineno">198</tt> <tt class="py-line"><tt class="py-docstring"> @return: dict of host keys, indexed by hostname and then keytype</tt> </tt>
-<a name="L199"></a><tt class="py-lineno">199</tt> <tt class="py-line"><tt class="py-docstring"> @rtype: dict(hostname, dict(keytype, L{PKey &lt;paramiko.pkey.PKey&gt;}))</tt> </tt>
-<a name="L200"></a><tt class="py-lineno">200</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt> <tt class="py-line"> <tt class="py-keyword">from</tt> <tt id="link-11" class="py-name"><a title="paramiko" class="py-name" href="#" onclick="return doclink('link-11', 'paramiko', 'link-0');">paramiko</a></tt><tt class="py-op">.</tt><tt id="link-12" class="py-name" targets="Module paramiko.hostkeys=paramiko.hostkeys-module.html"><a title="paramiko.hostkeys" class="py-name" href="#" onclick="return doclink('link-12', 'hostkeys', 'link-12');">hostkeys</a></tt> <tt class="py-keyword">import</tt> <tt id="link-13" class="py-name" targets="Class paramiko.HostKeys=paramiko.HostKeys-class.html"><a title="paramiko.HostKeys" class="py-name" href="#" onclick="return doclink('link-13', 'HostKeys', 'link-13');">HostKeys</a></tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-14" class="py-name"><a title="paramiko.HostKeys" class="py-name" href="#" onclick="return doclink('link-14', 'HostKeys', 'link-13');">HostKeys</a></tt><tt class="py-op">(</tt><tt class="py-name">filename</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L203"></a><tt class="py-lineno">203</tt> <tt class="py-line"> </tt>
-<a name="parse_ssh_config"></a><div id="parse_ssh_config-def"><a name="L204"></a><tt class="py-lineno">204</tt> <a class="py-toggle" href="#" id="parse_ssh_config-toggle" onclick="return toggle('parse_ssh_config');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.util-module.html#parse_ssh_config">parse_ssh_config</a><tt class="py-op">(</tt><tt class="py-param">file_obj</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="parse_ssh_config-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="parse_ssh_config-expanded"><a name="L205"></a><tt class="py-lineno">205</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L206"></a><tt class="py-lineno">206</tt> <tt class="py-line"><tt class="py-docstring"> Provided only as a backward-compatible wrapper around L{SSHConfig}.</tt> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L208"></a><tt class="py-lineno">208</tt> <tt class="py-line"> <tt id="link-15" class="py-name"><a title="paramiko.config" class="py-name" href="#" onclick="return doclink('link-15', 'config', 'link-3');">config</a></tt> <tt class="py-op">=</tt> <tt id="link-16" class="py-name"><a title="paramiko.SSHConfig" class="py-name" href="#" onclick="return doclink('link-16', 'SSHConfig', 'link-4');">SSHConfig</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt> <tt class="py-line"> <tt id="link-17" class="py-name"><a title="paramiko.config" class="py-name" href="#" onclick="return doclink('link-17', 'config', 'link-3');">config</a></tt><tt class="py-op">.</tt><tt id="link-18" class="py-name" targets="Method paramiko.SSHConfig.parse()=paramiko.SSHConfig-class.html#parse"><a title="paramiko.SSHConfig.parse" class="py-name" href="#" onclick="return doclink('link-18', 'parse', 'link-18');">parse</a></tt><tt class="py-op">(</tt><tt class="py-name">file_obj</tt><tt class="py-op">)</tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-19" class="py-name"><a title="paramiko.config" class="py-name" href="#" onclick="return doclink('link-19', 'config', 'link-3');">config</a></tt> </tt>
-</div><a name="L211"></a><tt class="py-lineno">211</tt> <tt class="py-line"> </tt>
-<a name="lookup_ssh_host_config"></a><div id="lookup_ssh_host_config-def"><a name="L212"></a><tt class="py-lineno">212</tt> <a class="py-toggle" href="#" id="lookup_ssh_host_config-toggle" onclick="return toggle('lookup_ssh_host_config');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.util-module.html#lookup_ssh_host_config">lookup_ssh_host_config</a><tt class="py-op">(</tt><tt class="py-param">hostname</tt><tt class="py-op">,</tt> <tt class="py-param">config</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="lookup_ssh_host_config-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="lookup_ssh_host_config-expanded"><a name="L213"></a><tt class="py-lineno">213</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L214"></a><tt class="py-lineno">214</tt> <tt class="py-line"><tt class="py-docstring"> Provided only as a backward-compatible wrapper around L{SSHConfig}.</tt> </tt>
-<a name="L215"></a><tt class="py-lineno">215</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L216"></a><tt class="py-lineno">216</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-20" class="py-name"><a title="paramiko.config" class="py-name" href="#" onclick="return doclink('link-20', 'config', 'link-3');">config</a></tt><tt class="py-op">.</tt><tt id="link-21" class="py-name" targets="Method paramiko.HostKeys.lookup()=paramiko.HostKeys-class.html#lookup,Method paramiko.SSHConfig.lookup()=paramiko.SSHConfig-class.html#lookup"><a title="paramiko.HostKeys.lookup
-paramiko.SSHConfig.lookup" class="py-name" href="#" onclick="return doclink('link-21', 'lookup', 'link-21');">lookup</a></tt><tt class="py-op">(</tt><tt class="py-name">hostname</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L217"></a><tt class="py-lineno">217</tt> <tt class="py-line"> </tt>
-<a name="mod_inverse"></a><div id="mod_inverse-def"><a name="L218"></a><tt class="py-lineno">218</tt> <a class="py-toggle" href="#" id="mod_inverse-toggle" onclick="return toggle('mod_inverse');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.util-module.html#mod_inverse">mod_inverse</a><tt class="py-op">(</tt><tt class="py-param">x</tt><tt class="py-op">,</tt> <tt class="py-param">m</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="mod_inverse-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="mod_inverse-expanded"><a name="L219"></a><tt class="py-lineno">219</tt> <tt class="py-line"> <tt class="py-comment"># it's crazy how small python can make this function.</tt> </tt>
-<a name="L220"></a><tt class="py-lineno">220</tt> <tt class="py-line"> <tt class="py-name">u1</tt><tt class="py-op">,</tt> <tt class="py-name">u2</tt><tt class="py-op">,</tt> <tt class="py-name">u3</tt> <tt class="py-op">=</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-name">m</tt> </tt>
-<a name="L221"></a><tt class="py-lineno">221</tt> <tt class="py-line"> <tt class="py-name">v1</tt><tt class="py-op">,</tt> <tt class="py-name">v2</tt><tt class="py-op">,</tt> <tt class="py-name">v3</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt><tt class="py-op">,</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">x</tt> </tt>
-<a name="L222"></a><tt class="py-lineno">222</tt> <tt class="py-line"> </tt>
-<a name="L223"></a><tt class="py-lineno">223</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">v3</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt> <tt class="py-line"> <tt class="py-name">q</tt> <tt class="py-op">=</tt> <tt class="py-name">u3</tt> <tt class="py-op">//</tt> <tt class="py-name">v3</tt> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt> <tt class="py-line"> <tt class="py-name">u1</tt><tt class="py-op">,</tt> <tt class="py-name">v1</tt> <tt class="py-op">=</tt> <tt class="py-name">v1</tt><tt class="py-op">,</tt> <tt class="py-name">u1</tt> <tt class="py-op">-</tt> <tt class="py-name">v1</tt> <tt class="py-op">*</tt> <tt class="py-name">q</tt> </tt>
-<a name="L226"></a><tt class="py-lineno">226</tt> <tt class="py-line"> <tt class="py-name">u2</tt><tt class="py-op">,</tt> <tt class="py-name">v2</tt> <tt class="py-op">=</tt> <tt class="py-name">v2</tt><tt class="py-op">,</tt> <tt class="py-name">u2</tt> <tt class="py-op">-</tt> <tt class="py-name">v2</tt> <tt class="py-op">*</tt> <tt class="py-name">q</tt> </tt>
-<a name="L227"></a><tt class="py-lineno">227</tt> <tt class="py-line"> <tt class="py-name">u3</tt><tt class="py-op">,</tt> <tt class="py-name">v3</tt> <tt class="py-op">=</tt> <tt class="py-name">v3</tt><tt class="py-op">,</tt> <tt class="py-name">u3</tt> <tt class="py-op">-</tt> <tt class="py-name">v3</tt> <tt class="py-op">*</tt> <tt class="py-name">q</tt> </tt>
-<a name="L228"></a><tt class="py-lineno">228</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">u2</tt> <tt class="py-op">&lt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L229"></a><tt class="py-lineno">229</tt> <tt class="py-line"> <tt class="py-name">u2</tt> <tt class="py-op">+=</tt> <tt class="py-name">m</tt> </tt>
-<a name="L230"></a><tt class="py-lineno">230</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">u2</tt> </tt>
-</div><a name="L231"></a><tt class="py-lineno">231</tt> <tt class="py-line"> </tt>
-<a name="L232"></a><tt class="py-lineno">232</tt> <tt class="py-line"><tt id="link-22" class="py-name" targets="Variable paramiko.util._g_thread_ids=paramiko.util-module.html#_g_thread_ids"><a title="paramiko.util._g_thread_ids" class="py-name" href="#" onclick="return doclink('link-22', '_g_thread_ids', 'link-22');">_g_thread_ids</a></tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt> <tt class="py-line"><tt id="link-23" class="py-name" targets="Variable paramiko.util._g_thread_counter=paramiko.util-module.html#_g_thread_counter"><a title="paramiko.util._g_thread_counter" class="py-name" href="#" onclick="return doclink('link-23', '_g_thread_counter', 'link-23');">_g_thread_counter</a></tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L234"></a><tt class="py-lineno">234</tt> <tt class="py-line"><tt id="link-24" class="py-name" targets="Variable paramiko.util._g_thread_lock=paramiko.util-module.html#_g_thread_lock"><a title="paramiko.util._g_thread_lock" class="py-name" href="#" onclick="return doclink('link-24', '_g_thread_lock', 'link-24');">_g_thread_lock</a></tt> <tt class="py-op">=</tt> <tt class="py-name">threading</tt><tt class="py-op">.</tt><tt class="py-name">Lock</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="get_thread_id"></a><div id="get_thread_id-def"><a name="L235"></a><tt class="py-lineno">235</tt> <a class="py-toggle" href="#" id="get_thread_id-toggle" onclick="return toggle('get_thread_id');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.util-module.html#get_thread_id">get_thread_id</a><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="get_thread_id-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="get_thread_id-expanded"><a name="L236"></a><tt class="py-lineno">236</tt> <tt class="py-line"> <tt class="py-keyword">global</tt> <tt id="link-25" class="py-name"><a title="paramiko.util._g_thread_ids" class="py-name" href="#" onclick="return doclink('link-25', '_g_thread_ids', 'link-22');">_g_thread_ids</a></tt><tt class="py-op">,</tt> <tt id="link-26" class="py-name"><a title="paramiko.util._g_thread_counter" class="py-name" href="#" onclick="return doclink('link-26', '_g_thread_counter', 'link-23');">_g_thread_counter</a></tt><tt class="py-op">,</tt> <tt id="link-27" class="py-name"><a title="paramiko.util._g_thread_lock" class="py-name" href="#" onclick="return doclink('link-27', '_g_thread_lock', 'link-24');">_g_thread_lock</a></tt> </tt>
-<a name="L237"></a><tt class="py-lineno">237</tt> <tt class="py-line"> <tt class="py-name">tid</tt> <tt class="py-op">=</tt> <tt class="py-name">id</tt><tt class="py-op">(</tt><tt class="py-name">threading</tt><tt class="py-op">.</tt><tt class="py-name">currentThread</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L238"></a><tt class="py-lineno">238</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L239"></a><tt class="py-lineno">239</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-28" class="py-name"><a title="paramiko.util._g_thread_ids" class="py-name" href="#" onclick="return doclink('link-28', '_g_thread_ids', 'link-22');">_g_thread_ids</a></tt><tt class="py-op">[</tt><tt class="py-name">tid</tt><tt class="py-op">]</tt> </tt>
-<a name="L240"></a><tt class="py-lineno">240</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">KeyError</tt><tt class="py-op">:</tt> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt> <tt class="py-line"> <tt id="link-29" class="py-name"><a title="paramiko.util._g_thread_lock" class="py-name" href="#" onclick="return doclink('link-29', '_g_thread_lock', 'link-24');">_g_thread_lock</a></tt><tt class="py-op">.</tt><tt class="py-name">acquire</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L242"></a><tt class="py-lineno">242</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L243"></a><tt class="py-lineno">243</tt> <tt class="py-line"> <tt id="link-30" class="py-name"><a title="paramiko.util._g_thread_counter" class="py-name" href="#" onclick="return doclink('link-30', '_g_thread_counter', 'link-23');">_g_thread_counter</a></tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L244"></a><tt class="py-lineno">244</tt> <tt class="py-line"> <tt class="py-name">ret</tt> <tt class="py-op">=</tt> <tt id="link-31" class="py-name"><a title="paramiko.util._g_thread_ids" class="py-name" href="#" onclick="return doclink('link-31', '_g_thread_ids', 'link-22');">_g_thread_ids</a></tt><tt class="py-op">[</tt><tt class="py-name">tid</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt id="link-32" class="py-name"><a title="paramiko.util._g_thread_counter" class="py-name" href="#" onclick="return doclink('link-32', '_g_thread_counter', 'link-23');">_g_thread_counter</a></tt> </tt>
-<a name="L245"></a><tt class="py-lineno">245</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L246"></a><tt class="py-lineno">246</tt> <tt class="py-line"> <tt id="link-33" class="py-name"><a title="paramiko.util._g_thread_lock" class="py-name" href="#" onclick="return doclink('link-33', '_g_thread_lock', 'link-24');">_g_thread_lock</a></tt><tt class="py-op">.</tt><tt class="py-name">release</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L247"></a><tt class="py-lineno">247</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">ret</tt> </tt>
-</div><a name="L248"></a><tt class="py-lineno">248</tt> <tt class="py-line"> </tt>
-<a name="log_to_file"></a><div id="log_to_file-def"><a name="L249"></a><tt class="py-lineno">249</tt> <a class="py-toggle" href="#" id="log_to_file-toggle" onclick="return toggle('log_to_file');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.util-module.html#log_to_file">log_to_file</a><tt class="py-op">(</tt><tt class="py-param">filename</tt><tt class="py-op">,</tt> <tt class="py-param">level</tt><tt class="py-op">=</tt><tt id="link-34" class="py-name" targets="Variable paramiko.auth_handler.DEBUG=paramiko.auth_handler-module.html#DEBUG,Variable paramiko.channel.DEBUG=paramiko.channel-module.html#DEBUG,Variable paramiko.client.DEBUG=paramiko.client-module.html#DEBUG,Variable paramiko.common.DEBUG=paramiko.common-module.html#DEBUG,Variable paramiko.dsskey.DEBUG=paramiko.dsskey-module.html#DEBUG,Variable paramiko.hostkeys.DEBUG=paramiko.hostkeys-module.html#DEBUG,Variable paramiko.kex_gex.DEBUG=paramiko.kex_gex-module.html#DEBUG,Variable paramiko.kex_group1.DEBUG=paramiko.kex_group1-module.html#DEBUG,Variable paramiko.logging22.DEBUG=paramiko.logging22-module.html#DEBUG,Variable paramiko.packet.DEBUG=paramiko.packet-module.html#DEBUG,Variable paramiko.pkey.DEBUG=paramiko.pkey-module.html#DEBUG,Variable paramiko.rsakey.DEBUG=paramiko.rsakey-module.html#DEBUG,Variable paramiko.server.DEBUG=paramiko.server-module.html#DEBUG,Variable paramiko.sftp.DEBUG=paramiko.sftp-module.html#DEBUG,Variable paramiko.sftp_attr.DEBUG=paramiko.sftp_attr-module.html#DEBUG,Variable paramiko.sftp_client.DEBUG=paramiko.sftp_client-module.html#DEBUG,Variable paramiko.sftp_file.DEBUG=paramiko.sftp_file-module.html#DEBUG,Variable paramiko.sftp_handle.DEBUG=paramiko.sftp_handle-module.html#DEBUG,Variable paramiko.sftp_server.DEBUG=paramiko.sftp_server-module.html#DEBUG,Variable paramiko.sftp_si.DEBUG=paramiko.sftp_si-module.html#DEBUG,Variable paramiko.transport.DEBUG=paramiko.transport-module.html#DEBUG,Variable paramiko.util.DEBUG=paramiko.util-module.html#DEBUG"><a title="paramiko.auth_handler.DEBUG
-paramiko.channel.DEBUG
-paramiko.client.DEBUG
-paramiko.common.DEBUG
-paramiko.dsskey.DEBUG
-paramiko.hostkeys.DEBUG
-paramiko.kex_gex.DEBUG
-paramiko.kex_group1.DEBUG
-paramiko.logging22.DEBUG
-paramiko.packet.DEBUG
-paramiko.pkey.DEBUG
-paramiko.rsakey.DEBUG
-paramiko.server.DEBUG
-paramiko.sftp.DEBUG
-paramiko.sftp_attr.DEBUG
-paramiko.sftp_client.DEBUG
-paramiko.sftp_file.DEBUG
-paramiko.sftp_handle.DEBUG
-paramiko.sftp_server.DEBUG
-paramiko.sftp_si.DEBUG
-paramiko.transport.DEBUG
-paramiko.util.DEBUG" class="py-name" href="#" onclick="return doclink('link-34', 'DEBUG', 'link-34');">DEBUG</a></tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="log_to_file-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="log_to_file-expanded"><a name="L250"></a><tt class="py-lineno">250</tt> <tt class="py-line"> <tt class="py-docstring">"send paramiko logs to a logfile, if they're not already going somewhere"</tt> </tt>
-<a name="L251"></a><tt class="py-lineno">251</tt> <tt class="py-line"> <tt class="py-name">l</tt> <tt class="py-op">=</tt> <tt class="py-name">logging</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name" targets="Function paramiko.logging22.getLogger()=paramiko.logging22-module.html#getLogger"><a title="paramiko.logging22.getLogger" class="py-name" href="#" onclick="return doclink('link-35', 'getLogger', 'link-35');">getLogger</a></tt><tt class="py-op">(</tt><tt class="py-string">"paramiko"</tt><tt class="py-op">)</tt> </tt>
-<a name="L252"></a><tt class="py-lineno">252</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">l</tt><tt class="py-op">.</tt><tt class="py-name">handlers</tt><tt class="py-op">)</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> </tt>
-<a name="L254"></a><tt class="py-lineno">254</tt> <tt class="py-line"> <tt class="py-name">l</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name" targets="Method paramiko.logging22.logger.setLevel()=paramiko.logging22.logger-class.html#setLevel"><a title="paramiko.logging22.logger.setLevel" class="py-name" href="#" onclick="return doclink('link-36', 'setLevel', 'link-36');">setLevel</a></tt><tt class="py-op">(</tt><tt class="py-name">level</tt><tt class="py-op">)</tt> </tt>
-<a name="L255"></a><tt class="py-lineno">255</tt> <tt class="py-line"> <tt class="py-name">f</tt> <tt class="py-op">=</tt> <tt id="link-37" class="py-name" targets="Method paramiko.SFTPServerInterface.open()=paramiko.SFTPServerInterface-class.html#open"><a title="paramiko.SFTPServerInterface.open" class="py-name" href="#" onclick="return doclink('link-37', 'open', 'link-37');">open</a></tt><tt class="py-op">(</tt><tt class="py-name">filename</tt><tt class="py-op">,</tt> <tt class="py-string">'w'</tt><tt class="py-op">)</tt> </tt>
-<a name="L256"></a><tt class="py-lineno">256</tt> <tt class="py-line"> <tt class="py-name">lh</tt> <tt class="py-op">=</tt> <tt class="py-name">logging</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name" targets="Class paramiko.logging22.StreamHandler=paramiko.logging22.StreamHandler-class.html"><a title="paramiko.logging22.StreamHandler" class="py-name" href="#" onclick="return doclink('link-38', 'StreamHandler', 'link-38');">StreamHandler</a></tt><tt class="py-op">(</tt><tt class="py-name">f</tt><tt class="py-op">)</tt> </tt>
-<a name="L257"></a><tt class="py-lineno">257</tt> <tt class="py-line"> <tt class="py-name">lh</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name" targets="Method paramiko.logging22.StreamHandler.setFormatter()=paramiko.logging22.StreamHandler-class.html#setFormatter"><a title="paramiko.logging22.StreamHandler.setFormatter" class="py-name" href="#" onclick="return doclink('link-39', 'setFormatter', 'link-39');">setFormatter</a></tt><tt class="py-op">(</tt><tt class="py-name">logging</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name" targets="Class paramiko.logging22.Formatter=paramiko.logging22.Formatter-class.html"><a title="paramiko.logging22.Formatter" class="py-name" href="#" onclick="return doclink('link-40', 'Formatter', 'link-40');">Formatter</a></tt><tt class="py-op">(</tt><tt class="py-string">'%(levelname)-.3s [%(asctime)s.%(msecs)03d] thr=%(_threadid)-3d %(name)s: %(message)s'</tt><tt class="py-op">,</tt> </tt>
-<a name="L258"></a><tt class="py-lineno">258</tt> <tt class="py-line"> <tt class="py-string">'%Y%m%d-%H:%M:%S'</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L259"></a><tt class="py-lineno">259</tt> <tt class="py-line"> <tt class="py-name">l</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name" targets="Method paramiko.logging22.logger.addHandler()=paramiko.logging22.logger-class.html#addHandler"><a title="paramiko.logging22.logger.addHandler" class="py-name" href="#" onclick="return doclink('link-41', 'addHandler', 'link-41');">addHandler</a></tt><tt class="py-op">(</tt><tt class="py-name">lh</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L260"></a><tt class="py-lineno">260</tt> <tt class="py-line"> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt> <tt class="py-line"><tt class="py-comment"># make only one filter object, so it doesn't get applied more than once</tt> </tt>
-<a name="PFilter"></a><div id="PFilter-def"><a name="L262"></a><tt class="py-lineno">262</tt> <a class="py-toggle" href="#" id="PFilter-toggle" onclick="return toggle('PFilter');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.util.PFilter-class.html">PFilter</a> <tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PFilter-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="PFilter-expanded"><a name="PFilter.filter"></a><div id="PFilter.filter-def"><a name="L263"></a><tt class="py-lineno">263</tt> <a class="py-toggle" href="#" id="PFilter.filter-toggle" onclick="return toggle('PFilter.filter');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.util.PFilter-class.html#filter">filter</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">record</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PFilter.filter-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PFilter.filter-expanded"><a name="L264"></a><tt class="py-lineno">264</tt> <tt class="py-line"> <tt class="py-name">record</tt><tt class="py-op">.</tt><tt class="py-name">_threadid</tt> <tt class="py-op">=</tt> <tt id="link-42" class="py-name" targets="Function paramiko.util.get_thread_id()=paramiko.util-module.html#get_thread_id"><a title="paramiko.util.get_thread_id" class="py-name" href="#" onclick="return doclink('link-42', 'get_thread_id', 'link-42');">get_thread_id</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L265"></a><tt class="py-lineno">265</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">True</tt> </tt>
-</div></div><a name="L266"></a><tt class="py-lineno">266</tt> <tt class="py-line"><tt id="link-43" class="py-name" targets="Variable paramiko.util._pfilter=paramiko.util-module.html#_pfilter"><a title="paramiko.util._pfilter" class="py-name" href="#" onclick="return doclink('link-43', '_pfilter', 'link-43');">_pfilter</a></tt> <tt class="py-op">=</tt> <tt id="link-44" class="py-name" targets="Class paramiko.util.PFilter=paramiko.util.PFilter-class.html"><a title="paramiko.util.PFilter" class="py-name" href="#" onclick="return doclink('link-44', 'PFilter', 'link-44');">PFilter</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L267"></a><tt class="py-lineno">267</tt> <tt class="py-line"> </tt>
-<a name="get_logger"></a><div id="get_logger-def"><a name="L268"></a><tt class="py-lineno">268</tt> <a class="py-toggle" href="#" id="get_logger-toggle" onclick="return toggle('get_logger');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.util-module.html#get_logger">get_logger</a><tt class="py-op">(</tt><tt class="py-param">name</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="get_logger-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="get_logger-expanded"><a name="L269"></a><tt class="py-lineno">269</tt> <tt class="py-line"> <tt class="py-name">l</tt> <tt class="py-op">=</tt> <tt class="py-name">logging</tt><tt class="py-op">.</tt><tt id="link-45" class="py-name"><a title="paramiko.logging22.getLogger" class="py-name" href="#" onclick="return doclink('link-45', 'getLogger', 'link-35');">getLogger</a></tt><tt class="py-op">(</tt><tt id="link-46" class="py-name" targets="Variable paramiko.kex_gex.KexGex.name=paramiko.kex_gex.KexGex-class.html#name,Variable paramiko.kex_group1.KexGroup1.name=paramiko.kex_group1.KexGroup1-class.html#name"><a title="paramiko.kex_gex.KexGex.name
-paramiko.kex_group1.KexGroup1.name" class="py-name" href="#" onclick="return doclink('link-46', 'name', 'link-46');">name</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L270"></a><tt class="py-lineno">270</tt> <tt class="py-line"> <tt class="py-name">l</tt><tt class="py-op">.</tt><tt id="link-47" class="py-name" targets="Method paramiko.logging22.logger.addFilter()=paramiko.logging22.logger-class.html#addFilter"><a title="paramiko.logging22.logger.addFilter" class="py-name" href="#" onclick="return doclink('link-47', 'addFilter', 'link-47');">addFilter</a></tt><tt class="py-op">(</tt><tt id="link-48" class="py-name"><a title="paramiko.util._pfilter" class="py-name" href="#" onclick="return doclink('link-48', '_pfilter', 'link-43');">_pfilter</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L271"></a><tt class="py-lineno">271</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">l</tt> </tt>
-</div><a name="L272"></a><tt class="py-lineno">272</tt> <tt class="py-line"> </tt>
-<a name="L273"></a><tt class="py-lineno">273</tt> <tt class="py-line"> </tt>
-<a name="Counter"></a><div id="Counter-def"><a name="L274"></a><tt class="py-lineno">274</tt> <a class="py-toggle" href="#" id="Counter-toggle" onclick="return toggle('Counter');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.util.Counter-class.html">Counter</a> <tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Counter-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="Counter-expanded"><a name="L275"></a><tt class="py-lineno">275</tt> <tt class="py-line"> <tt class="py-docstring">"""Stateful counter for CTR mode crypto"""</tt> </tt>
-<a name="Counter.__init__"></a><div id="Counter.__init__-def"><a name="L276"></a><tt class="py-lineno">276</tt> <a class="py-toggle" href="#" id="Counter.__init__-toggle" onclick="return toggle('Counter.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.util.Counter-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">nbits</tt><tt class="py-op">,</tt> <tt class="py-param">initial_value</tt><tt class="py-op">=</tt><tt class="py-number">1L</tt><tt class="py-op">,</tt> <tt class="py-param">overflow</tt><tt class="py-op">=</tt><tt class="py-number">0L</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Counter.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Counter.__init__-expanded"><a name="L277"></a><tt class="py-lineno">277</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">blocksize</tt> <tt class="py-op">=</tt> <tt class="py-name">nbits</tt> <tt class="py-op">/</tt> <tt class="py-number">8</tt> </tt>
-<a name="L278"></a><tt class="py-lineno">278</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">overflow</tt> <tt class="py-op">=</tt> <tt class="py-name">overflow</tt> </tt>
-<a name="L279"></a><tt class="py-lineno">279</tt> <tt class="py-line"> <tt class="py-comment"># start with value - 1 so we don't have to store intermediate values when counting</tt> </tt>
-<a name="L280"></a><tt class="py-lineno">280</tt> <tt class="py-line"> <tt class="py-comment"># could the iv be 0?</tt> </tt>
-<a name="L281"></a><tt class="py-lineno">281</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">initial_value</tt> <tt class="py-op">==</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L282"></a><tt class="py-lineno">282</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">value</tt> <tt class="py-op">=</tt> <tt class="py-name">array</tt><tt class="py-op">.</tt><tt class="py-name">array</tt><tt class="py-op">(</tt><tt class="py-string">'c'</tt><tt class="py-op">,</tt> <tt class="py-string">'\xFF'</tt> <tt class="py-op">*</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">blocksize</tt><tt class="py-op">)</tt> </tt>
-<a name="L283"></a><tt class="py-lineno">283</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L284"></a><tt class="py-lineno">284</tt> <tt class="py-line"> <tt class="py-name">x</tt> <tt class="py-op">=</tt> <tt id="link-49" class="py-name"><a title="paramiko.util.deflate_long" class="py-name" href="#" onclick="return doclink('link-49', 'deflate_long', 'link-9');">deflate_long</a></tt><tt class="py-op">(</tt><tt class="py-name">initial_value</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt><tt class="py-op">,</tt> <tt class="py-name">add_sign_padding</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">)</tt> </tt>
-<a name="L285"></a><tt class="py-lineno">285</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">value</tt> <tt class="py-op">=</tt> <tt class="py-name">array</tt><tt class="py-op">.</tt><tt class="py-name">array</tt><tt class="py-op">(</tt><tt class="py-string">'c'</tt><tt class="py-op">,</tt> <tt class="py-string">'\x00'</tt> <tt class="py-op">*</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">blocksize</tt> <tt class="py-op">-</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-name">x</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L286"></a><tt class="py-lineno">286</tt> <tt class="py-line"> </tt>
-<a name="Counter.__call__"></a><div id="Counter.__call__-def"><a name="L287"></a><tt class="py-lineno">287</tt> <a class="py-toggle" href="#" id="Counter.__call__-toggle" onclick="return toggle('Counter.__call__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.util.Counter-class.html#__call__">__call__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Counter.__call__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Counter.__call__-expanded"><a name="L288"></a><tt class="py-lineno">288</tt> <tt class="py-line"> <tt class="py-docstring">"""Increament the counter and return the new value"""</tt> </tt>
-<a name="L289"></a><tt class="py-lineno">289</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">blocksize</tt> <tt class="py-op">-</tt> <tt class="py-number">1</tt> </tt>
-<a name="L290"></a><tt class="py-lineno">290</tt> <tt class="py-line"> <tt class="py-keyword">while</tt> <tt class="py-name">i</tt> <tt class="py-op">&gt;</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">:</tt> </tt>
-<a name="L291"></a><tt class="py-lineno">291</tt> <tt class="py-line"> <tt class="py-name">c</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">value</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">chr</tt><tt class="py-op">(</tt><tt class="py-op">(</tt><tt class="py-name">ord</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">value</tt><tt class="py-op">[</tt><tt class="py-name">i</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-number">1</tt><tt class="py-op">)</tt> <tt class="py-op">%</tt> <tt class="py-number">256</tt><tt class="py-op">)</tt> </tt>
-<a name="L292"></a><tt class="py-lineno">292</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">c</tt> <tt class="py-op">!=</tt> <tt class="py-string">'\x00'</tt><tt class="py-op">:</tt> </tt>
-<a name="L293"></a><tt class="py-lineno">293</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">value</tt><tt class="py-op">.</tt><tt class="py-name">tostring</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L294"></a><tt class="py-lineno">294</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">-=</tt> <tt class="py-number">1</tt> </tt>
-<a name="L295"></a><tt class="py-lineno">295</tt> <tt class="py-line"> <tt class="py-comment"># counter reset</tt> </tt>
-<a name="L296"></a><tt class="py-lineno">296</tt> <tt class="py-line"> <tt class="py-name">x</tt> <tt class="py-op">=</tt> <tt id="link-50" class="py-name"><a title="paramiko.util.deflate_long" class="py-name" href="#" onclick="return doclink('link-50', 'deflate_long', 'link-9');">deflate_long</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">overflow</tt><tt class="py-op">,</tt> <tt class="py-name">add_sign_padding</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">)</tt> </tt>
-<a name="L297"></a><tt class="py-lineno">297</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">value</tt> <tt class="py-op">=</tt> <tt class="py-name">array</tt><tt class="py-op">.</tt><tt class="py-name">array</tt><tt class="py-op">(</tt><tt class="py-string">'c'</tt><tt class="py-op">,</tt> <tt class="py-string">'\x00'</tt> <tt class="py-op">*</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">blocksize</tt> <tt class="py-op">-</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">x</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-name">x</tt><tt class="py-op">)</tt> </tt>
-<a name="L298"></a><tt class="py-lineno">298</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">value</tt><tt class="py-op">.</tt><tt class="py-name">tostring</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L299"></a><tt class="py-lineno">299</tt> <tt class="py-line"> </tt>
-<a name="Counter.new"></a><div id="Counter.new-def"><a name="L300"></a><tt class="py-lineno">300</tt> <a class="py-toggle" href="#" id="Counter.new-toggle" onclick="return toggle('Counter.new');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.util.Counter-class.html#new">new</a><tt class="py-op">(</tt><tt class="py-param">cls</tt><tt class="py-op">,</tt> <tt class="py-param">nbits</tt><tt class="py-op">,</tt> <tt class="py-param">initial_value</tt><tt class="py-op">=</tt><tt class="py-number">1L</tt><tt class="py-op">,</tt> <tt class="py-param">overflow</tt><tt class="py-op">=</tt><tt class="py-number">0L</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Counter.new-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="Counter.new-expanded"><a name="L301"></a><tt class="py-lineno">301</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">cls</tt><tt class="py-op">(</tt><tt class="py-name">nbits</tt><tt class="py-op">,</tt> <tt class="py-name">initial_value</tt><tt class="py-op">=</tt><tt class="py-name">initial_value</tt><tt class="py-op">,</tt> <tt class="py-name">overflow</tt><tt class="py-op">=</tt><tt class="py-name">overflow</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L302"></a><tt class="py-lineno">302</tt> <tt class="py-line"> <tt id="link-51" class="py-name"><a title="paramiko.util.Counter.new" class="py-name" href="#" onclick="return doclink('link-51', 'new', 'link-10');">new</a></tt> <tt class="py-op">=</tt> <tt class="py-name">classmethod</tt><tt class="py-op">(</tt><tt id="link-52" class="py-name"><a title="paramiko.util.Counter.new" class="py-name" href="#" onclick="return doclink('link-52', 'new', 'link-10');">new</a></tt><tt class="py-op">)</tt> </tt>
-</div><a name="L303"></a><tt class="py-lineno">303</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:06 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.util.Counter-class.html b/docs/paramiko.util.Counter-class.html
deleted file mode 100644
index 1469787..0000000
--- a/docs/paramiko.util.Counter-class.html
+++ /dev/null
@@ -1,258 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.util.Counter</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- <a href="paramiko.util-module.html">Module&nbsp;util</a> ::
- Class&nbsp;Counter
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.util.Counter-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class Counter</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.util-pysrc.html#Counter">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- <strong class="uidshort">Counter</strong>
-</pre>
-
-<hr />
-<p>Stateful counter for CTR mode crypto</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.util.Counter-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">nbits</span>,
- <span class="summary-sig-arg">initial_value</span>=<span class="summary-sig-default">1</span>,
- <span class="summary-sig-arg">overflow</span>=<span class="summary-sig-default">0</span>)</span><br />
- x.__init__(...) initializes x; see x.__class__.__doc__ for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.util-pysrc.html#Counter.__init__">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__call__"></a><span class="summary-sig-name">__call__</span>(<span class="summary-sig-arg">self</span>)</span><br />
- Increament the counter and return the new value</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.util-pysrc.html#Counter.__call__">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS METHODS ==================== -->
-<a name="section-ClassMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Class Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="new"></a><span class="summary-sig-name">new</span>(<span class="summary-sig-arg">cls</span>,
- <span class="summary-sig-arg">nbits</span>,
- <span class="summary-sig-arg">initial_value</span>=<span class="summary-sig-default">1</span>,
- <span class="summary-sig-arg">overflow</span>=<span class="summary-sig-default">0</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.util-pysrc.html#Counter.new">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
- <span class="sig-arg">nbits</span>,
- <span class="sig-arg">initial_value</span>=<span class="sig-default">1</span>,
- <span class="sig-arg">overflow</span>=<span class="sig-default">0</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.util-pysrc.html#Counter.__init__">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see x.__class__.__doc__ for
- signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:04 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.util.PFilter-class.html b/docs/paramiko.util.PFilter-class.html
deleted file mode 100644
index 85db9a9..0000000
--- a/docs/paramiko.util.PFilter-class.html
+++ /dev/null
@@ -1,171 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.util.PFilter</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- <a href="paramiko.util-module.html">Module&nbsp;util</a> ::
- Class&nbsp;PFilter
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.util.PFilter-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class PFilter</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.util-pysrc.html#PFilter">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- <strong class="uidshort">PFilter</strong>
-</pre>
-
-<hr />
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="filter"></a><span class="summary-sig-name">filter</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">record</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.util-pysrc.html#PFilter.filter">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__init__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:04 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.util.enumerate-class.html b/docs/paramiko.util.enumerate-class.html
deleted file mode 100644
index d084c75..0000000
--- a/docs/paramiko.util.enumerate-class.html
+++ /dev/null
@@ -1,145 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.util.enumerate</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- <a href="paramiko.util-module.html">Module&nbsp;util</a> ::
- Class&nbsp;enumerate
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.util.enumerate-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class enumerate</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.util-pysrc.html#enumerate">source&nbsp;code</a></span></p>
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">sequence</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.util-pysrc.html#enumerate.__init__">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="__iter__"></a><span class="summary-sig-name">__iter__</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.util-pysrc.html#enumerate.__iter__">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:04 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.win_pageant-module.html b/docs/paramiko.win_pageant-module.html
deleted file mode 100644
index 443dfec..0000000
--- a/docs/paramiko.win_pageant-module.html
+++ /dev/null
@@ -1,204 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.win_pageant</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;win_pageant
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.win_pageant-module.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== MODULE DESCRIPTION ==================== -->
-<h1 class="epydoc">Module win_pageant</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.win_pageant-pysrc.html">source&nbsp;code</a></span></p>
-<p>Functions for communicating with Pageant, the basic windows ssh agent
- program.</p>
-
-<!-- ==================== CLASSES ==================== -->
-<a name="section-Classes"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Classes</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a href="paramiko.win_pageant.PageantConnection-class.html" class="summary-name">PageantConnection</a><br />
- Mock &quot;connection&quot; to an agent which roughly approximates
- the behavior of a unix local-domain socket (as used by Agent).
- </td>
- </tr>
-</table>
-<!-- ==================== FUNCTIONS ==================== -->
-<a name="section-Functions"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Functions</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.win_pageant-module.html#can_talk_to_agent" class="summary-sig-name">can_talk_to_agent</a>()</span><br />
- Check to see if there is a &quot;Pageant&quot; agent we can talk to.</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.win_pageant-pysrc.html#can_talk_to_agent">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-</table>
-<!-- ==================== VARIABLES ==================== -->
-<a name="section-Variables"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Variables</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="win32con_WM_COPYDATA"></a><span class="summary-name">win32con_WM_COPYDATA</span> = <code title="74">74</code>
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <a name="__package__"></a><span class="summary-name">__package__</span> = <code title="'paramiko'"><code class="variable-quote">'</code><code class="variable-string">paramiko</code><code class="variable-quote">'</code></code>
- </td>
- </tr>
-</table>
-<!-- ==================== FUNCTION DETAILS ==================== -->
-<a name="section-FunctionDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Function Details</span></td>
-</tr>
-</table>
-<a name="can_talk_to_agent"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">can_talk_to_agent</span>()</span>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.win_pageant-pysrc.html#can_talk_to_agent">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>Check to see if there is a &quot;Pageant&quot; agent we can talk
- to.</p>
- <p>This checks both if we have the required libraries (win32all or
- ctypes) and if there is a Pageant currently running.</p>
- <dl class="fields">
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:03 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.win_pageant-pysrc.html b/docs/paramiko.win_pageant-pysrc.html
deleted file mode 100644
index f96c903..0000000
--- a/docs/paramiko.win_pageant-pysrc.html
+++ /dev/null
@@ -1,287 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.win_pageant</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- Module&nbsp;win_pageant
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.win_pageant-pysrc.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<h1 class="epydoc">Source Code for <a href="paramiko.win_pageant-module.html">Module paramiko.win_pageant</a></h1>
-<pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt> <tt class="py-line"><tt class="py-comment"># Copyright (C) 2005 John Arbash-Meinel &lt;john@arbash-meinel.com&gt;</tt> </tt>
-<a name="L2"></a><tt class="py-lineno"> 2</tt> <tt class="py-line"><tt class="py-comment"># Modified up by: Todd Whiteman &lt;ToddW@ActiveState.com&gt;</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt> <tt class="py-line"><tt class="py-comment"># This file is part of paramiko.</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is free software; you can redistribute it and/or modify it under the</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt> <tt class="py-line"><tt class="py-comment"># terms of the GNU Lesser General Public License as published by the Free</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt> <tt class="py-line"><tt class="py-comment"># Software Foundation; either version 2.1 of the License, or (at your option)</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt> <tt class="py-line"><tt class="py-comment"># any later version.</tt> </tt>
-<a name="L10"></a><tt class="py-lineno"> 10</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L11"></a><tt class="py-lineno"> 11</tt> <tt class="py-line"><tt class="py-comment"># Paramiko is distrubuted in the hope that it will be useful, but WITHOUT ANY</tt> </tt>
-<a name="L12"></a><tt class="py-lineno"> 12</tt> <tt class="py-line"><tt class="py-comment"># WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR</tt> </tt>
-<a name="L13"></a><tt class="py-lineno"> 13</tt> <tt class="py-line"><tt class="py-comment"># A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more</tt> </tt>
-<a name="L14"></a><tt class="py-lineno"> 14</tt> <tt class="py-line"><tt class="py-comment"># details.</tt> </tt>
-<a name="L15"></a><tt class="py-lineno"> 15</tt> <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L16"></a><tt class="py-lineno"> 16</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU Lesser General Public License</tt> </tt>
-<a name="L17"></a><tt class="py-lineno"> 17</tt> <tt class="py-line"><tt class="py-comment"># along with Paramiko; if not, write to the Free Software Foundation, Inc.,</tt> </tt>
-<a name="L18"></a><tt class="py-lineno"> 18</tt> <tt class="py-line"><tt class="py-comment"># 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.</tt> </tt>
-<a name="L19"></a><tt class="py-lineno"> 19</tt> <tt class="py-line"> </tt>
-<a name="L20"></a><tt class="py-lineno"> 20</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L21"></a><tt class="py-lineno"> 21</tt> <tt class="py-line"><tt class="py-docstring">Functions for communicating with Pageant, the basic windows ssh agent program.</tt> </tt>
-<a name="L22"></a><tt class="py-lineno"> 22</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L23"></a><tt class="py-lineno"> 23</tt> <tt class="py-line"> </tt>
-<a name="L24"></a><tt class="py-lineno"> 24</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">struct</tt> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">tempfile</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">mmap</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">array</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt> <tt class="py-line"> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt> <tt class="py-line"><tt class="py-comment"># if you're on windows, you should have one of these, i guess?</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt> <tt class="py-line"><tt class="py-comment"># ctypes is part of standard library since Python 2.5</tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt> <tt class="py-line"><tt id="link-0" class="py-name" targets="Variable paramiko.win_pageant._has_win32all=paramiko.win_pageant-module.html#_has_win32all"><a title="paramiko.win_pageant._has_win32all" class="py-name" href="#" onclick="return doclink('link-0', '_has_win32all', 'link-0');">_has_win32all</a></tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L33"></a><tt class="py-lineno"> 33</tt> <tt class="py-line"><tt id="link-1" class="py-name" targets="Variable paramiko.win_pageant._has_ctypes=paramiko.win_pageant-module.html#_has_ctypes"><a title="paramiko.win_pageant._has_ctypes" class="py-name" href="#" onclick="return doclink('link-1', '_has_ctypes', 'link-1');">_has_ctypes</a></tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
-<a name="L34"></a><tt class="py-lineno"> 34</tt> <tt class="py-line"><tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt> <tt class="py-line"> <tt class="py-comment"># win32gui is preferred over win32ui to avoid MFC dependencies</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">win32gui</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt> <tt class="py-line"> <tt id="link-2" class="py-name"><a title="paramiko.win_pageant._has_win32all" class="py-name" href="#" onclick="return doclink('link-2', '_has_win32all', 'link-0');">_has_win32all</a></tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt> <tt class="py-line"><tt class="py-keyword">except</tt> <tt class="py-name">ImportError</tt><tt class="py-op">:</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt> <tt class="py-line"> <tt class="py-keyword">import</tt> <tt class="py-name">ctypes</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt> <tt class="py-line"> <tt id="link-3" class="py-name"><a title="paramiko.win_pageant._has_ctypes" class="py-name" href="#" onclick="return doclink('link-3', '_has_ctypes', 'link-1');">_has_ctypes</a></tt> <tt class="py-op">=</tt> <tt class="py-name">True</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">ImportError</tt><tt class="py-op">:</tt> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt> <tt class="py-line"> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt> <tt class="py-line"> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt> <tt class="py-line"><tt id="link-4" class="py-name" targets="Variable paramiko.win_pageant._AGENT_COPYDATA_ID=paramiko.win_pageant-module.html#_AGENT_COPYDATA_ID"><a title="paramiko.win_pageant._AGENT_COPYDATA_ID" class="py-name" href="#" onclick="return doclink('link-4', '_AGENT_COPYDATA_ID', 'link-4');">_AGENT_COPYDATA_ID</a></tt> <tt class="py-op">=</tt> <tt class="py-number">0x804e50ba</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt> <tt class="py-line"><tt id="link-5" class="py-name" targets="Variable paramiko.win_pageant._AGENT_MAX_MSGLEN=paramiko.win_pageant-module.html#_AGENT_MAX_MSGLEN"><a title="paramiko.win_pageant._AGENT_MAX_MSGLEN" class="py-name" href="#" onclick="return doclink('link-5', '_AGENT_MAX_MSGLEN', 'link-5');">_AGENT_MAX_MSGLEN</a></tt> <tt class="py-op">=</tt> <tt class="py-number">8192</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt> <tt class="py-line"><tt class="py-comment"># Note: The WM_COPYDATA value is pulled from win32con, as a workaround</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt> <tt class="py-line"><tt class="py-comment"># so we do not have to import this huge library just for this one variable.</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt> <tt class="py-line"><tt id="link-6" class="py-name" targets="Variable paramiko.win_pageant.win32con_WM_COPYDATA=paramiko.win_pageant-module.html#win32con_WM_COPYDATA"><a title="paramiko.win_pageant.win32con_WM_COPYDATA" class="py-name" href="#" onclick="return doclink('link-6', 'win32con_WM_COPYDATA', 'link-6');">win32con_WM_COPYDATA</a></tt> <tt class="py-op">=</tt> <tt class="py-number">74</tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt> <tt class="py-line"> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt> <tt class="py-line"> </tt>
-<a name="_get_pageant_window_object"></a><div id="_get_pageant_window_object-def"><a name="L53"></a><tt class="py-lineno"> 53</tt> <a class="py-toggle" href="#" id="_get_pageant_window_object-toggle" onclick="return toggle('_get_pageant_window_object');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.win_pageant-module.html#_get_pageant_window_object">_get_pageant_window_object</a><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="_get_pageant_window_object-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="_get_pageant_window_object-expanded"><a name="L54"></a><tt class="py-lineno"> 54</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-7" class="py-name"><a title="paramiko.win_pageant._has_win32all" class="py-name" href="#" onclick="return doclink('link-7', '_has_win32all', 'link-0');">_has_win32all</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt> <tt class="py-line"> <tt class="py-name">hwnd</tt> <tt class="py-op">=</tt> <tt class="py-name">win32gui</tt><tt class="py-op">.</tt><tt class="py-name">FindWindow</tt><tt class="py-op">(</tt><tt class="py-string">'Pageant'</tt><tt class="py-op">,</tt> <tt class="py-string">'Pageant'</tt><tt class="py-op">)</tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">hwnd</tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt> <tt class="py-line"> <tt class="py-keyword">except</tt> <tt class="py-name">win32gui</tt><tt class="py-op">.</tt><tt class="py-name">error</tt><tt class="py-op">:</tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt id="link-8" class="py-name"><a title="paramiko.win_pageant._has_ctypes" class="py-name" href="#" onclick="return doclink('link-8', '_has_ctypes', 'link-1');">_has_ctypes</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt> <tt class="py-line"> <tt class="py-comment"># Return 0 if there is no Pageant window.</tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">ctypes</tt><tt class="py-op">.</tt><tt class="py-name">windll</tt><tt class="py-op">.</tt><tt class="py-name">user32</tt><tt class="py-op">.</tt><tt class="py-name">FindWindowA</tt><tt class="py-op">(</tt><tt class="py-string">'Pageant'</tt><tt class="py-op">,</tt> <tt class="py-string">'Pageant'</tt><tt class="py-op">)</tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L64"></a><tt class="py-lineno"> 64</tt> <tt class="py-line"> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt> <tt class="py-line"> </tt>
-<a name="can_talk_to_agent"></a><div id="can_talk_to_agent-def"><a name="L66"></a><tt class="py-lineno"> 66</tt> <a class="py-toggle" href="#" id="can_talk_to_agent-toggle" onclick="return toggle('can_talk_to_agent');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.win_pageant-module.html#can_talk_to_agent">can_talk_to_agent</a><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="can_talk_to_agent-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="can_talk_to_agent-expanded"><a name="L67"></a><tt class="py-lineno"> 67</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L68"></a><tt class="py-lineno"> 68</tt> <tt class="py-line"><tt class="py-docstring"> Check to see if there is a "Pageant" agent we can talk to.</tt> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt> <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <tt class="py-line"><tt class="py-docstring"> This checks both if we have the required libraries (win32all or ctypes)</tt> </tt>
-<a name="L71"></a><tt class="py-lineno"> 71</tt> <tt class="py-line"><tt class="py-docstring"> and if there is a Pageant currently running.</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L73"></a><tt class="py-lineno"> 73</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt id="link-9" class="py-name"><a title="paramiko.win_pageant._has_win32all" class="py-name" href="#" onclick="return doclink('link-9', '_has_win32all', 'link-0');">_has_win32all</a></tt> <tt class="py-keyword">or</tt> <tt id="link-10" class="py-name"><a title="paramiko.win_pageant._has_ctypes" class="py-name" href="#" onclick="return doclink('link-10', '_has_ctypes', 'link-1');">_has_ctypes</a></tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-name">_get_pageant_window_object</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L74"></a><tt class="py-lineno"> 74</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">True</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">False</tt> </tt>
-</div><a name="L76"></a><tt class="py-lineno"> 76</tt> <tt class="py-line"> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt> <tt class="py-line"> </tt>
-<a name="_query_pageant"></a><div id="_query_pageant-def"><a name="L78"></a><tt class="py-lineno"> 78</tt> <a class="py-toggle" href="#" id="_query_pageant-toggle" onclick="return toggle('_query_pageant');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.win_pageant-module.html#_query_pageant">_query_pageant</a><tt class="py-op">(</tt><tt class="py-param">msg</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="_query_pageant-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="_query_pageant-expanded"><a name="L79"></a><tt class="py-lineno"> 79</tt> <tt class="py-line"> <tt class="py-name">hwnd</tt> <tt class="py-op">=</tt> <tt class="py-name">_get_pageant_window_object</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">hwnd</tt><tt class="py-op">:</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt> <tt class="py-line"> <tt class="py-comment"># Raise a failure to connect exception, pageant isn't running anymore!</tt> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt> <tt class="py-line"> </tt>
-<a name="L84"></a><tt class="py-lineno"> 84</tt> <tt class="py-line"> <tt class="py-comment"># Write our pageant request string into the file (pageant will read this to determine what to do)</tt> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt> <tt class="py-line"> <tt class="py-name">filename</tt> <tt class="py-op">=</tt> <tt class="py-name">tempfile</tt><tt class="py-op">.</tt><tt class="py-name">mktemp</tt><tt class="py-op">(</tt><tt class="py-string">'.pag'</tt><tt class="py-op">)</tt> </tt>
-<a name="L86"></a><tt class="py-lineno"> 86</tt> <tt class="py-line"> <tt class="py-name">map_filename</tt> <tt class="py-op">=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">path</tt><tt class="py-op">.</tt><tt class="py-name">basename</tt><tt class="py-op">(</tt><tt class="py-name">filename</tt><tt class="py-op">)</tt> </tt>
-<a name="L87"></a><tt class="py-lineno"> 87</tt> <tt class="py-line"> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt> <tt class="py-line"> <tt class="py-name">f</tt> <tt class="py-op">=</tt> <tt id="link-11" class="py-name" targets="Method paramiko.SFTPServerInterface.open()=paramiko.SFTPServerInterface-class.html#open"><a title="paramiko.SFTPServerInterface.open" class="py-name" href="#" onclick="return doclink('link-11', 'open', 'link-11');">open</a></tt><tt class="py-op">(</tt><tt class="py-name">filename</tt><tt class="py-op">,</tt> <tt class="py-string">'w+b'</tt><tt class="py-op">)</tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt> <tt class="py-line"> <tt class="py-name">f</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name" targets="Method paramiko.BufferedFile.write()=paramiko.BufferedFile-class.html#write,Method paramiko.SFTPHandle.write()=paramiko.SFTPHandle-class.html#write"><a title="paramiko.BufferedFile.write
-paramiko.SFTPHandle.write" class="py-name" href="#" onclick="return doclink('link-12', 'write', 'link-12');">write</a></tt><tt class="py-op">(</tt><tt class="py-name">msg</tt> <tt class="py-op">)</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt> <tt class="py-line"> <tt class="py-comment"># Ensure the rest of the file is empty, otherwise pageant will read this</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt> <tt class="py-line"> <tt class="py-name">f</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="paramiko.BufferedFile.write
-paramiko.SFTPHandle.write" class="py-name" href="#" onclick="return doclink('link-13', 'write', 'link-12');">write</a></tt><tt class="py-op">(</tt><tt class="py-string">'\0'</tt> <tt class="py-op">*</tt> <tt class="py-op">(</tt><tt id="link-14" class="py-name"><a title="paramiko.win_pageant._AGENT_MAX_MSGLEN" class="py-name" href="#" onclick="return doclink('link-14', '_AGENT_MAX_MSGLEN', 'link-5');">_AGENT_MAX_MSGLEN</a></tt> <tt class="py-op">-</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">msg</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt> <tt class="py-line"> <tt class="py-comment"># Create the shared file map that pageant will use to read from</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt> <tt class="py-line"> <tt class="py-name">pymap</tt> <tt class="py-op">=</tt> <tt class="py-name">mmap</tt><tt class="py-op">.</tt><tt class="py-name">mmap</tt><tt class="py-op">(</tt><tt class="py-name">f</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name" targets="Method paramiko.Channel.fileno()=paramiko.Channel-class.html#fileno,Method paramiko.pipe.PosixPipe.fileno()=paramiko.pipe.PosixPipe-class.html#fileno,Method paramiko.pipe.WindowsPipe.fileno()=paramiko.pipe.WindowsPipe-class.html#fileno"><a title="paramiko.Channel.fileno
-paramiko.pipe.PosixPipe.fileno
-paramiko.pipe.WindowsPipe.fileno" class="py-name" href="#" onclick="return doclink('link-15', 'fileno', 'link-15');">fileno</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt id="link-16" class="py-name"><a title="paramiko.win_pageant._AGENT_MAX_MSGLEN" class="py-name" href="#" onclick="return doclink('link-16', '_AGENT_MAX_MSGLEN', 'link-5');">_AGENT_MAX_MSGLEN</a></tt><tt class="py-op">,</tt> <tt class="py-name">tagname</tt><tt class="py-op">=</tt><tt class="py-name">map_filename</tt><tt class="py-op">,</tt> <tt class="py-name">access</tt><tt class="py-op">=</tt><tt class="py-name">mmap</tt><tt class="py-op">.</tt><tt class="py-name">ACCESS_WRITE</tt><tt class="py-op">)</tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt> <tt class="py-line"> <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt> <tt class="py-line"> <tt class="py-comment"># Create an array buffer containing the mapped filename</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt> <tt class="py-line"> <tt class="py-name">char_buffer</tt> <tt class="py-op">=</tt> <tt class="py-name">array</tt><tt class="py-op">.</tt><tt class="py-name">array</tt><tt class="py-op">(</tt><tt class="py-string">"c"</tt><tt class="py-op">,</tt> <tt class="py-name">map_filename</tt> <tt class="py-op">+</tt> <tt class="py-string">'\0'</tt><tt class="py-op">)</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt> <tt class="py-line"> <tt class="py-name">char_buffer_address</tt><tt class="py-op">,</tt> <tt class="py-name">char_buffer_size</tt> <tt class="py-op">=</tt> <tt class="py-name">char_buffer</tt><tt class="py-op">.</tt><tt class="py-name">buffer_info</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt> <tt class="py-line"> <tt class="py-comment"># Create a string to use for the SendMessage function call</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt> <tt class="py-line"> <tt class="py-name">cds</tt> <tt class="py-op">=</tt> <tt class="py-name">struct</tt><tt class="py-op">.</tt><tt class="py-name">pack</tt><tt class="py-op">(</tt><tt class="py-string">"LLP"</tt><tt class="py-op">,</tt> <tt id="link-17" class="py-name"><a title="paramiko.win_pageant._AGENT_COPYDATA_ID" class="py-name" href="#" onclick="return doclink('link-17', '_AGENT_COPYDATA_ID', 'link-4');">_AGENT_COPYDATA_ID</a></tt><tt class="py-op">,</tt> <tt class="py-name">char_buffer_size</tt><tt class="py-op">,</tt> <tt class="py-name">char_buffer_address</tt><tt class="py-op">)</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt> <tt class="py-line"> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt id="link-18" class="py-name"><a title="paramiko.win_pageant._has_win32all" class="py-name" href="#" onclick="return doclink('link-18', '_has_win32all', 'link-0');">_has_win32all</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt> <tt class="py-line"> <tt class="py-comment"># win32gui.SendMessage should also allow the same pattern as</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt> <tt class="py-line"> <tt class="py-comment"># ctypes, but let's keep it like this for now...</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">win32gui</tt><tt class="py-op">.</tt><tt class="py-name">SendMessage</tt><tt class="py-op">(</tt><tt class="py-name">hwnd</tt><tt class="py-op">,</tt> <tt id="link-19" class="py-name"><a title="paramiko.win_pageant.win32con_WM_COPYDATA" class="py-name" href="#" onclick="return doclink('link-19', 'win32con_WM_COPYDATA', 'link-6');">win32con_WM_COPYDATA</a></tt><tt class="py-op">,</tt> <tt class="py-name">len</tt><tt class="py-op">(</tt><tt class="py-name">cds</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">cds</tt><tt class="py-op">)</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt> <tt class="py-line"> <tt class="py-keyword">elif</tt> <tt id="link-20" class="py-name"><a title="paramiko.win_pageant._has_ctypes" class="py-name" href="#" onclick="return doclink('link-20', '_has_ctypes', 'link-1');">_has_ctypes</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt> <tt class="py-line"> <tt class="py-name">_buf</tt> <tt class="py-op">=</tt> <tt class="py-name">array</tt><tt class="py-op">.</tt><tt class="py-name">array</tt><tt class="py-op">(</tt><tt class="py-string">'B'</tt><tt class="py-op">,</tt> <tt class="py-name">cds</tt><tt class="py-op">)</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt> <tt class="py-line"> <tt class="py-name">_addr</tt><tt class="py-op">,</tt> <tt class="py-name">_size</tt> <tt class="py-op">=</tt> <tt class="py-name">_buf</tt><tt class="py-op">.</tt><tt class="py-name">buffer_info</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-name">ctypes</tt><tt class="py-op">.</tt><tt class="py-name">windll</tt><tt class="py-op">.</tt><tt class="py-name">user32</tt><tt class="py-op">.</tt><tt class="py-name">SendMessageA</tt><tt class="py-op">(</tt><tt class="py-name">hwnd</tt><tt class="py-op">,</tt> <tt id="link-21" class="py-name"><a title="paramiko.win_pageant.win32con_WM_COPYDATA" class="py-name" href="#" onclick="return doclink('link-21', 'win32con_WM_COPYDATA', 'link-6');">win32con_WM_COPYDATA</a></tt><tt class="py-op">,</tt> <tt class="py-name">_size</tt><tt class="py-op">,</tt> <tt class="py-name">_addr</tt><tt class="py-op">)</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt> <tt class="py-line"> <tt class="py-name">response</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt> <tt class="py-line"> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">response</tt> <tt class="py-op">&gt;</tt> <tt class="py-number">0</tt><tt class="py-op">:</tt> </tt>
-<a name="L113"></a><tt class="py-lineno">113</tt> <tt class="py-line"> <tt class="py-name">datalen</tt> <tt class="py-op">=</tt> <tt class="py-name">pymap</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name" targets="Method paramiko.BufferedFile.read()=paramiko.BufferedFile-class.html#read,Method paramiko.SFTPHandle.read()=paramiko.SFTPHandle-class.html#read,Method paramiko.buffered_pipe.BufferedPipe.read()=paramiko.buffered_pipe.BufferedPipe-class.html#read"><a title="paramiko.BufferedFile.read
-paramiko.SFTPHandle.read
-paramiko.buffered_pipe.BufferedPipe.read" class="py-name" href="#" onclick="return doclink('link-22', 'read', 'link-22');">read</a></tt><tt class="py-op">(</tt><tt class="py-number">4</tt><tt class="py-op">)</tt> </tt>
-<a name="L114"></a><tt class="py-lineno">114</tt> <tt class="py-line"> <tt class="py-name">retlen</tt> <tt class="py-op">=</tt> <tt class="py-name">struct</tt><tt class="py-op">.</tt><tt class="py-name">unpack</tt><tt class="py-op">(</tt><tt class="py-string">'&gt;I'</tt><tt class="py-op">,</tt> <tt class="py-name">datalen</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt> </tt>
-<a name="L115"></a><tt class="py-lineno">115</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">datalen</tt> <tt class="py-op">+</tt> <tt class="py-name">pymap</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="paramiko.BufferedFile.read
-paramiko.SFTPHandle.read
-paramiko.buffered_pipe.BufferedPipe.read" class="py-name" href="#" onclick="return doclink('link-23', 'read', 'link-22');">read</a></tt><tt class="py-op">(</tt><tt class="py-name">retlen</tt><tt class="py-op">)</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">None</tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt> <tt class="py-line"> <tt class="py-keyword">finally</tt><tt class="py-op">:</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt> <tt class="py-line"> <tt class="py-name">pymap</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name" targets="Method paramiko.Agent.close()=paramiko.Agent-class.html#close,Method paramiko.BufferedFile.close()=paramiko.BufferedFile-class.html#close,Method paramiko.Channel.close()=paramiko.Channel-class.html#close,Method paramiko.SFTPClient.close()=paramiko.SFTPClient-class.html#close,Method paramiko.SFTPFile.close()=paramiko.SFTPFile-class.html#close,Method paramiko.SFTPHandle.close()=paramiko.SFTPHandle-class.html#close,Method paramiko.SSHClient.close()=paramiko.SSHClient-class.html#close,Method paramiko.Transport.close()=paramiko.Transport-class.html#close,Method paramiko.buffered_pipe.BufferedPipe.close()=paramiko.buffered_pipe.BufferedPipe-class.html#close,Method paramiko.pipe.PosixPipe.close()=paramiko.pipe.PosixPipe-class.html#close,Method paramiko.pipe.WindowsPipe.close()=paramiko.pipe.WindowsPipe-class.html#close,Method paramiko.win_pageant.PageantConnection.close()=paramiko.win_pageant.PageantConnection-class.html#close"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-24', 'close', 'link-24');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt> <tt class="py-line"> <tt class="py-name">f</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name"><a title="paramiko.Agent.close
-paramiko.BufferedFile.close
-paramiko.Channel.close
-paramiko.SFTPClient.close
-paramiko.SFTPFile.close
-paramiko.SFTPHandle.close
-paramiko.SSHClient.close
-paramiko.Transport.close
-paramiko.buffered_pipe.BufferedPipe.close
-paramiko.pipe.PosixPipe.close
-paramiko.pipe.WindowsPipe.close
-paramiko.win_pageant.PageantConnection.close" class="py-name" href="#" onclick="return doclink('link-25', 'close', 'link-24');">close</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt> <tt class="py-line"> <tt class="py-comment"># Remove the file, it was temporary only</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt> <tt class="py-line"> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name" targets="Method paramiko.SFTPClient.unlink()=paramiko.SFTPClient-class.html#unlink"><a title="paramiko.SFTPClient.unlink" class="py-name" href="#" onclick="return doclink('link-26', 'unlink', 'link-26');">unlink</a></tt><tt class="py-op">(</tt><tt class="py-name">filename</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L122"></a><tt class="py-lineno">122</tt> <tt class="py-line"> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt> <tt class="py-line"> </tt>
-<a name="PageantConnection"></a><div id="PageantConnection-def"><a name="L124"></a><tt class="py-lineno">124</tt> <a class="py-toggle" href="#" id="PageantConnection-toggle" onclick="return toggle('PageantConnection');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="paramiko.win_pageant.PageantConnection-class.html">PageantConnection</a> <tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PageantConnection-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="PageantConnection-expanded"><a name="L125"></a><tt class="py-lineno">125</tt> <tt class="py-line"> <tt class="py-docstring">"""</tt> </tt>
-<a name="L126"></a><tt class="py-lineno">126</tt> <tt class="py-line"><tt class="py-docstring"> Mock "connection" to an agent which roughly approximates the behavior of</tt> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt> <tt class="py-line"><tt class="py-docstring"> a unix local-domain socket (as used by Agent). Requests are sent to the</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt> <tt class="py-line"><tt class="py-docstring"> pageant daemon via special Windows magick, and responses are buffered back</tt> </tt>
-<a name="L129"></a><tt class="py-lineno">129</tt> <tt class="py-line"><tt class="py-docstring"> for subsequent reads.</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt> <tt class="py-line"><tt class="py-docstring"> """</tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt> <tt class="py-line"> </tt>
-<a name="PageantConnection.__init__"></a><div id="PageantConnection.__init__-def"><a name="L132"></a><tt class="py-lineno">132</tt> <a class="py-toggle" href="#" id="PageantConnection.__init__-toggle" onclick="return toggle('PageantConnection.__init__');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.win_pageant.PageantConnection-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PageantConnection.__init__-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PageantConnection.__init__-expanded"><a name="L133"></a><tt class="py-lineno">133</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_response</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-</div><a name="L134"></a><tt class="py-lineno">134</tt> <tt class="py-line"> </tt>
-<a name="PageantConnection.send"></a><div id="PageantConnection.send-def"><a name="L135"></a><tt class="py-lineno">135</tt> <a class="py-toggle" href="#" id="PageantConnection.send-toggle" onclick="return toggle('PageantConnection.send');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.win_pageant.PageantConnection-class.html#send">send</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">data</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PageantConnection.send-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PageantConnection.send-expanded"><a name="L136"></a><tt class="py-lineno">136</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_response</tt> <tt class="py-op">=</tt> <tt class="py-name">_query_pageant</tt><tt class="py-op">(</tt><tt class="py-name">data</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L137"></a><tt class="py-lineno">137</tt> <tt class="py-line"> </tt>
-<a name="PageantConnection.recv"></a><div id="PageantConnection.recv-def"><a name="L138"></a><tt class="py-lineno">138</tt> <a class="py-toggle" href="#" id="PageantConnection.recv-toggle" onclick="return toggle('PageantConnection.recv');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.win_pageant.PageantConnection-class.html#recv">recv</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">n</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PageantConnection.recv-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PageantConnection.recv-expanded"><a name="L139"></a><tt class="py-lineno">139</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_response</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-string">''</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt> <tt class="py-line"> <tt class="py-name">ret</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_response</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-name">n</tt><tt class="py-op">]</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_response</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_response</tt><tt class="py-op">[</tt><tt class="py-name">n</tt><tt class="py-op">:</tt><tt class="py-op">]</tt> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_response</tt> <tt class="py-op">==</tt> <tt class="py-string">''</tt><tt class="py-op">:</tt> </tt>
-<a name="L144"></a><tt class="py-lineno">144</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_response</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L145"></a><tt class="py-lineno">145</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">ret</tt> </tt>
-</div><a name="L146"></a><tt class="py-lineno">146</tt> <tt class="py-line"> </tt>
-<a name="PageantConnection.close"></a><div id="PageantConnection.close-def"><a name="L147"></a><tt class="py-lineno">147</tt> <a class="py-toggle" href="#" id="PageantConnection.close-toggle" onclick="return toggle('PageantConnection.close');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="paramiko.win_pageant.PageantConnection-class.html#close">close</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="PageantConnection.close-collapsed" style="display:none;" pad="+++" indent="++++++++"></div><div id="PageantConnection.close-expanded"><a name="L148"></a><tt class="py-lineno">148</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
-</div></div><a name="L149"></a><tt class="py-lineno">149</tt> <tt class="py-line"> </tt><script type="text/javascript">
-<!--
-expandto(location.href);
-// -->
-</script>
-</pre>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:08 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/paramiko.win_pageant.PageantConnection-class.html b/docs/paramiko.win_pageant.PageantConnection-class.html
deleted file mode 100644
index 1170e05..0000000
--- a/docs/paramiko.win_pageant.PageantConnection-class.html
+++ /dev/null
@@ -1,260 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko.win_pageant.PageantConnection</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">
- <span class="breadcrumbs">
- <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
- <a href="paramiko.win_pageant-module.html">Module&nbsp;win_pageant</a> ::
- Class&nbsp;PageantConnection
- </span>
- </td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="paramiko.win_pageant.PageantConnection-class.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<!-- ==================== CLASS DESCRIPTION ==================== -->
-<h1 class="epydoc">Class PageantConnection</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko.win_pageant-pysrc.html#PageantConnection">source&nbsp;code</a></span></p>
-<pre class="base-tree">
-object --+
- |
- <strong class="uidshort">PageantConnection</strong>
-</pre>
-
-<hr />
-<p>Mock &quot;connection&quot; to an agent which roughly approximates the
- behavior of a unix local-domain socket (as used by Agent). Requests are
- sent to the pageant daemon via special Windows magick, and responses are
- buffered back for subsequent reads.</p>
-
-<!-- ==================== INSTANCE METHODS ==================== -->
-<a name="section-InstanceMethods"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Instance Methods</span></td>
-</tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a href="paramiko.win_pageant.PageantConnection-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>)</span><br />
- x.__init__(...) initializes x; see x.__class__.__doc__ for signature</td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.win_pageant-pysrc.html#PageantConnection.__init__">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="send"></a><span class="summary-sig-name">send</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">data</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.win_pageant-pysrc.html#PageantConnection.send">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="recv"></a><span class="summary-sig-name">recv</span>(<span class="summary-sig-arg">self</span>,
- <span class="summary-sig-arg">n</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.win_pageant-pysrc.html#PageantConnection.recv">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
-<tr>
- <td width="15%" align="right" valign="top" class="summary">
- <span class="summary-type">&nbsp;</span>
- </td><td class="summary">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td><span class="summary-sig"><a name="close"></a><span class="summary-sig-name">close</span>(<span class="summary-sig-arg">self</span>)</span></td>
- <td align="right" valign="top">
- <span class="codelink"><a href="paramiko.win_pageant-pysrc.html#PageantConnection.close">source&nbsp;code</a></span>
-
- </td>
- </tr>
- </table>
-
- </td>
- </tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__delattr__</code>,
- <code>__format__</code>,
- <code>__getattribute__</code>,
- <code>__hash__</code>,
- <code>__new__</code>,
- <code>__reduce__</code>,
- <code>__reduce_ex__</code>,
- <code>__repr__</code>,
- <code>__setattr__</code>,
- <code>__sizeof__</code>,
- <code>__str__</code>,
- <code>__subclasshook__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== PROPERTIES ==================== -->
-<a name="section-Properties"></a>
-<table class="summary" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Properties</span></td>
-</tr>
- <tr>
- <td colspan="2" class="summary">
- <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
- <code>__class__</code>
- </p>
- </td>
- </tr>
-</table>
-<!-- ==================== METHOD DETAILS ==================== -->
-<a name="section-MethodDetails"></a>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr bgcolor="#70b0f0" class="table-header">
- <td align="left" colspan="2" class="table-header">
- <span class="table-header">Method Details</span></td>
-</tr>
-</table>
-<a name="__init__"></a>
-<div>
-<table class="details" border="1" cellpadding="3"
- cellspacing="0" width="100%" bgcolor="white">
-<tr><td>
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr valign="top"><td>
- <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>)</span>
- <br /><em class="fname">(Constructor)</em>
- </h3>
- </td><td align="right" valign="top"
- ><span class="codelink"><a href="paramiko.win_pageant-pysrc.html#PageantConnection.__init__">source&nbsp;code</a></span>&nbsp;
- </td>
- </tr></table>
-
- <p>x.__init__(...) initializes x; see x.__class__.__doc__ for
- signature</p>
- <dl class="fields">
- <dt>Overrides:
- object.__init__
- <dd><em class="note">(inherited documentation)</em></dd>
- </dt>
- </dl>
-</td></tr></table>
-</div>
-<br />
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:04 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/redirect.html b/docs/redirect.html
deleted file mode 100644
index c36dbb0..0000000
--- a/docs/redirect.html
+++ /dev/null
@@ -1,38 +0,0 @@
-<html><head><title>Epydoc Redirect Page</title>
-<meta http-equiv="cache-control" content="no-cache" />
-<meta http-equiv="expires" content="0" />
-<meta http-equiv="pragma" content="no-cache" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-<body>
-<script type="text/javascript">
-<!--
-var pages = ["paramiko.ssh_exception.PartialAuthentication-c", "paramiko.win_pageant.PageantConnection-c", "paramiko.buffered_pipe.BufferedPipe-c", "paramiko.PasswordRequiredException-c", "paramiko.buffered_pipe.PipeTimeout-c", "paramiko.channel.ChannelStderrFile-c", "paramiko.compress.ZlibDecompressor-c", "paramiko.packet.NeedRekeyException-c", "paramiko.AuthenticationException-c", "paramiko.compress.ZlibCompressor-c", "paramiko.logging22.StreamHandler-c", "paramiko.BadAuthenticationType-c", "paramiko.hostkeys.HostKeyEntry-c", "paramiko.MissingHostKeyPolicy-c", "paramiko.kex_group1.KexGroup1-c", "paramiko.transport.ChannelMap-c", "paramiko.BadHostKeyException-c", "paramiko.SFTPServerInterface-c", "paramiko.logging22.Formatter-c", "paramiko.primes.ModulusPack-c", "paramiko.ChannelException-c", "paramiko.SubsystemHandler-c", "paramiko.ber.BERException-c", "paramiko.logging22.logger-c", "paramiko.pipe.WindowsPipe-c", "paramiko.SecurityOptions-c", "paramiko.ServerInterface-c", "paramiko.SFTPAttributes-c", "paramiko.kex_gex.KexGex-c", "paramiko.pipe.PosixPipe-c", "paramiko.util.enumerate-c", "paramiko.buffered_pipe-m", "paramiko.ssh_exception-m", "paramiko.AutoAddPolicy-c", "paramiko.WarningPolicy-c", "paramiko.auth_handler-m", "paramiko.BufferedFile-c", "paramiko.RejectPolicy-c", "paramiko.SSHException-c", "paramiko.util.Counter-c", "paramiko.util.PFilter-c", "paramiko.sftp_client-m", "paramiko.sftp_handle-m", "paramiko.sftp_server-m", "paramiko.win_pageant-m", "paramiko.pipe.OrPipe-c", "paramiko.kex_group1-m", "paramiko.SFTPClient-c", "paramiko.SFTPHandle-c", "paramiko.SFTPServer-c", "paramiko.logging22-m", "paramiko.sftp_attr-m", "paramiko.sftp_file-m", "paramiko.transport-m", "paramiko.SFTPError-c", "paramiko.SSHClient-c", "paramiko.SSHConfig-c", "paramiko.Transport-c", "paramiko.compress-m", "paramiko.hostkeys-m", "paramiko.resource-m", "paramiko.AgentKey-c", "paramiko.HostKeys-c", "paramiko.SFTPFile-c", "paramiko.channel-m", "paramiko.kex_gex-m", "paramiko.message-m", "paramiko.sftp_si-m", "paramiko.Channel-c", "paramiko.Message-c", "paramiko.ber.BER-c", "paramiko.client-m", "paramiko.common-m", "paramiko.config-m", "paramiko.dsskey-m", "paramiko.packet-m", "paramiko.primes-m", "paramiko.rsakey-m", "paramiko.server-m", "paramiko.DSSKey-c", "paramiko.RSAKey-c", "paramiko.agent-m", "paramiko.Agent-c", "paramiko.file-m", "paramiko.pipe-m", "paramiko.pkey-m", "paramiko.sftp-m", "paramiko.util-m", "paramiko.PKey-c", "paramiko.SFTP-c", "paramiko.ber-m", "paramiko-m"];
-var dottedName = get_anchor();
-if (dottedName) {
- var target = redirect_url(dottedName);
- if (target) window.location.replace(target);
-}
-// -->
-</script>
-
-<h3>Epydoc Auto-redirect page</h3>
-
-<p>When javascript is enabled, this page will redirect URLs of
-the form <tt>redirect.html#<i>dotted.name</i></tt> to the
-documentation for the object with the given fully-qualified
-dotted name.</p>
-<p><a id="message"> &nbsp; </a></p>
-
-<script type="text/javascript">
-<!--
-if (dottedName) {
- var msg = document.getElementById("message");
- msg.innerHTML = "No documentation found for <tt>"+
- dottedName+"</tt>";
-}
-// -->
-</script>
-
-</body>
-</html>
diff --git a/docs/since-index.html b/docs/since-index.html
deleted file mode 100644
index fc67c2e..0000000
--- a/docs/since-index.html
+++ /dev/null
@@ -1,302 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Introductions List</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th bgcolor="#70b0f0" class="navbar-select"
- >&nbsp;&nbsp;&nbsp;Indices&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table width="100%" cellpadding="0" cellspacing="0">
- <tr valign="top">
- <td width="100%">&nbsp;</td>
- <td>
- <table cellpadding="0" cellspacing="0">
- <!-- hide/show private -->
- <tr><td align="right"><span class="options"
- >[<a href="frames.html" target="_top">frames</a
- >]&nbsp;|&nbsp;<a href="since-index.html"
- target="_top">no&nbsp;frames</a>]</span></td></tr>
- </table>
- </td>
- </tr>
-</table>
-<center><b>[
- <a href="identifier-index.html">Identifiers</a>
-| <a href="bug-index.html">Bugs</a>
-| <a href="since-index.html">Introductions</a>
-]</b></center><br />
-<h1 class="epydoc"><a name="since">Introductions List</a></h1>
-<br />
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.AuthenticationException-class.html">paramiko.AuthenticationException</a></b> <ul class="nomargin">
- <li>1.6</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.BadAuthenticationType-class.html">paramiko.BadAuthenticationType</a></b> <ul class="nomargin">
- <li>1.1</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.BadHostKeyException-class.html">paramiko.BadHostKeyException</a></b> <ul class="nomargin">
- <li>1.6</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.Channel-class.html#exit_status_ready">paramiko.Channel.exit_status_ready</a></b> <ul class="nomargin">
- <li>1.7.3</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.Channel-class.html#makefile_stderr">paramiko.Channel.makefile_stderr</a></b> <ul class="nomargin">
- <li>1.1</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.Channel-class.html#recv_exit_status">paramiko.Channel.recv_exit_status</a></b> <ul class="nomargin">
- <li>1.2</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.Channel-class.html#recv_stderr">paramiko.Channel.recv_stderr</a></b> <ul class="nomargin">
- <li>1.1</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.Channel-class.html#recv_stderr_ready">paramiko.Channel.recv_stderr_ready</a></b> <ul class="nomargin">
- <li>1.1</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.Channel-class.html#send_exit_status">paramiko.Channel.send_exit_status</a></b> <ul class="nomargin">
- <li>1.2</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.Channel-class.html#send_stderr">paramiko.Channel.send_stderr</a></b> <ul class="nomargin">
- <li>1.1</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.Channel-class.html#sendall_stderr">paramiko.Channel.sendall_stderr</a></b> <ul class="nomargin">
- <li>1.1</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.Channel-class.html#set_combine_stderr">paramiko.Channel.set_combine_stderr</a></b> <ul class="nomargin">
- <li>1.1</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.Channel-class.html#shutdown_read">paramiko.Channel.shutdown_read</a></b> <ul class="nomargin">
- <li>1.2</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.Channel-class.html#shutdown_write">paramiko.Channel.shutdown_write</a></b> <ul class="nomargin">
- <li>1.2</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.ChannelException-class.html">paramiko.ChannelException</a></b> <ul class="nomargin">
- <li>1.6</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.HostKeys-class.html">paramiko.HostKeys</a></b> <ul class="nomargin">
- <li>1.5.3</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.HostKeys-class.html#save">paramiko.HostKeys.save</a></b> <ul class="nomargin">
- <li>1.6.1</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.SFTPClient-class.html#chdir">paramiko.SFTPClient.chdir</a></b> <ul class="nomargin">
- <li>1.4</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.SFTPClient-class.html#close">paramiko.SFTPClient.close</a></b> <ul class="nomargin">
- <li>1.4</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.SFTPClient-class.html#get">paramiko.SFTPClient.get</a></b> <ul class="nomargin">
- <li>1.4</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.SFTPClient-class.html#get_channel">paramiko.SFTPClient.get_channel</a></b> <ul class="nomargin">
- <li>1.7.1</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.SFTPClient-class.html#getcwd">paramiko.SFTPClient.getcwd</a></b> <ul class="nomargin">
- <li>1.4</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.SFTPClient-class.html#listdir_attr">paramiko.SFTPClient.listdir_attr</a></b> <ul class="nomargin">
- <li>1.2</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.SFTPClient-class.html#put">paramiko.SFTPClient.put</a></b> <ul class="nomargin">
- <li>1.4</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.SFTPFile-class.html#check">paramiko.SFTPFile.check</a></b> <ul class="nomargin">
- <li>1.4</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.SFTPFile-class.html#prefetch">paramiko.SFTPFile.prefetch</a></b> <ul class="nomargin">
- <li>1.5.1</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.SFTPFile-class.html#readv">paramiko.SFTPFile.readv</a></b> <ul class="nomargin">
- <li>1.5.4</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.SFTPFile-class.html#set_pipelined">paramiko.SFTPFile.set_pipelined</a></b> <ul class="nomargin">
- <li>1.5</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.SSHClient-class.html">paramiko.SSHClient</a></b> <ul class="nomargin">
- <li>1.6</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.SSHConfig-class.html">paramiko.SSHConfig</a></b> <ul class="nomargin">
- <li>1.6</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.ServerInterface-class.html#check_channel_exec_request">paramiko.ServerInterface.check_channel_exec_request</a></b> <ul class="nomargin">
- <li>1.1</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.SubsystemHandler-class.html#finish_subsystem">paramiko.SubsystemHandler.finish_subsystem</a></b> <ul class="nomargin">
- <li>1.1</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.Transport-class.html#atfork">paramiko.Transport.atfork</a></b> <ul class="nomargin">
- <li>1.5.3</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.Transport-class.html#auth_interactive">paramiko.Transport.auth_interactive</a></b> <ul class="nomargin">
- <li>1.5</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.Transport-class.html#auth_none">paramiko.Transport.auth_none</a></b> <ul class="nomargin">
- <li>1.5</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.Transport-class.html#get_exception">paramiko.Transport.get_exception</a></b> <ul class="nomargin">
- <li>1.1</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.Transport-class.html#get_hexdump">paramiko.Transport.get_hexdump</a></b> <ul class="nomargin">
- <li>1.4</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.Transport-class.html#get_log_channel">paramiko.Transport.get_log_channel</a></b> <ul class="nomargin">
- <li>1.2</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.Transport-class.html#set_log_channel">paramiko.Transport.set_log_channel</a></b> <ul class="nomargin">
- <li>1.1</li>
- </ul>
-</table></div>
-<div>
-<table width="100%" class="metadata-index" bgcolor="#e0e0e0"><tr><td class="metadata-index"><b>Introductions in <a href="paramiko.Transport-class.html#use_compression">paramiko.Transport.use_compression</a></b> <ul class="nomargin">
- <li>1.5.2</li>
- </ul>
-</table></div>
-<br /><!-- ==================== NAVIGATION BAR ==================== -->
-<table class="navbar" border="0" width="100%" cellpadding="0"
- bgcolor="#a0c0ff" cellspacing="0">
- <tr valign="middle">
- <!-- Home link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Tree link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Index link -->
- <th bgcolor="#70b0f0" class="navbar-select"
- >&nbsp;&nbsp;&nbsp;Indices&nbsp;&nbsp;&nbsp;</th>
-
- <!-- Help link -->
- <th>&nbsp;&nbsp;&nbsp;<a
- href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
-
- <th class="navbar" width="100%"></th>
- </tr>
-</table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%%">
- <tr>
- <td align="left" class="footer">
- Generated by Epydoc 3.0.1 on Mon May 23 13:50:01 2011
- </td>
- <td align="right" class="footer">
- <a target="mainFrame" href="http://epydoc.sourceforge.net"
- >http://epydoc.sourceforge.net</a>
- </td>
- </tr>
-</table>
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-everything.html b/docs/toc-everything.html
deleted file mode 100644
index 725301a..0000000
--- a/docs/toc-everything.html
+++ /dev/null
@@ -1,148 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Everything</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Everything</h1>
-<hr />
- <h2 class="toc">All Classes</h2>
- <a target="mainFrame" href="paramiko.Agent-class.html"
- >paramiko.Agent</a><br /> <a target="mainFrame" href="paramiko.AgentKey-class.html"
- >paramiko.AgentKey</a><br /> <a target="mainFrame" href="paramiko.AuthenticationException-class.html"
- >paramiko.AuthenticationException</a><br /> <a target="mainFrame" href="paramiko.AutoAddPolicy-class.html"
- >paramiko.AutoAddPolicy</a><br /> <a target="mainFrame" href="paramiko.BadAuthenticationType-class.html"
- >paramiko.BadAuthenticationType</a><br /> <a target="mainFrame" href="paramiko.BadHostKeyException-class.html"
- >paramiko.BadHostKeyException</a><br /> <a target="mainFrame" href="paramiko.BufferedFile-class.html"
- >paramiko.BufferedFile</a><br /> <a target="mainFrame" href="paramiko.Channel-class.html"
- >paramiko.Channel</a><br /> <a target="mainFrame" href="paramiko.ChannelException-class.html"
- >paramiko.ChannelException</a><br /> <a target="mainFrame" href="paramiko.DSSKey-class.html"
- >paramiko.DSSKey</a><br /> <a target="mainFrame" href="paramiko.HostKeys-class.html"
- >paramiko.HostKeys</a><br /> <a target="mainFrame" href="paramiko.Message-class.html"
- >paramiko.Message</a><br /> <a target="mainFrame" href="paramiko.MissingHostKeyPolicy-class.html"
- >paramiko.MissingHostKeyPolicy</a><br /> <a target="mainFrame" href="paramiko.PKey-class.html"
- >paramiko.PKey</a><br /> <a target="mainFrame" href="paramiko.PasswordRequiredException-class.html"
- >paramiko.PasswordRequiredException</a><br /> <a target="mainFrame" href="paramiko.RSAKey-class.html"
- >paramiko.RSAKey</a><br /> <a target="mainFrame" href="paramiko.RejectPolicy-class.html"
- >paramiko.RejectPolicy</a><br /> <a target="mainFrame" href="paramiko.SFTP-class.html"
- >paramiko.SFTP</a><br /> <a target="mainFrame" href="paramiko.SFTPAttributes-class.html"
- >paramiko.SFTPAttributes</a><br /> <a target="mainFrame" href="paramiko.SFTPClient-class.html"
- >paramiko.SFTPClient</a><br /> <a target="mainFrame" href="paramiko.SFTPError-class.html"
- >paramiko.SFTPError</a><br /> <a target="mainFrame" href="paramiko.SFTPFile-class.html"
- >paramiko.SFTPFile</a><br /> <a target="mainFrame" href="paramiko.SFTPHandle-class.html"
- >paramiko.SFTPHandle</a><br /> <a target="mainFrame" href="paramiko.SFTPServer-class.html"
- >paramiko.SFTPServer</a><br /> <a target="mainFrame" href="paramiko.SFTPServerInterface-class.html"
- >paramiko.SFTPServerInterface</a><br /> <a target="mainFrame" href="paramiko.SSHClient-class.html"
- >paramiko.SSHClient</a><br /> <a target="mainFrame" href="paramiko.SSHConfig-class.html"
- >paramiko.SSHConfig</a><br /> <a target="mainFrame" href="paramiko.SSHException-class.html"
- >paramiko.SSHException</a><br /> <a target="mainFrame" href="paramiko.SecurityOptions-class.html"
- >paramiko.SecurityOptions</a><br /> <a target="mainFrame" href="paramiko.ServerInterface-class.html"
- >paramiko.ServerInterface</a><br /> <a target="mainFrame" href="paramiko.SubsystemHandler-class.html"
- >paramiko.SubsystemHandler</a><br /> <a target="mainFrame" href="paramiko.Transport-class.html"
- >paramiko.Transport</a><br /> <a target="mainFrame" href="paramiko.WarningPolicy-class.html"
- >paramiko.WarningPolicy</a><br /> <a target="mainFrame" href="paramiko.logging22.Formatter-class.html"
- >paramiko.logging22.Formatter</a><br /> <a target="mainFrame" href="paramiko.logging22.StreamHandler-class.html"
- >paramiko.logging22.StreamHandler</a><br /> <a target="mainFrame" href="paramiko.logging22.logger-class.html"
- >paramiko.logging22.logger</a><br /> <a target="mainFrame" href="paramiko.util.Counter-class.html"
- >paramiko.util.Counter</a><br /> <a target="mainFrame" href="paramiko.util.PFilter-class.html"
- >paramiko.util.PFilter</a><br /> <a target="mainFrame" href="paramiko.util.enumerate-class.html"
- >paramiko.util.enumerate</a><br /> <a target="mainFrame" href="paramiko.win_pageant.PageantConnection-class.html"
- >paramiko.win_pageant.PageantConnection</a><br /> <h2 class="toc">All Functions</h2>
- <a target="mainFrame" href="paramiko.logging22-module.html#getLogger"
- >paramiko.logging22.getLogger</a><br /> <a target="mainFrame" href="paramiko.util-module.html#bit_length"
- >paramiko.util.bit_length</a><br /> <a target="mainFrame" href="paramiko.util-module.html#deflate_long"
- >paramiko.util.deflate_long</a><br /> <a target="mainFrame" href="paramiko.util-module.html#format_binary"
- >paramiko.util.format_binary</a><br /> <a target="mainFrame" href="paramiko.util-module.html#format_binary_line"
- >paramiko.util.format_binary_line</a><br /> <a target="mainFrame" href="paramiko.util-module.html#format_binary_weird"
- >paramiko.util.format_binary_weird</a><br /> <a target="mainFrame" href="paramiko.util-module.html#generate_key_bytes"
- >paramiko.util.generate_key_bytes</a><br /> <a target="mainFrame" href="paramiko.util-module.html#get_logger"
- >paramiko.util.get_logger</a><br /> <a target="mainFrame" href="paramiko.util-module.html#get_thread_id"
- >paramiko.util.get_thread_id</a><br /> <a target="mainFrame" href="paramiko.util-module.html#hexify"
- >paramiko.util.hexify</a><br /> <a target="mainFrame" href="paramiko.util-module.html#inflate_long"
- >paramiko.util.inflate_long</a><br /> <a target="mainFrame" href="paramiko.util-module.html#load_host_keys"
- >paramiko.util.load_host_keys</a><br /> <a target="mainFrame" href="paramiko.util-module.html#log_to_file"
- >paramiko.util.log_to_file</a><br /> <a target="mainFrame" href="paramiko.util-module.html#lookup_ssh_host_config"
- >paramiko.util.lookup_ssh_host_config</a><br /> <a target="mainFrame" href="paramiko.util-module.html#mod_inverse"
- >paramiko.util.mod_inverse</a><br /> <a target="mainFrame" href="paramiko.util-module.html#parse_ssh_config"
- >paramiko.util.parse_ssh_config</a><br /> <a target="mainFrame" href="paramiko.util-module.html#safe_string"
- >paramiko.util.safe_string</a><br /> <a target="mainFrame" href="paramiko.util-module.html#tb_strings"
- >paramiko.util.tb_strings</a><br /> <a target="mainFrame" href="paramiko.util-module.html#unhexify"
- >paramiko.util.unhexify</a><br /> <a target="mainFrame" href="paramiko.win_pageant-module.html#can_talk_to_agent"
- >paramiko.win_pageant.can_talk_to_agent</a><br /> <h2 class="toc">All Variables</h2>
- <a target="mainFrame" href="paramiko.logging22-module.html#CRITICAL"
- >paramiko.logging22.CRITICAL</a><br /> <a target="mainFrame" href="paramiko.logging22-module.html#DEBUG"
- >paramiko.logging22.DEBUG</a><br /> <a target="mainFrame" href="paramiko.logging22-module.html#ERROR"
- >paramiko.logging22.ERROR</a><br /> <a target="mainFrame" href="paramiko.logging22-module.html#INFO"
- >paramiko.logging22.INFO</a><br /> <a target="mainFrame" href="paramiko.logging22-module.html#WARNING"
- >paramiko.logging22.WARNING</a><br /> <a target="mainFrame" href="paramiko.logging22-module.html#__package__"
- >paramiko.logging22.__package__</a><br /> <a target="mainFrame" href="paramiko.util-module.html#AUTH_FAILED"
- >paramiko.util.AUTH_FAILED</a><br /> <a target="mainFrame" href="paramiko.util-module.html#AUTH_PARTIALLY_SUCCESSFUL"
- >paramiko.util.AUTH_PARTIALLY_SUCCESSFUL</a><br /> <a target="mainFrame" href="paramiko.util-module.html#AUTH_SUCCESSFUL"
- >paramiko.util.AUTH_SUCCESSFUL</a><br /> <a target="mainFrame" href="paramiko.util-module.html#CONNECTION_FAILED_CODE"
- >paramiko.util.CONNECTION_FAILED_CODE</a><br /> <a target="mainFrame" href="paramiko.util-module.html#CRITICAL"
- >paramiko.util.CRITICAL</a><br /> <a target="mainFrame" href="paramiko.util-module.html#DEBUG"
- >paramiko.util.DEBUG</a><br /> <a target="mainFrame" href="paramiko.util-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER"
- >paramiko.util.DISCONNECT_AUTH_CANCELLED_BY_USER</a><br /> <a target="mainFrame" href="paramiko.util-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE"
- >paramiko.util.DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</a><br /> <a target="mainFrame" href="paramiko.util-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE"
- >paramiko.util.DISCONNECT_SERVICE_NOT_AVAILABLE</a><br /> <a target="mainFrame" href="paramiko.util-module.html#ERROR"
- >paramiko.util.ERROR</a><br /> <a target="mainFrame" href="paramiko.util-module.html#INFO"
- >paramiko.util.INFO</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_CHANNEL_CLOSE"
- >paramiko.util.MSG_CHANNEL_CLOSE</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_CHANNEL_DATA"
- >paramiko.util.MSG_CHANNEL_DATA</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_CHANNEL_EOF"
- >paramiko.util.MSG_CHANNEL_EOF</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_CHANNEL_EXTENDED_DATA"
- >paramiko.util.MSG_CHANNEL_EXTENDED_DATA</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_CHANNEL_FAILURE"
- >paramiko.util.MSG_CHANNEL_FAILURE</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_CHANNEL_OPEN"
- >paramiko.util.MSG_CHANNEL_OPEN</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_CHANNEL_OPEN_FAILURE"
- >paramiko.util.MSG_CHANNEL_OPEN_FAILURE</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_CHANNEL_OPEN_SUCCESS"
- >paramiko.util.MSG_CHANNEL_OPEN_SUCCESS</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_CHANNEL_REQUEST"
- >paramiko.util.MSG_CHANNEL_REQUEST</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_CHANNEL_SUCCESS"
- >paramiko.util.MSG_CHANNEL_SUCCESS</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_CHANNEL_WINDOW_ADJUST"
- >paramiko.util.MSG_CHANNEL_WINDOW_ADJUST</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_DEBUG"
- >paramiko.util.MSG_DEBUG</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_DISCONNECT"
- >paramiko.util.MSG_DISCONNECT</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_GLOBAL_REQUEST"
- >paramiko.util.MSG_GLOBAL_REQUEST</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_IGNORE"
- >paramiko.util.MSG_IGNORE</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_KEXINIT"
- >paramiko.util.MSG_KEXINIT</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_NAMES"
- >paramiko.util.MSG_NAMES</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_NEWKEYS"
- >paramiko.util.MSG_NEWKEYS</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_REQUEST_FAILURE"
- >paramiko.util.MSG_REQUEST_FAILURE</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_REQUEST_SUCCESS"
- >paramiko.util.MSG_REQUEST_SUCCESS</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_SERVICE_ACCEPT"
- >paramiko.util.MSG_SERVICE_ACCEPT</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_SERVICE_REQUEST"
- >paramiko.util.MSG_SERVICE_REQUEST</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_UNIMPLEMENTED"
- >paramiko.util.MSG_UNIMPLEMENTED</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_USERAUTH_BANNER"
- >paramiko.util.MSG_USERAUTH_BANNER</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_USERAUTH_FAILURE"
- >paramiko.util.MSG_USERAUTH_FAILURE</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_USERAUTH_INFO_REQUEST"
- >paramiko.util.MSG_USERAUTH_INFO_REQUEST</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_USERAUTH_INFO_RESPONSE"
- >paramiko.util.MSG_USERAUTH_INFO_RESPONSE</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_USERAUTH_PK_OK"
- >paramiko.util.MSG_USERAUTH_PK_OK</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_USERAUTH_REQUEST"
- >paramiko.util.MSG_USERAUTH_REQUEST</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_USERAUTH_SUCCESS"
- >paramiko.util.MSG_USERAUTH_SUCCESS</a><br /> <a target="mainFrame" href="paramiko.util-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED"
- >paramiko.util.OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</a><br /> <a target="mainFrame" href="paramiko.util-module.html#OPEN_FAILED_CONNECT_FAILED"
- >paramiko.util.OPEN_FAILED_CONNECT_FAILED</a><br /> <a target="mainFrame" href="paramiko.util-module.html#OPEN_FAILED_RESOURCE_SHORTAGE"
- >paramiko.util.OPEN_FAILED_RESOURCE_SHORTAGE</a><br /> <a target="mainFrame" href="paramiko.util-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE"
- >paramiko.util.OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</a><br /> <a target="mainFrame" href="paramiko.util-module.html#OPEN_SUCCEEDED"
- >paramiko.util.OPEN_SUCCEEDED</a><br /> <a target="mainFrame" href="paramiko.util-module.html#PY22"
- >paramiko.util.PY22</a><br /> <a target="mainFrame" href="paramiko.util-module.html#WARNING"
- >paramiko.util.WARNING</a><br /> <a target="mainFrame" href="paramiko.util-module.html#__package__"
- >paramiko.util.__package__</a><br /> <a target="mainFrame" href="paramiko.util-module.html#rng"
- >paramiko.util.rng</a><br /> <a target="mainFrame" href="paramiko.win_pageant-module.html#__package__"
- >paramiko.win_pageant.__package__</a><br /> <a target="mainFrame" href="paramiko.win_pageant-module.html#win32con_WM_COPYDATA"
- >paramiko.win_pageant.win32con_WM_COPYDATA</a><br /><hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko-module.html b/docs/toc-paramiko-module.html
deleted file mode 100644
index f6b2876..0000000
--- a/docs/toc-paramiko-module.html
+++ /dev/null
@@ -1,61 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>paramiko</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module paramiko</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="paramiko.Agent-class.html"
- >Agent</a><br /> <a target="mainFrame" href="paramiko.AgentKey-class.html"
- >AgentKey</a><br /> <a target="mainFrame" href="paramiko.AuthenticationException-class.html"
- >AuthenticationException</a><br /> <a target="mainFrame" href="paramiko.AutoAddPolicy-class.html"
- >AutoAddPolicy</a><br /> <a target="mainFrame" href="paramiko.BadAuthenticationType-class.html"
- >BadAuthenticationType</a><br /> <a target="mainFrame" href="paramiko.BadHostKeyException-class.html"
- >BadHostKeyException</a><br /> <a target="mainFrame" href="paramiko.BufferedFile-class.html"
- >BufferedFile</a><br /> <a target="mainFrame" href="paramiko.Channel-class.html"
- >Channel</a><br /> <a target="mainFrame" href="paramiko.ChannelException-class.html"
- >ChannelException</a><br /> <a target="mainFrame" href="paramiko.DSSKey-class.html"
- >DSSKey</a><br /> <a target="mainFrame" href="paramiko.HostKeys-class.html"
- >HostKeys</a><br /> <a target="mainFrame" href="paramiko.Message-class.html"
- >Message</a><br /> <a target="mainFrame" href="paramiko.MissingHostKeyPolicy-class.html"
- >MissingHostKeyPolicy</a><br /> <a target="mainFrame" href="paramiko.PKey-class.html"
- >PKey</a><br /> <a target="mainFrame" href="paramiko.PasswordRequiredException-class.html"
- >PasswordRequiredException</a><br /> <a target="mainFrame" href="paramiko.RSAKey-class.html"
- >RSAKey</a><br /> <a target="mainFrame" href="paramiko.RejectPolicy-class.html"
- >RejectPolicy</a><br /> <a target="mainFrame" href="paramiko.SFTP-class.html"
- >SFTP</a><br /> <a target="mainFrame" href="paramiko.SFTPAttributes-class.html"
- >SFTPAttributes</a><br /> <a target="mainFrame" href="paramiko.SFTPClient-class.html"
- >SFTPClient</a><br /> <a target="mainFrame" href="paramiko.SFTPError-class.html"
- >SFTPError</a><br /> <a target="mainFrame" href="paramiko.SFTPFile-class.html"
- >SFTPFile</a><br /> <a target="mainFrame" href="paramiko.SFTPHandle-class.html"
- >SFTPHandle</a><br /> <a target="mainFrame" href="paramiko.SFTPServer-class.html"
- >SFTPServer</a><br /> <a target="mainFrame" href="paramiko.SFTPServerInterface-class.html"
- >SFTPServerInterface</a><br /> <a target="mainFrame" href="paramiko.SSHClient-class.html"
- >SSHClient</a><br /> <a target="mainFrame" href="paramiko.SSHConfig-class.html"
- >SSHConfig</a><br /> <a target="mainFrame" href="paramiko.SSHException-class.html"
- >SSHException</a><br /> <a target="mainFrame" href="paramiko.SecurityOptions-class.html"
- >SecurityOptions</a><br /> <a target="mainFrame" href="paramiko.ServerInterface-class.html"
- >ServerInterface</a><br /> <a target="mainFrame" href="paramiko.SubsystemHandler-class.html"
- >SubsystemHandler</a><br /> <a target="mainFrame" href="paramiko.Transport-class.html"
- >Transport</a><br /> <a target="mainFrame" href="paramiko.WarningPolicy-class.html"
- >WarningPolicy</a><br /><hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.agent-module.html b/docs/toc-paramiko.agent-module.html
deleted file mode 100644
index 5de5e79..0000000
--- a/docs/toc-paramiko.agent-module.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>agent</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module agent</h1>
-<hr />
- <h2 class="toc">Variables</h2>
-<hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.auth_handler-module.html b/docs/toc-paramiko.auth_handler-module.html
deleted file mode 100644
index 7fa221d..0000000
--- a/docs/toc-paramiko.auth_handler-module.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>auth_handler</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module auth_handler</h1>
-<hr />
- <h2 class="toc">Variables</h2>
-<hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.ber-module.html b/docs/toc-paramiko.ber-module.html
deleted file mode 100644
index 7190335..0000000
--- a/docs/toc-paramiko.ber-module.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>ber</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module ber</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <h2 class="toc">Variables</h2>
-<hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.buffered_pipe-module.html b/docs/toc-paramiko.buffered_pipe-module.html
deleted file mode 100644
index 338589e..0000000
--- a/docs/toc-paramiko.buffered_pipe-module.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>buffered_pipe</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module buffered_pipe</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <h2 class="toc">Variables</h2>
-<hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.channel-module.html b/docs/toc-paramiko.channel-module.html
deleted file mode 100644
index 7eaaa97..0000000
--- a/docs/toc-paramiko.channel-module.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>channel</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module channel</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <h2 class="toc">Variables</h2>
-<hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.client-module.html b/docs/toc-paramiko.client-module.html
deleted file mode 100644
index 577541e..0000000
--- a/docs/toc-paramiko.client-module.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>client</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module client</h1>
-<hr />
- <h2 class="toc">Variables</h2>
-<hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.common-module.html b/docs/toc-paramiko.common-module.html
deleted file mode 100644
index 0d0a848..0000000
--- a/docs/toc-paramiko.common-module.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>common</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module common</h1>
-<hr />
- <h2 class="toc">Variables</h2>
-<hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.compress-module.html b/docs/toc-paramiko.compress-module.html
deleted file mode 100644
index b4243ab..0000000
--- a/docs/toc-paramiko.compress-module.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>compress</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module compress</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <h2 class="toc">Variables</h2>
-<hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.config-module.html b/docs/toc-paramiko.config-module.html
deleted file mode 100644
index fab1f11..0000000
--- a/docs/toc-paramiko.config-module.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>config</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module config</h1>
-<hr />
- <h2 class="toc">Variables</h2>
-<hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.dsskey-module.html b/docs/toc-paramiko.dsskey-module.html
deleted file mode 100644
index 6e0de13..0000000
--- a/docs/toc-paramiko.dsskey-module.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>dsskey</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module dsskey</h1>
-<hr />
- <h2 class="toc">Variables</h2>
-<hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.file-module.html b/docs/toc-paramiko.file-module.html
deleted file mode 100644
index bb4f7e9..0000000
--- a/docs/toc-paramiko.file-module.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>file</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module file</h1>
-<hr />
- <h2 class="toc">Variables</h2>
-<hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.hostkeys-module.html b/docs/toc-paramiko.hostkeys-module.html
deleted file mode 100644
index d7b93dd..0000000
--- a/docs/toc-paramiko.hostkeys-module.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>hostkeys</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module hostkeys</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <h2 class="toc">Variables</h2>
-<hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.kex_gex-module.html b/docs/toc-paramiko.kex_gex-module.html
deleted file mode 100644
index 6f341ae..0000000
--- a/docs/toc-paramiko.kex_gex-module.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>kex_gex</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module kex_gex</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <h2 class="toc">Variables</h2>
-<hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.kex_group1-module.html b/docs/toc-paramiko.kex_group1-module.html
deleted file mode 100644
index 75e12ba..0000000
--- a/docs/toc-paramiko.kex_group1-module.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>kex_group1</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module kex_group1</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <h2 class="toc">Variables</h2>
-<hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.logging22-module.html b/docs/toc-paramiko.logging22-module.html
deleted file mode 100644
index df6f73f..0000000
--- a/docs/toc-paramiko.logging22-module.html
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>logging22</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module logging22</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="paramiko.logging22.Formatter-class.html"
- >Formatter</a><br /> <a target="mainFrame" href="paramiko.logging22.StreamHandler-class.html"
- >StreamHandler</a><br /> <a target="mainFrame" href="paramiko.logging22.logger-class.html"
- >logger</a><br /> <h2 class="toc">Functions</h2>
- <a target="mainFrame" href="paramiko.logging22-module.html#getLogger"
- >getLogger</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="paramiko.logging22-module.html#CRITICAL"
- >CRITICAL</a><br /> <a target="mainFrame" href="paramiko.logging22-module.html#DEBUG"
- >DEBUG</a><br /> <a target="mainFrame" href="paramiko.logging22-module.html#ERROR"
- >ERROR</a><br /> <a target="mainFrame" href="paramiko.logging22-module.html#INFO"
- >INFO</a><br /> <a target="mainFrame" href="paramiko.logging22-module.html#WARNING"
- >WARNING</a><br /> <a target="mainFrame" href="paramiko.logging22-module.html#__package__"
- >__package__</a><br /><hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.message-module.html b/docs/toc-paramiko.message-module.html
deleted file mode 100644
index 14c9b27..0000000
--- a/docs/toc-paramiko.message-module.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>message</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module message</h1>
-<hr />
- <h2 class="toc">Variables</h2>
-<hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.packet-module.html b/docs/toc-paramiko.packet-module.html
deleted file mode 100644
index d269a9a..0000000
--- a/docs/toc-paramiko.packet-module.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>packet</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module packet</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <h2 class="toc">Functions</h2>
- <h2 class="toc">Variables</h2>
-<hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.pipe-module.html b/docs/toc-paramiko.pipe-module.html
deleted file mode 100644
index fc5da49..0000000
--- a/docs/toc-paramiko.pipe-module.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>pipe</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module pipe</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <h2 class="toc">Functions</h2>
- <h2 class="toc">Variables</h2>
-<hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.pkey-module.html b/docs/toc-paramiko.pkey-module.html
deleted file mode 100644
index af555cb..0000000
--- a/docs/toc-paramiko.pkey-module.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>pkey</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module pkey</h1>
-<hr />
- <h2 class="toc">Variables</h2>
-<hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.primes-module.html b/docs/toc-paramiko.primes-module.html
deleted file mode 100644
index ae93b5c..0000000
--- a/docs/toc-paramiko.primes-module.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>primes</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module primes</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <h2 class="toc">Variables</h2>
-<hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.resource-module.html b/docs/toc-paramiko.resource-module.html
deleted file mode 100644
index 7e44df7..0000000
--- a/docs/toc-paramiko.resource-module.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>resource</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module resource</h1>
-<hr />
- <h2 class="toc">Variables</h2>
-<hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.rsakey-module.html b/docs/toc-paramiko.rsakey-module.html
deleted file mode 100644
index 6f90edc..0000000
--- a/docs/toc-paramiko.rsakey-module.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>rsakey</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module rsakey</h1>
-<hr />
- <h2 class="toc">Variables</h2>
-<hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.server-module.html b/docs/toc-paramiko.server-module.html
deleted file mode 100644
index 3fa9fa0..0000000
--- a/docs/toc-paramiko.server-module.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>server</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module server</h1>
-<hr />
- <h2 class="toc">Variables</h2>
-<hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.sftp-module.html b/docs/toc-paramiko.sftp-module.html
deleted file mode 100644
index a6f8f10..0000000
--- a/docs/toc-paramiko.sftp-module.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>sftp</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module sftp</h1>
-<hr />
- <h2 class="toc">Variables</h2>
-<hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.sftp_attr-module.html b/docs/toc-paramiko.sftp_attr-module.html
deleted file mode 100644
index ea808a9..0000000
--- a/docs/toc-paramiko.sftp_attr-module.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>sftp_attr</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module sftp_attr</h1>
-<hr />
- <h2 class="toc">Variables</h2>
-<hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.sftp_client-module.html b/docs/toc-paramiko.sftp_client-module.html
deleted file mode 100644
index 5bf3a67..0000000
--- a/docs/toc-paramiko.sftp_client-module.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>sftp_client</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module sftp_client</h1>
-<hr />
- <h2 class="toc">Variables</h2>
-<hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.sftp_file-module.html b/docs/toc-paramiko.sftp_file-module.html
deleted file mode 100644
index c2e2578..0000000
--- a/docs/toc-paramiko.sftp_file-module.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>sftp_file</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module sftp_file</h1>
-<hr />
- <h2 class="toc">Variables</h2>
-<hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.sftp_handle-module.html b/docs/toc-paramiko.sftp_handle-module.html
deleted file mode 100644
index 2b658fe..0000000
--- a/docs/toc-paramiko.sftp_handle-module.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>sftp_handle</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module sftp_handle</h1>
-<hr />
- <h2 class="toc">Variables</h2>
-<hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.sftp_server-module.html b/docs/toc-paramiko.sftp_server-module.html
deleted file mode 100644
index f4020a8..0000000
--- a/docs/toc-paramiko.sftp_server-module.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>sftp_server</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module sftp_server</h1>
-<hr />
- <h2 class="toc">Variables</h2>
-<hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.sftp_si-module.html b/docs/toc-paramiko.sftp_si-module.html
deleted file mode 100644
index ef768fe..0000000
--- a/docs/toc-paramiko.sftp_si-module.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>sftp_si</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module sftp_si</h1>
-<hr />
- <h2 class="toc">Variables</h2>
-<hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.ssh_exception-module.html b/docs/toc-paramiko.ssh_exception-module.html
deleted file mode 100644
index 90172f1..0000000
--- a/docs/toc-paramiko.ssh_exception-module.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>ssh_exception</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module ssh_exception</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <h2 class="toc">Variables</h2>
-<hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.transport-module.html b/docs/toc-paramiko.transport-module.html
deleted file mode 100644
index f22c4ce..0000000
--- a/docs/toc-paramiko.transport-module.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>transport</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module transport</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <h2 class="toc">Variables</h2>
-<hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.util-module.html b/docs/toc-paramiko.util-module.html
deleted file mode 100644
index 2d9944f..0000000
--- a/docs/toc-paramiko.util-module.html
+++ /dev/null
@@ -1,101 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>util</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module util</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="paramiko.util.Counter-class.html"
- >Counter</a><br /> <a target="mainFrame" href="paramiko.util.PFilter-class.html"
- >PFilter</a><br /> <a target="mainFrame" href="paramiko.util.enumerate-class.html"
- >enumerate</a><br /> <h2 class="toc">Functions</h2>
- <a target="mainFrame" href="paramiko.util-module.html#bit_length"
- >bit_length</a><br /> <a target="mainFrame" href="paramiko.util-module.html#deflate_long"
- >deflate_long</a><br /> <a target="mainFrame" href="paramiko.util-module.html#format_binary"
- >format_binary</a><br /> <a target="mainFrame" href="paramiko.util-module.html#format_binary_line"
- >format_binary_line</a><br /> <a target="mainFrame" href="paramiko.util-module.html#format_binary_weird"
- >format_binary_weird</a><br /> <a target="mainFrame" href="paramiko.util-module.html#generate_key_bytes"
- >generate_key_bytes</a><br /> <a target="mainFrame" href="paramiko.util-module.html#get_logger"
- >get_logger</a><br /> <a target="mainFrame" href="paramiko.util-module.html#get_thread_id"
- >get_thread_id</a><br /> <a target="mainFrame" href="paramiko.util-module.html#hexify"
- >hexify</a><br /> <a target="mainFrame" href="paramiko.util-module.html#inflate_long"
- >inflate_long</a><br /> <a target="mainFrame" href="paramiko.util-module.html#load_host_keys"
- >load_host_keys</a><br /> <a target="mainFrame" href="paramiko.util-module.html#log_to_file"
- >log_to_file</a><br /> <a target="mainFrame" href="paramiko.util-module.html#lookup_ssh_host_config"
- >lookup_ssh_host_config</a><br /> <a target="mainFrame" href="paramiko.util-module.html#mod_inverse"
- >mod_inverse</a><br /> <a target="mainFrame" href="paramiko.util-module.html#parse_ssh_config"
- >parse_ssh_config</a><br /> <a target="mainFrame" href="paramiko.util-module.html#safe_string"
- >safe_string</a><br /> <a target="mainFrame" href="paramiko.util-module.html#tb_strings"
- >tb_strings</a><br /> <a target="mainFrame" href="paramiko.util-module.html#unhexify"
- >unhexify</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="paramiko.util-module.html#AUTH_FAILED"
- >AUTH_FAILED</a><br /> <a target="mainFrame" href="paramiko.util-module.html#AUTH_PARTIALLY_SUCCESSFUL"
- >AUTH_PARTIALLY_SUCCESSFUL</a><br /> <a target="mainFrame" href="paramiko.util-module.html#AUTH_SUCCESSFUL"
- >AUTH_SUCCESSFUL</a><br /> <a target="mainFrame" href="paramiko.util-module.html#CONNECTION_FAILED_CODE"
- >CONNECTION_FAILED_CODE</a><br /> <a target="mainFrame" href="paramiko.util-module.html#CRITICAL"
- >CRITICAL</a><br /> <a target="mainFrame" href="paramiko.util-module.html#DEBUG"
- >DEBUG</a><br /> <a target="mainFrame" href="paramiko.util-module.html#DISCONNECT_AUTH_CANCELLED_BY_USER"
- >DISCONNECT_AUTH_CANCELLED_BY_USER</a><br /> <a target="mainFrame" href="paramiko.util-module.html#DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE"
- >DISCONNECT_NO_MORE_AUTH_METHODS_AVAILABLE</a><br /> <a target="mainFrame" href="paramiko.util-module.html#DISCONNECT_SERVICE_NOT_AVAILABLE"
- >DISCONNECT_SERVICE_NOT_AVAILABLE</a><br /> <a target="mainFrame" href="paramiko.util-module.html#ERROR"
- >ERROR</a><br /> <a target="mainFrame" href="paramiko.util-module.html#INFO"
- >INFO</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_CHANNEL_CLOSE"
- >MSG_CHANNEL_CLOSE</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_CHANNEL_DATA"
- >MSG_CHANNEL_DATA</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_CHANNEL_EOF"
- >MSG_CHANNEL_EOF</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_CHANNEL_EXTENDED_DATA"
- >MSG_CHANNEL_EXTENDED_DATA</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_CHANNEL_FAILURE"
- >MSG_CHANNEL_FAILURE</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_CHANNEL_OPEN"
- >MSG_CHANNEL_OPEN</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_CHANNEL_OPEN_FAILURE"
- >MSG_CHANNEL_OPEN_FAILURE</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_CHANNEL_OPEN_SUCCESS"
- >MSG_CHANNEL_OPEN_SUCCESS</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_CHANNEL_REQUEST"
- >MSG_CHANNEL_REQUEST</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_CHANNEL_SUCCESS"
- >MSG_CHANNEL_SUCCESS</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_CHANNEL_WINDOW_ADJUST"
- >MSG_CHANNEL_WINDOW_ADJUST</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_DEBUG"
- >MSG_DEBUG</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_DISCONNECT"
- >MSG_DISCONNECT</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_GLOBAL_REQUEST"
- >MSG_GLOBAL_REQUEST</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_IGNORE"
- >MSG_IGNORE</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_KEXINIT"
- >MSG_KEXINIT</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_NAMES"
- >MSG_NAMES</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_NEWKEYS"
- >MSG_NEWKEYS</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_REQUEST_FAILURE"
- >MSG_REQUEST_FAILURE</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_REQUEST_SUCCESS"
- >MSG_REQUEST_SUCCESS</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_SERVICE_ACCEPT"
- >MSG_SERVICE_ACCEPT</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_SERVICE_REQUEST"
- >MSG_SERVICE_REQUEST</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_UNIMPLEMENTED"
- >MSG_UNIMPLEMENTED</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_USERAUTH_BANNER"
- >MSG_USERAUTH_BANNER</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_USERAUTH_FAILURE"
- >MSG_USERAUTH_FAILURE</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_USERAUTH_INFO_REQUEST"
- >MSG_USERAUTH_INFO_REQUEST</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_USERAUTH_INFO_RESPONSE"
- >MSG_USERAUTH_INFO_RESPONSE</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_USERAUTH_PK_OK"
- >MSG_USERAUTH_PK_OK</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_USERAUTH_REQUEST"
- >MSG_USERAUTH_REQUEST</a><br /> <a target="mainFrame" href="paramiko.util-module.html#MSG_USERAUTH_SUCCESS"
- >MSG_USERAUTH_SUCCESS</a><br /> <a target="mainFrame" href="paramiko.util-module.html#OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED"
- >OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</a><br /> <a target="mainFrame" href="paramiko.util-module.html#OPEN_FAILED_CONNECT_FAILED"
- >OPEN_FAILED_CONNECT_FAILED</a><br /> <a target="mainFrame" href="paramiko.util-module.html#OPEN_FAILED_RESOURCE_SHORTAGE"
- >OPEN_FAILED_RESOURCE_SHORTAGE</a><br /> <a target="mainFrame" href="paramiko.util-module.html#OPEN_FAILED_UNKNOWN_CHANNEL_TYPE"
- >OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</a><br /> <a target="mainFrame" href="paramiko.util-module.html#OPEN_SUCCEEDED"
- >OPEN_SUCCEEDED</a><br /> <a target="mainFrame" href="paramiko.util-module.html#PY22"
- >PY22</a><br /> <a target="mainFrame" href="paramiko.util-module.html#WARNING"
- >WARNING</a><br /> <a target="mainFrame" href="paramiko.util-module.html#__package__"
- >__package__</a><br /> <a target="mainFrame" href="paramiko.util-module.html#rng"
- >rng</a><br /><hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc-paramiko.win_pageant-module.html b/docs/toc-paramiko.win_pageant-module.html
deleted file mode 100644
index 51065be..0000000
--- a/docs/toc-paramiko.win_pageant-module.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>win_pageant</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Module win_pageant</h1>
-<hr />
- <h2 class="toc">Classes</h2>
- <a target="mainFrame" href="paramiko.win_pageant.PageantConnection-class.html"
- >PageantConnection</a><br /> <h2 class="toc">Functions</h2>
- <a target="mainFrame" href="paramiko.win_pageant-module.html#can_talk_to_agent"
- >can_talk_to_agent</a><br /> <h2 class="toc">Variables</h2>
- <a target="mainFrame" href="paramiko.win_pageant-module.html#__package__"
- >__package__</a><br /> <a target="mainFrame" href="paramiko.win_pageant-module.html#win32con_WM_COPYDATA"
- >win32con_WM_COPYDATA</a><br /><hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>
diff --git a/docs/toc.html b/docs/toc.html
deleted file mode 100644
index c6a5579..0000000
--- a/docs/toc.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="ascii"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
- <title>Table of Contents</title>
- <link rel="stylesheet" href="epydoc.css" type="text/css" />
- <script type="text/javascript" src="epydoc.js"></script>
-</head>
-
-<body bgcolor="white" text="black" link="blue" vlink="#204080"
- alink="#204080">
-<h1 class="toc">Table&nbsp;of&nbsp;Contents</h1>
-<hr />
- <a target="moduleFrame" href="toc-everything.html">Everything</a>
- <br />
- <h2 class="toc">Modules</h2>
- <a target="moduleFrame" href="toc-paramiko-module.html"
- onclick="setFrame('toc-paramiko-module.html','paramiko-module.html');" >paramiko</a><br /> <a target="moduleFrame" href="toc-paramiko.logging22-module.html"
- onclick="setFrame('toc-paramiko.logging22-module.html','paramiko.logging22-module.html');" >paramiko.logging22</a><br /> <a target="moduleFrame" href="toc-paramiko.util-module.html"
- onclick="setFrame('toc-paramiko.util-module.html','paramiko.util-module.html');" >paramiko.util</a><br /> <a target="moduleFrame" href="toc-paramiko.win_pageant-module.html"
- onclick="setFrame('toc-paramiko.win_pageant-module.html','paramiko.win_pageant-module.html');" >paramiko.win_pageant</a><br /><hr />
-
-<script type="text/javascript">
- <!--
- // Private objects are initially displayed (because if
- // javascript is turned off then we want them to be
- // visible); but by default, we want to hide them. So hide
- // them unless we have a cookie that says to show them.
- checkCookie();
- // -->
-</script>
-</body>
-</html>