Hello community, here is the log from the commit of package python3-paramiko for openSUSE:Factory checked in at 2016-07-01 09:59:46 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python3-paramiko (Old) and /work/SRC/openSUSE:Factory/.python3-paramiko.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python3-paramiko" Changes: -------- --- /work/SRC/openSUSE:Factory/python3-paramiko/python3-paramiko.changes 2016-06-14 23:06:52.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.python3-paramiko.new/python3-paramiko.changes 2016-07-01 09:59:49.000000000 +0200 @@ -1,0 +2,16 @@ +Fri Jun 24 16:41:20 UTC 2016 - [email protected] + +- update to version 2.0.1: + * :bug:`520 (1.16+)` (Partial fix) Fix at least one instance of race + condition driven threading hangs at end of the Python interpreter + session. (Includes a docs update as well - always make sure to + .close() your clients!) + * :bug:`537 (1.16+)` Fix a bug in BufferedPipe.set_event + <paramiko.buffered_pipe.BufferedPipe.set_event> which could cause + deadlocks/hangs when one uses select.select against + ~paramiko.channel.Channel objects (or otherwise calls + Channel.fileno <paramiko.channel.Channel.fileno> after the channel + has closed). Thanks to Przemysław Strzelczak for the report & + reproduction case, and to Krzysztof Rusek for the fix. + +------------------------------------------------------------------- Old: ---- paramiko-2.0.0.tar.gz New: ---- paramiko-2.0.1.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python3-paramiko.spec ++++++ --- /var/tmp/diff_new_pack.fiLN94/_old 2016-07-01 09:59:50.000000000 +0200 +++ /var/tmp/diff_new_pack.fiLN94/_new 2016-07-01 09:59:50.000000000 +0200 @@ -17,20 +17,20 @@ Name: python3-paramiko -Version: 2.0.0 +Version: 2.0.1 Release: 0 Url: https://github.com/paramiko/paramiko/ Summary: SSH2 protocol library License: LGPL-2.1+ Group: Development/Languages/Python Source: https://files.pythonhosted.org/packages/source/p/paramiko/paramiko-%{version}.tar.gz +BuildRequires: python3-cryptography >= 1.1 BuildRequires: python3-devel -BuildRequires: python3-setuptools BuildRequires: python3-pyasn1 >= 0.1.7 -BuildRequires: python3-cryptography >= 1.1 +BuildRequires: python3-setuptools BuildConflicts: python3-buildservice-tweak -Requires: python3-ecdsa Requires: python3-cryptography >= 1.1 +Requires: python3-ecdsa Requires: python3-pyasn1 >= 0.1.7 BuildArch: noarch ++++++ paramiko-2.0.0.tar.gz -> paramiko-2.0.1.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/PKG-INFO new/paramiko-2.0.1/PKG-INFO --- old/paramiko-2.0.0/PKG-INFO 2016-04-29 07:17:33.000000000 +0200 +++ new/paramiko-2.0.1/PKG-INFO 2016-06-21 22:33:23.000000000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 1.0 Name: paramiko -Version: 2.0.0 +Version: 2.0.1 Summary: SSH2 protocol library Home-page: https://github.com/paramiko/paramiko/ Author: Jeff Forcier Files old/paramiko-2.0.0/docs/.doctrees/api/client.doctree and new/paramiko-2.0.1/docs/.doctrees/api/client.doctree differ Files old/paramiko-2.0.0/docs/.doctrees/environment.pickle and new/paramiko-2.0.1/docs/.doctrees/environment.pickle differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/docs/_static/alabaster.css new/paramiko-2.0.1/docs/_static/alabaster.css --- old/paramiko-2.0.0/docs/_static/alabaster.css 2016-04-29 07:17:32.000000000 +0200 +++ new/paramiko-2.0.1/docs/_static/alabaster.css 2016-06-21 22:33:22.000000000 +0200 @@ -28,6 +28,7 @@ padding: 0; } + div.document { width: 940px; margin: 30px auto 0 auto; @@ -44,6 +45,8 @@ div.sphinxsidebar { width: 220px; + font-size: 14px; + line-height: 1.5; } hr { @@ -72,6 +75,11 @@ color: #888; } +p.caption { + font-family: ; + font-size: inherit; +} + div.relations { display: none; @@ -88,11 +96,6 @@ border-bottom: 1px solid #999; } -div.sphinxsidebar { - font-size: 14px; - line-height: 1.5; -} - div.sphinxsidebarwrapper { padding: 18px 10px; } @@ -359,7 +362,7 @@ } table.footnote td.label { - width: 0px; + width: .1px; padding: 0.3em 0 0.3em 0.5em; } @@ -382,6 +385,7 @@ } ul, ol { + /* Matches the 30px from the narrow-screen "li > ul" selector below */ margin: 10px 0 10px 30px; padding: 0; } @@ -419,6 +423,11 @@ border-bottom: 1px dotted #004B6B; } +/* Don't put an underline on images */ +a.image-reference, a.image-reference:hover { + border-bottom: none; +} + a.reference:hover { border-bottom: 1px solid #6D4100; } @@ -468,6 +477,11 @@ margin-left: 0; } + li > ul { + /* Matches the 30px from the "ul, ol" selector above */ + margin-left: 30px; + } + .document { width: auto; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/docs/_static/custom.css new/paramiko-2.0.1/docs/_static/custom.css --- old/paramiko-2.0.0/docs/_static/custom.css 1970-01-01 01:00:00.000000000 +0100 +++ new/paramiko-2.0.1/docs/_static/custom.css 2016-05-06 00:56:17.000000000 +0200 @@ -0,0 +1 @@ +/* This file intentionally left blank. */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/docs/api/agent.html new/paramiko-2.0.1/docs/api/agent.html --- old/paramiko-2.0.0/docs/api/agent.html 2016-04-29 07:10:55.000000000 +0200 +++ new/paramiko-2.0.1/docs/api/agent.html 2016-06-21 22:31:00.000000000 +0200 @@ -27,11 +27,14 @@ <link rel="next" title="Host keys / known_hosts files" href="hostkeys.html" /> <link rel="prev" title="Transport" href="transport.html" /> + <link rel="stylesheet" href="../_static/custom.css" type="text/css" /> + <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" /> </head> - <body role="document"> + <body role="document"> + <div class="document"> <div class="documentwrapper"> @@ -431,7 +434,7 @@ <p> -<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large" +<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large&v=2" allowtransparency="true" frameborder="0" scrolling="0" width="200px" height="35px"></iframe> </p> @@ -506,7 +509,7 @@ | Powered by <a href="http://sphinx-doc.org/">Sphinx 1.4.1</a> - & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.7</a> + & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.8</a> | <a href="../_sources/api/agent.txt" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/docs/api/buffered_pipe.html new/paramiko-2.0.1/docs/api/buffered_pipe.html --- old/paramiko-2.0.0/docs/api/buffered_pipe.html 2016-04-29 07:10:55.000000000 +0200 +++ new/paramiko-2.0.1/docs/api/buffered_pipe.html 2016-06-21 22:31:00.000000000 +0200 @@ -27,11 +27,14 @@ <link rel="next" title="Buffered files" href="file.html" /> <link rel="prev" title="SFTP" href="sftp.html" /> + <link rel="stylesheet" href="../_static/custom.css" type="text/css" /> + <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" /> </head> - <body role="document"> + <body role="document"> + <div class="document"> <div class="documentwrapper"> @@ -203,7 +206,7 @@ <p> -<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large" +<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large&v=2" allowtransparency="true" frameborder="0" scrolling="0" width="200px" height="35px"></iframe> </p> @@ -278,7 +281,7 @@ | Powered by <a href="http://sphinx-doc.org/">Sphinx 1.4.1</a> - & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.7</a> + & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.8</a> | <a href="../_sources/api/buffered_pipe.txt" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/docs/api/channel.html new/paramiko-2.0.1/docs/api/channel.html --- old/paramiko-2.0.0/docs/api/channel.html 2016-04-29 07:10:55.000000000 +0200 +++ new/paramiko-2.0.1/docs/api/channel.html 2016-06-21 22:31:00.000000000 +0200 @@ -27,11 +27,14 @@ <link rel="next" title="Client" href="client.html" /> <link rel="prev" title="Welcome to Paramiko’s documentation!" href="../index.html" /> + <link rel="stylesheet" href="../_static/custom.css" type="text/css" /> + <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" /> </head> - <body role="document"> + <body role="document"> + <div class="document"> <div class="documentwrapper"> @@ -876,7 +879,7 @@ <p> -<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large" +<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large&v=2" allowtransparency="true" frameborder="0" scrolling="0" width="200px" height="35px"></iframe> </p> @@ -951,7 +954,7 @@ | Powered by <a href="http://sphinx-doc.org/">Sphinx 1.4.1</a> - & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.7</a> + & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.8</a> | <a href="../_sources/api/channel.txt" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/docs/api/client.html new/paramiko-2.0.1/docs/api/client.html --- old/paramiko-2.0.0/docs/api/client.html 2016-04-29 07:10:56.000000000 +0200 +++ new/paramiko-2.0.1/docs/api/client.html 2016-06-21 22:31:00.000000000 +0200 @@ -27,11 +27,14 @@ <link rel="next" title="Message" href="message.html" /> <link rel="prev" title="Channel" href="channel.html" /> + <link rel="stylesheet" href="../_static/custom.css" type="text/css" /> + <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" /> </head> - <body role="document"> + <body role="document"> + <div class="document"> <div class="documentwrapper"> @@ -266,6 +269,13 @@ <dt id="paramiko.client.SSHClient.close"> <code class="descname">close</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#paramiko.client.SSHClient.close" title="Permalink to this definition">¶</a></dt> <dd><p>Close this SSHClient and its underlying <a class="reference internal" href="transport.html#paramiko.transport.Transport" title="paramiko.transport.Transport"><code class="xref py py-obj docutils literal"><span class="pre">Transport</span></code></a>.</p> +<div class="admonition warning"> +<p class="first admonition-title">Warning</p> +<p class="last">Failure to do this may, in some situations, cause your Python +interpreter to hang at shutdown (often due to race conditions). +It’s good practice to <a class="reference internal" href="#paramiko.client.SSHClient.close" title="paramiko.client.SSHClient.close"><code class="xref py py-obj docutils literal"><span class="pre">close</span></code></a> your client objects anytime you’re +done using them, instead of relying on garbage collection.</p> +</div> </dd></dl> <dl class="method"> @@ -424,7 +434,7 @@ <p> -<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large" +<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large&v=2" allowtransparency="true" frameborder="0" scrolling="0" width="200px" height="35px"></iframe> </p> @@ -499,7 +509,7 @@ | Powered by <a href="http://sphinx-doc.org/">Sphinx 1.4.1</a> - & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.7</a> + & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.8</a> | <a href="../_sources/api/client.txt" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/docs/api/config.html new/paramiko-2.0.1/docs/api/config.html --- old/paramiko-2.0.0/docs/api/config.html 2016-04-29 07:10:56.000000000 +0200 +++ new/paramiko-2.0.1/docs/api/config.html 2016-06-21 22:31:00.000000000 +0200 @@ -27,11 +27,14 @@ <link rel="next" title="ProxyCommand support" href="proxy.html" /> <link rel="prev" title="GSS-API key exchange" href="kex_gss.html" /> + <link rel="stylesheet" href="../_static/custom.css" type="text/css" /> + <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" /> </head> - <body role="document"> + <body role="document"> + <div class="document"> <div class="documentwrapper"> @@ -147,7 +150,7 @@ <p> -<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large" +<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large&v=2" allowtransparency="true" frameborder="0" scrolling="0" width="200px" height="35px"></iframe> </p> @@ -222,7 +225,7 @@ | Powered by <a href="http://sphinx-doc.org/">Sphinx 1.4.1</a> - & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.7</a> + & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.8</a> | <a href="../_sources/api/config.txt" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/docs/api/file.html new/paramiko-2.0.1/docs/api/file.html --- old/paramiko-2.0.0/docs/api/file.html 2016-04-29 07:15:23.000000000 +0200 +++ new/paramiko-2.0.1/docs/api/file.html 2016-06-21 22:32:10.000000000 +0200 @@ -27,11 +27,14 @@ <link rel="next" title="Cross-platform pipe implementations" href="pipe.html" /> <link rel="prev" title="Buffered pipes" href="buffered_pipe.html" /> + <link rel="stylesheet" href="../_static/custom.css" type="text/css" /> + <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" /> </head> - <body role="document"> + <body role="document"> + <div class="document"> <div class="documentwrapper"> @@ -333,7 +336,7 @@ <p> -<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large" +<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large&v=2" allowtransparency="true" frameborder="0" scrolling="0" width="200px" height="35px"></iframe> </p> @@ -408,7 +411,7 @@ | Powered by <a href="http://sphinx-doc.org/">Sphinx 1.4.1</a> - & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.7</a> + & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.8</a> | <a href="../_sources/api/file.txt" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/docs/api/hostkeys.html new/paramiko-2.0.1/docs/api/hostkeys.html --- old/paramiko-2.0.0/docs/api/hostkeys.html 2016-04-29 07:17:31.000000000 +0200 +++ new/paramiko-2.0.1/docs/api/hostkeys.html 2016-06-21 22:33:21.000000000 +0200 @@ -27,11 +27,14 @@ <link rel="next" title="Key handling" href="keys.html" /> <link rel="prev" title="SSH agents" href="agent.html" /> + <link rel="stylesheet" href="../_static/custom.css" type="text/css" /> + <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" /> </head> - <body role="document"> + <body role="document"> + <div class="document"> <div class="documentwrapper"> @@ -251,7 +254,7 @@ <p> -<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large" +<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large&v=2" allowtransparency="true" frameborder="0" scrolling="0" width="200px" height="35px"></iframe> </p> @@ -326,7 +329,7 @@ | Powered by <a href="http://sphinx-doc.org/">Sphinx 1.4.1</a> - & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.7</a> + & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.8</a> | <a href="../_sources/api/hostkeys.txt" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/docs/api/kex_gss.html new/paramiko-2.0.1/docs/api/kex_gss.html --- old/paramiko-2.0.0/docs/api/kex_gss.html 2016-04-29 07:10:56.000000000 +0200 +++ new/paramiko-2.0.1/docs/api/kex_gss.html 2016-06-21 22:31:00.000000000 +0200 @@ -27,11 +27,14 @@ <link rel="next" title="Configuration" href="config.html" /> <link rel="prev" title="GSS-API authentication" href="ssh_gss.html" /> + <link rel="stylesheet" href="../_static/custom.css" type="text/css" /> + <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" /> </head> - <body role="document"> + <body role="document"> + <div class="document"> <div class="documentwrapper"> @@ -171,7 +174,7 @@ <p> -<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large" +<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large&v=2" allowtransparency="true" frameborder="0" scrolling="0" width="200px" height="35px"></iframe> </p> @@ -246,7 +249,7 @@ | Powered by <a href="http://sphinx-doc.org/">Sphinx 1.4.1</a> - & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.7</a> + & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.8</a> | <a href="../_sources/api/kex_gss.txt" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/docs/api/keys.html new/paramiko-2.0.1/docs/api/keys.html --- old/paramiko-2.0.0/docs/api/keys.html 2016-04-29 07:17:31.000000000 +0200 +++ new/paramiko-2.0.1/docs/api/keys.html 2016-06-21 22:33:21.000000000 +0200 @@ -27,11 +27,14 @@ <link rel="next" title="GSS-API authentication" href="ssh_gss.html" /> <link rel="prev" title="Host keys / known_hosts files" href="hostkeys.html" /> + <link rel="stylesheet" href="../_static/custom.css" type="text/css" /> + <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" /> </head> - <body role="document"> + <body role="document"> + <div class="document"> <div class="documentwrapper"> @@ -442,7 +445,7 @@ <p> -<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large" +<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large&v=2" allowtransparency="true" frameborder="0" scrolling="0" width="200px" height="35px"></iframe> </p> @@ -523,7 +526,7 @@ | Powered by <a href="http://sphinx-doc.org/">Sphinx 1.4.1</a> - & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.7</a> + & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.8</a> | <a href="../_sources/api/keys.txt" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/docs/api/message.html new/paramiko-2.0.1/docs/api/message.html --- old/paramiko-2.0.0/docs/api/message.html 2016-04-29 07:10:56.000000000 +0200 +++ new/paramiko-2.0.1/docs/api/message.html 2016-06-21 22:31:01.000000000 +0200 @@ -27,11 +27,14 @@ <link rel="next" title="Packetizer" href="packet.html" /> <link rel="prev" title="Client" href="client.html" /> + <link rel="stylesheet" href="../_static/custom.css" type="text/css" /> + <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" /> </head> - <body role="document"> + <body role="document"> + <div class="document"> <div class="documentwrapper"> @@ -395,7 +398,7 @@ <p> -<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large" +<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large&v=2" allowtransparency="true" frameborder="0" scrolling="0" width="200px" height="35px"></iframe> </p> @@ -470,7 +473,7 @@ | Powered by <a href="http://sphinx-doc.org/">Sphinx 1.4.1</a> - & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.7</a> + & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.8</a> | <a href="../_sources/api/message.txt" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/docs/api/packet.html new/paramiko-2.0.1/docs/api/packet.html --- old/paramiko-2.0.0/docs/api/packet.html 2016-04-29 07:17:31.000000000 +0200 +++ new/paramiko-2.0.1/docs/api/packet.html 2016-06-21 22:33:21.000000000 +0200 @@ -27,11 +27,14 @@ <link rel="next" title="Transport" href="transport.html" /> <link rel="prev" title="Message" href="message.html" /> + <link rel="stylesheet" href="../_static/custom.css" type="text/css" /> + <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" /> </head> - <body role="document"> + <body role="document"> + <div class="document"> <div class="documentwrapper"> @@ -194,7 +197,7 @@ <p> -<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large" +<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large&v=2" allowtransparency="true" frameborder="0" scrolling="0" width="200px" height="35px"></iframe> </p> @@ -269,7 +272,7 @@ | Powered by <a href="http://sphinx-doc.org/">Sphinx 1.4.1</a> - & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.7</a> + & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.8</a> | <a href="../_sources/api/packet.txt" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/docs/api/pipe.html new/paramiko-2.0.1/docs/api/pipe.html --- old/paramiko-2.0.0/docs/api/pipe.html 2016-04-29 07:10:56.000000000 +0200 +++ new/paramiko-2.0.1/docs/api/pipe.html 2016-06-21 22:31:01.000000000 +0200 @@ -27,11 +27,14 @@ <link rel="next" title="Exceptions" href="ssh_exception.html" /> <link rel="prev" title="Buffered files" href="file.html" /> + <link rel="stylesheet" href="../_static/custom.css" type="text/css" /> + <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" /> </head> - <body role="document"> + <body role="document"> + <div class="document"> <div class="documentwrapper"> @@ -84,7 +87,7 @@ <p> -<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large" +<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large&v=2" allowtransparency="true" frameborder="0" scrolling="0" width="200px" height="35px"></iframe> </p> @@ -159,7 +162,7 @@ | Powered by <a href="http://sphinx-doc.org/">Sphinx 1.4.1</a> - & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.7</a> + & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.8</a> | <a href="../_sources/api/pipe.txt" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/docs/api/proxy.html new/paramiko-2.0.1/docs/api/proxy.html --- old/paramiko-2.0.0/docs/api/proxy.html 2016-04-29 07:10:56.000000000 +0200 +++ new/paramiko-2.0.1/docs/api/proxy.html 2016-06-21 22:31:01.000000000 +0200 @@ -27,11 +27,14 @@ <link rel="next" title="Server implementation" href="server.html" /> <link rel="prev" title="Configuration" href="config.html" /> + <link rel="stylesheet" href="../_static/custom.css" type="text/css" /> + <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" /> </head> - <body role="document"> + <body role="document"> + <div class="document"> <div class="documentwrapper"> @@ -115,7 +118,7 @@ <p> -<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large" +<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large&v=2" allowtransparency="true" frameborder="0" scrolling="0" width="200px" height="35px"></iframe> </p> @@ -190,7 +193,7 @@ | Powered by <a href="http://sphinx-doc.org/">Sphinx 1.4.1</a> - & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.7</a> + & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.8</a> | <a href="../_sources/api/proxy.txt" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/docs/api/server.html new/paramiko-2.0.1/docs/api/server.html --- old/paramiko-2.0.0/docs/api/server.html 2016-04-29 07:10:56.000000000 +0200 +++ new/paramiko-2.0.1/docs/api/server.html 2016-06-21 22:31:01.000000000 +0200 @@ -27,11 +27,14 @@ <link rel="next" title="SFTP" href="sftp.html" /> <link rel="prev" title="ProxyCommand support" href="proxy.html" /> + <link rel="stylesheet" href="../_static/custom.css" type="text/css" /> + <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" /> </head> - <body role="document"> + <body role="document"> + <div class="document"> <div class="documentwrapper"> @@ -931,7 +934,7 @@ <p> -<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large" +<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large&v=2" allowtransparency="true" frameborder="0" scrolling="0" width="200px" height="35px"></iframe> </p> @@ -1006,7 +1009,7 @@ | Powered by <a href="http://sphinx-doc.org/">Sphinx 1.4.1</a> - & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.7</a> + & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.8</a> | <a href="../_sources/api/server.txt" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/docs/api/sftp.html new/paramiko-2.0.1/docs/api/sftp.html --- old/paramiko-2.0.0/docs/api/sftp.html 2016-04-29 07:15:23.000000000 +0200 +++ new/paramiko-2.0.1/docs/api/sftp.html 2016-06-21 22:32:11.000000000 +0200 @@ -27,11 +27,14 @@ <link rel="next" title="Buffered pipes" href="buffered_pipe.html" /> <link rel="prev" title="Server implementation" href="server.html" /> + <link rel="stylesheet" href="../_static/custom.css" type="text/css" /> + <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" /> </head> - <body role="document"> + <body role="document"> + <div class="document"> <div class="documentwrapper"> @@ -1867,7 +1870,7 @@ <p> -<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large" +<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large&v=2" allowtransparency="true" frameborder="0" scrolling="0" width="200px" height="35px"></iframe> </p> @@ -1942,7 +1945,7 @@ | Powered by <a href="http://sphinx-doc.org/">Sphinx 1.4.1</a> - & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.7</a> + & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.8</a> | <a href="../_sources/api/sftp.txt" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/docs/api/ssh_exception.html new/paramiko-2.0.1/docs/api/ssh_exception.html --- old/paramiko-2.0.0/docs/api/ssh_exception.html 2016-04-29 07:10:57.000000000 +0200 +++ new/paramiko-2.0.1/docs/api/ssh_exception.html 2016-06-21 22:31:02.000000000 +0200 @@ -26,11 +26,14 @@ <link rel="top" title="Paramiko documentation" href="../index.html" /> <link rel="prev" title="Cross-platform pipe implementations" href="pipe.html" /> + <link rel="stylesheet" href="../_static/custom.css" type="text/css" /> + <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" /> </head> - <body role="document"> + <body role="document"> + <div class="document"> <div class="documentwrapper"> @@ -204,7 +207,7 @@ <p> -<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large" +<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large&v=2" allowtransparency="true" frameborder="0" scrolling="0" width="200px" height="35px"></iframe> </p> @@ -279,7 +282,7 @@ | Powered by <a href="http://sphinx-doc.org/">Sphinx 1.4.1</a> - & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.7</a> + & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.8</a> | <a href="../_sources/api/ssh_exception.txt" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/docs/api/ssh_gss.html new/paramiko-2.0.1/docs/api/ssh_gss.html --- old/paramiko-2.0.0/docs/api/ssh_gss.html 2016-04-29 07:17:32.000000000 +0200 +++ new/paramiko-2.0.1/docs/api/ssh_gss.html 2016-06-21 22:33:22.000000000 +0200 @@ -27,11 +27,14 @@ <link rel="next" title="GSS-API key exchange" href="kex_gss.html" /> <link rel="prev" title="Key handling" href="keys.html" /> + <link rel="stylesheet" href="../_static/custom.css" type="text/css" /> + <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" /> </head> - <body role="document"> + <body role="document"> + <div class="document"> <div class="documentwrapper"> @@ -587,7 +590,7 @@ <p> -<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large" +<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large&v=2" allowtransparency="true" frameborder="0" scrolling="0" width="200px" height="35px"></iframe> </p> @@ -662,7 +665,7 @@ | Powered by <a href="http://sphinx-doc.org/">Sphinx 1.4.1</a> - & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.7</a> + & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.8</a> | <a href="../_sources/api/ssh_gss.txt" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/docs/api/transport.html new/paramiko-2.0.1/docs/api/transport.html --- old/paramiko-2.0.0/docs/api/transport.html 2016-04-29 07:17:32.000000000 +0200 +++ new/paramiko-2.0.1/docs/api/transport.html 2016-06-21 22:33:22.000000000 +0200 @@ -27,11 +27,14 @@ <link rel="next" title="SSH agents" href="agent.html" /> <link rel="prev" title="Packetizer" href="packet.html" /> + <link rel="stylesheet" href="../_static/custom.css" type="text/css" /> + <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" /> </head> - <body role="document"> + <body role="document"> + <div class="document"> <div class="documentwrapper"> @@ -1244,7 +1247,7 @@ <p> -<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large" +<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large&v=2" allowtransparency="true" frameborder="0" scrolling="0" width="200px" height="35px"></iframe> </p> @@ -1319,7 +1322,7 @@ | Powered by <a href="http://sphinx-doc.org/">Sphinx 1.4.1</a> - & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.7</a> + & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.8</a> | <a href="../_sources/api/transport.txt" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/docs/genindex.html new/paramiko-2.0.1/docs/genindex.html --- old/paramiko-2.0.0/docs/genindex.html 2016-04-29 07:17:32.000000000 +0200 +++ new/paramiko-2.0.1/docs/genindex.html 2016-06-21 22:33:22.000000000 +0200 @@ -26,11 +26,14 @@ <script type="text/javascript" src="_static/doctools.js"></script> <link rel="top" title="Paramiko documentation" href="index.html" /> + <link rel="stylesheet" href="_static/custom.css" type="text/css" /> + <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" /> </head> - <body role="document"> + <body role="document"> + <div class="document"> <div class="documentwrapper"> @@ -2266,7 +2269,7 @@ <p> -<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large" +<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large&v=2" allowtransparency="true" frameborder="0" scrolling="0" width="200px" height="35px"></iframe> </p> @@ -2341,7 +2344,7 @@ | Powered by <a href="http://sphinx-doc.org/">Sphinx 1.4.1</a> - & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.7</a> + & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.8</a> </div> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/docs/index.html new/paramiko-2.0.1/docs/index.html --- old/paramiko-2.0.0/docs/index.html 2016-04-29 07:17:32.000000000 +0200 +++ new/paramiko-2.0.1/docs/index.html 2016-06-21 22:33:22.000000000 +0200 @@ -26,11 +26,14 @@ <link rel="top" title="Paramiko documentation" href="#" /> <link rel="next" title="Channel" href="api/channel.html" /> + <link rel="stylesheet" href="_static/custom.css" type="text/css" /> + <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" /> </head> - <body role="document"> + <body role="document"> + <div class="document"> <div class="documentwrapper"> @@ -129,7 +132,7 @@ <p> -<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large" +<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large&v=2" allowtransparency="true" frameborder="0" scrolling="0" width="200px" height="35px"></iframe> </p> @@ -204,7 +207,7 @@ | Powered by <a href="http://sphinx-doc.org/">Sphinx 1.4.1</a> - & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.7</a> + & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.8</a> | <a href="_sources/index.txt" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/docs/py-modindex.html new/paramiko-2.0.1/docs/py-modindex.html --- old/paramiko-2.0.0/docs/py-modindex.html 2016-04-29 07:17:32.000000000 +0200 +++ new/paramiko-2.0.1/docs/py-modindex.html 2016-06-21 22:33:22.000000000 +0200 @@ -26,13 +26,16 @@ <link rel="top" title="Paramiko documentation" href="index.html" /> + <link rel="stylesheet" href="_static/custom.css" type="text/css" /> + <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" /> </head> - <body role="document"> + <body role="document"> + <div class="document"> <div class="documentwrapper"> @@ -209,7 +212,7 @@ <p> -<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large" +<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large&v=2" allowtransparency="true" frameborder="0" scrolling="0" width="200px" height="35px"></iframe> </p> @@ -284,7 +287,7 @@ | Powered by <a href="http://sphinx-doc.org/">Sphinx 1.4.1</a> - & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.7</a> + & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.8</a> </div> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/docs/search.html new/paramiko-2.0.1/docs/search.html --- old/paramiko-2.0.0/docs/search.html 2016-04-29 07:17:32.000000000 +0200 +++ new/paramiko-2.0.1/docs/search.html 2016-06-21 22:33:22.000000000 +0200 @@ -32,12 +32,15 @@ <script type="text/javascript" id="searchindexloader"></script> + <link rel="stylesheet" href="_static/custom.css" type="text/css" /> + <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" /> </head> - <body role="document"> + <body role="document"> + <div class="document"> <div class="documentwrapper"> @@ -83,7 +86,7 @@ <p> -<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large" +<iframe src="https://ghbtns.com/github-btn.html?user=paramiko&repo=paramiko&type=watch&count=true&size=large&v=2" allowtransparency="true" frameborder="0" scrolling="0" width="200px" height="35px"></iframe> </p> @@ -148,7 +151,7 @@ | Powered by <a href="http://sphinx-doc.org/">Sphinx 1.4.1</a> - & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.7</a> + & <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.8</a> </div> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/docs/searchindex.js new/paramiko-2.0.1/docs/searchindex.js --- old/paramiko-2.0.0/docs/searchindex.js 2016-04-29 07:17:32.000000000 +0200 +++ new/paramiko-2.0.1/docs/searchindex.js 2016-06-21 22:33:22.000000000 +0200 @@ -1 +1 @@ -Search.setIndex({envversion:47,filenames:["api/agent","api/buffered_pipe","api/channel","api/client","api/config","api/file","api/hostkeys","api/kex_gss","api/keys","api/message","api/packet","api/pipe","api/proxy","api/server","api/sftp","api/ssh_exception","api/ssh_gss","api/transport","index"],objects:{"paramiko.agent":{Agent:[0,1,1,""],AgentClientProxy:[0,1,1,""],AgentKey:[0,1,1,""],AgentLocalProxy:[0,1,1,""],AgentProxyThread:[0,1,1,""],AgentRemoteProxy:[0,1,1,""],AgentRequestHandler:[0,1,1,""],AgentServerProxy:[0,1,1,""]},"paramiko.agent.Agent":{close:[0,2,1,""],get_keys:[0,2,1,""]},"paramiko.agent.AgentClientProxy":{close:[0,2,1,""],connect:[0,2,1,""]},"paramiko.agent.AgentKey":{can_sign:[0,2,1,""],from_private_key:[0,2,1,""],from_private_key_file:[0,2,1,""],get_base64:[0,2,1,""],get_bits:[0,2,1,""],get_fingerprint:[0,2,1,""],verify_ssh_sig:[0,2,1,""],write_private_key:[0,2,1,""],write_private_key_file:[0,2,1,""]},"paramiko.agent.AgentLocalProxy":{get_connection:[0,2,1,""]},"paramiko.agent.AgentServerProxy":{close:[0,2,1,""],get_env:[0,2,1,""],get_keys:[0,2,1,""]},"paramiko.buffered_pipe":{BufferedPipe:[1,1,1,""],PipeTimeout:[1,4,1,""]},"paramiko.buffered_pipe.BufferedPipe":{"__len__":[1,2,1,""],"__weakref__":[1,3,1,""],close:[1,2,1,""],empty:[1,2,1,""],feed:[1,2,1,""],read:[1,2,1,""],read_ready:[1,2,1,""],set_event:[1,2,1,""]},"paramiko.buffered_pipe.PipeTimeout":{"__weakref__":[1,3,1,""]},"paramiko.channel":{Channel:[2,1,1,""],ChannelFile:[2,1,1,""],open_only:[2,5,1,""]},"paramiko.channel.Channel":{"__init__":[2,2,1,""],"__repr__":[2,2,1,""],active:[2,3,1,""],chanid:[2,3,1,""],close:[2,2,1,""],closed:[2,3,1,""],exec_command:[2,2,1,""],exit_status_ready:[2,2,1,""],fileno:[2,2,1,""],get_id:[2,2,1,""],get_name:[2,2,1,""],get_pty:[2,2,1,""],get_transport:[2,2,1,""],getpeername:[2,2,1,""],gettimeout:[2,2,1,""],invoke_shell:[2,2,1,""],invoke_subsystem:[2,2,1,""],makefile:[2,2,1,""],makefile_stderr:[2,2,1,""],recv:[2,2,1,""],recv_exit_status:[2,2,1,""],recv_ready:[2,2,1,""],recv_stderr:[2,2,1,""],recv_stderr_ready:[2,2,1,""],remote_chanid:[2,3,1,""],request_forward_agent:[2,2,1,""],request_x11:[2,2,1,""],resize_pty:[2,2,1,""],send:[2,2,1,""],send_exit_status:[2,2,1,""],send_ready:[2,2,1,""],send_stderr:[2,2,1,""],sendall:[2,2,1,""],sendall_stderr:[2,2,1,""],set_combine_stderr:[2,2,1,""],set_name:[2,2,1,""],setblocking:[2,2,1,""],settimeout:[2,2,1,""],shutdown:[2,2,1,""],shutdown_read:[2,2,1,""],shutdown_write:[2,2,1,""],transport:[2,3,1,""]},"paramiko.channel.ChannelFile":{"__repr__":[2,2,1,""]},"paramiko.client":{AutoAddPolicy:[3,1,1,""],MissingHostKeyPolicy:[3,1,1,""],RejectPolicy:[3,1,1,""],SSHClient:[3,1,1,""],WarningPolicy:[3,1,1,""]},"paramiko.client.MissingHostKeyPolicy":{"__weakref__":[3,3,1,""],missing_host_key:[3,2,1,""]},"paramiko.client.SSHClient":{"__init__":[3,2,1,""],close:[3,2,1,""],connect:[3,2,1,""],exec_command:[3,2,1,""],get_host_keys:[3,2,1,""],get_transport:[3,2,1,""],invoke_shell:[3,2,1,""],load_host_keys:[3,2,1,""],load_system_host_keys:[3,2,1,""],open_sftp:[3,2,1,""],save_host_keys:[3,2,1,""],set_log_channel:[3,2,1,""],set_missing_host_key_policy:[3,2,1,""]},"paramiko.config":{LazyFqdn:[4,1,1,""],SSHConfig:[4,1,1,""]},"paramiko.config.LazyFqdn":{"__weakref__":[4,3,1,""]},"paramiko.config.SSHConfig":{"__init__":[4,2,1,""],"__weakref__":[4,3,1,""],SETTINGS_REGEX:[4,3,1,""],get_hostnames:[4,2,1,""],lookup:[4,2,1,""],parse:[4,2,1,""]},"paramiko.dsskey":{DSSKey:[8,1,1,""]},"paramiko.dsskey.DSSKey":{generate:[8,6,1,""]},"paramiko.ecdsakey":{ECDSAKey:[8,1,1,""]},"paramiko.ecdsakey.ECDSAKey":{generate:[8,7,1,""]},"paramiko.file":{BufferedFile:[5,1,1,""]},"paramiko.file.BufferedFile":{"__iter__":[5,2,1,""],close:[5,2,1,""],flush:[5,2,1,""],next:[5,2,1,""],read:[5,2,1,""],readable:[5,2,1,""],readinto:[5,2,1,""],readline:[5,2,1,""],readlines:[5,2,1,""],seek:[5,2,1,""],seekable:[5,2,1,""],tell:[5,2,1,""],writable:[5,2,1,""],write:[5,2,1,""],writelines:[5,2,1,""],xreadlines:[5,2,1,""]},"paramiko.hostkeys":{HostKeyEntry:[6,1,1,""],HostKeys:[6,1,1,""]},"paramiko.hostkeys.HostKeyEntry":{from_line:[6,7,1,""],to_line:[6,2,1,""]},"paramiko.hostkeys.HostKeys":{"__init__":[6,2,1,""],add:[6,2,1,""],check:[6,2,1,""],clear:[6,2,1,""],hash_host:[6,6,1,""],load:[6,2,1,""],lookup:[6,2,1,""],save:[6,2,1,""]},"paramiko.kex_gss":{KexGSSGex:[7,1,1,""],KexGSSGroup14:[7,1,1,""],KexGSSGroup1:[7,1,1,""],NullHostKey:[7,1,1,""]},"paramiko.kex_gss.KexGSSGex":{"__weakref__":[7,3,1,""],parse_next:[7,2,1,""],start_kex:[7,2,1,""]},"paramiko.kex_gss.KexGSSGroup1":{"__weakref__":[7,3,1,""],parse_next:[7,2,1,""],start_kex:[7,2,1,""]},"paramiko.kex_gss.NullHostKey":{"__weakref__":[7,3,1,""]},"paramiko.message":{Message:[9,1,1,""]},"paramiko.message.Message":{"__init__":[9,2,1,""],"__repr__":[9,2,1,""],"__str__":[9,2,1,""],"__weakref__":[9,3,1,""],add:[9,2,1,""],add_adaptive_int:[9,2,1,""],add_boolean:[9,2,1,""],add_byte:[9,2,1,""],add_bytes:[9,2,1,""],add_int64:[9,2,1,""],add_int:[9,2,1,""],add_list:[9,2,1,""],add_mpint:[9,2,1,""],add_string:[9,2,1,""],asbytes:[9,2,1,""],get_adaptive_int:[9,2,1,""],get_binary:[9,2,1,""],get_boolean:[9,2,1,""],get_byte:[9,2,1,""],get_bytes:[9,2,1,""],get_int64:[9,2,1,""],get_int:[9,2,1,""],get_list:[9,2,1,""],get_mpint:[9,2,1,""],get_remainder:[9,2,1,""],get_so_far:[9,2,1,""],get_string:[9,2,1,""],get_text:[9,2,1,""],rewind:[9,2,1,""]},"paramiko.packet":{Packetizer:[10,1,1,""]},"paramiko.packet.Packetizer":{"__weakref__":[10,3,1,""],complete_handshake:[10,2,1,""],handshake_timed_out:[10,2,1,""],need_rekey:[10,2,1,""],read_all:[10,2,1,""],read_message:[10,2,1,""],readline:[10,2,1,""],send_message:[10,2,1,""],set_inbound_cipher:[10,2,1,""],set_keepalive:[10,2,1,""],set_log:[10,2,1,""],set_outbound_cipher:[10,2,1,""],start_handshake:[10,2,1,""]},"paramiko.pipe":{WindowsPipe:[11,1,1,""],make_or_pipe:[11,5,1,""]},"paramiko.pipe.WindowsPipe":{"__weakref__":[11,3,1,""]},"paramiko.pkey":{PKey:[8,1,1,""]},"paramiko.pkey.PKey":{"__cmp__":[8,2,1,""],"__init__":[8,2,1,""],"__weakref__":[8,3,1,""],asbytes:[8,2,1,""],can_sign:[8,2,1,""],from_private_key:[8,7,1,""],from_private_key_file:[8,7,1,""],get_base64:[8,2,1,""],get_bits:[8,2,1,""],get_fingerprint:[8,2,1,""],get_name:[8,2,1,""],sign_ssh_data:[8,2,1,""],verify_ssh_sig:[8,2,1,""],write_private_key:[8,2,1,""],write_private_key_file:[8,2,1,""]},"paramiko.proxy":{ProxyCommand:[12,1,1,""]},"paramiko.proxy.ProxyCommand":{"__init__":[12,2,1,""],recv:[12,2,1,""],send:[12,2,1,""]},"paramiko.rsakey":{RSAKey:[8,1,1,""]},"paramiko.rsakey.RSAKey":{generate:[8,6,1,""]},"paramiko.server":{InteractiveQuery:[13,1,1,""],ServerInterface:[13,1,1,""],SubsystemHandler:[13,1,1,""]},"paramiko.server.InteractiveQuery":{"__init__":[13,2,1,""],"__weakref__":[13,3,1,""],add_prompt:[13,2,1,""]},"paramiko.server.ServerInterface":{"__weakref__":[13,3,1,""],cancel_port_forward_request:[13,2,1,""],check_auth_gssapi_keyex:[13,2,1,""],check_auth_gssapi_with_mic:[13,2,1,""],check_auth_interactive:[13,2,1,""],check_auth_interactive_response:[13,2,1,""],check_auth_none:[13,2,1,""],check_auth_password:[13,2,1,""],check_auth_publickey:[13,2,1,""],check_channel_direct_tcpip_request:[13,2,1,""],check_channel_env_request:[13,2,1,""],check_channel_exec_request:[13,2,1,""],check_channel_forward_agent_request:[13,2,1,""],check_channel_pty_request:[13,2,1,""],check_channel_request:[13,2,1,""],check_channel_shell_request:[13,2,1,""],check_channel_subsystem_request:[13,2,1,""],check_channel_window_change_request:[13,2,1,""],check_channel_x11_request:[13,2,1,""],check_global_request:[13,2,1,""],check_port_forward_request:[13,2,1,""],enable_auth_gssapi:[13,2,1,""],get_allowed_auths:[13,2,1,""]},"paramiko.server.SubsystemHandler":{"__init__":[13,2,1,""],finish_subsystem:[13,2,1,""],get_server:[13,2,1,""],start_subsystem:[13,2,1,""]},"paramiko.sftp_attr":{SFTPAttributes:[14,1,1,""]},"paramiko.sftp_attr.SFTPAttributes":{"__init__":[14,2,1,""],"__str__":[14,2,1,""],"__weakref__":[14,3,1,""],from_stat:[14,7,1,""]},"paramiko.sftp_client":{SFTP:[14,1,1,""],SFTPClient:[14,1,1,""]},"paramiko.sftp_client.SFTPClient":{"__init__":[14,2,1,""],chdir:[14,2,1,""],chmod:[14,2,1,""],chown:[14,2,1,""],close:[14,2,1,""],file:[14,2,1,""],from_transport:[14,7,1,""],get:[14,2,1,""],get_channel:[14,2,1,""],getcwd:[14,2,1,""],getfo:[14,2,1,""],listdir:[14,2,1,""],listdir_attr:[14,2,1,""],listdir_iter:[14,2,1,""],lstat:[14,2,1,""],mkdir:[14,2,1,""],normalize:[14,2,1,""],open:[14,2,1,""],put:[14,2,1,""],putfo:[14,2,1,""],readlink:[14,2,1,""],remove:[14,2,1,""],rename:[14,2,1,""],rmdir:[14,2,1,""],stat:[14,2,1,""],symlink:[14,2,1,""],truncate:[14,2,1,""],unlink:[14,2,1,""],utime:[14,2,1,""]},"paramiko.sftp_file":{SFTPFile:[14,1,1,""]},"paramiko.sftp_file.SFTPFile":{check:[14,2,1,""],chmod:[14,2,1,""],chown:[14,2,1,""],close:[14,2,1,""],flush:[14,2,1,""],gettimeout:[14,2,1,""],next:[14,2,1,""],prefetch:[14,2,1,""],read:[14,2,1,""],readable:[14,2,1,""],readinto:[14,2,1,""],readline:[14,2,1,""],readlines:[14,2,1,""],readv:[14,2,1,""],seekable:[14,2,1,""],set_pipelined:[14,2,1,""],setblocking:[14,2,1,""],settimeout:[14,2,1,""],stat:[14,2,1,""],tell:[14,2,1,""],truncate:[14,2,1,""],utime:[14,2,1,""],writable:[14,2,1,""],write:[14,2,1,""],writelines:[14,2,1,""],xreadlines:[14,2,1,""]},"paramiko.sftp_handle":{SFTPHandle:[14,1,1,""]},"paramiko.sftp_handle.SFTPHandle":{"__init__":[14,2,1,""],chattr:[14,2,1,""],close:[14,2,1,""],read:[14,2,1,""],stat:[14,2,1,""],write:[14,2,1,""]},"paramiko.sftp_server":{SFTPServer:[14,1,1,""]},"paramiko.sftp_server.SFTPServer":{"__init__":[14,2,1,""],convert_errno:[14,6,1,""],set_file_attr:[14,6,1,""]},"paramiko.sftp_si":{SFTPServerInterface:[14,1,1,""]},"paramiko.sftp_si.SFTPServerInterface":{"__init__":[14,2,1,""],"__weakref__":[14,3,1,""],canonicalize:[14,2,1,""],chattr:[14,2,1,""],list_folder:[14,2,1,""],lstat:[14,2,1,""],mkdir:[14,2,1,""],open:[14,2,1,""],readlink:[14,2,1,""],remove:[14,2,1,""],rename:[14,2,1,""],rmdir:[14,2,1,""],session_ended:[14,2,1,""],session_started:[14,2,1,""],stat:[14,2,1,""],symlink:[14,2,1,""]},"paramiko.ssh_exception":{AuthenticationException:[15,4,1,""],BadAuthenticationType:[15,4,1,""],BadHostKeyException:[15,4,1,""],ChannelException:[15,4,1,""],NoValidConnectionsError:[15,4,1,""],PartialAuthentication:[15,4,1,""],PasswordRequiredException:[15,4,1,""],ProxyCommandFailure:[15,4,1,""],SSHException:[15,4,1,""]},"paramiko.ssh_exception.NoValidConnectionsError":{"__init__":[15,2,1,""]},"paramiko.ssh_exception.SSHException":{"__weakref__":[15,3,1,""]},"paramiko.ssh_gss":{"_SSH_GSSAPI":[16,1,1,""],"_SSH_GSSAuth":[16,1,1,""],"_SSH_SSPI":[16,1,1,""],GSSAuth:[16,5,1,""]},"paramiko.ssh_gss._SSH_GSSAPI":{"__init__":[16,2,1,""],credentials_delegated:[16,3,1,""],save_client_creds:[16,2,1,""],ssh_accept_sec_context:[16,2,1,""],ssh_check_mic:[16,2,1,""],ssh_get_mic:[16,2,1,""],ssh_init_sec_context:[16,2,1,""]},"paramiko.ssh_gss._SSH_GSSAuth":{"__init__":[16,2,1,""],"__weakref__":[16,3,1,""],set_service:[16,2,1,""],set_username:[16,2,1,""],ssh_check_mech:[16,2,1,""],ssh_gss_oids:[16,2,1,""]},"paramiko.ssh_gss._SSH_SSPI":{"__init__":[16,2,1,""],credentials_delegated:[16,3,1,""],save_client_creds:[16,2,1,""],ssh_accept_sec_context:[16,2,1,""],ssh_check_mic:[16,2,1,""],ssh_get_mic:[16,2,1,""],ssh_init_sec_context:[16,2,1,""]},"paramiko.transport":{SecurityOptions:[17,1,1,""],Transport:[17,1,1,""]},"paramiko.transport.SecurityOptions":{"__repr__":[17,2,1,""],ciphers:[17,3,1,""],compression:[17,3,1,""],digests:[17,3,1,""],kex:[17,3,1,""],key_types:[17,3,1,""]},"paramiko.transport.Transport":{"__init__":[17,2,1,""],"__repr__":[17,2,1,""],accept:[17,2,1,""],add_server_key:[17,2,1,""],atfork:[17,2,1,""],auth_gssapi_keyex:[17,2,1,""],auth_gssapi_with_mic:[17,2,1,""],auth_interactive:[17,2,1,""],auth_interactive_dumb:[17,2,1,""],auth_none:[17,2,1,""],auth_password:[17,2,1,""],auth_publickey:[17,2,1,""],cancel_port_forward:[17,2,1,""],close:[17,2,1,""],connect:[17,2,1,""],get_banner:[17,2,1,""],get_exception:[17,2,1,""],get_hexdump:[17,2,1,""],get_log_channel:[17,2,1,""],get_remote_server_key:[17,2,1,""],get_security_options:[17,2,1,""],get_server_key:[17,2,1,""],get_username:[17,2,1,""],getpeername:[17,2,1,""],global_request:[17,2,1,""],is_active:[17,2,1,""],is_authenticated:[17,2,1,""],load_server_moduli:[17,6,1,""],open_channel:[17,2,1,""],open_forward_agent_channel:[17,2,1,""],open_forwarded_tcpip_channel:[17,2,1,""],open_session:[17,2,1,""],open_sftp_client:[17,2,1,""],open_x11_channel:[17,2,1,""],renegotiate_keys:[17,2,1,""],request_port_forward:[17,2,1,""],send_ignore:[17,2,1,""],set_gss_host:[17,2,1,""],set_hexdump:[17,2,1,""],set_keepalive:[17,2,1,""],set_log_channel:[17,2,1,""],set_subsystem_handler:[17,2,1,""],start_client:[17,2,1,""],start_server:[17,2,1,""],use_compression:[17,2,1,""]},paramiko:{agent:[0,0,0,"-"],buffered_pipe:[1,0,0,"-"],channel:[2,0,0,"-"],client:[3,0,0,"-"],config:[4,0,0,"-"],dsskey:[8,0,0,"-"],ecdsakey:[8,0,0,"-"],file:[5,0,0,"-"],hostkeys:[6,0,0,"-"],kex_gss:[7,0,0,"-"],message:[9,0,0,"-"],packet:[10,0,0,"-"],pipe:[11,0,0,"-"],pkey:[8,0,0,"-"],proxy:[12,0,0,"-"],rsakey:[8,0,0,"-"],server:[13,0,0,"-"],sftp:[14,0,0,"-"],sftp_attr:[14,0,0,"-"],sftp_client:[14,0,0,"-"],sftp_file:[14,0,0,"-"],sftp_handle:[14,0,0,"-"],sftp_server:[14,0,0,"-"],sftp_si:[14,0,0,"-"],ssh_exception:[15,0,0,"-"],ssh_gss:[16,0,0,"-"],transport:[17,0,0,"-"]}},objnames:{"0":["py","module","Python module"],"1":["py","class","Python class"],"2":["py","method","Python method"],"3":["py","attribute","Python attribute"],"4":["py","exception","Python exception"],"5":["py","function","Python function"],"6":["py","staticmethod","Python static method"],"7":["py","classmethod","Python class method"]},objtypes:{"0":"py:module","1":"py:class","2":"py:method","3":"py:attribute","4":"py:exception","5":"py:function","6":"py:staticmethod","7":"py:classmethod"},terms:{"2fac":17,"__cmp__":8,"__init__":[2,3,4,6,8,9,12,13,14,15,16,17],"__iter__":5,"__len__":1,"__repr__":[2,9,17],"__str__":[9,14],"__weakref__":[1,3,4,7,8,9,10,11,13,14,15,16],"_flag":[5,14],"_sre":4,"_ssh_build_mic":16,"_ssh_gssapi":16,"_ssh_gssauth":16,"_ssh_sspi":16,"abstract":[0,2,8,11,14],"boolean":[9,13,16,17],"break":9,"byte":[0,1,2,5,6,8,9,10,14,16,17],"case":[2,3,13,14,15,17],"catch":[14,17],"char":[7,12],"class":[],"default":[0,1,2,3,4,13,14,16,17],"float":[1,2,3,10,14,17],"function":[],"import":[14,16],"int":[0,1,2,3,5,8,9,10,12,13,14,15,17],"long":[6,9,10,13,14,17],"new":[0,1,2,3,4,6,7,8,9,10,12,13,14,15,16,17],"null":[5,7,14],"public":[0,8,15,17,18],"return":[0,1,2,3,4,5,6,8,9,10,11,12,13,14,15,16,17],"short":13,"static":[6,8,14,17],"switch":[10,17],"true":[0,1,2,3,5,6,8,10,13,14,16,17],"try":[3,15,17],"void":[16,17],"while":[2,3,14],abil:14,abl:2,about:[13,14],abov:13,abruptli:14,absent:[5,14],absolut:[5,14],accept:[2,3,13,14,16,17],access:[5,13,14,15],accord:4,account:13,accur:[5,14],achiev:17,across:[2,13,14,17],act:[11,13,18],activ:[2,14,17],actual:[2,5,11,13,14,16,17],add:[1,3,5,6,9,13,14,17],add_adaptive_int:9,add_boolean:9,add_byt:9,add_int64:9,add_int:9,add_list:9,add_mpint:9,add_prompt:13,add_server_kei:17,add_str:9,addit:[14,17],address:[0,2,13,15,17],adequ:14,advers:17,affect:[2,11,14,17],after:[0,1,2,3,5,10,13,14,17],afterward:14,again:[2,13],against:3,agentclientproxi:0,agentforward:13,agentkei:0,agentlocalproxi:0,agentproxythread:0,agentremoteproxi:0,agentrequesthandl:0,agentserverproxi:0,agre:17,aka:[4,14],algorithm:[14,17],alia:[14,17],alias:14,aliv:17,all:[0,1,2,4,5,6,8,10,13,14,15,17],alloc:[13,17],allow:[2,13,14,15,17,18],allow_ag:3,allowed_typ:15,almost:[13,17],alreadi:[9,14],also:[2,13,14,17],alter:14,altern:14,alwai:[2,10,13,14,17],amount:[1,2,10],ani:[0,1,2,3,5,6,9,13,14,17],anoth:[1,2,8,9,12],answer:[13,17],anticip:14,anyth:[3,9,17],api:[],apolog:14,appear:3,append:[5,14],appli:4,applic:[2,3,13],appropri:14,approxim:[5,14],arbitrari:[9,14,17],area:18,aren:[9,13],arg:2,arguabl:6,argument:[1,2,3,5,12,13,14,17],around:[2,5,17],arriv:[1,2,13,17],asbyt:[8,9],asid:13,ask:[0,2,3,13,14,17],aspect:3,assign:[13,17],associ:[2,6,13,14],assum:[1,5,10,13,14,15],asymmetr:8,asynchron:17,asyncor:2,atfork:17,atim:14,attach:[2,17],attack:17,attemp:14,attempt:[0,1,2,3,10,13,14,15,16,17],attr:14,attribut:[14,15],autent:17,auth:[2,3,13,17],auth_cooki:[2,13],auth_fail:13,auth_gssapi_keyex:17,auth_gssapi_with_m:17,auth_interact:17,auth_interactive_dumb:17,auth_method:16,auth_non:17,auth_partially_success:13,auth_password:17,auth_protocol:[2,13],auth_publickei:17,auth_success:13,authent:[],authenticationexcept:[3,15,17],authhandl:13,author:14,autoaddpolici:3,autom:17,automat:[0,2,3,17],avail:[0,13,16],avoid:[2,14],back:[2,3,5,13,17],background:[2,14],backward:14,bad:2,badauthenticationtyp:[15,17],badhostkeyexcept:[3,15],banner:[3,17],banner_timeout:3,base64:[0,8],base:[0,5,8,9,10,14,17],basestr:17,basic:[2,18],battl:17,becaus:[2,5,13,14,15,16,17],been:[1,2,5,9,13,14,17],befor:[0,1,2,6,8,10,14,17],begin:[4,9,13,14,17],behav:[2,14,17],behavior:[2,13,14,17],belief:17,below:13,besid:17,betti:14,between:[0,12],binari:[0,5,8,14],bind:17,bit:[0,2,8,9,14],bitset:14,bizarr:14,blindli:13,blob:[0,8],block:[0,1,2,10,13,14,17],block_engin:10,block_siz:[10,14],book:10,bool:[2,3,9,10,13,14,16,17],both:[2,4,11,13,14,17],bother:6,boundari:14,buff:[5,14],buffered_pip:1,bufferedfil:[5,14],bufferedpip:1,bufsiz:[2,3,5,14],bug:6,build:9,built:[2,3,14],byte_count:17,bytearrai:[5,14],cach:[3,13],call:[0,1,2,3,5,6,10,13,14,16,17],callabl:[14,17],callback:[10,14],can:[0,1,2,3,4,5,6,8,9,10,11,12,13,14,17],can_sign:[0,8],cancel:[13,17],cancel_port_forward:17,cancel_port_forward_request:13,cannot:[8,14],canon:14,canonic:14,captur:15,care:[3,6,14],caus:[2,13,14,17],cc_file:13,cc_filenam:13,certain:17,certainli:13,cetain:13,challeng:13,chan:[0,2],chanclient:0,chang:[2,3,14,17],changelog:18,chanid:[2,13],channel:[],channelexcept:15,channelfil:2,chanremot:0,charact:[2,3,5,9,13,14],charg:0,chattr:14,chdir:14,check:[2,3,5,6,10,13,14,16,18],check_auth_gssapi_keyex:13,check_auth_gssapi_with_m:13,check_auth_interact:13,check_auth_interactive_respons:13,check_auth_non:[13,17],check_auth_password:[13,17],check_auth_publickei:[13,17],check_channel_direct_tcpip_request:13,check_channel_env_request:13,check_channel_exec_request:13,check_channel_forward_agent_request:13,check_channel_pty_request:13,check_channel_request:[2,13,17],check_channel_shell_request:13,check_channel_subsystem_request:13,check_channel_window_change_request:13,check_channel_x11_request:13,check_global_request:13,check_port_forward_request:13,check_rekei:10,child:17,chmod:14,chown:14,chunk:14,cipher:[10,17],claim:17,classmethod:[6,8,14],clean:[0,17],cleanli:[14,17],cleanup:[13,14],clear:[1,6,11,17],client:[],client_token:16,clone:0,close:[0,1,2,3,5,10,13,14,17],code:[2,13,14,15,17],collect:[2,14],com:[3,13,17],combin:[2,6,9,13],come:14,comma:[9,13],command:[0,2,3,12,13,15],command_lin:12,commandproxi:12,comment:6,common:[8,14],commonli:14,commun:[0,3,17],compar:8,compat:[0,8,14],complet:[2,10,13,14,17],complete_handshak:10,compress:[3,17],comput:[14,17],concaten:[9,14],concept:14,condit:2,config:[4,15],confirm:14,conflict:3,confus:17,connect:[0,2,3,7,13,15,16,17],consid:[2,14],consist:14,constant:2,construct:17,constructor:[2,9,14,17],contact:0,contain:[0,2,4,5,8,9,13,14,16,17],content:[0,7,8,9,12,14,17,18],context:[2,3,12,14,16,17],contextu:13,continu:[2,13,14,17],control:[2,13,14,17,18],conveni:[2,4,14],convert:[14,17],convert_errno:14,cooki:[2,13],copi:14,core:[],correctli:[0,2,8],correspond:[8,13,14],corrupt:17,could:[2,3,9,10,14,16],couldn:0,count:[5,14],cover:18,creat:[0,2,3,4,6,8,9,12,13,14,16,17],creation:18,credentail:16,credenti:[3,7,13,15,16,17],credentials_deleg:16,criteria:17,cryptographi:8,current:[0,2,3,5,10,14,16,17],curv:8,custom:9,cycl:[13,14],danger:13,data:[0,1,2,5,6,8,10,13,14,17,18],databas:[3,17],deal:9,debian:17,debug:[2,9,17],decid:[13,18],declar:4,decod:9,decompos:9,decor:2,decrypt:[0,8],default_max_packet_s:17,default_window_s:[2,17],defin:[1,3,4,7,8,9,10,11,13,14,15,16],deleg:[3,7,13,16,17],delet:14,deliveri:2,demand:17,deni:17,depend:14,deprec:[5,14],der:16,describ:[4,15],descript:14,descriptor:2,desctruct:14,desir:[2,5,14,16,17],desired_mech:16,dest:14,dest_addr:17,destin:[13,14,17],destroi:14,detail:[14,17,18],determin:[2,13,14,17],determinist:9,develop:13,dialog:17,dict:[0,4,6,14,15],dictionari:6,did:[14,15],didn:[13,14],differ:[8,14,15,17],diffi:7,difficult:17,digest:17,dimens:13,direct:[2,14,17,18],directli:[2,3,17],directori:14,disabl:[2,3,17],disallow:2,discover:3,disk:14,displai:13,dispos:2,disrupt:17,distribut:17,doc:14,docstr:15,document:[],doe:[1,2,5,9,13,14,17],doesn:[2,5,6,9,14,16,17],don:[2,6,9,13,14,17],done:[1,10,13,17,18],down:[2,9],download:14,dramat:14,driven:12,dss:[],dsskei:[0,8,17],due:[14,17],dumb:17,dumber:17,dump:17,dure:[6,10,13,17],each:[3,4,13,14,17],eas:17,easi:14,ecdsakei:8,echo:[13,17],effect:[2,17],effici:[2,14],either:[2,3,6,11,13,14,16,18],elaps:[1,2],els:[2,5,6,13,14,17],empti:[0,1,5,6,13,14,17],emul:[2,3,14],enabl:13,enable_auth_gssapi:13,encod:[5,9,14,16],encount:[5,14,15],encrypt:[0,8,17,18],end:[0,2,4,5,11,13,14,17],enough:2,ensur:2,enter:17,entir:[2,5,14],entri:[2,4,6,14],env:13,environ:13,environn:0,eof:[2,5,13,14],eoferror:[10,17],epoch:14,equal:8,equival:[2,6,8,9,14],errno:[14,15],error:[0,2,3,6,7,8,13,14,15,16,17],escap:14,especi:14,establish:[0,3],etc:[2,9,14,15,17],even:[5,14],event:[1,11,17],ever:[2,10,17],everi:10,exactli:[2,13,14],examin:3,exampl:[0,2,3,8,13,14,15,17],exceedingli:13,except:[],exchang:[],exec_command:[0,2,3],exectu:2,execut:[0,2,3,10,12,13],exist:[0,2,3,6,8,14,17],exit:[2,13],exit_status_readi:2,expandus:6,expans:4,expect:[0,2,6,14,15,17,18],expected_kei:15,explan:15,explicit:[3,4],explicitli:14,expos:[9,15],express:[1,2],extend:14,extens:[9,13,14,17],extra:[13,17],facto:4,factor:14,factori:[0,8],fail:[2,3,5,13,15,16,17],failur:[13,14,15,17],fake:[0,2],fallback:17,fals:[0,1,2,3,5,6,8,10,13,14,16,17],famili:15,far:14,faster:2,featur:[9,14],fed:1,feed:1,feeder:1,fetch:[2,9,14,17],few:10,fewer:14,fget:[5,14],field:[14,17],file:[],file_obj:[0,4,8],file_s:14,filenam:[0,3,6,8,13,14,17],fileno:2,filesystem:14,fill:[2,8,14],find:[0,2,3,6,14],fine:[4,14],fingerprint:[0,8],finish:[2,13,18],finish_subsystem:13,firewal:17,first:[2,4,5,14,17],fit:17,flag:[5,14],flag_binari:[5,14],flow:[2,18],flush:[2,5,14],folder:14,follow:[2,3,13,14,17,18],foo:14,forc:[5,14,17],forev:[1,13,17],fork:[12,17],form:[6,14,16,17],format:[0,4,6,8,9,14],forward:[0,2,13,17],forward_agent_handl:0,found:[0,3,6,14,15],fqdn:[4,16],from:[0,1,2,3,4,5,6,8,9,10,12,13,14,15,16,17],from_lin:6,from_private_kei:[0,8],from_private_key_fil:[0,8],from_stat:14,from_transport:14,fseek:5,full:14,func:[2,14,17],further:[2,13],futur:[1,2,5,13,14],garbag:2,gener:[1,2,4,8,13,14,15,16,17],gentoo:17,get:[2,3,14,16,17],get_adaptive_int:9,get_allowed_auth:[13,17],get_bann:17,get_base64:[0,8],get_binari:9,get_bit:[0,8],get_boolean:9,get_byt:9,get_channel:14,get_connect:0,get_env:0,get_except:17,get_fingerprint:[0,8],get_hexdump:17,get_host_kei:3,get_hostnam:4,get_id:[2,13],get_int64:9,get_int:9,get_kei:0,get_list:9,get_log_channel:17,get_mpint:9,get_nam:[2,8,17],get_pti:[2,3],get_remaind:9,get_remote_server_kei:17,get_security_opt:17,get_serv:13,get_server_kei:17,get_so_far:9,get_str:9,get_text:9,get_transport:[0,2,3],get_usernam:17,getcwd:14,getfo:14,getpeernam:[2,17],gettimeout:[2,14],gid:14,git:0,give:17,given:[0,1,2,3,4,6,8,13,14,15,16,17],global:[13,17],global_request:17,gmt:14,goe:14,good:[13,14,17],got_kei:15,grant:13,greater:14,group14:7,group:[7,14,17],gss:[],gss_auth:[3,17],gss_authent:13,gss_deleg_cr:[3,16,17],gss_host:[3,17],gss_kex:[3,16,17],gssapi:[13,16,17],gssauth:16,gssexcept:16,guarante:15,habit:2,had:[9,17],half:17,halv:2,hand:0,handi:14,handl:[],handler:[2,13,14,17],handshak:10,handshake_timed_out:10,hang:[2,14],happen:[5,17],hasattr:14,hash:[6,14,17],hash_algorithm:14,hash_host:6,hasn:2,have:[1,2,5,6,9,13,14,17,18],haven:[9,14,17],hazmat:8,height:[2,3,13],height_pixel:[2,3],held:0,hellman:7,helper:[0,14],here:13,hex:17,hexadecim:2,hexdump:17,high:[3,18],hint:14,hit:[5,14,17],home:14,hook:13,host:[],hostkei:[3,6,17],hostkeyentri:6,hostnam:[3,4,6,15,16,17],how:[2,9,12,14,18],howev:14,http:[0,13],hundr:2,id_dsa:3,id_ecdsa:3,id_rsa:3,idea:[5,13,14],ident:[2,5,9,14],identifi:13,ignor:[5,14,17],immedi:[1,2,5,14,17],implement:[],impli:[14,15],importerror:16,imposs:11,improv:14,inbound:10,includ:[5,6,13,14,17,18],incom:[2,7,17],incompat:0,incomplet:[5,14],incorrect:17,increment:14,indefinit:[2,13],independ:2,indic:[1,13,14,17],indistinguish:2,individu:[6,14],infinit:9,info:[14,17,18],inform:[4,13,14,17],initi:[0,2,16],input:[3,5,12,14],instanc:[2,3,8,12,14,15,17],instanti:0,instantli:2,instead:[5,12,14],instruct:[13,17],integ:[9,14],intend:[5,14],interact:[2,3,13,14,17],interactivequeri:13,interest:18,interfac:[0,2,3,5,12,13,14],intern:[5,14,15],internet:14,interpret:[2,3,13],interv:[10,17],invalid:[0,8],invok:[2,3,13],invoke_shel:[2,3],invoke_subsystem:2,ioerror:[0,3,5,6,8,14],ip_address:13,ipv4:15,irrit:2,is_act:[13,17],is_authent:17,isn:[2,3,13,15,17],issu:14,item:[9,13],iter:[5,14],itself:[5,14],januari:14,judg:[0,8],junk:17,just:[6,9,13,14,16,17],keep:[10,17],keepal:[10,17],kei:[],kept:[5,14,17],kerbero:[3,13,16,17],kex:17,kex_gss:[7,13],kexgssgex:7,kexgssgroup14:7,kexgssgroup1:7,key_filenam:3,key_typ:17,keyboard:[13,17],keyex:16,keytyp:6,keyword:[14,17],kind:[2,3,13,17,18],know:17,knowledg:2,known:[3,6,9,13,14,17],krb5:[13,16],krb5_kuserok:13,krb5_princip:13,kwarg:[2,14,17],kwd:2,larg:[2,10,14,17],larger:2,last:[2,3,14,17],latenc:14,later:[8,14,17],latter:13,launch:0,lazyfqdn:4,lead:6,least:[1,2,10],left:3,len:[5,14,17],length:[1,2,5,9,12,14,16],less:[2,5,14],level:[2,3,9,11,14,17,18],librari:13,like:[0,2,3,4,5,6,8,11,12,13,14,15,17,18],line:[5,6,10,14,15],lineno:6,link:[14,17],linux:13,list:[0,1,3,4,5,7,8,9,10,11,13,14,15,16,17],list_fold:14,listdir:14,listdir_attr:14,listdir_it:14,listen:[13,17],liter:4,littl:14,live:[0,17],load:[3,6,13,17],load_host_kei:3,load_server_moduli:17,load_system_host_kei:3,local:[0,2,3,13,14,17],localpath:14,locat:17,lock:10,log:[3,10,13,17],logfil:2,logic:[13,15],login:16,longer:[2,17],longnam:14,look:[4,6],look_for_kei:3,lookup:[4,6],loop:13,lost:0,low:9,lower:3,lowercas:4,lstat:14,mac_engin:10,mac_kei:10,mac_siz:10,machin:[0,12],machineri:14,made:[2,3,4,8,13,14,15,17],magic:[0,2,8],mai:[0,1,2,3,5,9,11,12,13,14,15,17,18],main:18,maintain:18,make:[2,11,12,13,14,17],make_or_pip:11,makefil:2,makefile_stderr:2,malici:14,man:[4,13],manag:[2,3,12,14,17],mangl:10,mani:[2,7,12,14,17],manipul:3,manual:0,map:14,mask:14,match:[4,5,14,15,18],max:[14,17],max_packet_s:[14,17],maximum:[1,2,5,14],md5:[0,8,14],mean:[1,2,14],meant:[2,14,17],mechan:[3,16],memor:2,merg:[3,6],messag:[],method:[0,1,2,3,6,7,8,9,13,14,16,17],mic:[16,17],mic_token:16,microsoft:16,might:[13,14,17],mimic:14,mimick:14,mirror:14,misguid:17,miss:[3,14],missing_host_kei:3,missinghostkeypolici:3,mit:[2,16],mix:[5,14],mkdir:14,mode:[2,5,7,13,14,16,17],modif:14,modifi:[3,14,17],modul:[2,7,14,16,17],moduli:17,more:[1,2,4,6,13,14,15,17,18],most:[0,3,5,14,15],mostli:[0,2,14],move:[5,14],movement:5,mp3:13,mp3handler:13,mpint:9,msg:[0,8,13],mtime:14,much:[2,13,14],multi:17,multipl:[3,6,13,14,15,17],multiplex:17,must:[2,3,6,11,13,14,17],name:[0,2,3,5,6,8,13,14,16,17],nat:17,nbyte:[1,2],nearli:11,necessari:[0,2,8,10,14],need:[0,1,2,9,10,12,13,15,17,18],need_rekei:10,needrekeyexcept:10,neg:[5,14,17],negot:17,negoti:[6,10,14,15,16,17,18],network:[2,17],never:[2,17],newli:14,newlin:[5,6,14],newpath:14,next:[5,7,9,14,17],nois:17,non:[2,5,8,9,14,16],none:[0,1,2,3,4,5,6,8,9,13,14,15,16,17],nonneg:[1,2],normal:[1,2,4,9,11,14,15,17],normpath:14,notat:14,note:[2,13,14,16],noth:[0,2,5,8,13,14],notic:[2,13],notimplementederror:16,novalidconnectionserror:15,now:13,nullhostkei:7,number:[0,1,2,5,8,9,10,13,14,16,17],numer:14,o_append:14,o_creat:14,o_excl:14,o_rdonli:14,o_rdwr:14,o_trunc:14,o_wronli:14,obei:[1,14],obj:[9,14],object:[0,1,2,3,4,5,6,7,8,9,10,11,13,14,15,16,17,18],obscur:17,obtain:[0,4],obviou:14,occasion:14,occur:[0,2,3,5,7,14],octal:14,off:[10,14,17],offset:[5,14],often:17,oid:16,okai:[5,10,13,14],old:3,oldpath:14,omit:[2,5,14],onc:[1,2,13,14,17,18],onli:[2,3,4,5,8,9,10,11,13,14,15,16,17],open:[0,2,3,5,13,14,15,17],open_channel:17,open_failed_administratively_prohibit:13,open_failed_connect_fail:13,open_failed_resource_shortag:13,open_failed_unknown_channel_typ:13,open_forward_agent_channel:17,open_forwarded_tcpip_channel:17,open_onli:2,open_sess:[0,17],open_sftp:3,open_sftp_cli:17,open_succeed:13,open_x11_channel:[13,17],openssh:[2,3,4,6,14,17],oper:[0,1,2,5,14,17],option:[0,1,2,3,4,5,6,8,13,14,17],order:[3,6,14,17],organ:18,origin:[6,13,14,17],origin_addr:17,origin_port:17,oserror:14,other:[],otherwis:[0,1,2,6,8,13,14,16,17],out:[1,5,9,10,14],outbound:[2,10],outgo:2,output:[2,3,12,15],outsid:14,over:[2,5,14,17,18],overal:14,overrid:[3,13,14,17],overridden:14,overwrit:13,own:[5,13],owner:14,ownership:14,packet:[],page:[4,13],pair:[0,6],paket:7,pam:17,param:[2,14],paramet:[0,1,2,3,4,5,6,7,8,9,10,12,13,14,15,16,17],paramiko:[],pars:[4,6,7,9],parse_next:7,part:[0,1,2,8,17],partial:[2,14,15,17],partialauthent:15,particular:2,partit:14,pass:[2,3,8,9,10,12,13,14,17,18],password:[0,3,8,13,15,17,18],passwordrequiredexcept:[0,8,15],past:14,path:[6,13,14,17],pathnam:14,pattern:4,paus:17,payload:17,pend:[2,10,14],peopl:[2,9],per:14,perform:[2,3,13,14,16,17],period:[1,2],permiss:[14,17],permit:17,peroid:17,pick:[13,17],pipelin:14,pipetimeout:1,pixel:[2,3,13],pixelheight:13,pixelwidth:13,pkei:[0,3,6,8,13,15,17],place:13,plain:[3,17],plattform:13,pleas:18,plu:3,point:0,polici:3,poll:2,popen:12,port:[0,2,3,4,13,15,17],posit:[5,9,14],posix:[3,4,6,14,17],possibl:[2,5,6,10,12,13,14,15,17],pre:[3,14],precis:9,predat:[5,14],prefer:[13,17],prefetch:14,prematur:17,presenc:14,presens:14,present:[2,3,5,14,15],preserv:6,pretti:17,previou:[2,13,17],previous:[2,3,13,14,17],primari:[],primarili:[2,4,14],prime:17,primit:8,princip:13,print:17,prior:[1,2],prioriti:3,privat:[0,3,8,15,17,18],probabl:[3,13,14],problem:2,proce:2,process:[0,2,4,10,13,17],produc:[5,14],program:12,progress_func:8,project:18,prompt:[13,17],prompt_list:17,protocol:[],provid:[2,3,4,7,13,14,15,16,18],proxi:[0,12,14,15],proxycommandfailur:15,pseudo:[2,3,13,16],psuedo:13,pty:[2,13],ptype:7,publickei:[13,15],put:14,putfo:14,pycrypto:[],python:[0,2,3,5,8,9,10,13,14,16,18],queri:[4,13],question:[13,17],queu:2,queue:[2,17],quickli:14,rais:[0,1,2,3,5,6,8,10,14,15,16,17],random:[2,5,14,17],rare:17,rather:17,raw:9,reach:[1,5,10,14],read:[0,1,2,3,4,5,6,8,10,11,12,14,17],read_ahead:14,read_al:10,read_messag:10,read_readi:1,readabl:[5,11,14],readfil:14,readi:[1,2],readinto:[5,14],readlin:[5,10,14],readlink:14,readv:14,real:[2,11,15],realli:[2,9,14],realpath:14,reason:[13,15],receiv:[1,2,3,12,16,17,18],recent:17,recogn:[0,8,17],recommend:2,recv:[2,12,17],recv_exit_statu:2,recv_readi:2,recv_stderr:2,recv_stderr_readi:2,recv_token:16,refer:[1,3,4,7,8,9,10,11,13,14,15,16,17],reflect:2,refus:[13,17],regener:9,regist:13,regular:12,reject:[2,3,13,17],rejectpolici:3,rekei:10,rel:[0,5,8,14],remain:[2,5,9,14],remaind:14,remot:[0,2,3,13,14,17,18],remote_chanid:2,remotepath:14,remov:[6,14],renam:14,renegoti:17,renegotiate_kei:17,replac:[2,3,6],report:13,repositori:0,repres:[0,1,2,3,7,8,14,15,17],represent:[2,3,4,6,8,9,14,17],request:[0,2,3,4,13,14,17,18],request_forward_ag:[0,2],request_port_forward:17,request_x11:2,requir:[2,3,7,13,14,17],reset:10,resiz:[2,13],resize_pti:2,resolut:15,resolv:14,respect:14,respond:[13,17],respons:[2,13,14,17,18],restrict:14,result:[1,2,13,14],retreiv:0,retri:15,retriev:[2,13,14],reus:2,reusabl:5,reveal:[0,8,14],rewind:9,rfc:[2,7,16],rich:14,right:2,rmdir:14,round:[5,14],roundtrip:14,rout:13,rsa:[],rsakei:[0,8,17],rsync:14,rtype:9,rule:4,run:[0,2,3,12,13],safe:17,sai:[7,17],sake:14,salt:6,same:[2,3,13,14,15,17],sampl:17,save:[3,6,16,17],save_client_cr:16,save_host_kei:3,saver:14,screen:[2,13],screen_numb:[2,13],sdctr:10,search:3,second:[1,2,3,10,14,17],secp256r1:8,secret:[0,8],section:[4,7,14],secur:[0,2,8,14,17],securityopt:17,see:[0,3,13,14,15,16,17,18],seek:[5,14],seekabl:[5,14],segment:14,select:[2,11],self:[5,14],semant:[1,2],send:[2,6,12,13,17,18],send_exit_statu:2,send_ignor:17,send_messag:10,send_readi:2,send_stderr:2,sendal:2,sendall_stderr:2,sens:[2,13],sent:[2,12,13,17],separ:[1,4,5,9,13,14,17],seq:9,sequenc:[5,9,14,16],seri:[13,14],serv:14,server:[],server_addr:17,server_port:17,serverinterfac:[2,13,14,17],servic:[13,16],session:[0,2,3,13,14,16,17,18],session_end:14,session_id:16,session_start:14,set:[1,2,3,4,5,10,11,13,14,16,17],set_combine_stderr:2,set_ev:1,set_file_attr:14,set_gss_host:17,set_hexdump:17,set_inbound_ciph:10,set_keepal:[10,17],set_log:10,set_log_channel:[3,17],set_missing_host_key_polici:3,set_nam:2,set_outbound_ciph:10,set_pipelin:14,set_servic:16,set_subsystem_handl:[13,14,17],set_usernam:16,setblock:[2,14],setter:[16,17],settimeout:[2,3,14,17],settings_regex:4,setup:14,sftp:[],sftp_:14,sftp_attr:14,sftp_client:14,sftp_eof:14,sftp_file:14,sftp_handl:14,sftp_no_such_fil:14,sftp_ok:14,sftp_permission_deni:14,sftp_server:14,sftp_si:14,sftpattribut:14,sftpclient:[3,14,17],sftpfile:14,sftphandl:14,sftpserver:14,sftpserverinterfac:14,sha1:14,sha:14,share:[16,17],shell:[2,3,13],shortcut:[14,17],should:[0,2,3,4,6,8,10,12,13,14,17],shouldn:[2,13],show:2,shrink:14,shut:2,shutdown:2,shutdown_read:2,shutdown_writ:2,side:[0,2,13,14,17,18],sign:[0,8,17],sign_ssh_data:8,signal:10,signatur:[0,2,8,13,18],signifi:14,signific:[0,8],signtatur:13,similar:[13,14],similarli:2,simpl:17,simpler:[5,17],simpli:[0,2,3,17],simul:2,sinc:[4,5,14,17],singl:[2,6,9,13,14,15,16,17],single_connect:[2,13],site:18,situat:[2,14,17],size:[3,5,12,14,17],sizehint:[5,14],slack:14,sleep:13,slightli:2,small:[2,13],sock:[3,14,17],socket:[0,1,2,3,10,11,12,14,15,17,18],some:[2,3,5,9,13,14,15,17],someth:[13,14,17],sometim:17,sort:2,sourc:[14,17],space:2,speak:0,special:14,specif:[3,4,13,14,15,17],specifi:[1,2,5,13,14,15,16,17],speed:14,split:6,src_addr:17,sre_pattern:4,ssh2:[2,8,9,15,16,17],ssh_accept_sec_context:16,ssh_auth_sock:0,ssh_check_mech:16,ssh_check_mic:16,ssh_config:4,ssh_except:15,ssh_fxp_readdir:14,ssh_get_mic:16,ssh_gss:[13,16],ssh_gss_oid:16,ssh_init_sec_context:16,sshclient:[0,3,18],sshconfig:4,sshexcept:[0,2,3,8,10,14,15,16,17],sspi:[7,16,17],st_atim:14,st_gid:14,st_mode:14,st_mtime:14,st_size:14,st_uid:14,stage:17,stall:2,standard:[4,12,14,17],start:[3,7,10,13,14,17,18],start_client:[17,18],start_handshak:10,start_kex:7,start_serv:[17,18],start_subsystem:13,stat:14,state:[6,13],statist:14,statu:[2,10],stderr:[2,3,13],stdin:[2,3,13],stdio:[5,14],stdout:[2,3,13,17],step:17,still:[13,17],stop:[2,14,17],stopiter:[5,14],store:[0,4,6,8,14,15,16,17],str:[0,1,2,3,4,5,6,8,9,10,12,13,14,15,16,17],stream:[2,3,5,9,17],string:[0,1,2,4,5,6,8,9,12,13,14,16,17],structur:[3,14],style:[3,5,6,14],sub:17,subclass:[0,2,3,8,13,14,15,17],submethod:[13,17],subprocess:12,subsequ:[2,17],substitut:4,subsystem:[2,13,14,17],subsystemhandl:[13,14,17],subsytem:13,succe:[0,2,13,14,17],succeed:15,success:[13,14,16,17],successfulli:[13,17],suffic:14,suffici:2,suitabl:[8,17],suppli:[13,17],support:[],sure:13,surpris:2,swap:17,symbol:14,symlink:14,symmetr:17,synchron:1,system:[3,14,17],tabl:[6,18],take:[3,13],taken:6,talk:12,target:[3,14,16,17],target_path:14,task:3,tcp:[3,13,17],tcpip:17,tell:[5,10,14],term:[2,3,13],termin:[0,2,3,7,13,17],terminolog:8,test:17,text:[5,6,14,15,17],than:[2,14,17],thei:[2,3,5,8,9,13,14,17],them:[2,3,5,13,14,17],themselv:3,thi:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18],thing:14,those:[3,14,17],thread:[0,1,2,10,13,14,17],through:[0,2,3,8,13,14],thrown:[0,7,8,14,15,17],thu:[3,7,14,15,17],time:[2,3,6,10,14],timeout:[1,2,3,10,14,17],timer:10,titl:17,to_lin:6,togeth:[11,14],token:[16,17],too:[2,4,13,14],top:14,total:[5,14],traffic:[12,17],traffix:17,trail:[5,6,14],transfer:[14,17],translat:14,transmit:2,transport:[],trap:14,travers:17,treat:[5,6,14],trigger:[10,11,17],trivial:[9,11],truncat:14,trust:17,tunnel:[2,13,17],tupl:[0,3,13,14,15,17],turn:[3,5,10,14,17],tweak:17,two:[0,2,11,17],type:[0,2,3,5,6,7,8,9,13,14,15,16,17],typeerror:17,typic:[3,5,14],uid:14,umask:14,unabl:2,undefin:17,under:0,underii:14,underli:[3,5,13,14,15,17],undon:5,unfortun:6,unheard:9,unicod:14,unifi:15,uniqu:[2,13],unix:[0,2,13,14,16],unknown:[3,13,17],unless:[2,13],unlik:[2,5,14],unlink:14,unlock:[3,15],unopen:2,unprint:9,unsign:9,until:[2,14,17],unus:8,upload:14,upon:[0,17],usag:18,use_compress:17,useless:[0,8,13],user:[3,4,13,16,17,18],usernam:[0,3,13,16,17],usual:[2,6,13,14,17],utf:[5,14],utim:14,val:8,valid:[2,6,13],validate_point:8,valu:[1,2,4,9,10,13,14,15,16,17],valueerror:[5,17],vari:14,variabl:[0,4,13,15,16],variou:14,veri:17,verif:[17,18],verifi:[0,2,3,6,8,13,14,16,17],verify_ssh_sig:[0,8],version:[2,3,4,6,7,13,14,15,16,17],via:[2,3,4,13,14,17],vt100:[2,3,13],wai:[2,3,11,13,14,17],wait:[1,2,3,10,14,17],want:[0,2,3,13,14,17],warn:3,warningpolici:3,wasn:10,weak:[1,3,4,7,8,9,10,11,13,14,15,16],websit:18,were:[6,15],weren:9,what:[5,13,14,15,18],when:[0,1,2,3,5,6,9,11,13,14,15,17],whenc:5,whenev:[2,13,17],where:[11,14,17],whether:[2,13,14,17],which:[0,1,2,3,6,8,11,13,14,15,17,18],whitespac:6,who:[2,16,17],whole:[5,14],whose:[14,15],width:[2,3,13],width_pixel:[2,3],wildcard:4,window:[2,3,4,6,11,14,16,17],window_s:[2,14,17],windowspip:11,winsock:11,wish:[2,13],within:[5,7,13,14],without:[2,3,9,13,14,17],won:[2,13,14],work:[0,2,4,9,13,14,16],workaround:14,would:[1,2,13,14,17],wrap:[2,3,11,12,14,15],wrapper:[2,17],writabl:[5,14],write:[0,2,5,6,8,9,10,11,12,14,17],write_private_kei:[0,8],write_private_key_fil:[0,8],writefil:14,writelin:[5,14],written:[2,3,5,10,14,17],wrong:14,www:13,x11:[2,13,17],xreadlin:[5,14],yet:[2,5,9,14,17],you:[1,2,3,9,13,14,16,17,18],your:[13,14,17],zero:[1,2,5,9,14]},titles:["SSH agents","Buffered pipes","Channel","Client","Configuration","Buffered files","Host keys / <code class=\"docutils literal\"><span class=\"pre\">known_hosts</span></code> files","GSS-API key exchange","Key handling","Message","Packetizer","Cross-platform pipe implementations","<code class=\"docutils literal\"><span class=\"pre\">ProxyCommand</span></code> support","Server implementation","SFTP","Exceptions","GSS-API authentication","Transport","Welcome to Paramiko’s documentation!"],titleterms:{"class":[8,18],"function":18,agent:0,api:[7,16,18],authent:[16,18],buffer:[1,5],channel:2,client:3,configur:4,core:18,cross:11,document:18,dsa:8,dss:8,ecdsa:8,except:15,exchang:7,file:[5,6],gss:[7,16],handl:8,host:6,implement:[11,13],kei:[6,7,8,18],known_host:6,messag:9,miscellani:18,other:18,packet:10,paramiko:18,parent:8,pipe:[1,11],platform:11,primari:18,protocol:18,proxycommand:12,rsa:8,server:13,sftp:14,ssh:[0,18],support:12,transport:17,welcom:18}}) \ No newline at end of file +Search.setIndex({envversion:47,filenames:["api/agent","api/buffered_pipe","api/channel","api/client","api/config","api/file","api/hostkeys","api/kex_gss","api/keys","api/message","api/packet","api/pipe","api/proxy","api/server","api/sftp","api/ssh_exception","api/ssh_gss","api/transport","index"],objects:{"paramiko.agent":{Agent:[0,1,1,""],AgentClientProxy:[0,1,1,""],AgentKey:[0,1,1,""],AgentLocalProxy:[0,1,1,""],AgentProxyThread:[0,1,1,""],AgentRemoteProxy:[0,1,1,""],AgentRequestHandler:[0,1,1,""],AgentServerProxy:[0,1,1,""]},"paramiko.agent.Agent":{close:[0,2,1,""],get_keys:[0,2,1,""]},"paramiko.agent.AgentClientProxy":{close:[0,2,1,""],connect:[0,2,1,""]},"paramiko.agent.AgentKey":{can_sign:[0,2,1,""],from_private_key:[0,2,1,""],from_private_key_file:[0,2,1,""],get_base64:[0,2,1,""],get_bits:[0,2,1,""],get_fingerprint:[0,2,1,""],verify_ssh_sig:[0,2,1,""],write_private_key:[0,2,1,""],write_private_key_file:[0,2,1,""]},"paramiko.agent.AgentLocalProxy":{get_connection:[0,2,1,""]},"paramiko.agent.AgentServerProxy":{close:[0,2,1,""],get_env:[0,2,1,""],get_keys:[0,2,1,""]},"paramiko.buffered_pipe":{BufferedPipe:[1,1,1,""],PipeTimeout:[1,4,1,""]},"paramiko.buffered_pipe.BufferedPipe":{"__len__":[1,2,1,""],"__weakref__":[1,3,1,""],close:[1,2,1,""],empty:[1,2,1,""],feed:[1,2,1,""],read:[1,2,1,""],read_ready:[1,2,1,""],set_event:[1,2,1,""]},"paramiko.buffered_pipe.PipeTimeout":{"__weakref__":[1,3,1,""]},"paramiko.channel":{Channel:[2,1,1,""],ChannelFile:[2,1,1,""],open_only:[2,5,1,""]},"paramiko.channel.Channel":{"__init__":[2,2,1,""],"__repr__":[2,2,1,""],active:[2,3,1,""],chanid:[2,3,1,""],close:[2,2,1,""],closed:[2,3,1,""],exec_command:[2,2,1,""],exit_status_ready:[2,2,1,""],fileno:[2,2,1,""],get_id:[2,2,1,""],get_name:[2,2,1,""],get_pty:[2,2,1,""],get_transport:[2,2,1,""],getpeername:[2,2,1,""],gettimeout:[2,2,1,""],invoke_shell:[2,2,1,""],invoke_subsystem:[2,2,1,""],makefile:[2,2,1,""],makefile_stderr:[2,2,1,""],recv:[2,2,1,""],recv_exit_status:[2,2,1,""],recv_ready:[2,2,1,""],recv_stderr:[2,2,1,""],recv_stderr_ready:[2,2,1,""],remote_chanid:[2,3,1,""],request_forward_agent:[2,2,1,""],request_x11:[2,2,1,""],resize_pty:[2,2,1,""],send:[2,2,1,""],send_exit_status:[2,2,1,""],send_ready:[2,2,1,""],send_stderr:[2,2,1,""],sendall:[2,2,1,""],sendall_stderr:[2,2,1,""],set_combine_stderr:[2,2,1,""],set_name:[2,2,1,""],setblocking:[2,2,1,""],settimeout:[2,2,1,""],shutdown:[2,2,1,""],shutdown_read:[2,2,1,""],shutdown_write:[2,2,1,""],transport:[2,3,1,""]},"paramiko.channel.ChannelFile":{"__repr__":[2,2,1,""]},"paramiko.client":{AutoAddPolicy:[3,1,1,""],MissingHostKeyPolicy:[3,1,1,""],RejectPolicy:[3,1,1,""],SSHClient:[3,1,1,""],WarningPolicy:[3,1,1,""]},"paramiko.client.MissingHostKeyPolicy":{"__weakref__":[3,3,1,""],missing_host_key:[3,2,1,""]},"paramiko.client.SSHClient":{"__init__":[3,2,1,""],close:[3,2,1,""],connect:[3,2,1,""],exec_command:[3,2,1,""],get_host_keys:[3,2,1,""],get_transport:[3,2,1,""],invoke_shell:[3,2,1,""],load_host_keys:[3,2,1,""],load_system_host_keys:[3,2,1,""],open_sftp:[3,2,1,""],save_host_keys:[3,2,1,""],set_log_channel:[3,2,1,""],set_missing_host_key_policy:[3,2,1,""]},"paramiko.config":{LazyFqdn:[4,1,1,""],SSHConfig:[4,1,1,""]},"paramiko.config.LazyFqdn":{"__weakref__":[4,3,1,""]},"paramiko.config.SSHConfig":{"__init__":[4,2,1,""],"__weakref__":[4,3,1,""],SETTINGS_REGEX:[4,3,1,""],get_hostnames:[4,2,1,""],lookup:[4,2,1,""],parse:[4,2,1,""]},"paramiko.dsskey":{DSSKey:[8,1,1,""]},"paramiko.dsskey.DSSKey":{generate:[8,6,1,""]},"paramiko.ecdsakey":{ECDSAKey:[8,1,1,""]},"paramiko.ecdsakey.ECDSAKey":{generate:[8,7,1,""]},"paramiko.file":{BufferedFile:[5,1,1,""]},"paramiko.file.BufferedFile":{"__iter__":[5,2,1,""],close:[5,2,1,""],flush:[5,2,1,""],next:[5,2,1,""],read:[5,2,1,""],readable:[5,2,1,""],readinto:[5,2,1,""],readline:[5,2,1,""],readlines:[5,2,1,""],seek:[5,2,1,""],seekable:[5,2,1,""],tell:[5,2,1,""],writable:[5,2,1,""],write:[5,2,1,""],writelines:[5,2,1,""],xreadlines:[5,2,1,""]},"paramiko.hostkeys":{HostKeyEntry:[6,1,1,""],HostKeys:[6,1,1,""]},"paramiko.hostkeys.HostKeyEntry":{from_line:[6,7,1,""],to_line:[6,2,1,""]},"paramiko.hostkeys.HostKeys":{"__init__":[6,2,1,""],add:[6,2,1,""],check:[6,2,1,""],clear:[6,2,1,""],hash_host:[6,6,1,""],load:[6,2,1,""],lookup:[6,2,1,""],save:[6,2,1,""]},"paramiko.kex_gss":{KexGSSGex:[7,1,1,""],KexGSSGroup14:[7,1,1,""],KexGSSGroup1:[7,1,1,""],NullHostKey:[7,1,1,""]},"paramiko.kex_gss.KexGSSGex":{"__weakref__":[7,3,1,""],parse_next:[7,2,1,""],start_kex:[7,2,1,""]},"paramiko.kex_gss.KexGSSGroup1":{"__weakref__":[7,3,1,""],parse_next:[7,2,1,""],start_kex:[7,2,1,""]},"paramiko.kex_gss.NullHostKey":{"__weakref__":[7,3,1,""]},"paramiko.message":{Message:[9,1,1,""]},"paramiko.message.Message":{"__init__":[9,2,1,""],"__repr__":[9,2,1,""],"__str__":[9,2,1,""],"__weakref__":[9,3,1,""],add:[9,2,1,""],add_adaptive_int:[9,2,1,""],add_boolean:[9,2,1,""],add_byte:[9,2,1,""],add_bytes:[9,2,1,""],add_int64:[9,2,1,""],add_int:[9,2,1,""],add_list:[9,2,1,""],add_mpint:[9,2,1,""],add_string:[9,2,1,""],asbytes:[9,2,1,""],get_adaptive_int:[9,2,1,""],get_binary:[9,2,1,""],get_boolean:[9,2,1,""],get_byte:[9,2,1,""],get_bytes:[9,2,1,""],get_int64:[9,2,1,""],get_int:[9,2,1,""],get_list:[9,2,1,""],get_mpint:[9,2,1,""],get_remainder:[9,2,1,""],get_so_far:[9,2,1,""],get_string:[9,2,1,""],get_text:[9,2,1,""],rewind:[9,2,1,""]},"paramiko.packet":{Packetizer:[10,1,1,""]},"paramiko.packet.Packetizer":{"__weakref__":[10,3,1,""],complete_handshake:[10,2,1,""],handshake_timed_out:[10,2,1,""],need_rekey:[10,2,1,""],read_all:[10,2,1,""],read_message:[10,2,1,""],readline:[10,2,1,""],send_message:[10,2,1,""],set_inbound_cipher:[10,2,1,""],set_keepalive:[10,2,1,""],set_log:[10,2,1,""],set_outbound_cipher:[10,2,1,""],start_handshake:[10,2,1,""]},"paramiko.pipe":{WindowsPipe:[11,1,1,""],make_or_pipe:[11,5,1,""]},"paramiko.pipe.WindowsPipe":{"__weakref__":[11,3,1,""]},"paramiko.pkey":{PKey:[8,1,1,""]},"paramiko.pkey.PKey":{"__cmp__":[8,2,1,""],"__init__":[8,2,1,""],"__weakref__":[8,3,1,""],asbytes:[8,2,1,""],can_sign:[8,2,1,""],from_private_key:[8,7,1,""],from_private_key_file:[8,7,1,""],get_base64:[8,2,1,""],get_bits:[8,2,1,""],get_fingerprint:[8,2,1,""],get_name:[8,2,1,""],sign_ssh_data:[8,2,1,""],verify_ssh_sig:[8,2,1,""],write_private_key:[8,2,1,""],write_private_key_file:[8,2,1,""]},"paramiko.proxy":{ProxyCommand:[12,1,1,""]},"paramiko.proxy.ProxyCommand":{"__init__":[12,2,1,""],recv:[12,2,1,""],send:[12,2,1,""]},"paramiko.rsakey":{RSAKey:[8,1,1,""]},"paramiko.rsakey.RSAKey":{generate:[8,6,1,""]},"paramiko.server":{InteractiveQuery:[13,1,1,""],ServerInterface:[13,1,1,""],SubsystemHandler:[13,1,1,""]},"paramiko.server.InteractiveQuery":{"__init__":[13,2,1,""],"__weakref__":[13,3,1,""],add_prompt:[13,2,1,""]},"paramiko.server.ServerInterface":{"__weakref__":[13,3,1,""],cancel_port_forward_request:[13,2,1,""],check_auth_gssapi_keyex:[13,2,1,""],check_auth_gssapi_with_mic:[13,2,1,""],check_auth_interactive:[13,2,1,""],check_auth_interactive_response:[13,2,1,""],check_auth_none:[13,2,1,""],check_auth_password:[13,2,1,""],check_auth_publickey:[13,2,1,""],check_channel_direct_tcpip_request:[13,2,1,""],check_channel_env_request:[13,2,1,""],check_channel_exec_request:[13,2,1,""],check_channel_forward_agent_request:[13,2,1,""],check_channel_pty_request:[13,2,1,""],check_channel_request:[13,2,1,""],check_channel_shell_request:[13,2,1,""],check_channel_subsystem_request:[13,2,1,""],check_channel_window_change_request:[13,2,1,""],check_channel_x11_request:[13,2,1,""],check_global_request:[13,2,1,""],check_port_forward_request:[13,2,1,""],enable_auth_gssapi:[13,2,1,""],get_allowed_auths:[13,2,1,""]},"paramiko.server.SubsystemHandler":{"__init__":[13,2,1,""],finish_subsystem:[13,2,1,""],get_server:[13,2,1,""],start_subsystem:[13,2,1,""]},"paramiko.sftp_attr":{SFTPAttributes:[14,1,1,""]},"paramiko.sftp_attr.SFTPAttributes":{"__init__":[14,2,1,""],"__str__":[14,2,1,""],"__weakref__":[14,3,1,""],from_stat:[14,7,1,""]},"paramiko.sftp_client":{SFTP:[14,1,1,""],SFTPClient:[14,1,1,""]},"paramiko.sftp_client.SFTPClient":{"__init__":[14,2,1,""],chdir:[14,2,1,""],chmod:[14,2,1,""],chown:[14,2,1,""],close:[14,2,1,""],file:[14,2,1,""],from_transport:[14,7,1,""],get:[14,2,1,""],get_channel:[14,2,1,""],getcwd:[14,2,1,""],getfo:[14,2,1,""],listdir:[14,2,1,""],listdir_attr:[14,2,1,""],listdir_iter:[14,2,1,""],lstat:[14,2,1,""],mkdir:[14,2,1,""],normalize:[14,2,1,""],open:[14,2,1,""],put:[14,2,1,""],putfo:[14,2,1,""],readlink:[14,2,1,""],remove:[14,2,1,""],rename:[14,2,1,""],rmdir:[14,2,1,""],stat:[14,2,1,""],symlink:[14,2,1,""],truncate:[14,2,1,""],unlink:[14,2,1,""],utime:[14,2,1,""]},"paramiko.sftp_file":{SFTPFile:[14,1,1,""]},"paramiko.sftp_file.SFTPFile":{check:[14,2,1,""],chmod:[14,2,1,""],chown:[14,2,1,""],close:[14,2,1,""],flush:[14,2,1,""],gettimeout:[14,2,1,""],next:[14,2,1,""],prefetch:[14,2,1,""],read:[14,2,1,""],readable:[14,2,1,""],readinto:[14,2,1,""],readline:[14,2,1,""],readlines:[14,2,1,""],readv:[14,2,1,""],seekable:[14,2,1,""],set_pipelined:[14,2,1,""],setblocking:[14,2,1,""],settimeout:[14,2,1,""],stat:[14,2,1,""],tell:[14,2,1,""],truncate:[14,2,1,""],utime:[14,2,1,""],writable:[14,2,1,""],write:[14,2,1,""],writelines:[14,2,1,""],xreadlines:[14,2,1,""]},"paramiko.sftp_handle":{SFTPHandle:[14,1,1,""]},"paramiko.sftp_handle.SFTPHandle":{"__init__":[14,2,1,""],chattr:[14,2,1,""],close:[14,2,1,""],read:[14,2,1,""],stat:[14,2,1,""],write:[14,2,1,""]},"paramiko.sftp_server":{SFTPServer:[14,1,1,""]},"paramiko.sftp_server.SFTPServer":{"__init__":[14,2,1,""],convert_errno:[14,6,1,""],set_file_attr:[14,6,1,""]},"paramiko.sftp_si":{SFTPServerInterface:[14,1,1,""]},"paramiko.sftp_si.SFTPServerInterface":{"__init__":[14,2,1,""],"__weakref__":[14,3,1,""],canonicalize:[14,2,1,""],chattr:[14,2,1,""],list_folder:[14,2,1,""],lstat:[14,2,1,""],mkdir:[14,2,1,""],open:[14,2,1,""],readlink:[14,2,1,""],remove:[14,2,1,""],rename:[14,2,1,""],rmdir:[14,2,1,""],session_ended:[14,2,1,""],session_started:[14,2,1,""],stat:[14,2,1,""],symlink:[14,2,1,""]},"paramiko.ssh_exception":{AuthenticationException:[15,4,1,""],BadAuthenticationType:[15,4,1,""],BadHostKeyException:[15,4,1,""],ChannelException:[15,4,1,""],NoValidConnectionsError:[15,4,1,""],PartialAuthentication:[15,4,1,""],PasswordRequiredException:[15,4,1,""],ProxyCommandFailure:[15,4,1,""],SSHException:[15,4,1,""]},"paramiko.ssh_exception.NoValidConnectionsError":{"__init__":[15,2,1,""]},"paramiko.ssh_exception.SSHException":{"__weakref__":[15,3,1,""]},"paramiko.ssh_gss":{"_SSH_GSSAPI":[16,1,1,""],"_SSH_GSSAuth":[16,1,1,""],"_SSH_SSPI":[16,1,1,""],GSSAuth:[16,5,1,""]},"paramiko.ssh_gss._SSH_GSSAPI":{"__init__":[16,2,1,""],credentials_delegated:[16,3,1,""],save_client_creds:[16,2,1,""],ssh_accept_sec_context:[16,2,1,""],ssh_check_mic:[16,2,1,""],ssh_get_mic:[16,2,1,""],ssh_init_sec_context:[16,2,1,""]},"paramiko.ssh_gss._SSH_GSSAuth":{"__init__":[16,2,1,""],"__weakref__":[16,3,1,""],set_service:[16,2,1,""],set_username:[16,2,1,""],ssh_check_mech:[16,2,1,""],ssh_gss_oids:[16,2,1,""]},"paramiko.ssh_gss._SSH_SSPI":{"__init__":[16,2,1,""],credentials_delegated:[16,3,1,""],save_client_creds:[16,2,1,""],ssh_accept_sec_context:[16,2,1,""],ssh_check_mic:[16,2,1,""],ssh_get_mic:[16,2,1,""],ssh_init_sec_context:[16,2,1,""]},"paramiko.transport":{SecurityOptions:[17,1,1,""],Transport:[17,1,1,""]},"paramiko.transport.SecurityOptions":{"__repr__":[17,2,1,""],ciphers:[17,3,1,""],compression:[17,3,1,""],digests:[17,3,1,""],kex:[17,3,1,""],key_types:[17,3,1,""]},"paramiko.transport.Transport":{"__init__":[17,2,1,""],"__repr__":[17,2,1,""],accept:[17,2,1,""],add_server_key:[17,2,1,""],atfork:[17,2,1,""],auth_gssapi_keyex:[17,2,1,""],auth_gssapi_with_mic:[17,2,1,""],auth_interactive:[17,2,1,""],auth_interactive_dumb:[17,2,1,""],auth_none:[17,2,1,""],auth_password:[17,2,1,""],auth_publickey:[17,2,1,""],cancel_port_forward:[17,2,1,""],close:[17,2,1,""],connect:[17,2,1,""],get_banner:[17,2,1,""],get_exception:[17,2,1,""],get_hexdump:[17,2,1,""],get_log_channel:[17,2,1,""],get_remote_server_key:[17,2,1,""],get_security_options:[17,2,1,""],get_server_key:[17,2,1,""],get_username:[17,2,1,""],getpeername:[17,2,1,""],global_request:[17,2,1,""],is_active:[17,2,1,""],is_authenticated:[17,2,1,""],load_server_moduli:[17,6,1,""],open_channel:[17,2,1,""],open_forward_agent_channel:[17,2,1,""],open_forwarded_tcpip_channel:[17,2,1,""],open_session:[17,2,1,""],open_sftp_client:[17,2,1,""],open_x11_channel:[17,2,1,""],renegotiate_keys:[17,2,1,""],request_port_forward:[17,2,1,""],send_ignore:[17,2,1,""],set_gss_host:[17,2,1,""],set_hexdump:[17,2,1,""],set_keepalive:[17,2,1,""],set_log_channel:[17,2,1,""],set_subsystem_handler:[17,2,1,""],start_client:[17,2,1,""],start_server:[17,2,1,""],use_compression:[17,2,1,""]},paramiko:{agent:[0,0,0,"-"],buffered_pipe:[1,0,0,"-"],channel:[2,0,0,"-"],client:[3,0,0,"-"],config:[4,0,0,"-"],dsskey:[8,0,0,"-"],ecdsakey:[8,0,0,"-"],file:[5,0,0,"-"],hostkeys:[6,0,0,"-"],kex_gss:[7,0,0,"-"],message:[9,0,0,"-"],packet:[10,0,0,"-"],pipe:[11,0,0,"-"],pkey:[8,0,0,"-"],proxy:[12,0,0,"-"],rsakey:[8,0,0,"-"],server:[13,0,0,"-"],sftp:[14,0,0,"-"],sftp_attr:[14,0,0,"-"],sftp_client:[14,0,0,"-"],sftp_file:[14,0,0,"-"],sftp_handle:[14,0,0,"-"],sftp_server:[14,0,0,"-"],sftp_si:[14,0,0,"-"],ssh_exception:[15,0,0,"-"],ssh_gss:[16,0,0,"-"],transport:[17,0,0,"-"]}},objnames:{"0":["py","module","Python module"],"1":["py","class","Python class"],"2":["py","method","Python method"],"3":["py","attribute","Python attribute"],"4":["py","exception","Python exception"],"5":["py","function","Python function"],"6":["py","staticmethod","Python static method"],"7":["py","classmethod","Python class method"]},objtypes:{"0":"py:module","1":"py:class","2":"py:method","3":"py:attribute","4":"py:exception","5":"py:function","6":"py:staticmethod","7":"py:classmethod"},terms:{"2fac":17,"__cmp__":8,"__init__":[2,3,4,6,8,9,12,13,14,15,16,17],"__iter__":5,"__len__":1,"__repr__":[2,9,17],"__str__":[9,14],"__weakref__":[1,3,4,7,8,9,10,11,13,14,15,16],"_flag":[5,14],"_sre":4,"_ssh_build_mic":16,"_ssh_gssapi":16,"_ssh_gssauth":16,"_ssh_sspi":16,"abstract":[0,2,8,11,14],"boolean":[9,13,16,17],"break":9,"byte":[0,1,2,5,6,8,9,10,14,16,17],"case":[2,3,13,14,15,17],"catch":[14,17],"char":[7,12],"class":[0,1,2,3,4,7],"default":[0,1,2,3,4,13,14,16,17],"float":[1,2,3,10,14,17],"function":[0,2,3,13],"import":[14,16],"int":[0,1,2,3,5,8,9,10,12,13,14,15,17],"long":[6,9,10,13,14,17],"new":[0,1,2,3,4,6,7,8,9,10,12,13,14,15,16,17],"null":[5,7,14],"public":[0,8,15,17,18],"return":[0,1,2,3,4,5,6,8,9,10,11,12,13,14,15,16,17],"short":13,"static":[6,8,14,17],"switch":[10,17],"true":[0,1,2,3,5,6,8,10,13,14,16,17],"try":[3,15,17],"void":[16,17],"while":[2,3,14],abil:14,abl:2,about:[13,14],abov:13,abruptli:14,absent:[5,14],absolut:[5,14],accept:[2,3,13,14,16,17],access:[5,13,14,15],accord:4,account:13,accur:[5,14],achiev:17,across:[2,13,14,17],act:[11,13,18],activ:[2,14,17],actual:[2,5,11,13,14,16,17],add:[1,3,5,6,9,13,14,17],add_adaptive_int:9,add_boolean:9,add_byt:9,add_int64:9,add_int:9,add_list:9,add_mpint:9,add_prompt:13,add_server_kei:17,add_str:9,addit:[14,17],address:[0,2,13,15,17],adequ:14,advers:17,affect:[2,11,14,17],after:[0,1,2,3,5,10,13,14,17],afterward:14,again:[2,13],against:3,agentclientproxi:0,agentforward:13,agentkei:0,agentlocalproxi:0,agentproxythread:0,agentremoteproxi:0,agentrequesthandl:0,agentserverproxi:0,agre:17,aka:[4,14],algorithm:[14,17],alia:[14,17],alias:14,aliv:17,all:[0,1,2,4,5,6,8,10,13,14,15,17],alloc:[13,17],allow:[2,13,14,15,17,18],allow_ag:3,allowed_typ:15,almost:[13,17],alreadi:[9,14],also:[2,13,14,17],alter:14,altern:14,alwai:[2,10,13,14,17],amount:[1,2,10],ani:[0,1,2,3,5,6,9,13,14,17],anoth:[1,2,8,9,12],answer:[13,17],anticip:14,anyth:[3,9,17],anytim:3,api:[2,3],apolog:14,appear:3,append:[5,14],appli:4,applic:[2,3,13],appropri:14,approxim:[5,14],arbitrari:[9,14,17],area:18,aren:[9,13],arg:2,arguabl:6,argument:[1,2,3,5,12,13,14,17],around:[2,5,17],arriv:[1,2,13,17],asbyt:[8,9],asid:13,ask:[0,2,3,13,14,17],aspect:3,assign:[13,17],associ:[2,6,13,14],assum:[1,5,10,13,14,15],asymmetr:8,asynchron:17,asyncor:2,atfork:17,atim:14,attach:[2,17],attack:17,attemp:14,attempt:[0,1,2,3,10,13,14,15,16,17],attr:14,attribut:[14,15],autent:17,auth:[2,3,13,17],auth_cooki:[2,13],auth_fail:13,auth_gssapi_keyex:17,auth_gssapi_with_m:17,auth_interact:17,auth_interactive_dumb:17,auth_method:16,auth_non:17,auth_partially_success:13,auth_password:17,auth_protocol:[2,13],auth_publickei:17,auth_success:13,authent:[0,2,3,7,13,15],authenticationexcept:[3,15,17],authhandl:13,author:14,autoaddpolici:3,autom:17,automat:[0,2,3,17],avail:[0,13,16],avoid:[2,14],back:[2,3,5,13,17],background:[2,14],backward:14,bad:2,badauthenticationtyp:[15,17],badhostkeyexcept:[3,15],banner:[3,17],banner_timeout:3,base64:[0,8],base:[0,5,8,9,10,14,17],basestr:17,basic:[2,18],battl:17,becaus:[2,5,13,14,15,16,17],been:[1,2,5,9,13,14,17],befor:[0,1,2,6,8,10,14,17],begin:[4,9,13,14,17],behav:[2,14,17],behavior:[2,13,14,17],belief:17,below:13,besid:17,betti:14,between:[0,12],binari:[0,5,8,14],bind:17,bit:[0,2,8,9,14],bitset:14,bizarr:14,blindli:13,blob:[0,8],block:[0,1,2,10,13,14,17],block_engin:10,block_siz:[10,14],book:10,bool:[2,3,9,10,13,14,16,17],both:[2,4,11,13,14,17],bother:6,boundari:14,buff:[5,14],buffered_pip:1,bufferedfil:[5,14],bufferedpip:1,bufsiz:[2,3,5,14],bug:6,build:9,built:[2,3,14],byte_count:17,bytearrai:[5,14],cach:[3,13],call:[0,1,2,3,5,6,10,13,14,16,17],callabl:[14,17],callback:[10,14],can:[0,1,2,3,4,5,6,8,9,10,11,12,13,14,17],can_sign:[0,8],cancel:[13,17],cancel_port_forward:17,cancel_port_forward_request:13,cannot:[8,14],canon:14,canonic:14,captur:15,care:[3,6,14],caus:[2,3,13,14,17],cc_file:13,cc_filenam:13,certain:17,certainli:13,cetain:13,challeng:13,chan:[0,2],chanclient:0,chang:[2,3,14,17],changelog:18,chanid:[2,13],channel:[0,1],channelexcept:15,channelfil:2,chanremot:0,charact:[2,3,5,9,13,14],charg:0,chattr:14,chdir:14,check:[2,3,5,6,10,13,14,16,18],check_auth_gssapi_keyex:13,check_auth_gssapi_with_m:13,check_auth_interact:13,check_auth_interactive_respons:13,check_auth_non:[13,17],check_auth_password:[13,17],check_auth_publickei:[13,17],check_channel_direct_tcpip_request:13,check_channel_env_request:13,check_channel_exec_request:13,check_channel_forward_agent_request:13,check_channel_pty_request:13,check_channel_request:[2,13,17],check_channel_shell_request:13,check_channel_subsystem_request:13,check_channel_window_change_request:13,check_channel_x11_request:13,check_global_request:13,check_port_forward_request:13,check_rekei:10,child:17,chmod:14,chown:14,chunk:14,cipher:[10,17],claim:17,classmethod:[6,8,14],clean:[0,17],cleanli:[14,17],cleanup:[13,14],clear:[1,6,11,17],client:[0,2],client_token:16,clone:0,close:[0,1,2,3,5,10,13,14,17],code:[2,13,14,15,17],collect:[2,3,14],com:[3,13,17],combin:[2,6,9,13],come:14,comma:[9,13],command:[0,2,3,12,13,15],command_lin:12,commandproxi:12,comment:6,common:[8,14],commonli:14,commun:[0,3,17],compar:8,compat:[0,8,14],complet:[2,10,13,14,17],complete_handshak:10,compress:[3,17],comput:[14,17],concaten:[9,14],concept:14,condit:[2,3],config:[4,15],confirm:14,conflict:3,confus:17,connect:[0,2,3,7,13,15,16,17],consid:[2,14],consist:14,constant:2,construct:17,constructor:[2,9,14,17],contact:0,contain:[0,2,4,5,8,9,13,14,16,17],content:[0,7,8,9,12,14,17,18],context:[2,3,12,14,16,17],contextu:13,continu:[2,13,14,17],control:[2,13,14,17,18],conveni:[2,4,14],convert:[14,17],convert_errno:14,cooki:[2,13],copi:14,core:[],correctli:[0,2,8],correspond:[8,13,14],corrupt:17,could:[2,3,9,10,14,16],couldn:0,count:[5,14],cover:18,creat:[0,2,3,4,6,8,9,12,13,14,16,17],creation:18,credentail:16,credenti:[3,7,13,15,16,17],credentials_deleg:16,criteria:17,cryptographi:8,current:[0,2,3,5,10,14,16,17],curv:8,custom:9,cycl:[13,14],danger:13,data:[0,1,2,5,6,8,10,13,14,17,18],databas:[3,17],deal:9,debian:17,debug:[2,9,17],decid:[13,18],declar:4,decod:9,decompos:9,decor:2,decrypt:[0,8],default_max_packet_s:17,default_window_s:[2,17],defin:[1,3,4,7,8,9,10,11,13,14,15,16],deleg:[3,7,13,16,17],delet:14,deliveri:2,demand:17,deni:17,depend:14,deprec:[5,14],der:16,describ:[4,15],descript:14,descriptor:2,desctruct:14,desir:[2,5,14,16,17],desired_mech:16,dest:14,dest_addr:17,destin:[13,14,17],destroi:14,detail:[14,17,18],determin:[2,13,14,17],determinist:9,develop:13,dialog:17,dict:[0,4,6,14,15],dictionari:6,did:[14,15],didn:[13,14],differ:[8,14,15,17],diffi:7,difficult:17,digest:17,dimens:13,direct:[2,14,17,18],directli:[2,3,17],directori:14,disabl:[2,3,17],disallow:2,discover:3,disk:14,displai:13,dispos:2,disrupt:17,distribut:17,doc:14,docstr:15,document:[],doe:[1,2,5,9,13,14,17],doesn:[2,5,6,9,14,16,17],don:[2,6,9,13,14,17],done:[1,3,10,13,17,18],down:[2,9],download:14,dramat:14,driven:12,dss:[],dsskei:[0,8,17],due:[3,14,17],dumb:17,dumber:17,dump:17,dure:[6,10,13,17],each:[3,4,13,14,17],eas:17,easi:14,ecdsakei:8,echo:[13,17],effect:[2,17],effici:[2,14],either:[2,3,6,11,13,14,16,18],elaps:[1,2],els:[2,5,6,13,14,17],empti:[0,1,5,6,13,14,17],emul:[2,3,14],enabl:13,enable_auth_gssapi:13,encod:[5,9,14,16],encount:[5,14,15],encrypt:[0,8,17,18],end:[0,2,4,5,11,13,14,17],enough:2,ensur:2,enter:17,entir:[2,5,14],entri:[2,4,6,14],env:13,environ:13,environn:0,eof:[2,5,13,14],eoferror:[10,17],epoch:14,equal:8,equival:[2,6,8,9,14],errno:[14,15],error:[0,2,3,6,7,8,13,14,15,16,17],escap:14,especi:14,establish:[0,3],etc:[2,9,14,15,17],even:[5,14],event:[1,11,17],ever:[2,10,17],everi:10,exactli:[2,13,14],examin:3,exampl:[0,2,3,8,13,14,15,17],exceedingli:13,except:[1,2,3,7],exchang:3,exec_command:[0,2,3],exectu:2,execut:[0,2,3,10,12,13],exist:[0,2,3,6,8,14,17],exit:[2,13],exit_status_readi:2,expandus:6,expans:4,expect:[0,2,6,14,15,17,18],expected_kei:15,explan:15,explicit:[3,4],explicitli:14,expos:[9,15],express:[1,2],extend:14,extens:[9,13,14,17],extra:[13,17],facto:4,factor:14,factori:[0,8],fail:[2,3,5,13,15,16,17],failur:[3,13,14,15,17],fake:[0,2],fallback:17,fals:[0,1,2,3,5,6,8,10,13,14,16,17],famili:15,far:14,faster:2,featur:[9,14],fed:1,feed:1,feeder:1,fetch:[2,9,14,17],few:10,fewer:14,fget:[5,14],field:[14,17],file:[0,1,2,3,4],file_obj:[0,4,8],file_s:14,filenam:[0,3,6,8,13,14,17],fileno:2,filesystem:14,fill:[2,8,14],find:[0,2,3,6,14],fine:[4,14],fingerprint:[0,8],finish:[2,13,18],finish_subsystem:13,firewal:17,first:[2,4,5,14,17],fit:17,flag:[5,14],flag_binari:[5,14],flow:[2,18],flush:[2,5,14],folder:14,follow:[2,3,13,14,17,18],foo:14,forc:[5,14,17],forev:[1,13,17],fork:[12,17],form:[6,14,16,17],format:[0,4,6,8,9,14],forward:[0,2,13,17],forward_agent_handl:0,found:[0,3,6,14,15],fqdn:[4,16],from:[0,1,2,3,4,5,6,8,9,10,12,13,14,15,16,17],from_lin:6,from_private_kei:[0,8],from_private_key_fil:[0,8],from_stat:14,from_transport:14,fseek:5,full:14,func:[2,14,17],further:[2,13],futur:[1,2,5,13,14],garbag:[2,3],gener:[1,2,4,8,13,14,15,16,17],gentoo:17,get:[2,3,14,16,17],get_adaptive_int:9,get_allowed_auth:[13,17],get_bann:17,get_base64:[0,8],get_binari:9,get_bit:[0,8],get_boolean:9,get_byt:9,get_channel:14,get_connect:0,get_env:0,get_except:17,get_fingerprint:[0,8],get_hexdump:17,get_host_kei:3,get_hostnam:4,get_id:[2,13],get_int64:9,get_int:9,get_kei:0,get_list:9,get_log_channel:17,get_mpint:9,get_nam:[2,8,17],get_pti:[2,3],get_remaind:9,get_remote_server_kei:17,get_security_opt:17,get_serv:13,get_server_kei:17,get_so_far:9,get_str:9,get_text:9,get_transport:[0,2,3],get_usernam:17,getcwd:14,getfo:14,getpeernam:[2,17],gettimeout:[2,14],gid:14,git:0,give:17,given:[0,1,2,3,4,6,8,13,14,15,16,17],global:[13,17],global_request:17,gmt:14,goe:14,good:[3,13,14,17],got_kei:15,grant:13,greater:14,group14:7,group:[7,14,17],gss:3,gss_auth:[3,17],gss_authent:13,gss_deleg_cr:[3,16,17],gss_host:[3,17],gss_kex:[3,16,17],gssapi:[13,16,17],gssauth:16,gssexcept:16,guarante:15,habit:2,had:[9,17],half:17,halv:2,hand:0,handi:14,handl:0,handler:[2,13,14,17],handshak:10,handshake_timed_out:10,hang:[2,3,14],happen:[5,17],hasattr:14,hash:[6,14,17],hash_algorithm:14,hash_host:6,hasn:2,have:[1,2,5,6,9,13,14,17,18],haven:[9,14,17],hazmat:8,height:[2,3,13],height_pixel:[2,3],held:0,hellman:7,helper:[0,14],here:13,hex:17,hexadecim:2,hexdump:17,high:[3,18],hint:14,hit:[5,14,17],home:14,hook:13,host:[0,3,4],hostkei:[3,6,17],hostkeyentri:6,hostnam:[3,4,6,15,16,17],how:[2,9,12,14,18],howev:14,http:[0,13],hundr:2,id_dsa:3,id_ecdsa:3,id_rsa:3,idea:[5,13,14],ident:[2,5,9,14],identifi:13,ignor:[5,14,17],immedi:[1,2,5,14,17],implement:[0,3,7,9],impli:[14,15],importerror:16,imposs:11,improv:14,inbound:10,includ:[5,6,13,14,17,18],incom:[2,7,17],incompat:0,incomplet:[5,14],incorrect:17,increment:14,indefinit:[2,13],independ:2,indic:[1,13,14,17],indistinguish:2,individu:[6,14],infinit:9,info:[14,17,18],inform:[4,13,14,17],initi:[0,2,16],input:[3,5,12,14],instanc:[2,3,8,12,14,15,17],instanti:0,instantli:2,instead:[3,5,12,14],instruct:[13,17],integ:[9,14],intend:[5,14],interact:[2,3,13,14,17],interactivequeri:13,interest:18,interfac:[0,2,3,5,12,13,14],intern:[5,14,15],internet:14,interpret:[2,3,13],interv:[10,17],invalid:[0,8],invok:[2,3,13],invoke_shel:[2,3],invoke_subsystem:2,ioerror:[0,3,5,6,8,14],ip_address:13,ipv4:15,irrit:2,is_act:[13,17],is_authent:17,isn:[2,3,13,15,17],issu:14,item:[9,13],iter:[5,14],itself:[5,14],januari:14,judg:[0,8],junk:17,just:[6,9,13,14,16,17],keep:[10,17],keepal:[10,17],kei:[0,3,4],kept:[5,14,17],kerbero:[3,13,16,17],kex:17,kex_gss:[7,13],kexgssgex:7,kexgssgroup14:7,kexgssgroup1:7,key_filenam:3,key_typ:17,keyboard:[13,17],keyex:16,keytyp:6,keyword:[14,17],kind:[2,3,13,17,18],know:17,knowledg:2,known:[3,6,9,13,14,17],krb5:[13,16],krb5_kuserok:13,krb5_princip:13,kwarg:[2,14,17],kwd:2,larg:[2,10,14,17],larger:2,last:[2,3,14,17],latenc:14,later:[8,14,17],latter:13,launch:0,lazyfqdn:4,lead:6,least:[1,2,10],left:3,len:[5,14,17],length:[1,2,5,9,12,14,16],less:[2,5,14],level:[2,3,9,11,14,17,18],librari:13,like:[0,2,3,4,5,6,8,11,12,13,14,15,17,18],line:[5,6,10,14,15],lineno:6,link:[14,17],linux:13,list:[0,1,3,4,5,7,8,9,10,11,13,14,15,16,17],list_fold:14,listdir:14,listdir_attr:14,listdir_it:14,listen:[13,17],liter:4,littl:14,live:[0,17],load:[3,6,13,17],load_host_kei:3,load_server_moduli:17,load_system_host_kei:3,local:[0,2,3,13,14,17],localpath:14,locat:17,lock:10,log:[3,10,13,17],logfil:2,logic:[13,15],login:16,longer:[2,17],longnam:14,look:[4,6],look_for_kei:3,lookup:[4,6],loop:13,lost:0,low:9,lower:3,lowercas:4,lstat:14,mac_engin:10,mac_kei:10,mac_siz:10,machin:[0,12],machineri:14,made:[2,3,4,8,13,14,15,17],magic:[0,2,8],mai:[0,1,2,3,5,9,11,12,13,14,15,17,18],main:18,maintain:18,make:[2,11,12,13,14,17],make_or_pip:11,makefil:2,makefile_stderr:2,malici:14,man:[4,13],manag:[2,3,12,14,17],mangl:10,mani:[2,7,12,14,17],manipul:3,manual:0,map:14,mask:14,match:[4,5,14,15,18],max:[14,17],max_packet_s:[14,17],maximum:[1,2,5,14],md5:[0,8,14],mean:[1,2,14],meant:[2,14,17],mechan:[3,16],memor:2,merg:[3,6],messag:[0,7],method:[0,1,2,3,6,7,8,9,13,14,16,17],mic:[16,17],mic_token:16,microsoft:16,might:[13,14,17],mimic:14,mimick:14,mirror:14,misguid:17,miss:[3,14],missing_host_kei:3,missinghostkeypolici:3,mit:[2,16],mix:[5,14],mkdir:14,mode:[2,5,7,13,14,16,17],modif:14,modifi:[3,14,17],modul:[2,7,14,16,17],moduli:17,more:[1,2,4,6,13,14,15,17,18],most:[0,3,5,14,15],mostli:[0,2,14],move:[5,14],movement:5,mp3:13,mp3handler:13,mpint:9,msg:[0,8,13],mtime:14,much:[2,13,14],multi:17,multipl:[3,6,13,14,15,17],multiplex:17,must:[2,3,6,11,13,14,17],name:[0,2,3,5,6,8,13,14,16,17],nat:17,nbyte:[1,2],nearli:11,necessari:[0,2,8,10,14],need:[0,1,2,9,10,12,13,15,17,18],need_rekei:10,needrekeyexcept:10,neg:[5,14,17],negot:17,negoti:[6,10,14,15,16,17,18],network:[2,17],never:[2,17],newli:14,newlin:[5,6,14],newpath:14,next:[5,7,9,14,17],nois:17,non:[2,5,8,9,14,16],none:[0,1,2,3,4,5,6,8,9,13,14,15,16,17],nonneg:[1,2],normal:[1,2,4,9,11,14,15,17],normpath:14,notat:14,note:[2,13,14,16],noth:[0,2,5,8,13,14],notic:[2,13],notimplementederror:16,novalidconnectionserror:15,now:13,nullhostkei:7,number:[0,1,2,5,8,9,10,13,14,16,17],numer:14,o_append:14,o_creat:14,o_excl:14,o_rdonli:14,o_rdwr:14,o_trunc:14,o_wronli:14,obei:[1,14],obj:[9,14],object:[0,1,2,3,4,5,6,7,8,9,10,11,13,14,15,16,17,18],obscur:17,obtain:[0,4],obviou:14,occasion:14,occur:[0,2,3,5,7,14],octal:14,off:[10,14,17],offset:[5,14],often:[3,17],oid:16,okai:[5,10,13,14],old:3,oldpath:14,omit:[2,5,14],onc:[1,2,13,14,17,18],onli:[2,3,4,5,8,9,10,11,13,14,15,16,17],open:[0,2,3,5,13,14,15,17],open_channel:17,open_failed_administratively_prohibit:13,open_failed_connect_fail:13,open_failed_resource_shortag:13,open_failed_unknown_channel_typ:13,open_forward_agent_channel:17,open_forwarded_tcpip_channel:17,open_onli:2,open_sess:[0,17],open_sftp:3,open_sftp_cli:17,open_succeed:13,open_x11_channel:[13,17],openssh:[2,3,4,6,14,17],oper:[0,1,2,5,14,17],option:[0,1,2,3,4,5,6,8,13,14,17],order:[3,6,14,17],organ:18,origin:[6,13,14,17],origin_addr:17,origin_port:17,oserror:14,other:[0,2,3,15],otherwis:[0,1,2,6,8,13,14,16,17],out:[1,5,9,10,14],outbound:[2,10],outgo:2,output:[2,3,12,15],outsid:14,over:[2,5,14,17,18],overal:14,overrid:[3,13,14,17],overridden:14,overwrit:13,own:[5,13],owner:14,ownership:14,packet:7,page:[4,13],pair:[0,6],paket:7,pam:17,param:[2,14],paramet:[0,1,2,3,4,5,6,7,8,9,10,12,13,14,15,16,17],paramiko:[0,1,2,3,4,7,9,11,12,13,15],pars:[4,6,7,9],parse_next:7,part:[0,1,2,8,17],partial:[2,14,15,17],partialauthent:15,particular:2,partit:14,pass:[2,3,8,9,10,12,13,14,17,18],password:[0,3,8,13,15,17,18],passwordrequiredexcept:[0,8,15],past:14,path:[6,13,14,17],pathnam:14,pattern:4,paus:17,payload:17,pend:[2,10,14],peopl:[2,9],per:14,perform:[2,3,13,14,16,17],period:[1,2],permiss:[14,17],permit:17,peroid:17,pick:[13,17],pipelin:14,pipetimeout:1,pixel:[2,3,13],pixelheight:13,pixelwidth:13,pkei:[0,3,6,8,13,15,17],place:13,plain:[3,17],plattform:13,pleas:18,plu:3,point:0,polici:3,poll:2,popen:12,port:[0,2,3,4,13,15,17],posit:[5,9,14],posix:[3,4,6,14,17],possibl:[2,5,6,10,12,13,14,15,17],practic:3,pre:[3,14],precis:9,predat:[5,14],prefer:[13,17],prefetch:14,prematur:17,presenc:14,presens:14,present:[2,3,5,14,15],preserv:6,pretti:17,previou:[2,13,17],previous:[2,3,13,14,17],primari:[0,13],primarili:[2,4,14],prime:17,primit:8,princip:13,print:17,prior:[1,2],prioriti:3,privat:[0,3,8,15,17,18],probabl:[3,13,14],problem:2,proce:2,process:[0,2,4,10,13,17],produc:[5,14],program:12,progress_func:8,project:18,prompt:[13,17],prompt_list:17,protocol:[0,2,13,15],provid:[2,3,4,7,13,14,15,16,18],proxi:[0,12,14,15],proxycommandfailur:15,pseudo:[2,3,13,16],psuedo:13,pty:[2,13],ptype:7,publickei:[13,15],put:14,putfo:14,pycrypto:[],python:[0,2,3,5,8,9,10,13,14,16,18],queri:[4,13],question:[13,17],queu:2,queue:[2,17],quickli:14,race:3,rais:[0,1,2,3,5,6,8,10,14,15,16,17],random:[2,5,14,17],rare:17,rather:17,raw:9,reach:[1,5,10,14],read:[0,1,2,3,4,5,6,8,10,11,12,14,17],read_ahead:14,read_al:10,read_messag:10,read_readi:1,readabl:[5,11,14],readfil:14,readi:[1,2],readinto:[5,14],readlin:[5,10,14],readlink:14,readv:14,real:[2,11,15],realli:[2,9,14],realpath:14,reason:[13,15],receiv:[1,2,3,12,16,17,18],recent:17,recogn:[0,8,17],recommend:2,recv:[2,12,17],recv_exit_statu:2,recv_readi:2,recv_stderr:2,recv_stderr_readi:2,recv_token:16,refer:[1,3,4,7,8,9,10,11,13,14,15,16,17],reflect:2,refus:[13,17],regener:9,regist:13,regular:12,reject:[2,3,13,17],rejectpolici:3,rekei:10,rel:[0,5,8,14],reli:3,remain:[2,5,9,14],remaind:14,remot:[0,2,3,13,14,17,18],remote_chanid:2,remotepath:14,remov:[6,14],renam:14,renegoti:17,renegotiate_kei:17,replac:[2,3,6],report:13,repositori:0,repres:[0,1,2,3,7,8,14,15,17],represent:[2,3,4,6,8,9,14,17],request:[0,2,3,4,13,14,17,18],request_forward_ag:[0,2],request_port_forward:17,request_x11:2,requir:[2,3,7,13,14,17],reset:10,resiz:[2,13],resize_pti:2,resolut:15,resolv:14,respect:14,respond:[13,17],respons:[2,13,14,17,18],restrict:14,result:[1,2,13,14],retreiv:0,retri:15,retriev:[2,13,14],reus:2,reusabl:5,reveal:[0,8,14],rewind:9,rfc:[2,7,16],rich:14,right:2,rmdir:14,round:[5,14],roundtrip:14,rout:13,rsa:[],rsakei:[0,8,17],rsync:14,rtype:9,rule:4,run:[0,2,3,12,13],safe:17,sai:[7,17],sake:14,salt:6,same:[2,3,13,14,15,17],sampl:17,save:[3,6,16,17],save_client_cr:16,save_host_kei:3,saver:14,screen:[2,13],screen_numb:[2,13],sdctr:10,search:3,second:[1,2,3,10,14,17],secp256r1:8,secret:[0,8],section:[4,7,14],secur:[0,2,8,14,17],securityopt:17,see:[0,3,13,14,15,16,17,18],seek:[5,14],seekabl:[5,14],segment:14,select:[2,11],self:[5,14],semant:[1,2],send:[2,6,12,13,17,18],send_exit_statu:2,send_ignor:17,send_messag:10,send_readi:2,send_stderr:2,sendal:2,sendall_stderr:2,sens:[2,13],sent:[2,12,13,17],separ:[1,4,5,9,13,14,17],seq:9,sequenc:[5,9,14,16],seri:[13,14],serv:14,server:[0,2,3,7,12],server_addr:17,server_port:17,serverinterfac:[2,13,14,17],servic:[13,16],session:[0,2,3,13,14,16,17,18],session_end:14,session_id:16,session_start:14,set:[1,2,3,4,5,10,11,13,14,16,17],set_combine_stderr:2,set_ev:1,set_file_attr:14,set_gss_host:17,set_hexdump:17,set_inbound_ciph:10,set_keepal:[10,17],set_log:10,set_log_channel:[3,17],set_missing_host_key_polici:3,set_nam:2,set_outbound_ciph:10,set_pipelin:14,set_servic:16,set_subsystem_handl:[13,14,17],set_usernam:16,setblock:[2,14],setter:[16,17],settimeout:[2,3,14,17],settings_regex:4,setup:14,sftp:[2,3,13],sftp_:14,sftp_attr:14,sftp_client:14,sftp_eof:14,sftp_file:14,sftp_handl:14,sftp_no_such_fil:14,sftp_ok:14,sftp_permission_deni:14,sftp_server:14,sftp_si:14,sftpattribut:14,sftpclient:[3,14,17],sftpfile:14,sftphandl:14,sftpserver:14,sftpserverinterfac:14,sha1:14,sha:14,share:[16,17],shell:[2,3,13],shortcut:[14,17],should:[0,2,3,4,6,8,10,12,13,14,17],shouldn:[2,13],show:2,shrink:14,shut:2,shutdown:[2,3],shutdown_read:2,shutdown_writ:2,side:[0,2,13,14,17,18],sign:[0,8,17],sign_ssh_data:8,signal:10,signatur:[0,2,8,13,18],signifi:14,signific:[0,8],signtatur:13,similar:[13,14],similarli:2,simpl:17,simpler:[5,17],simpli:[0,2,3,17],simul:2,sinc:[4,5,14,17],singl:[2,6,9,13,14,15,16,17],single_connect:[2,13],site:18,situat:[2,3,14,17],size:[3,5,12,14,17],sizehint:[5,14],slack:14,sleep:13,slightli:2,small:[2,13],sock:[3,14,17],socket:[0,1,2,3,10,11,12,14,15,17,18],some:[2,3,5,9,13,14,15,17],someth:[13,14,17],sometim:17,sort:2,sourc:[14,17],space:2,speak:0,special:14,specif:[3,4,13,14,15,17],specifi:[1,2,5,13,14,15,16,17],speed:14,split:6,src_addr:17,sre_pattern:4,ssh2:[2,8,9,15,16,17],ssh_accept_sec_context:16,ssh_auth_sock:0,ssh_check_mech:16,ssh_check_mic:16,ssh_config:4,ssh_except:15,ssh_fxp_readdir:14,ssh_get_mic:16,ssh_gss:[13,16],ssh_gss_oid:16,ssh_init_sec_context:16,sshclient:[0,3,18],sshconfig:4,sshexcept:[0,2,3,8,10,14,15,16,17],sspi:[7,16,17],st_atim:14,st_gid:14,st_mode:14,st_mtime:14,st_size:14,st_uid:14,stage:17,stall:2,standard:[4,12,14,17],start:[3,7,10,13,14,17,18],start_client:[17,18],start_handshak:10,start_kex:7,start_serv:[17,18],start_subsystem:13,stat:14,state:[6,13],statist:14,statu:[2,10],stderr:[2,3,13],stdin:[2,3,13],stdio:[5,14],stdout:[2,3,13,17],step:17,still:[13,17],stop:[2,14,17],stopiter:[5,14],store:[0,4,6,8,14,15,16,17],str:[0,1,2,3,4,5,6,8,9,10,12,13,14,15,16,17],stream:[2,3,5,9,17],string:[0,1,2,4,5,6,8,9,12,13,14,16,17],structur:[3,14],style:[3,5,6,14],sub:17,subclass:[0,2,3,8,13,14,15,17],submethod:[13,17],subprocess:12,subsequ:[2,17],substitut:4,subsystem:[2,13,14,17],subsystemhandl:[13,14,17],subsytem:13,succe:[0,2,13,14,17],succeed:15,success:[13,14,16,17],successfulli:[13,17],suffic:14,suffici:2,suitabl:[8,17],suppli:[13,17],support:[4,7,9],sure:13,surpris:2,swap:17,symbol:14,symlink:14,symmetr:17,synchron:1,system:[3,14,17],tabl:[6,18],take:[3,13],taken:6,talk:12,target:[3,14,16,17],target_path:14,task:3,tcp:[3,13,17],tcpip:17,tell:[5,10,14],term:[2,3,13],termin:[0,2,3,7,13,17],terminolog:8,test:17,text:[5,6,14,15,17],than:[2,14,17],thei:[2,3,5,8,9,13,14,17],them:[2,3,5,13,14,17],themselv:3,thi:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18],thing:14,those:[3,14,17],thread:[0,1,2,10,13,14,17],through:[0,2,3,8,13,14],thrown:[0,7,8,14,15,17],thu:[3,7,14,15,17],time:[2,3,6,10,14],timeout:[1,2,3,10,14,17],timer:10,titl:17,to_lin:6,togeth:[11,14],token:[16,17],too:[2,4,13,14],top:14,total:[5,14],traffic:[12,17],traffix:17,trail:[5,6,14],transfer:[14,17],translat:14,transmit:2,transport:[0,2,3,7,12,13],trap:14,travers:17,treat:[5,6,14],trigger:[10,11,17],trivial:[9,11],truncat:14,trust:17,tunnel:[2,13,17],tupl:[0,3,13,14,15,17],turn:[3,5,10,14,17],tweak:17,two:[0,2,11,17],type:[0,2,3,5,6,7,8,9,13,14,15,16,17],typeerror:17,typic:[3,5,14],uid:14,umask:14,unabl:2,undefin:17,under:0,underii:14,underli:[3,5,13,14,15,17],undon:5,unfortun:6,unheard:9,unicod:14,unifi:15,uniqu:[2,13],unix:[0,2,13,14,16],unknown:[3,13,17],unless:[2,13],unlik:[2,5,14],unlink:14,unlock:[3,15],unopen:2,unprint:9,unsign:9,until:[2,14,17],unus:8,upload:14,upon:[0,17],usag:18,use_compress:17,useless:[0,8,13],user:[3,4,13,16,17,18],usernam:[0,3,13,16,17],usual:[2,6,13,14,17],utf:[5,14],utim:14,val:8,valid:[2,6,13],validate_point:8,valu:[1,2,4,9,10,13,14,15,16,17],valueerror:[5,17],vari:14,variabl:[0,4,13,15,16],variou:14,veri:17,verif:[17,18],verifi:[0,2,3,6,8,13,14,16,17],verify_ssh_sig:[0,8],version:[2,3,4,6,7,13,14,15,16,17],via:[2,3,4,13,14,17],vt100:[2,3,13],wai:[2,3,11,13,14,17],wait:[1,2,3,10,14,17],want:[0,2,3,13,14,17],warn:3,warningpolici:3,wasn:10,weak:[1,3,4,7,8,9,10,11,13,14,15,16],websit:18,were:[6,15],weren:9,what:[5,13,14,15,18],when:[0,1,2,3,5,6,9,11,13,14,15,17],whenc:5,whenev:[2,13,17],where:[11,14,17],whether:[2,13,14,17],which:[0,1,2,3,6,8,11,13,14,15,17,18],whitespac:6,who:[2,16,17],whole:[5,14],whose:[14,15],width:[2,3,13],width_pixel:[2,3],wildcard:4,window:[2,3,4,6,11,14,16,17],window_s:[2,14,17],windowspip:11,winsock:11,wish:[2,13],within:[5,7,13,14],without:[2,3,9,13,14,17],won:[2,13,14],work:[0,2,4,9,13,14,16],workaround:14,would:[1,2,13,14,17],wrap:[2,3,11,12,14,15],wrapper:[2,17],writabl:[5,14],write:[0,2,5,6,8,9,10,11,12,14,17],write_private_kei:[0,8],write_private_key_fil:[0,8],writefil:14,writelin:[5,14],written:[2,3,5,10,14,17],wrong:14,www:13,x11:[2,13,17],xreadlin:[5,14],yet:[2,5,9,14,17],you:[1,2,3,9,13,14,16,17,18],your:[3,13,14,17],zero:[1,2,5,9,14]},titles:["SSH agents","Buffered pipes","Channel","Client","Configuration","Buffered files","Host keys / <code class=\"docutils literal\"><span class=\"pre\">known_hosts</span></code> files","GSS-API key exchange","Key handling","Message","Packetizer","Cross-platform pipe implementations","<code class=\"docutils literal\"><span class=\"pre\">ProxyCommand</span></code> support","Server implementation","SFTP","Exceptions","GSS-API authentication","Transport","Welcome to Paramiko’s documentation!"],titleterms:{"class":[8,18],"function":18,agent:0,api:[7,16,18],authent:[16,18],buffer:[1,5],channel:2,client:3,configur:4,core:18,cross:11,document:18,dsa:8,dss:8,ecdsa:8,except:15,exchang:7,file:[5,6],gss:[7,16],handl:8,host:6,implement:[11,13],kei:[6,7,8,18],known_host:6,messag:9,miscellani:18,other:18,packet:10,paramiko:18,parent:8,pipe:[1,11],platform:11,primari:18,protocol:18,proxycommand:12,rsa:8,server:13,sftp:14,ssh:[0,18],support:12,transport:17,welcom:18}}) \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/paramiko/_version.py new/paramiko-2.0.1/paramiko/_version.py --- old/paramiko-2.0.0/paramiko/_version.py 2016-04-29 07:16:24.000000000 +0200 +++ new/paramiko-2.0.1/paramiko/_version.py 2016-06-21 22:33:03.000000000 +0200 @@ -1,2 +1,2 @@ -__version_info__ = (2, 0, 0) +__version_info__ = (2, 0, 1) __version__ = '.'.join(map(str, __version_info__)) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/paramiko/buffered_pipe.py new/paramiko-2.0.1/paramiko/buffered_pipe.py --- old/paramiko-2.0.0/paramiko/buffered_pipe.py 2016-04-24 22:14:55.000000000 +0200 +++ new/paramiko-2.0.1/paramiko/buffered_pipe.py 2016-06-12 20:20:48.000000000 +0200 @@ -70,11 +70,20 @@ :param threading.Event event: the event to set/clear """ - self._event = event - if len(self._buffer) > 0: - event.set() - else: - event.clear() + self._lock.acquire() + try: + self._event = event + # Make sure the event starts in `set` state if we appear to already + # be closed; otherwise, if we start in `clear` state & are closed, + # nothing will ever call `.feed` and the event (& OS pipe, if we're + # wrapping one - see `Channel.fileno`) will permanently stay in + # `clear`, causing deadlock if e.g. `select`ed upon. + if self._closed or len(self._buffer) > 0: + event.set() + else: + event.clear() + finally: + self._lock.release() def feed(self, data): """ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/paramiko/client.py new/paramiko-2.0.1/paramiko/client.py --- old/paramiko-2.0.0/paramiko/client.py 2016-04-29 07:10:31.000000000 +0200 +++ new/paramiko-2.0.1/paramiko/client.py 2016-06-17 23:42:24.000000000 +0200 @@ -382,6 +382,12 @@ def close(self): """ Close this SSHClient and its underlying `.Transport`. + + .. warning:: + Failure to do this may, in some situations, cause your Python + interpreter to hang at shutdown (often due to race conditions). + It's good practice to `close` your client objects anytime you're + done using them, instead of relying on garbage collection. """ if self._transport is None: return diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/paramiko/packet.py new/paramiko-2.0.1/paramiko/packet.py --- old/paramiko-2.0.0/paramiko/packet.py 2016-04-29 07:16:24.000000000 +0200 +++ new/paramiko-2.0.1/paramiko/packet.py 2016-06-21 22:33:03.000000000 +0200 @@ -103,6 +103,10 @@ self.__handshake_complete = False self.__timer_expired = False + @property + def closed(self): + return self.__closed + def set_log(self, log): """ Set the Python log object to use for logging. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/paramiko/transport.py new/paramiko-2.0.1/paramiko/transport.py --- old/paramiko-2.0.0/paramiko/transport.py 2016-04-29 07:16:24.000000000 +0200 +++ new/paramiko-2.0.1/paramiko/transport.py 2016-06-21 22:33:03.000000000 +0200 @@ -58,7 +58,7 @@ from paramiko.message import Message from paramiko.packet import Packetizer, NeedRekeyException from paramiko.primes import ModulusPack -from paramiko.py3compat import string_types, long, byte_ord, b, input +from paramiko.py3compat import string_types, long, byte_ord, b, input, PY2 from paramiko.rsakey import RSAKey from paramiko.ecdsakey import ECDSAKey from paramiko.server import ServerInterface @@ -1533,8 +1533,23 @@ def stop_thread(self): self.active = False self.packetizer.close() - while self.is_alive() and (self is not threading.current_thread()): - self.join(10) + if PY2: + # Original join logic; #520 doesn't appear commonly present under + # Python 2. + while self.is_alive() and self is not threading.current_thread(): + self.join(10) + else: + # Keep trying to join() our main thread, quickly, until: + # * We join()ed successfully (self.is_alive() == False) + # * Or it looks like we've hit issue #520 (socket.recv hitting some + # race condition preventing it from timing out correctly), wherein + # our socket and packetizer are both closed (but where we'd + # otherwise be sitting forever on that recv()). + while ( + self.is_alive() and self is not threading.current_thread() + and not self.sock._closed and not self.packetizer.closed + ): + self.join(0.1) ### internals... diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/paramiko.egg-info/PKG-INFO new/paramiko-2.0.1/paramiko.egg-info/PKG-INFO --- old/paramiko-2.0.0/paramiko.egg-info/PKG-INFO 2016-04-29 07:17:33.000000000 +0200 +++ new/paramiko-2.0.1/paramiko.egg-info/PKG-INFO 2016-06-21 22:33:23.000000000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 1.0 Name: paramiko -Version: 2.0.0 +Version: 2.0.1 Summary: SSH2 protocol library Home-page: https://github.com/paramiko/paramiko/ Author: Jeff Forcier diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/paramiko.egg-info/SOURCES.txt new/paramiko-2.0.1/paramiko.egg-info/SOURCES.txt --- old/paramiko-2.0.0/paramiko.egg-info/SOURCES.txt 2016-04-29 07:17:33.000000000 +0200 +++ new/paramiko-2.0.1/paramiko.egg-info/SOURCES.txt 2016-06-21 22:33:23.000000000 +0200 @@ -68,6 +68,7 @@ docs/_static/comment-bright.png docs/_static/comment-close.png docs/_static/comment.png +docs/_static/custom.css docs/_static/doctools.js docs/_static/down-pressed.png docs/_static/down.png diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/tests/loop.py new/paramiko-2.0.1/tests/loop.py --- old/paramiko-2.0.0/tests/loop.py 2014-09-07 01:07:24.000000000 +0200 +++ new/paramiko-2.0.1/tests/loop.py 2016-06-14 06:08:39.000000000 +0200 @@ -37,9 +37,11 @@ self.__cv = threading.Condition(self.__lock) self.__timeout = None self.__mate = None + self._closed = False def close(self): self.__unlink() + self._closed = True try: self.__lock.acquire() self.__in_buffer = bytes() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/paramiko-2.0.0/tests/test_transport.py new/paramiko-2.0.1/tests/test_transport.py --- old/paramiko-2.0.0/tests/test_transport.py 2016-04-29 07:10:31.000000000 +0200 +++ new/paramiko-2.0.1/tests/test_transport.py 2016-06-12 20:20:48.000000000 +0200 @@ -828,3 +828,21 @@ hostkey=public_host_key, username='slowdive', password='pygmalion') + + def test_M_select_after_close(self): + """ + verify that select works when a channel is already closed. + """ + self.setup_test_server() + chan = self.tc.open_session() + chan.invoke_shell() + schan = self.ts.accept(1.0) + schan.close() + + # give client a moment to receive close notification + time.sleep(0.1) + + r, w, e = select.select([chan], [], [], 0.1) + self.assertEqual([chan], r) + self.assertEqual([], w) + self.assertEqual([], e)
