diff options
Diffstat (limited to 'docs/private/paramiko.ServerInterface-class.html')
-rw-r--r-- | docs/private/paramiko.ServerInterface-class.html | 894 |
1 files changed, 894 insertions, 0 deletions
diff --git a/docs/private/paramiko.ServerInterface-class.html b/docs/private/paramiko.ServerInterface-class.html new file mode 100644 index 0000000..5cf358f --- /dev/null +++ b/docs/private/paramiko.ServerInterface-class.html @@ -0,0 +1,894 @@ +<?xml version="1.0" encoding="iso-8859-1"?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" + "DTD/xhtml1-transitional.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> +<head> + <title>paramiko.ServerInterface</title> + <link rel="stylesheet" href="epydoc.css" type="text/css"></link> +</head> +<body bgcolor="white" text="black" link="blue" vlink="#204080" + alink="#204080"> + +<!-- =========== START OF NAVBAR =========== --> +<table class="navbar" border="0" width="100%" cellpadding="0" bgcolor="#a0c0ff" cellspacing="0"> + <tr valign="center"> + <th class="navbar"> <a class="navbar" href="paramiko-module.html">Home</a> </th> + <th class="navbar"> <a class="navbar" href="trees.html">Trees</a> </th> + <th class="navbar"> <a class="navbar" href="indices.html">Index</a> </th> + <th class="navbar"> <a class="navbar" href="help.html">Help</a> </th> + <th class="navbar" width="100%"></th> + </tr> +</table> +<table width="100%" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="100%"> + <font size="-1"><b class="breadcrumbs"> + <a href="paramiko-module.html">Package paramiko</a> :: + Class ServerInterface + </b></font></br> + </td> + <td><table cellpadding="0" cellspacing="0"> + <tr><td align="right"><font size="-2">[<b>show private</b> | hide private]</font></td></tr> + <tr><td align="right"><font size="-2">[<a href="frames.html"target="_top">frames</a> | <a href="../private/paramiko.ServerInterface-class.html" target="_top">no frames</a>]</font></td></tr> + </table></td> +</tr></table> + +<!-- =========== START OF CLASS DESCRIPTION =========== --> +<h2 class="class">Type ServerInterface</h2> + +<pre class="base-tree"> +<a href="__builtin__.object-class.html"><code>object</code></a> --+ + | + <b>ServerInterface</b> +</pre><br /> + +<hr/> + +<p>This class defines an interface for controlling the behavior of +paramiko in server mode.</p> +Methods on this class are called from paramiko's primary thread, so +you shouldn't do too much work in them. (Certainly nothing that blocks or +sleeps.) +<hr/> + + +<!-- =========== START OF METHOD SUMMARY =========== --> +<table class="summary" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white"> +<tr bgcolor="#70b0f0" class="summary"> + <th colspan="2">Method Summary</th></tr> +<tr><td align="right" valign="top" width="15%"><font size="-1"> int or <a href="paramiko.server.InteractiveQuery-class.html" + class="link"><code>InteractiveQuery</code></a> +</font></td> + <td><code><span class="summary-sig"><a href="../private/paramiko.ServerInterface-class.html#check_auth_interactive" class="summary-sig-name"><code>check_auth_interactive</code></a>(<span class=summary-sig-arg>self</span>, + <span class=summary-sig-arg>username</span>, + <span class=summary-sig-arg>submethods</span>)</span></code> +<br /> +Begin an interactive authentication challenge, if supported.</td></tr> +<tr><td align="right" valign="top" width="15%"><font size="-1"> int or <a href="paramiko.server.InteractiveQuery-class.html" + class="link"><code>InteractiveQuery</code></a> +</font></td> + <td><code><span class="summary-sig"><a href="../private/paramiko.ServerInterface-class.html#check_auth_interactive_response" class="summary-sig-name"><code>check_auth_interactive_response</code></a>(<span class=summary-sig-arg>self</span>, + <span class=summary-sig-arg>responses</span>)</span></code> +<br /> +Continue or finish an interactive authentication challenge, if +supported.</td></tr> +<tr><td align="right" valign="top" width="15%"><font size="-1"> int +</font></td> + <td><code><span class="summary-sig"><a href="../private/paramiko.ServerInterface-class.html#check_auth_none" class="summary-sig-name"><code>check_auth_none</code></a>(<span class=summary-sig-arg>self</span>, + <span class=summary-sig-arg>username</span>)</span></code> +<br /> +Determine if a client may open channels with no (further) +authentication.</td></tr> +<tr><td align="right" valign="top" width="15%"><font size="-1"> int +</font></td> + <td><code><span class="summary-sig"><a href="../private/paramiko.ServerInterface-class.html#check_auth_password" class="summary-sig-name"><code>check_auth_password</code></a>(<span class=summary-sig-arg>self</span>, + <span class=summary-sig-arg>username</span>, + <span class=summary-sig-arg>password</span>)</span></code> +<br /> +Determine if a given username and password supplied by the client is +acceptable for use in authentication.</td></tr> +<tr><td align="right" valign="top" width="15%"><font size="-1"> int +</font></td> + <td><code><span class="summary-sig"><a href="../private/paramiko.ServerInterface-class.html#check_auth_publickey" class="summary-sig-name"><code>check_auth_publickey</code></a>(<span class=summary-sig-arg>self</span>, + <span class=summary-sig-arg>username</span>, + <span class=summary-sig-arg>key</span>)</span></code> +<br /> +Determine if a given key supplied by the client is acceptable for use +in authentication.</td></tr> +<tr><td align="right" valign="top" width="15%"><font size="-1"> bool +</font></td> + <td><code><span class="summary-sig"><a href="../private/paramiko.ServerInterface-class.html#check_channel_exec_request" class="summary-sig-name"><code>check_channel_exec_request</code></a>(<span class=summary-sig-arg>self</span>, + <span class=summary-sig-arg>channel</span>, + <span class=summary-sig-arg>command</span>)</span></code> +<br /> +Determine if a shell command will be executed for the client.</td></tr> +<tr><td align="right" valign="top" width="15%"><font size="-1"> bool +</font></td> + <td><code><span class="summary-sig"><a href="../private/paramiko.ServerInterface-class.html#check_channel_pty_request" class="summary-sig-name"><code>check_channel_pty_request</code></a>(<span class=summary-sig-arg>self</span>, + <span class=summary-sig-arg>channel</span>, + <span class=summary-sig-arg>term</span>, + <span class=summary-sig-arg>width</span>, + <span class=summary-sig-arg>height</span>, + <span class=summary-sig-arg>pixelwidth</span>, + <span class=summary-sig-arg>pixelheight</span>, + <span class=summary-sig-arg>modes</span>)</span></code> +<br /> +Determine if a pseudo-terminal of the given dimensions (usually +requested for shell access) can be provided on the given channel.</td></tr> +<tr><td align="right" valign="top" width="15%"><font size="-1"> int +</font></td> + <td><code><span class="summary-sig"><a href="../private/paramiko.ServerInterface-class.html#check_channel_request" class="summary-sig-name"><code>check_channel_request</code></a>(<span class=summary-sig-arg>self</span>, + <span class=summary-sig-arg>kind</span>, + <span class=summary-sig-arg>chanid</span>)</span></code> +<br /> +Determine if a channel request of a given type will be granted, and +return <code>OPEN_SUCCEEDED</code> or an error code.</td></tr> +<tr><td align="right" valign="top" width="15%"><font size="-1"> bool +</font></td> + <td><code><span class="summary-sig"><a href="../private/paramiko.ServerInterface-class.html#check_channel_shell_request" class="summary-sig-name"><code>check_channel_shell_request</code></a>(<span class=summary-sig-arg>self</span>, + <span class=summary-sig-arg>channel</span>)</span></code> +<br /> +Determine if a shell will be provided to the client on the given +channel.</td></tr> +<tr><td align="right" valign="top" width="15%"><font size="-1"> bool +</font></td> + <td><code><span class="summary-sig"><a href="../private/paramiko.ServerInterface-class.html#check_channel_subsystem_request" class="summary-sig-name"><code>check_channel_subsystem_request</code></a>(<span class=summary-sig-arg>self</span>, + <span class=summary-sig-arg>channel</span>, + <span class=summary-sig-arg>name</span>)</span></code> +<br /> +Determine if a requested subsystem will be provided to the client on +the given channel.</td></tr> +<tr><td align="right" valign="top" width="15%"><font size="-1"> bool +</font></td> + <td><code><span class="summary-sig"><a href="../private/paramiko.ServerInterface-class.html#check_channel_window_change_request" class="summary-sig-name"><code>check_channel_window_change_request</code></a>(<span class=summary-sig-arg>self</span>, + <span class=summary-sig-arg>channel</span>, + <span class=summary-sig-arg>width</span>, + <span class=summary-sig-arg>height</span>, + <span class=summary-sig-arg>pixelwidth</span>, + <span class=summary-sig-arg>pixelheight</span>)</span></code> +<br /> +Determine if the pseudo-terminal on the given channel can be +resized.</td></tr> +<tr><td align="right" valign="top" width="15%"><font size="-1"> bool +</font></td> + <td><code><span class="summary-sig"><a href="../private/paramiko.ServerInterface-class.html#check_global_request" class="summary-sig-name"><code>check_global_request</code></a>(<span class=summary-sig-arg>self</span>, + <span class=summary-sig-arg>kind</span>, + <span class=summary-sig-arg>msg</span>)</span></code> +<br /> +Handle a global request of the given <code>kind</code>.</td></tr> +<tr><td align="right" valign="top" width="15%"><font size="-1"> str +</font></td> + <td><code><span class="summary-sig"><a href="../private/paramiko.ServerInterface-class.html#get_allowed_auths" class="summary-sig-name"><code>get_allowed_auths</code></a>(<span class=summary-sig-arg>self</span>, + <span class=summary-sig-arg>username</span>)</span></code> +<br /> +Return a list of authentication methods supported by the server.</td></tr> +<tr bgcolor="#e8f0f8" class="group"> + <th colspan="2"> Inherited from object</th></tr> +<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td> + <td><code><span class="summary-sig"><a href="__builtin__.object-class.html#__init__" class="summary-sig-name"><code>__init__</code></a>(<span class="summary-sig-vararg">...</span>)</span></code> +<br /> +x.__init__(...) initializes x; see x.__class__.__doc__ for +signature</td></tr> +<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td> + <td><code><span class="summary-sig"><a href="__builtin__.object-class.html#__delattr__" class="summary-sig-name"><code>__delattr__</code></a>(<span class="summary-sig-vararg">...</span>)</span></code> +<br /> +x.__delattr__('name') <==> del x.name</td></tr> +<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td> + <td><code><span class="summary-sig"><a href="__builtin__.object-class.html#__getattribute__" class="summary-sig-name"><code>__getattribute__</code></a>(<span class="summary-sig-vararg">...</span>)</span></code> +<br /> +x.__getattribute__('name') <==> x.name</td></tr> +<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td> + <td><code><span class="summary-sig"><a href="__builtin__.object-class.html#__hash__" class="summary-sig-name"><code>__hash__</code></a>(<span class=summary-sig-arg>x</span>)</span></code> +<br /> +x.__hash__() <==> hash(x)</td></tr> +<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td> + <td><code><span class="summary-sig"><a href="__builtin__.object-class.html#__new__" class="summary-sig-name"><code>__new__</code></a>(<span class=summary-sig-arg>T</span>, + <span class=summary-sig-arg>S</span>, + <span class="summary-sig-vararg">...</span>)</span></code> +<br /> +T.__new__(S, ...) -> a new object with type S, a subtype of T</td></tr> +<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td> + <td><code><span class="summary-sig"><a href="__builtin__.object-class.html#__reduce__" class="summary-sig-name"><code>__reduce__</code></a>(<span class="summary-sig-vararg">...</span>)</span></code> +<br /> +helper for pickle</td></tr> +<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td> + <td><code><span class="summary-sig"><a href="__builtin__.object-class.html#__reduce_ex__" class="summary-sig-name"><code>__reduce_ex__</code></a>(<span class="summary-sig-vararg">...</span>)</span></code> +<br /> +helper for pickle</td></tr> +<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td> + <td><code><span class="summary-sig"><a href="__builtin__.object-class.html#__repr__" class="summary-sig-name"><code>__repr__</code></a>(<span class=summary-sig-arg>x</span>)</span></code> +<br /> +x.__repr__() <==> repr(x)</td></tr> +<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td> + <td><code><span class="summary-sig"><a href="__builtin__.object-class.html#__setattr__" class="summary-sig-name"><code>__setattr__</code></a>(<span class="summary-sig-vararg">...</span>)</span></code> +<br /> +x.__setattr__('name', value) <==> x.name = value</td></tr> +<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td> + <td><code><span class="summary-sig"><a href="__builtin__.object-class.html#__str__" class="summary-sig-name"><code>__str__</code></a>(<span class=summary-sig-arg>x</span>)</span></code> +<br /> +x.__str__() <==> str(x)</td></tr> +</table><br /> + + +<!-- =========== START OF METHOD DETAILS =========== --> +<table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white"> +<tr bgcolor="#70b0f0" class="details"> + <th colspan="2">Method Details</th></tr> +</table> + +<a name="check_auth_interactive"></a> +<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td> + <h3><span class="sig"><span class="sig-name">check_auth_interactive</span>(<span class=sig-arg>self</span>, + <span class=sig-arg>username</span>, + <span class=sig-arg>submethods</span>)</span> + </h3> + <p>Begin an interactive authentication challenge, if supported. You + should override this method in server mode if you want to support the + <code>"keyboard-interactive"</code> auth type, which requires + you to send a series of questions for the client to answer.</p> + <p>Return <a href="../private/paramiko-module.html#AUTH_FAILED" + class="link"><code>AUTH_FAILED</code></a> if this auth method isn't + supported. Otherwise, you should return an <a + href="paramiko.server.InteractiveQuery-class.html" + class="link"><code>InteractiveQuery</code></a> object containing the + prompts and instructions for the user. The response will be sent via a + call to <a + href="../private/paramiko.ServerInterface-class.html#check_auth_interactive_response" + class="link"><code>check_auth_interactive_response</code></a>.</p> + The default implementation always returns <a + href="../private/paramiko-module.html#AUTH_FAILED" + class="link"><code>AUTH_FAILED</code></a>. + <dl><dt></dt><dd> + <dl><dt><b>Parameters:</b></dt> + <dd><code><b>username</b></code> - + the username of the authenticating client + <br /><i> + (type=str)</i> + <dd><code><b>submethods</b></code> - + a comma-separated list of methods preferred by the client + (usually empty) + <br /><i> + (type=str)</i> + </dd> + </dl> + <dl><dt><b>Returns:</b></dt> + <dd> + <a href="../private/paramiko-module.html#AUTH_FAILED" + class="link"><code>AUTH_FAILED</code></a> if this auth method + isn't supported; otherwise an object containing queries for the + user + <br /><i> + (type=int or <a href="paramiko.server.InteractiveQuery-class.html" + class="link"><code>InteractiveQuery</code></a>)</i> + </dd> + </dl> + </dd></dl> +</td></tr></table> + +<a name="check_auth_interactive_response"></a> +<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td> + <h3><span class="sig"><span class="sig-name">check_auth_interactive_response</span>(<span class=sig-arg>self</span>, + <span class=sig-arg>responses</span>)</span> + </h3> + <p>Continue or finish an interactive authentication challenge, if + supported. You should override this method in server mode if you want + to support the <code>"keyboard-interactive"</code> auth + type.</p> + <p>Return <a href="../private/paramiko-module.html#AUTH_FAILED" + class="link"><code>AUTH_FAILED</code></a> if the responses are not + accepted, <a href="../private/paramiko-module.html#AUTH_SUCCESSFUL" + class="link"><code>AUTH_SUCCESSFUL</code></a> if the responses are + accepted and complete the authentication, or <a + href="../private/paramiko-module.html#AUTH_PARTIALLY_SUCCESSFUL" + class="link"><code>AUTH_PARTIALLY_SUCCESSFUL</code></a> if your + authentication is stateful, and this set of responses is accepted for + authentication, but more authentication is required. (In this latter + case, <a + href="../private/paramiko.ServerInterface-class.html#get_allowed_auths" + class="link"><code>get_allowed_auths</code></a> will be called to + report to the client what options it has for continuing the + authentication.)</p> + <p>If you wish to continue interactive authentication with more + questions, you may return an <a + href="paramiko.server.InteractiveQuery-class.html" + class="link"><code>InteractiveQuery</code></a> object, which should + cause the client to respond with more answers, calling this method + again. This cycle can continue indefinitely.</p> + The default implementation always returns <a + href="../private/paramiko-module.html#AUTH_FAILED" + class="link"><code>AUTH_FAILED</code></a>. + <dl><dt></dt><dd> + <dl><dt><b>Parameters:</b></dt> + <dd><code><b>responses</b></code> - + list of responses from the client + <br /><i> + (type=list(str))</i> + </dd> + </dl> + <dl><dt><b>Returns:</b></dt> + <dd> + <a href="../private/paramiko-module.html#AUTH_FAILED" + class="link"><code>AUTH_FAILED</code></a> if the authentication + fails; <a href="../private/paramiko-module.html#AUTH_SUCCESSFUL" + class="link"><code>AUTH_SUCCESSFUL</code></a> if it succeeds; <a + href="../private/paramiko-module.html#AUTH_PARTIALLY_SUCCESSFUL" + class="link"><code>AUTH_PARTIALLY_SUCCESSFUL</code></a> if the + interactive auth is successful, but authentication must continue; + otherwise an object containing queries for the user + <br /><i> + (type=int or <a href="paramiko.server.InteractiveQuery-class.html" + class="link"><code>InteractiveQuery</code></a>)</i> + </dd> + </dl> + </dd></dl> +</td></tr></table> + +<a name="check_auth_none"></a> +<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td> + <h3><span class="sig"><span class="sig-name">check_auth_none</span>(<span class=sig-arg>self</span>, + <span class=sig-arg>username</span>)</span> + </h3> + <p>Determine if a client may open channels with no (further) + authentication.</p> + <p>Return <a href="../private/paramiko-module.html#AUTH_FAILED" + class="link"><code>AUTH_FAILED</code></a> if the client must + authenticate, or <a + href="../private/paramiko-module.html#AUTH_SUCCESSFUL" + class="link"><code>AUTH_SUCCESSFUL</code></a> if it's okay for the + client to not authenticate.</p> + The default implementation always returns <a + href="../private/paramiko-module.html#AUTH_FAILED" + class="link"><code>AUTH_FAILED</code></a>. + <dl><dt></dt><dd> + <dl><dt><b>Parameters:</b></dt> + <dd><code><b>username</b></code> - + the username of the client. + <br /><i> + (type=str)</i> + </dd> + </dl> + <dl><dt><b>Returns:</b></dt> + <dd> + <a href="../private/paramiko-module.html#AUTH_FAILED" + class="link"><code>AUTH_FAILED</code></a> if the authentication + fails; <a href="../private/paramiko-module.html#AUTH_SUCCESSFUL" + class="link"><code>AUTH_SUCCESSFUL</code></a> if it succeeds. + <br /><i> + (type=int)</i> + </dd> + </dl> + </dd></dl> +</td></tr></table> + +<a name="check_auth_password"></a> +<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td> + <h3><span class="sig"><span class="sig-name">check_auth_password</span>(<span class=sig-arg>self</span>, + <span class=sig-arg>username</span>, + <span class=sig-arg>password</span>)</span> + </h3> + <p>Determine if a given username and password supplied by the client is + acceptable for use in authentication.</p> + <p>Return <a href="../private/paramiko-module.html#AUTH_FAILED" + class="link"><code>AUTH_FAILED</code></a> if the password is not + accepted, <a href="../private/paramiko-module.html#AUTH_SUCCESSFUL" + class="link"><code>AUTH_SUCCESSFUL</code></a> if the password is + accepted and completes the authentication, or <a + href="../private/paramiko-module.html#AUTH_PARTIALLY_SUCCESSFUL" + class="link"><code>AUTH_PARTIALLY_SUCCESSFUL</code></a> if your + authentication is stateful, and this key is accepted for + authentication, but more authentication is required. (In this latter + case, <a + href="../private/paramiko.ServerInterface-class.html#get_allowed_auths" + class="link"><code>get_allowed_auths</code></a> will be called to + report to the client what options it has for continuing the + authentication.)</p> + The default implementation always returns <a + href="../private/paramiko-module.html#AUTH_FAILED" + class="link"><code>AUTH_FAILED</code></a>. + <dl><dt></dt><dd> + <dl><dt><b>Parameters:</b></dt> + <dd><code><b>username</b></code> - + the username of the authenticating client. + <br /><i> + (type=str)</i> + <dd><code><b>password</b></code> - + the password given by the client. + <br /><i> + (type=str)</i> + </dd> + </dl> + <dl><dt><b>Returns:</b></dt> + <dd> + <a href="../private/paramiko-module.html#AUTH_FAILED" + class="link"><code>AUTH_FAILED</code></a> if the authentication + fails; <a href="../private/paramiko-module.html#AUTH_SUCCESSFUL" + class="link"><code>AUTH_SUCCESSFUL</code></a> if it succeeds; <a + href="../private/paramiko-module.html#AUTH_PARTIALLY_SUCCESSFUL" + class="link"><code>AUTH_PARTIALLY_SUCCESSFUL</code></a> if the + password auth is successful, but authentication must + continue. + <br /><i> + (type=int)</i> + </dd> + </dl> + </dd></dl> +</td></tr></table> + +<a name="check_auth_publickey"></a> +<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td> + <h3><span class="sig"><span class="sig-name">check_auth_publickey</span>(<span class=sig-arg>self</span>, + <span class=sig-arg>username</span>, + <span class=sig-arg>key</span>)</span> + </h3> + <p>Determine if a given key supplied by the client is acceptable for + use in authentication. You should override this method in server mode + to check the username and key and decide if you would accept a + signature made using this key.</p> + <p>Return <a href="../private/paramiko-module.html#AUTH_FAILED" + class="link"><code>AUTH_FAILED</code></a> if the key is not accepted, + <a href="../private/paramiko-module.html#AUTH_SUCCESSFUL" + class="link"><code>AUTH_SUCCESSFUL</code></a> if the key is accepted + and completes the authentication, or <a + href="../private/paramiko-module.html#AUTH_PARTIALLY_SUCCESSFUL" + class="link"><code>AUTH_PARTIALLY_SUCCESSFUL</code></a> if your + authentication is stateful, and this password is accepted for + authentication, but more authentication is required. (In this latter + case, <a + href="../private/paramiko.ServerInterface-class.html#get_allowed_auths" + class="link"><code>get_allowed_auths</code></a> will be called to + report to the client what options it has for continuing the + authentication.)</p> + <p>Note that you don't have to actually verify any key signtature here. + If you're willing to accept the key, paramiko will do the work of + verifying the client's signature.</p> + The default implementation always returns <a + href="../private/paramiko-module.html#AUTH_FAILED" + class="link"><code>AUTH_FAILED</code></a>. + <dl><dt></dt><dd> + <dl><dt><b>Parameters:</b></dt> + <dd><code><b>username</b></code> - + the username of the authenticating client + <br /><i> + (type=str)</i> + <dd><code><b>key</b></code> - + the key object provided by the client + <br /><i> + (type=<a href="../private/paramiko.PKey-class.html" + class="link"><code>PKey</code></a>)</i> + </dd> + </dl> + <dl><dt><b>Returns:</b></dt> + <dd> + <a href="../private/paramiko-module.html#AUTH_FAILED" + class="link"><code>AUTH_FAILED</code></a> if the client can't + authenticate with this key; <a + href="../private/paramiko-module.html#AUTH_SUCCESSFUL" + class="link"><code>AUTH_SUCCESSFUL</code></a> if it can; <a + href="../private/paramiko-module.html#AUTH_PARTIALLY_SUCCESSFUL" + class="link"><code>AUTH_PARTIALLY_SUCCESSFUL</code></a> if it can + authenticate with this key but must continue with + authentication + <br /><i> + (type=int)</i> + </dd> + </dl> + </dd></dl> +</td></tr></table> + +<a name="check_channel_exec_request"></a> +<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td> + <h3><span class="sig"><span class="sig-name">check_channel_exec_request</span>(<span class=sig-arg>self</span>, + <span class=sig-arg>channel</span>, + <span class=sig-arg>command</span>)</span> + </h3> + <p>Determine if a shell command will be executed for the client. If + this method returns <code>True</code>, the channel should be connected + to the stdin, stdout, and stderr of the shell command.</p> + The default implementation always returns <code>False</code>. + <dl><dt></dt><dd> + <dl><dt><b>Parameters:</b></dt> + <dd><code><b>channel</b></code> - + the <a href="paramiko.Channel-class.html" + class="link"><code>Channel</code></a> the request arrived on. + <br /><i> + (type=<a href="paramiko.Channel-class.html" + class="link"><code>Channel</code></a>)</i> + <dd><code><b>command</b></code> - + the command to execute. + <br /><i> + (type=str)</i> + </dd> + </dl> + <dl><dt><b>Returns:</b></dt> + <dd> + <code>True</code> if this channel is now hooked up to the + stdin, stdout, and stderr of the executing command; + <code>False</code> if the command will not be executed. + <br /><i> + (type=bool)</i> + </dd> + </dl> +<p><b>Since:</b> 1.1 +</p> + + </dd></dl> +</td></tr></table> + +<a name="check_channel_pty_request"></a> +<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td> + <h3><span class="sig"><span class="sig-name">check_channel_pty_request</span>(<span class=sig-arg>self</span>, + <span class=sig-arg>channel</span>, + <span class=sig-arg>term</span>, + <span class=sig-arg>width</span>, + <span class=sig-arg>height</span>, + <span class=sig-arg>pixelwidth</span>, + <span class=sig-arg>pixelheight</span>, + <span class=sig-arg>modes</span>)</span> + </h3> + <p>Determine if a pseudo-terminal of the given dimensions (usually + requested for shell access) can be provided on the given channel.</p> + The default implementation always returns <code>False</code>. + <dl><dt></dt><dd> + <dl><dt><b>Parameters:</b></dt> + <dd><code><b>channel</b></code> - + the <a href="paramiko.Channel-class.html" + class="link"><code>Channel</code></a> the pty request arrived + on. + <br /><i> + (type=<a href="paramiko.Channel-class.html" + class="link"><code>Channel</code></a>)</i> + <dd><code><b>term</b></code> - + type of terminal requested (for example, + <code>"vt100"</code>). + <br /><i> + (type=str)</i> + <dd><code><b>width</b></code> - + width of screen in characters. + <br /><i> + (type=int)</i> + <dd><code><b>height</b></code> - + height of screen in characters. + <br /><i> + (type=int)</i> + <dd><code><b>pixelwidth</b></code> - + width of screen in pixels, if known (may be <code>0</code> if + unknown). + <br /><i> + (type=int)</i> + <dd><code><b>pixelheight</b></code> - + height of screen in pixels, if known (may be <code>0</code> if + unknown). + <br /><i> + (type=int)</i> + </dd> + </dl> + <dl><dt><b>Returns:</b></dt> + <dd> + <code>True</code> if the psuedo-terminal has been allocated; + <code>False</code> otherwise. + <br /><i> + (type=bool)</i> + </dd> + </dl> + </dd></dl> +</td></tr></table> + +<a name="check_channel_request"></a> +<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td> + <h3><span class="sig"><span class="sig-name">check_channel_request</span>(<span class=sig-arg>self</span>, + <span class=sig-arg>kind</span>, + <span class=sig-arg>chanid</span>)</span> + </h3> + <p>Determine if a channel request of a given type will be granted, and + return <code>OPEN_SUCCEEDED</code> or an error code. This method is + called in server mode when the client requests a channel, after + authentication is complete.</p> + If you allow channel requests (and an ssh server that didn't would + be useless), you should also override some of the channel request + methods below, which are used to determine which services will be + allowed on a given channel: + <ul> + <li> + <a + href="../private/paramiko.ServerInterface-class.html#check_channel_pty_request" + class="link"><code>check_channel_pty_request</code></a> + </li> + <li> + <a + href="../private/paramiko.ServerInterface-class.html#check_channel_shell_request" + class="link"><code>check_channel_shell_request</code></a> + </li> + <li> + <a + href="../private/paramiko.ServerInterface-class.html#check_channel_subsystem_request" + class="link"><code>check_channel_subsystem_request</code></a> + </li> + <li> + <a + href="../private/paramiko.ServerInterface-class.html#check_channel_window_change_request" + class="link"><code>check_channel_window_change_request</code></a> + </li> + </ul> + <p>The <code>chanid</code> parameter is a small number that uniquely + identifies the channel within a <a href="paramiko.Transport-class.html" + class="link"><code>Transport</code></a>. A <a + href="paramiko.Channel-class.html" + class="link"><code>Channel</code></a> object is not created unless this + method returns <code>OPEN_SUCCEEDED</code> -- once a <a + href="paramiko.Channel-class.html" + class="link"><code>Channel</code></a> object is created, you can call + <a href="paramiko.Channel-class.html#get_id" + class="link"><code>Channel.get_id</code></a> to retrieve the channel + ID.</p> + The return value should either be <code>OPEN_SUCCEEDED</code> (or + <code>0</code>) to allow the channel request, or one of the following + error codes to reject it: + <ul> + <li> + <code>OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</code> + </li> + <li> + <code>OPEN_FAILED_CONNECT_FAILED</code> + </li> + <li> + <code>OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</code> + </li> + <li> + <code>OPEN_FAILED_RESOURCE_SHORTAGE</code> + </li> + </ul> + The default implementation always returns + <code>OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</code>. + <dl><dt></dt><dd> + <dl><dt><b>Parameters:</b></dt> + <dd><code><b>kind</b></code> - + the kind of channel the client would like to open (usually + <code>"session"</code>). + <br /><i> + (type=str)</i> + <dd><code><b>chanid</b></code> - + ID of the channel + <br /><i> + (type=int)</i> + </dd> + </dl> + <dl><dt><b>Returns:</b></dt> + <dd> + a success or failure code (listed above) + <br /><i> + (type=int)</i> + </dd> + </dl> + </dd></dl> +</td></tr></table> + +<a name="check_channel_shell_request"></a> +<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td> + <h3><span class="sig"><span class="sig-name">check_channel_shell_request</span>(<span class=sig-arg>self</span>, + <span class=sig-arg>channel</span>)</span> + </h3> + <p>Determine if a shell will be provided to the client on the given + channel. If this method returns <code>True</code>, the channel should + be connected to the stdin/stdout of a shell (or something that acts + like a shell).</p> + The default implementation always returns <code>False</code>. + <dl><dt></dt><dd> + <dl><dt><b>Parameters:</b></dt> + <dd><code><b>channel</b></code> - + the <a href="paramiko.Channel-class.html" + class="link"><code>Channel</code></a> the request arrived on. + <br /><i> + (type=<a href="paramiko.Channel-class.html" + class="link"><code>Channel</code></a>)</i> + </dd> + </dl> + <dl><dt><b>Returns:</b></dt> + <dd> + <code>True</code> if this channel is now hooked up to a shell; + <code>False</code> if a shell can't or won't be provided. + <br /><i> + (type=bool)</i> + </dd> + </dl> + </dd></dl> +</td></tr></table> + +<a name="check_channel_subsystem_request"></a> +<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td> + <h3><span class="sig"><span class="sig-name">check_channel_subsystem_request</span>(<span class=sig-arg>self</span>, + <span class=sig-arg>channel</span>, + <span class=sig-arg>name</span>)</span> + </h3> + <p>Determine if a requested subsystem will be provided to the client on + the given channel. If this method returns <code>True</code>, all future + I/O through this channel will be assumed to be connected to the + requested subsystem. An example of a subsystem is + <code>sftp</code>.</p> + The default implementation checks for a subsystem handler assigned + via <a href="paramiko.Transport-class.html#set_subsystem_handler" + class="link"><code>Transport.set_subsystem_handler</code></a>. If one + has been set, the handler is invoked and this method returns + <code>True</code>. Otherwise it returns <code>False</code>. + <dl><dt></dt><dd> + <dl><dt><b>Parameters:</b></dt> + <dd><code><b>channel</b></code> - + the <a href="paramiko.Channel-class.html" + class="link"><code>Channel</code></a> the pty request arrived + on. + <br /><i> + (type=<a href="paramiko.Channel-class.html" + class="link"><code>Channel</code></a>)</i> + <dd><code><b>name</b></code> - + name of the requested subsystem. + <br /><i> + (type=str)</i> + </dd> + </dl> + <dl><dt><b>Returns:</b></dt> + <dd> + <code>True</code> if this channel is now hooked up to the + requested subsystem; <code>False</code> if that subsystem can't + or won't be provided. + <br /><i> + (type=bool)</i> + </dd> + </dl> +<p><b>Note:</b> Because the default implementation uses the <a +href="paramiko.Transport-class.html" +class="link"><code>Transport</code></a> to identify valid subsystems, you +probably won't need to override this method. +</p> + + </dd></dl> +</td></tr></table> + +<a name="check_channel_window_change_request"></a> +<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td> + <h3><span class="sig"><span class="sig-name">check_channel_window_change_request</span>(<span class=sig-arg>self</span>, + <span class=sig-arg>channel</span>, + <span class=sig-arg>width</span>, + <span class=sig-arg>height</span>, + <span class=sig-arg>pixelwidth</span>, + <span class=sig-arg>pixelheight</span>)</span> + </h3> + <p>Determine if the pseudo-terminal on the given channel can be + resized. This only makes sense if a pty was previously allocated on + it.</p> + The default implementation always returns <code>False</code>. + <dl><dt></dt><dd> + <dl><dt><b>Parameters:</b></dt> + <dd><code><b>channel</b></code> - + the <a href="paramiko.Channel-class.html" + class="link"><code>Channel</code></a> the pty request arrived + on. + <br /><i> + (type=<a href="paramiko.Channel-class.html" + class="link"><code>Channel</code></a>)</i> + <dd><code><b>width</b></code> - + width of screen in characters. + <br /><i> + (type=int)</i> + <dd><code><b>height</b></code> - + height of screen in characters. + <br /><i> + (type=int)</i> + <dd><code><b>pixelwidth</b></code> - + width of screen in pixels, if known (may be <code>0</code> if + unknown). + <br /><i> + (type=int)</i> + <dd><code><b>pixelheight</b></code> - + height of screen in pixels, if known (may be <code>0</code> if + unknown). + <br /><i> + (type=int)</i> + </dd> + </dl> + <dl><dt><b>Returns:</b></dt> + <dd> + <code>True</code> if the terminal was resized; + <code>False</code> if not. + <br /><i> + (type=bool)</i> + </dd> + </dl> + </dd></dl> +</td></tr></table> + +<a name="check_global_request"></a> +<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td> + <h3><span class="sig"><span class="sig-name">check_global_request</span>(<span class=sig-arg>self</span>, + <span class=sig-arg>kind</span>, + <span class=sig-arg>msg</span>)</span> + </h3> + <p>Handle a global request of the given <code>kind</code>. This method + is called in server mode and client mode, whenever the remote host + makes a global request. If there are any arguments to the request, they + will be in <code>msg</code>.</p> + <p>There aren't any useful global requests defined, aside from port + forwarding, so usually this type of request is an extension to the + protocol.</p> + <p>If the request was successful and you would like to return + contextual data to the remote host, return a tuple. Items in the tuple + will be sent back with the successful result. (Note that the items in + the tuple can only be strings, ints, longs, or bools.)</p> + The default implementation always returns <code>False</code>, + indicating that it does not support any global requests. + <dl><dt></dt><dd> + <dl><dt><b>Parameters:</b></dt> + <dd><code><b>kind</b></code> - + the kind of global request being made. + <br /><i> + (type=str)</i> + <dd><code><b>msg</b></code> - + any extra arguments to the request. + <br /><i> + (type=<a href="paramiko.Message-class.html" + class="link"><code>Message</code></a>)</i> + </dd> + </dl> + <dl><dt><b>Returns:</b></dt> + <dd> + <code>True</code> or a tuple of data if the request was + granted; <code>False</code> otherwise. + <br /><i> + (type=bool)</i> + </dd> + </dl> + </dd></dl> +</td></tr></table> + +<a name="get_allowed_auths"></a> +<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td> + <h3><span class="sig"><span class="sig-name">get_allowed_auths</span>(<span class=sig-arg>self</span>, + <span class=sig-arg>username</span>)</span> + </h3> + <p>Return a list of authentication methods supported by the server. + This list is sent to clients attempting to authenticate, to inform them + of authentication methods that might be successful.</p> + <p>The "list" is actually a string of comma-separated names + of types of authentication. Possible values are + <code>"password"</code>, <code>"publickey"</code>, + and <code>"none"</code>.</p> + The default implementation always returns + <code>"password"</code>. + <dl><dt></dt><dd> + <dl><dt><b>Parameters:</b></dt> + <dd><code><b>username</b></code> - + the username requesting authentication. + <br /><i> + (type=str)</i> + </dd> + </dl> + <dl><dt><b>Returns:</b></dt> + <dd> + a comma-separated list of authentication types + <br /><i> + (type=str)</i> + </dd> + </dl> + </dd></dl> +</td></tr></table> +<br /> + + +<!-- =========== START OF NAVBAR =========== --> +<table class="navbar" border="0" width="100%" cellpadding="0" bgcolor="#a0c0ff" cellspacing="0"> + <tr valign="center"> + <th class="navbar"> <a class="navbar" href="paramiko-module.html">Home</a> </th> + <th class="navbar"> <a class="navbar" href="trees.html">Trees</a> </th> + <th class="navbar"> <a class="navbar" href="indices.html">Index</a> </th> + <th class="navbar"> <a class="navbar" href="help.html">Help</a> </th> + <th class="navbar" width="100%"></th> + </tr> +</table> + +<table border="0" cellpadding="0" cellspacing="0" width="100%"> + <tr> + <td align="left"><font size="-2">Generated by Epydoc 2.1 on Sun Dec 4 11:16:47 2005</font></td> + <td align="right"><a href="http://epydoc.sourceforge.net" + ><font size="-2">http://epydoc.sf.net</font></a></td> + </tr> +</table> +</body> +</html> |