diff options
author | Jeremy T. Bouse <jbouse@debian.org> | 2009-11-27 16:20:12 -0500 |
---|---|---|
committer | Jeremy T. Bouse <jbouse@debian.org> | 2009-11-27 16:20:12 -0500 |
commit | ed280d5ac360e2af796e9bd973d7b4df89f0c449 (patch) | |
tree | ce892d6ce9dad8c0ecbc9cbe73f8095195bef0b4 /docs/paramiko.ServerInterface-class.html | |
parent | 176c6caf4ea7918e1698438634b237fab8456471 (diff) | |
download | python-paramiko-ed280d5ac360e2af796e9bd973d7b4df89f0c449.tar python-paramiko-ed280d5ac360e2af796e9bd973d7b4df89f0c449.tar.gz |
Imported Upstream version 1.7.4upstream/1.7.4
Diffstat (limited to 'docs/paramiko.ServerInterface-class.html')
-rw-r--r-- | docs/paramiko.ServerInterface-class.html | 1244 |
1 files changed, 1244 insertions, 0 deletions
diff --git a/docs/paramiko.ServerInterface-class.html b/docs/paramiko.ServerInterface-class.html new file mode 100644 index 0000000..06d75de --- /dev/null +++ b/docs/paramiko.ServerInterface-class.html @@ -0,0 +1,1244 @@ +<?xml version="1.0" encoding="ascii"?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" + "DTD/xhtml1-transitional.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> +<head> + <title>paramiko.ServerInterface</title> + <link rel="stylesheet" href="epydoc.css" type="text/css" /> + <script type="text/javascript" src="epydoc.js"></script> +</head> + +<body bgcolor="white" text="black" link="blue" vlink="#204080" + alink="#204080"> +<!-- ==================== NAVIGATION BAR ==================== --> +<table class="navbar" border="0" width="100%" cellpadding="0" + bgcolor="#a0c0ff" cellspacing="0"> + <tr valign="middle"> + <!-- Home link --> + <th> <a + href="paramiko-module.html">Home</a> </th> + + <!-- Tree link --> + <th> <a + href="module-tree.html">Trees</a> </th> + + <!-- Index link --> + <th> <a + href="identifier-index.html">Indices</a> </th> + + <!-- Help link --> + <th> <a + 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%"> + <span class="breadcrumbs"> + <a href="paramiko-module.html">Package paramiko</a> :: + Class ServerInterface + </span> + </td> + <td> + <table cellpadding="0" cellspacing="0"> + <!-- hide/show private --> + <tr><td align="right"><span class="options" + >[<a href="frames.html" target="_top">frames</a + >] | <a href="paramiko.ServerInterface-class.html" + target="_top">no frames</a>]</span></td></tr> + </table> + </td> + </tr> +</table> +<!-- ==================== CLASS DESCRIPTION ==================== --> +<h1 class="epydoc">Class ServerInterface</h1><p class="nomargin-top"><span class="codelink"><a href="paramiko-pysrc.html#ServerInterface">source code</a></span></p> +<pre class="base-tree"> +object --+ + | + <strong class="uidshort">ServerInterface</strong> +</pre> + +<hr /> +<p>This class defines an interface for controlling the behavior of + paramiko in server mode.</p> + <p>Methods on this class are called from paramiko's primary thread, so + you shouldn't do too much work in them. (Certainly nothing that blocks + or sleeps.)</p> + +<!-- ==================== INSTANCE METHODS ==================== --> +<a name="section-InstanceMethods"></a> +<table class="summary" border="1" cellpadding="3" + cellspacing="0" width="100%" bgcolor="white"> +<tr bgcolor="#70b0f0" class="table-header"> + <td align="left" colspan="2" class="table-header"> + <span class="table-header">Instance Methods</span></td> +</tr> +<tr> + <td width="15%" align="right" valign="top" class="summary"> + <span class="summary-type"> </span> + </td><td class="summary"> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr> + <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#cancel_port_forward_request" class="summary-sig-name">cancel_port_forward_request</a>(<span class="summary-sig-arg">self</span>, + <span class="summary-sig-arg">address</span>, + <span class="summary-sig-arg">port</span>)</span><br /> + The client would like to cancel a previous port-forwarding request.</td> + <td align="right" valign="top"> + <span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + + </td> + </tr> + </table> + + </td> + </tr> +<tr> + <td width="15%" align="right" valign="top" class="summary"> + <span class="summary-type">int or InteractiveQuery</span> + </td><td class="summary"> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr> + <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#check_auth_interactive" class="summary-sig-name">check_auth_interactive</a>(<span class="summary-sig-arg">self</span>, + <span class="summary-sig-arg">username</span>, + <span class="summary-sig-arg">submethods</span>)</span><br /> + Begin an interactive authentication challenge, if supported.</td> + <td align="right" valign="top"> + <span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + + </td> + </tr> + </table> + + </td> + </tr> +<tr> + <td width="15%" align="right" valign="top" class="summary"> + <span class="summary-type">int or InteractiveQuery</span> + </td><td class="summary"> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr> + <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#check_auth_interactive_response" class="summary-sig-name">check_auth_interactive_response</a>(<span class="summary-sig-arg">self</span>, + <span class="summary-sig-arg">responses</span>)</span><br /> + Continue or finish an interactive authentication challenge, if + supported.</td> + <td align="right" valign="top"> + <span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + + </td> + </tr> + </table> + + </td> + </tr> +<tr> + <td width="15%" align="right" valign="top" class="summary"> + <span class="summary-type">int</span> + </td><td class="summary"> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr> + <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#check_auth_none" class="summary-sig-name">check_auth_none</a>(<span class="summary-sig-arg">self</span>, + <span class="summary-sig-arg">username</span>)</span><br /> + Determine if a client may open channels with no (further) + authentication.</td> + <td align="right" valign="top"> + <span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + + </td> + </tr> + </table> + + </td> + </tr> +<tr> + <td width="15%" align="right" valign="top" class="summary"> + <span class="summary-type">int</span> + </td><td class="summary"> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr> + <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#check_auth_password" class="summary-sig-name">check_auth_password</a>(<span class="summary-sig-arg">self</span>, + <span class="summary-sig-arg">username</span>, + <span class="summary-sig-arg">password</span>)</span><br /> + Determine if a given username and password supplied by the client is + acceptable for use in authentication.</td> + <td align="right" valign="top"> + <span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + + </td> + </tr> + </table> + + </td> + </tr> +<tr> + <td width="15%" align="right" valign="top" class="summary"> + <span class="summary-type">int</span> + </td><td class="summary"> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr> + <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#check_auth_publickey" class="summary-sig-name">check_auth_publickey</a>(<span class="summary-sig-arg">self</span>, + <span class="summary-sig-arg">username</span>, + <span class="summary-sig-arg">key</span>)</span><br /> + Determine if a given key supplied by the client is acceptable for use + in authentication.</td> + <td align="right" valign="top"> + <span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + + </td> + </tr> + </table> + + </td> + </tr> +<tr> + <td width="15%" align="right" valign="top" class="summary"> + <span class="summary-type">int</span> + </td><td class="summary"> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr> + <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#check_channel_direct_tcpip_request" class="summary-sig-name">check_channel_direct_tcpip_request</a>(<span class="summary-sig-arg">self</span>, + <span class="summary-sig-arg">chanid</span>, + <span class="summary-sig-arg">origin</span>, + <span class="summary-sig-arg">destination</span>)</span><br /> + Determine if a local port forwarding channel will be granted, and + return <code>OPEN_SUCCEEDED</code> or an error code.</td> + <td align="right" valign="top"> + <span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + + </td> + </tr> + </table> + + </td> + </tr> +<tr> + <td width="15%" align="right" valign="top" class="summary"> + <span class="summary-type">bool</span> + </td><td class="summary"> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr> + <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#check_channel_exec_request" class="summary-sig-name">check_channel_exec_request</a>(<span class="summary-sig-arg">self</span>, + <span class="summary-sig-arg">channel</span>, + <span class="summary-sig-arg">command</span>)</span><br /> + Determine if a shell command will be executed for the client.</td> + <td align="right" valign="top"> + <span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + + </td> + </tr> + </table> + + </td> + </tr> +<tr> + <td width="15%" align="right" valign="top" class="summary"> + <span class="summary-type">bool</span> + </td><td class="summary"> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr> + <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#check_channel_pty_request" class="summary-sig-name">check_channel_pty_request</a>(<span class="summary-sig-arg">self</span>, + <span class="summary-sig-arg">channel</span>, + <span class="summary-sig-arg">term</span>, + <span class="summary-sig-arg">width</span>, + <span class="summary-sig-arg">height</span>, + <span class="summary-sig-arg">pixelwidth</span>, + <span class="summary-sig-arg">pixelheight</span>, + <span class="summary-sig-arg">modes</span>)</span><br /> + Determine if a pseudo-terminal of the given dimensions (usually + requested for shell access) can be provided on the given channel.</td> + <td align="right" valign="top"> + <span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + + </td> + </tr> + </table> + + </td> + </tr> +<tr> + <td width="15%" align="right" valign="top" class="summary"> + <span class="summary-type">int</span> + </td><td class="summary"> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr> + <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#check_channel_request" class="summary-sig-name">check_channel_request</a>(<span class="summary-sig-arg">self</span>, + <span class="summary-sig-arg">kind</span>, + <span class="summary-sig-arg">chanid</span>)</span><br /> + Determine if a channel request of a given type will be granted, and + return <code>OPEN_SUCCEEDED</code> or an error code.</td> + <td align="right" valign="top"> + <span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + + </td> + </tr> + </table> + + </td> + </tr> +<tr> + <td width="15%" align="right" valign="top" class="summary"> + <span class="summary-type">bool</span> + </td><td class="summary"> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr> + <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#check_channel_shell_request" class="summary-sig-name">check_channel_shell_request</a>(<span class="summary-sig-arg">self</span>, + <span class="summary-sig-arg">channel</span>)</span><br /> + Determine if a shell will be provided to the client on the given + channel.</td> + <td align="right" valign="top"> + <span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + + </td> + </tr> + </table> + + </td> + </tr> +<tr> + <td width="15%" align="right" valign="top" class="summary"> + <span class="summary-type">bool</span> + </td><td class="summary"> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr> + <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#check_channel_subsystem_request" class="summary-sig-name">check_channel_subsystem_request</a>(<span class="summary-sig-arg">self</span>, + <span class="summary-sig-arg">channel</span>, + <span class="summary-sig-arg">name</span>)</span><br /> + Determine if a requested subsystem will be provided to the client on + the given channel.</td> + <td align="right" valign="top"> + <span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + + </td> + </tr> + </table> + + </td> + </tr> +<tr> + <td width="15%" align="right" valign="top" class="summary"> + <span class="summary-type">bool</span> + </td><td class="summary"> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr> + <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#check_channel_window_change_request" class="summary-sig-name">check_channel_window_change_request</a>(<span class="summary-sig-arg">self</span>, + <span class="summary-sig-arg">channel</span>, + <span class="summary-sig-arg">width</span>, + <span class="summary-sig-arg">height</span>, + <span class="summary-sig-arg">pixelwidth</span>, + <span class="summary-sig-arg">pixelheight</span>)</span><br /> + Determine if the pseudo-terminal on the given channel can be resized.</td> + <td align="right" valign="top"> + <span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + + </td> + </tr> + </table> + + </td> + </tr> +<tr> + <td width="15%" align="right" valign="top" class="summary"> + <span class="summary-type">bool</span> + </td><td class="summary"> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr> + <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#check_channel_x11_request" class="summary-sig-name">check_channel_x11_request</a>(<span class="summary-sig-arg">self</span>, + <span class="summary-sig-arg">channel</span>, + <span class="summary-sig-arg">single_connection</span>, + <span class="summary-sig-arg">auth_protocol</span>, + <span class="summary-sig-arg">auth_cookie</span>, + <span class="summary-sig-arg">screen_number</span>)</span><br /> + Determine if the client will be provided with an X11 session.</td> + <td align="right" valign="top"> + <span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + + </td> + </tr> + </table> + + </td> + </tr> +<tr> + <td width="15%" align="right" valign="top" class="summary"> + <span class="summary-type">bool</span> + </td><td class="summary"> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr> + <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#check_global_request" class="summary-sig-name">check_global_request</a>(<span class="summary-sig-arg">self</span>, + <span class="summary-sig-arg">kind</span>, + <span class="summary-sig-arg">msg</span>)</span><br /> + Handle a global request of the given <code>kind</code>.</td> + <td align="right" valign="top"> + <span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + + </td> + </tr> + </table> + + </td> + </tr> +<tr> + <td width="15%" align="right" valign="top" class="summary"> + <span class="summary-type">int</span> + </td><td class="summary"> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr> + <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#check_port_forward_request" class="summary-sig-name">check_port_forward_request</a>(<span class="summary-sig-arg">self</span>, + <span class="summary-sig-arg">address</span>, + <span class="summary-sig-arg">port</span>)</span><br /> + Handle a request for port forwarding.</td> + <td align="right" valign="top"> + <span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + + </td> + </tr> + </table> + + </td> + </tr> +<tr> + <td width="15%" align="right" valign="top" class="summary"> + <span class="summary-type">str</span> + </td><td class="summary"> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr> + <td><span class="summary-sig"><a href="paramiko.ServerInterface-class.html#get_allowed_auths" class="summary-sig-name">get_allowed_auths</a>(<span class="summary-sig-arg">self</span>, + <span class="summary-sig-arg">username</span>)</span><br /> + Return a list of authentication methods supported by the server.</td> + <td align="right" valign="top"> + <span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + + </td> + </tr> + </table> + + </td> + </tr> + <tr> + <td colspan="2" class="summary"> + <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>: + <code>__delattr__</code>, + <code>__getattribute__</code>, + <code>__hash__</code>, + <code>__init__</code>, + <code>__new__</code>, + <code>__reduce__</code>, + <code>__reduce_ex__</code>, + <code>__repr__</code>, + <code>__setattr__</code>, + <code>__str__</code> + </p> + </td> + </tr> +</table> +<!-- ==================== PROPERTIES ==================== --> +<a name="section-Properties"></a> +<table class="summary" border="1" cellpadding="3" + cellspacing="0" width="100%" bgcolor="white"> +<tr bgcolor="#70b0f0" class="table-header"> + <td align="left" colspan="2" class="table-header"> + <span class="table-header">Properties</span></td> +</tr> + <tr> + <td colspan="2" class="summary"> + <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>: + <code>__class__</code> + </p> + </td> + </tr> +</table> +<!-- ==================== METHOD DETAILS ==================== --> +<a name="section-MethodDetails"></a> +<table class="details" border="1" cellpadding="3" + cellspacing="0" width="100%" bgcolor="white"> +<tr bgcolor="#70b0f0" class="table-header"> + <td align="left" colspan="2" class="table-header"> + <span class="table-header">Method Details</span></td> +</tr> +</table> +<a name="cancel_port_forward_request"></a> +<div> +<table class="details" border="1" cellpadding="3" + cellspacing="0" width="100%" bgcolor="white"> +<tr><td> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr valign="top"><td> + <h3 class="epydoc"><span class="sig"><span class="sig-name">cancel_port_forward_request</span>(<span class="sig-arg">self</span>, + <span class="sig-arg">address</span>, + <span class="sig-arg">port</span>)</span> + </h3> + </td><td align="right" valign="top" + ><span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + </td> + </tr></table> + + <p>The client would like to cancel a previous port-forwarding request. If + the given address and port is being forwarded across this ssh connection, + the port should be closed.</p> + <dl class="fields"> + <dt>Parameters:</dt> + <dd><ul class="nomargin-top"> + <li><strong class="pname"><code>address</code></strong> (str) - the forwarded address</li> + <li><strong class="pname"><code>port</code></strong> (int) - the forwarded port</li> + </ul></dd> + </dl> +</td></tr></table> +</div> +<a name="check_auth_interactive"></a> +<div> +<table class="details" border="1" cellpadding="3" + cellspacing="0" width="100%" bgcolor="white"> +<tr><td> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr valign="top"><td> + <h3 class="epydoc"><span class="sig"><span class="sig-name">check_auth_interactive</span>(<span class="sig-arg">self</span>, + <span class="sig-arg">username</span>, + <span class="sig-arg">submethods</span>)</span> + </h3> + </td><td align="right" valign="top" + ><span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + </td> + </tr></table> + + <p>Begin an interactive authentication challenge, if supported. You + should override this method in server mode if you want to support the + <code>"keyboard-interactive"</code> auth type, which requires + you to send a series of questions for the client to answer.</p> + <p>Return AUTH_FAILED if this auth method isn't supported. Otherwise, + you should return an InteractiveQuery object containing the prompts and + instructions for the user. The response will be sent via a call to <a + href="paramiko.ServerInterface-class.html#check_auth_interactive_response" + class="link">check_auth_interactive_response</a>.</p> + <p>The default implementation always returns AUTH_FAILED.</p> + <dl class="fields"> + <dt>Parameters:</dt> + <dd><ul class="nomargin-top"> + <li><strong class="pname"><code>username</code></strong> (str) - the username of the authenticating client</li> + <li><strong class="pname"><code>submethods</code></strong> (str) - a comma-separated list of methods preferred by the client + (usually empty)</li> + </ul></dd> + <dt>Returns: int or InteractiveQuery</dt> + <dd>AUTH_FAILED if this auth method isn't supported; otherwise an + object containing queries for the user</dd> + </dl> +</td></tr></table> +</div> +<a name="check_auth_interactive_response"></a> +<div> +<table class="details" border="1" cellpadding="3" + cellspacing="0" width="100%" bgcolor="white"> +<tr><td> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr valign="top"><td> + <h3 class="epydoc"><span class="sig"><span class="sig-name">check_auth_interactive_response</span>(<span class="sig-arg">self</span>, + <span class="sig-arg">responses</span>)</span> + </h3> + </td><td align="right" valign="top" + ><span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + </td> + </tr></table> + + <p>Continue or finish an interactive authentication challenge, if + supported. You should override this method in server mode if you want to + support the <code>"keyboard-interactive"</code> auth type.</p> + <p>Return AUTH_FAILED if the responses are not accepted, AUTH_SUCCESSFUL + if the responses are accepted and complete the authentication, or + AUTH_PARTIALLY_SUCCESSFUL if your authentication is stateful, and this + set of responses is accepted for authentication, but more authentication + is required. (In this latter case, <a + href="paramiko.ServerInterface-class.html#get_allowed_auths" + class="link">get_allowed_auths</a> will be called to report to the client + what options it has for continuing the authentication.)</p> + <p>If you wish to continue interactive authentication with more + questions, you may return an InteractiveQuery object, which should cause + the client to respond with more answers, calling this method again. This + cycle can continue indefinitely.</p> + <p>The default implementation always returns AUTH_FAILED.</p> + <dl class="fields"> + <dt>Parameters:</dt> + <dd><ul class="nomargin-top"> + <li><strong class="pname"><code>responses</code></strong> (list(str)) - list of responses from the client</li> + </ul></dd> + <dt>Returns: int or InteractiveQuery</dt> + <dd>AUTH_FAILED if the authentication fails; AUTH_SUCCESSFUL if it + succeeds; AUTH_PARTIALLY_SUCCESSFUL if the interactive auth is + successful, but authentication must continue; otherwise an object + containing queries for the user</dd> + </dl> +</td></tr></table> +</div> +<a name="check_auth_none"></a> +<div> +<table class="details" border="1" cellpadding="3" + cellspacing="0" width="100%" bgcolor="white"> +<tr><td> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr valign="top"><td> + <h3 class="epydoc"><span class="sig"><span class="sig-name">check_auth_none</span>(<span class="sig-arg">self</span>, + <span class="sig-arg">username</span>)</span> + </h3> + </td><td align="right" valign="top" + ><span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + </td> + </tr></table> + + <p>Determine if a client may open channels with no (further) + authentication.</p> + <p>Return AUTH_FAILED if the client must authenticate, or AUTH_SUCCESSFUL + if it's okay for the client to not authenticate.</p> + <p>The default implementation always returns AUTH_FAILED.</p> + <dl class="fields"> + <dt>Parameters:</dt> + <dd><ul class="nomargin-top"> + <li><strong class="pname"><code>username</code></strong> (str) - the username of the client.</li> + </ul></dd> + <dt>Returns: int</dt> + <dd>AUTH_FAILED if the authentication fails; AUTH_SUCCESSFUL if it + succeeds.</dd> + </dl> +</td></tr></table> +</div> +<a name="check_auth_password"></a> +<div> +<table class="details" border="1" cellpadding="3" + cellspacing="0" width="100%" bgcolor="white"> +<tr><td> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr valign="top"><td> + <h3 class="epydoc"><span class="sig"><span class="sig-name">check_auth_password</span>(<span class="sig-arg">self</span>, + <span class="sig-arg">username</span>, + <span class="sig-arg">password</span>)</span> + </h3> + </td><td align="right" valign="top" + ><span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + </td> + </tr></table> + + <p>Determine if a given username and password supplied by the client is + acceptable for use in authentication.</p> + <p>Return AUTH_FAILED if the password is not accepted, AUTH_SUCCESSFUL if + the password is accepted and completes the authentication, or + AUTH_PARTIALLY_SUCCESSFUL if your authentication is stateful, and this + key is accepted for authentication, but more authentication is required. + (In this latter case, <a + href="paramiko.ServerInterface-class.html#get_allowed_auths" + class="link">get_allowed_auths</a> will be called to report to the client + what options it has for continuing the authentication.)</p> + <p>The default implementation always returns AUTH_FAILED.</p> + <dl class="fields"> + <dt>Parameters:</dt> + <dd><ul class="nomargin-top"> + <li><strong class="pname"><code>username</code></strong> (str) - the username of the authenticating client.</li> + <li><strong class="pname"><code>password</code></strong> (str) - the password given by the client.</li> + </ul></dd> + <dt>Returns: int</dt> + <dd>AUTH_FAILED if the authentication fails; AUTH_SUCCESSFUL if it + succeeds; AUTH_PARTIALLY_SUCCESSFUL if the password auth is + successful, but authentication must continue.</dd> + </dl> +</td></tr></table> +</div> +<a name="check_auth_publickey"></a> +<div> +<table class="details" border="1" cellpadding="3" + cellspacing="0" width="100%" bgcolor="white"> +<tr><td> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr valign="top"><td> + <h3 class="epydoc"><span class="sig"><span class="sig-name">check_auth_publickey</span>(<span class="sig-arg">self</span>, + <span class="sig-arg">username</span>, + <span class="sig-arg">key</span>)</span> + </h3> + </td><td align="right" valign="top" + ><span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + </td> + </tr></table> + + <p>Determine if a given key supplied by the client is acceptable for use + in authentication. You should override this method in server mode to + check the username and key and decide if you would accept a signature + made using this key.</p> + <p>Return AUTH_FAILED if the key is not accepted, AUTH_SUCCESSFUL if the + key is accepted and completes the authentication, or + AUTH_PARTIALLY_SUCCESSFUL if your authentication is stateful, and this + password is accepted for authentication, but more authentication is + required. (In this latter case, <a + href="paramiko.ServerInterface-class.html#get_allowed_auths" + class="link">get_allowed_auths</a> will be called to report to the client + what options it has for continuing the authentication.)</p> + <p>Note that you don't have to actually verify any key signtature here. + If you're willing to accept the key, paramiko will do the work of + verifying the client's signature.</p> + <p>The default implementation always returns AUTH_FAILED.</p> + <dl class="fields"> + <dt>Parameters:</dt> + <dd><ul class="nomargin-top"> + <li><strong class="pname"><code>username</code></strong> (str) - the username of the authenticating client</li> + <li><strong class="pname"><code>key</code></strong> (<a href="paramiko.PKey-class.html" class="link">PKey</a>) - the key object provided by the client</li> + </ul></dd> + <dt>Returns: int</dt> + <dd>AUTH_FAILED if the client can't authenticate with this key; + AUTH_SUCCESSFUL if it can; AUTH_PARTIALLY_SUCCESSFUL if it can + authenticate with this key but must continue with authentication</dd> + </dl> +</td></tr></table> +</div> +<a name="check_channel_direct_tcpip_request"></a> +<div> +<table class="details" border="1" cellpadding="3" + cellspacing="0" width="100%" bgcolor="white"> +<tr><td> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr valign="top"><td> + <h3 class="epydoc"><span class="sig"><span class="sig-name">check_channel_direct_tcpip_request</span>(<span class="sig-arg">self</span>, + <span class="sig-arg">chanid</span>, + <span class="sig-arg">origin</span>, + <span class="sig-arg">destination</span>)</span> + </h3> + </td><td align="right" valign="top" + ><span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + </td> + </tr></table> + + <p>Determine if a local port forwarding channel will be granted, and + return <code>OPEN_SUCCEEDED</code> or an error code. This method is + called in server mode when the client requests a channel, after + authentication is complete.</p> + <p>The <code>chanid</code> parameter is a small number that uniquely + identifies the channel within a <a href="paramiko.Transport-class.html" + class="link">Transport</a>. A <a href="paramiko.Channel-class.html" + class="link">Channel</a> object is not created unless this method returns + <code>OPEN_SUCCEEDED</code> -- once a <a + href="paramiko.Channel-class.html" class="link">Channel</a> object is + created, you can call <a href="paramiko.Channel-class.html#get_id" + class="link">Channel.get_id</a> to retrieve the channel ID.</p> + <p>The origin and destination parameters are (ip_address, port) tuples + that correspond to both ends of the TCP connection in the forwarding + tunnel.</p> + <p>The return value should either be <code>OPEN_SUCCEEDED</code> (or + <code>0</code>) to allow the channel request, or one of the following + error codes to reject it:</p> + <ul> + <li> + <code>OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</code> + </li> + <li> + <code>OPEN_FAILED_CONNECT_FAILED</code> + </li> + <li> + <code>OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</code> + </li> + <li> + <code>OPEN_FAILED_RESOURCE_SHORTAGE</code> + </li> + </ul> + <p>The default implementation always returns + <code>OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</code>.</p> + <dl class="fields"> + <dt>Parameters:</dt> + <dd><ul class="nomargin-top"> + <li><strong class="pname"><code>chanid</code></strong> (int) - ID of the channel</li> + <li><strong class="pname"><code>origin</code></strong> (tuple) - 2-tuple containing the IP address and port of the originator + (client side)</li> + <li><strong class="pname"><code>destination</code></strong> (tuple) - 2-tuple containing the IP address and port of the destination + (server side)</li> + </ul></dd> + <dt>Returns: int</dt> + <dd>a success or failure code (listed above)</dd> + </dl> +</td></tr></table> +</div> +<a name="check_channel_exec_request"></a> +<div> +<table class="details" border="1" cellpadding="3" + cellspacing="0" width="100%" bgcolor="white"> +<tr><td> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr valign="top"><td> + <h3 class="epydoc"><span class="sig"><span class="sig-name">check_channel_exec_request</span>(<span class="sig-arg">self</span>, + <span class="sig-arg">channel</span>, + <span class="sig-arg">command</span>)</span> + </h3> + </td><td align="right" valign="top" + ><span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + </td> + </tr></table> + + <p>Determine if a shell command will be executed for the client. If this + method returns <code>True</code>, the channel should be connected to the + stdin, stdout, and stderr of the shell command.</p> + <p>The default implementation always returns <code>False</code>.</p> + <dl class="fields"> + <dt>Parameters:</dt> + <dd><ul class="nomargin-top"> + <li><strong class="pname"><code>channel</code></strong> (<a href="paramiko.Channel-class.html" class="link">Channel</a>) - the <a href="paramiko.Channel-class.html" + class="link">Channel</a> the request arrived on.</li> + <li><strong class="pname"><code>command</code></strong> (str) - the command to execute.</li> + </ul></dd> + <dt>Returns: bool</dt> + <dd><code>True</code> if this channel is now hooked up to the stdin, + stdout, and stderr of the executing command; <code>False</code> + if the command will not be executed.</dd> + </dl> +<div class="fields"> <p><strong>Since:</strong> + 1.1 + </p> +</div></td></tr></table> +</div> +<a name="check_channel_pty_request"></a> +<div> +<table class="details" border="1" cellpadding="3" + cellspacing="0" width="100%" bgcolor="white"> +<tr><td> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr valign="top"><td> + <h3 class="epydoc"><span class="sig"><span class="sig-name">check_channel_pty_request</span>(<span class="sig-arg">self</span>, + <span class="sig-arg">channel</span>, + <span class="sig-arg">term</span>, + <span class="sig-arg">width</span>, + <span class="sig-arg">height</span>, + <span class="sig-arg">pixelwidth</span>, + <span class="sig-arg">pixelheight</span>, + <span class="sig-arg">modes</span>)</span> + </h3> + </td><td align="right" valign="top" + ><span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + </td> + </tr></table> + + <p>Determine if a pseudo-terminal of the given dimensions (usually + requested for shell access) can be provided on the given channel.</p> + <p>The default implementation always returns <code>False</code>.</p> + <dl class="fields"> + <dt>Parameters:</dt> + <dd><ul class="nomargin-top"> + <li><strong class="pname"><code>channel</code></strong> (<a href="paramiko.Channel-class.html" class="link">Channel</a>) - the <a href="paramiko.Channel-class.html" + class="link">Channel</a> the pty request arrived on.</li> + <li><strong class="pname"><code>term</code></strong> (str) - type of terminal requested (for example, + <code>"vt100"</code>).</li> + <li><strong class="pname"><code>width</code></strong> (int) - width of screen in characters.</li> + <li><strong class="pname"><code>height</code></strong> (int) - height of screen in characters.</li> + <li><strong class="pname"><code>pixelwidth</code></strong> (int) - width of screen in pixels, if known (may be <code>0</code> if + unknown).</li> + <li><strong class="pname"><code>pixelheight</code></strong> (int) - height of screen in pixels, if known (may be <code>0</code> if + unknown).</li> + </ul></dd> + <dt>Returns: bool</dt> + <dd><code>True</code> if the psuedo-terminal has been allocated; + <code>False</code> otherwise.</dd> + </dl> +</td></tr></table> +</div> +<a name="check_channel_request"></a> +<div> +<table class="details" border="1" cellpadding="3" + cellspacing="0" width="100%" bgcolor="white"> +<tr><td> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr valign="top"><td> + <h3 class="epydoc"><span class="sig"><span class="sig-name">check_channel_request</span>(<span class="sig-arg">self</span>, + <span class="sig-arg">kind</span>, + <span class="sig-arg">chanid</span>)</span> + </h3> + </td><td align="right" valign="top" + ><span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + </td> + </tr></table> + + <p>Determine if a channel request of a given type will be granted, and + return <code>OPEN_SUCCEEDED</code> or an error code. This method is + called in server mode when the client requests a channel, after + authentication is complete.</p> + <p>If you allow channel requests (and an ssh server that didn't would be + useless), you should also override some of the channel request methods + below, which are used to determine which services will be allowed on a + given channel:</p> + <ul> + <li> + <a + href="paramiko.ServerInterface-class.html#check_channel_pty_request" + class="link">check_channel_pty_request</a> + </li> + <li> + <a + href="paramiko.ServerInterface-class.html#check_channel_shell_request" + class="link">check_channel_shell_request</a> + </li> + <li> + <a + href="paramiko.ServerInterface-class.html#check_channel_subsystem_request" + class="link">check_channel_subsystem_request</a> + </li> + <li> + <a + href="paramiko.ServerInterface-class.html#check_channel_window_change_request" + class="link">check_channel_window_change_request</a> + </li> + <li> + <a + href="paramiko.ServerInterface-class.html#check_channel_x11_request" + class="link">check_channel_x11_request</a> + </li> + </ul> + <p>The <code>chanid</code> parameter is a small number that uniquely + identifies the channel within a <a href="paramiko.Transport-class.html" + class="link">Transport</a>. A <a href="paramiko.Channel-class.html" + class="link">Channel</a> object is not created unless this method returns + <code>OPEN_SUCCEEDED</code> -- once a <a + href="paramiko.Channel-class.html" class="link">Channel</a> object is + created, you can call <a href="paramiko.Channel-class.html#get_id" + class="link">Channel.get_id</a> to retrieve the channel ID.</p> + <p>The return value should either be <code>OPEN_SUCCEEDED</code> (or + <code>0</code>) to allow the channel request, or one of the following + error codes to reject it:</p> + <ul> + <li> + <code>OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</code> + </li> + <li> + <code>OPEN_FAILED_CONNECT_FAILED</code> + </li> + <li> + <code>OPEN_FAILED_UNKNOWN_CHANNEL_TYPE</code> + </li> + <li> + <code>OPEN_FAILED_RESOURCE_SHORTAGE</code> + </li> + </ul> + <p>The default implementation always returns + <code>OPEN_FAILED_ADMINISTRATIVELY_PROHIBITED</code>.</p> + <dl class="fields"> + <dt>Parameters:</dt> + <dd><ul class="nomargin-top"> + <li><strong class="pname"><code>kind</code></strong> (str) - the kind of channel the client would like to open (usually + <code>"session"</code>).</li> + <li><strong class="pname"><code>chanid</code></strong> (int) - ID of the channel</li> + </ul></dd> + <dt>Returns: int</dt> + <dd>a success or failure code (listed above)</dd> + </dl> +</td></tr></table> +</div> +<a name="check_channel_shell_request"></a> +<div> +<table class="details" border="1" cellpadding="3" + cellspacing="0" width="100%" bgcolor="white"> +<tr><td> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr valign="top"><td> + <h3 class="epydoc"><span class="sig"><span class="sig-name">check_channel_shell_request</span>(<span class="sig-arg">self</span>, + <span class="sig-arg">channel</span>)</span> + </h3> + </td><td align="right" valign="top" + ><span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + </td> + </tr></table> + + <p>Determine if a shell will be provided to the client on the given + channel. If this method returns <code>True</code>, the channel should be + connected to the stdin/stdout of a shell (or something that acts like a + shell).</p> + <p>The default implementation always returns <code>False</code>.</p> + <dl class="fields"> + <dt>Parameters:</dt> + <dd><ul class="nomargin-top"> + <li><strong class="pname"><code>channel</code></strong> (<a href="paramiko.Channel-class.html" class="link">Channel</a>) - the <a href="paramiko.Channel-class.html" + class="link">Channel</a> the request arrived on.</li> + </ul></dd> + <dt>Returns: bool</dt> + <dd><code>True</code> if this channel is now hooked up to a shell; + <code>False</code> if a shell can't or won't be provided.</dd> + </dl> +</td></tr></table> +</div> +<a name="check_channel_subsystem_request"></a> +<div> +<table class="details" border="1" cellpadding="3" + cellspacing="0" width="100%" bgcolor="white"> +<tr><td> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr valign="top"><td> + <h3 class="epydoc"><span class="sig"><span class="sig-name">check_channel_subsystem_request</span>(<span class="sig-arg">self</span>, + <span class="sig-arg">channel</span>, + <span class="sig-arg">name</span>)</span> + </h3> + </td><td align="right" valign="top" + ><span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + </td> + </tr></table> + + <p>Determine if a requested subsystem will be provided to the client on + the given channel. If this method returns <code>True</code>, all future + I/O through this channel will be assumed to be connected to the requested + subsystem. An example of a subsystem is <code>sftp</code>.</p> + <p>The default implementation checks for a subsystem handler assigned via + <a href="paramiko.Transport-class.html#set_subsystem_handler" + class="link">Transport.set_subsystem_handler</a>. If one has been set, + the handler is invoked and this method returns <code>True</code>. + Otherwise it returns <code>False</code>.</p> + <dl class="fields"> + <dt>Parameters:</dt> + <dd><ul class="nomargin-top"> + <li><strong class="pname"><code>channel</code></strong> (<a href="paramiko.Channel-class.html" class="link">Channel</a>) - the <a href="paramiko.Channel-class.html" + class="link">Channel</a> the pty request arrived on.</li> + <li><strong class="pname"><code>name</code></strong> (str) - name of the requested subsystem.</li> + </ul></dd> + <dt>Returns: bool</dt> + <dd><code>True</code> if this channel is now hooked up to the + requested subsystem; <code>False</code> if that subsystem can't + or won't be provided.</dd> + </dl> +<div class="fields"> <p><strong>Note:</strong> + Because the default implementation uses the <a + href="paramiko.Transport-class.html" class="link">Transport</a> to + identify valid subsystems, you probably won't need to override this + method. + </p> +</div></td></tr></table> +</div> +<a name="check_channel_window_change_request"></a> +<div> +<table class="details" border="1" cellpadding="3" + cellspacing="0" width="100%" bgcolor="white"> +<tr><td> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr valign="top"><td> + <h3 class="epydoc"><span class="sig"><span class="sig-name">check_channel_window_change_request</span>(<span class="sig-arg">self</span>, + <span class="sig-arg">channel</span>, + <span class="sig-arg">width</span>, + <span class="sig-arg">height</span>, + <span class="sig-arg">pixelwidth</span>, + <span class="sig-arg">pixelheight</span>)</span> + </h3> + </td><td align="right" valign="top" + ><span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + </td> + </tr></table> + + <p>Determine if the pseudo-terminal on the given channel can be resized. + This only makes sense if a pty was previously allocated on it.</p> + <p>The default implementation always returns <code>False</code>.</p> + <dl class="fields"> + <dt>Parameters:</dt> + <dd><ul class="nomargin-top"> + <li><strong class="pname"><code>channel</code></strong> (<a href="paramiko.Channel-class.html" class="link">Channel</a>) - the <a href="paramiko.Channel-class.html" + class="link">Channel</a> the pty request arrived on.</li> + <li><strong class="pname"><code>width</code></strong> (int) - width of screen in characters.</li> + <li><strong class="pname"><code>height</code></strong> (int) - height of screen in characters.</li> + <li><strong class="pname"><code>pixelwidth</code></strong> (int) - width of screen in pixels, if known (may be <code>0</code> if + unknown).</li> + <li><strong class="pname"><code>pixelheight</code></strong> (int) - height of screen in pixels, if known (may be <code>0</code> if + unknown).</li> + </ul></dd> + <dt>Returns: bool</dt> + <dd><code>True</code> if the terminal was resized; <code>False</code> + if not.</dd> + </dl> +</td></tr></table> +</div> +<a name="check_channel_x11_request"></a> +<div> +<table class="details" border="1" cellpadding="3" + cellspacing="0" width="100%" bgcolor="white"> +<tr><td> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr valign="top"><td> + <h3 class="epydoc"><span class="sig"><span class="sig-name">check_channel_x11_request</span>(<span class="sig-arg">self</span>, + <span class="sig-arg">channel</span>, + <span class="sig-arg">single_connection</span>, + <span class="sig-arg">auth_protocol</span>, + <span class="sig-arg">auth_cookie</span>, + <span class="sig-arg">screen_number</span>)</span> + </h3> + </td><td align="right" valign="top" + ><span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + </td> + </tr></table> + + <p>Determine if the client will be provided with an X11 session. If this + method returns <code>True</code>, X11 applications should be routed + through new SSH channels, using <a + href="paramiko.Transport-class.html#open_x11_channel" + class="link">Transport.open_x11_channel</a>.</p> + <p>The default implementation always returns <code>False</code>.</p> + <dl class="fields"> + <dt>Parameters:</dt> + <dd><ul class="nomargin-top"> + <li><strong class="pname"><code>channel</code></strong> (<a href="paramiko.Channel-class.html" class="link">Channel</a>) - the <a href="paramiko.Channel-class.html" + class="link">Channel</a> the X11 request arrived on</li> + <li><strong class="pname"><code>single_connection</code></strong> (bool) - <code>True</code> if only a single X11 channel should be opened</li> + <li><strong class="pname"><code>auth_protocol</code></strong> (str) - the protocol used for X11 authentication</li> + <li><strong class="pname"><code>auth_cookie</code></strong> (str) - the cookie used to authenticate to X11</li> + <li><strong class="pname"><code>screen_number</code></strong> (int) - the number of the X11 screen to connect to</li> + </ul></dd> + <dt>Returns: bool</dt> + <dd><code>True</code> if the X11 session was opened; + <code>False</code> if not</dd> + </dl> +</td></tr></table> +</div> +<a name="check_global_request"></a> +<div> +<table class="details" border="1" cellpadding="3" + cellspacing="0" width="100%" bgcolor="white"> +<tr><td> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr valign="top"><td> + <h3 class="epydoc"><span class="sig"><span class="sig-name">check_global_request</span>(<span class="sig-arg">self</span>, + <span class="sig-arg">kind</span>, + <span class="sig-arg">msg</span>)</span> + </h3> + </td><td align="right" valign="top" + ><span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + </td> + </tr></table> + + <p>Handle a global request of the given <code>kind</code>. This method + is called in server mode and client mode, whenever the remote host makes + a global request. If there are any arguments to the request, they will + be in <code>msg</code>.</p> + <p>There aren't any useful global requests defined, aside from port + forwarding, so usually this type of request is an extension to the + protocol.</p> + <p>If the request was successful and you would like to return contextual + data to the remote host, return a tuple. Items in the tuple will be sent + back with the successful result. (Note that the items in the tuple can + only be strings, ints, longs, or bools.)</p> + <p>The default implementation always returns <code>False</code>, + indicating that it does not support any global requests.</p> + <dl class="fields"> + <dt>Parameters:</dt> + <dd><ul class="nomargin-top"> + <li><strong class="pname"><code>kind</code></strong> (str) - the kind of global request being made.</li> + <li><strong class="pname"><code>msg</code></strong> (<a href="paramiko.Message-class.html" class="link">Message</a>) - any extra arguments to the request.</li> + </ul></dd> + <dt>Returns: bool</dt> + <dd><code>True</code> or a tuple of data if the request was granted; + <code>False</code> otherwise.</dd> + </dl> +<div class="fields"> <p><strong>Note:</strong> + Port forwarding requests are handled separately, in <a + href="paramiko.ServerInterface-class.html#check_port_forward_request" + class="link">check_port_forward_request</a>. + </p> +</div></td></tr></table> +</div> +<a name="check_port_forward_request"></a> +<div> +<table class="details" border="1" cellpadding="3" + cellspacing="0" width="100%" bgcolor="white"> +<tr><td> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr valign="top"><td> + <h3 class="epydoc"><span class="sig"><span class="sig-name">check_port_forward_request</span>(<span class="sig-arg">self</span>, + <span class="sig-arg">address</span>, + <span class="sig-arg">port</span>)</span> + </h3> + </td><td align="right" valign="top" + ><span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + </td> + </tr></table> + + <p>Handle a request for port forwarding. The client is asking that + connections to the given address and port be forwarded back across this + ssh connection. An address of <code>"0.0.0.0"</code> indicates + a global address (any address associated with this server) and a port of + <code>0</code> indicates that no specific port is requested (usually the + OS will pick a port).</p> + <p>The default implementation always returns <code>False</code>, + rejecting the port forwarding request. If the request is accepted, you + should return the port opened for listening.</p> + <dl class="fields"> + <dt>Parameters:</dt> + <dd><ul class="nomargin-top"> + <li><strong class="pname"><code>address</code></strong> (str) - the requested address</li> + <li><strong class="pname"><code>port</code></strong> (int) - the requested port</li> + </ul></dd> + <dt>Returns: int</dt> + <dd>the port number that was opened for listening, or + <code>False</code> to reject</dd> + </dl> +</td></tr></table> +</div> +<a name="get_allowed_auths"></a> +<div> +<table class="details" border="1" cellpadding="3" + cellspacing="0" width="100%" bgcolor="white"> +<tr><td> + <table width="100%" cellpadding="0" cellspacing="0" border="0"> + <tr valign="top"><td> + <h3 class="epydoc"><span class="sig"><span class="sig-name">get_allowed_auths</span>(<span class="sig-arg">self</span>, + <span class="sig-arg">username</span>)</span> + </h3> + </td><td align="right" valign="top" + ><span class="codelink"><a href="paramiko.server-pysrc.html">source code</a></span> + </td> + </tr></table> + + <p>Return a list of authentication methods supported by the server. This + list is sent to clients attempting to authenticate, to inform them of + authentication methods that might be successful.</p> + <p>The "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> + <p>The default implementation always returns + <code>"password"</code>.</p> + <dl class="fields"> + <dt>Parameters:</dt> + <dd><ul class="nomargin-top"> + <li><strong class="pname"><code>username</code></strong> (str) - the username requesting authentication.</li> + </ul></dd> + <dt>Returns: str</dt> + <dd>a comma-separated list of authentication types</dd> + </dl> +</td></tr></table> +</div> +<br /> +<!-- ==================== NAVIGATION BAR ==================== --> +<table class="navbar" border="0" width="100%" cellpadding="0" + bgcolor="#a0c0ff" cellspacing="0"> + <tr valign="middle"> + <!-- Home link --> + <th> <a + href="paramiko-module.html">Home</a> </th> + + <!-- Tree link --> + <th> <a + href="module-tree.html">Trees</a> </th> + + <!-- Index link --> + <th> <a + href="identifier-index.html">Indices</a> </th> + + <!-- Help link --> + <th> <a + 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" class="footer"> + Generated by Epydoc 3.0.1 on Sun Jul 6 18:30:30 2008 + </td> + <td align="right" class="footer"> + <a target="mainFrame" href="http://epydoc.sourceforge.net" + >http://epydoc.sourceforge.net</a> + </td> + </tr> +</table> + +<script type="text/javascript"> + <!-- + // Private objects are initially displayed (because if + // javascript is turned off then we want them to be + // visible); but by default, we want to hide them. So hide + // them unless we have a cookie that says to show them. + checkCookie(); + // --> +</script> +</body> +</html> |