aboutsummaryrefslogtreecommitdiff
path: root/docs/public/paramiko.RSAKey-class.html
diff options
context:
space:
mode:
Diffstat (limited to 'docs/public/paramiko.RSAKey-class.html')
-rw-r--r--docs/public/paramiko.RSAKey-class.html423
1 files changed, 423 insertions, 0 deletions
diff --git a/docs/public/paramiko.RSAKey-class.html b/docs/public/paramiko.RSAKey-class.html
new file mode 100644
index 0000000..168a684
--- /dev/null
+++ b/docs/public/paramiko.RSAKey-class.html
@@ -0,0 +1,423 @@
+<?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.RSAKey</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">&nbsp;&nbsp;&nbsp;<a class="navbar" href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
+ <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="trees.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
+ <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="indices.html">Index</a>&nbsp;&nbsp;&nbsp;</th>
+ <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
+ <th class="navbar" width="100%"></th>
+ </tr>
+</table>
+<table width="100%" cellpadding="0" cellspacing="0">
+ <tr valign="top">
+ <td width="100%">
+ <font size="-1"><b class="breadcrumbs">
+ <a href="paramiko-module.html">Package&nbsp;paramiko</a> ::
+ Class&nbsp;RSAKey
+ </b></font></br>
+ </td>
+ <td><table cellpadding="0" cellspacing="0">
+ <tr><td align="right"><font size="-2">[<a href="../private/paramiko.RSAKey-class.html">show&nbsp;private</a>&nbsp;|&nbsp;hide&nbsp;private]</font></td></tr>
+ <tr><td align="right"><font size="-2">[<a href="frames.html"target="_top">frames</a>&nbsp;|&nbsp;<a href="paramiko.RSAKey-class.html" target="_top">no&nbsp;frames</a>]</font></td></tr>
+ </table></td>
+</tr></table>
+
+<!-- =========== START OF CLASS DESCRIPTION =========== -->
+<h2 class="class">Type RSAKey</h2>
+
+<pre class="base-tree">
+<a href="__builtin__.object-class.html"><code>object</code></a> --+
+ |
+ <a href="../private/paramiko.PKey-class.html"><code>PKey</code></a> --+
+ |
+ <b>RSAKey</b>
+</pre><br />
+
+<hr/>
+
+Representation of an RSA key which can be used to sign and verify SSH2
+data.
+<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">&nbsp;</font></td>
+ <td><code><span class="summary-sig"><a href="paramiko.RSAKey-class.html#__init__" class="summary-sig-name"><code>__init__</code></a>(<span class=summary-sig-arg>self</span>,
+ <span class=summary-sig-arg>msg</span>,
+ <span class=summary-sig-arg>data</span>)</span></code>
+<br />
+Create a new instance of this public key type.</td></tr>
+<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
+ <td><code><a name="__hash__"></a><span class="summary-sig"><span class="summary-sig-name">__hash__</span>(<span class=summary-sig-arg>self</span>)</span></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="paramiko.RSAKey-class.html#__str__" class="summary-sig-name"><code>__str__</code></a>(<span class=summary-sig-arg>self</span>)</span></code>
+<br />
+Return a string of an SSH <a href="paramiko.Message-class.html"
+class="link"><code>Message</code></a> made up of the public part(s) of
+this key.</td></tr>
+<tr><td align="right" valign="top" width="15%"><font size="-1"> bool
+</font></td>
+ <td><code><span class="summary-sig"><a href="paramiko.RSAKey-class.html#can_sign" class="summary-sig-name"><code>can_sign</code></a>(<span class=summary-sig-arg>self</span>)</span></code>
+<br />
+Return <code>True</code> if this key has the private part necessary
+for signing data.</td></tr>
+<tr><td align="right" valign="top" width="15%"><font size="-1"> <a href="paramiko.RSAKey-class.html"
+ class="link"><code>RSAKey</code></a>
+</font></td>
+ <td><code><span class="summary-sig"><a href="paramiko.RSAKey-class.html#generate" class="summary-sig-name"><code>generate</code></a>(<span class=summary-sig-arg>bits</span>,
+ <span class=summary-sig-arg>progress_func</span>)</span></code>
+<br />
+Generate a new private RSA key. <i>(Static method)</i>
+</td></tr>
+<tr><td align="right" valign="top" width="15%"><font size="-1"> int
+</font></td>
+ <td><code><span class="summary-sig"><a href="paramiko.RSAKey-class.html#get_bits" class="summary-sig-name"><code>get_bits</code></a>(<span class=summary-sig-arg>self</span>)</span></code>
+<br />
+Return the number of significant bits in this key.</td></tr>
+<tr><td align="right" valign="top" width="15%"><font size="-1"> str
+</font></td>
+ <td><code><span class="summary-sig"><a href="paramiko.RSAKey-class.html#get_name" class="summary-sig-name"><code>get_name</code></a>(<span class=summary-sig-arg>self</span>)</span></code>
+<br />
+Return the name of this private key implementation.</td></tr>
+<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
+ <td><code><a name="sign_ssh_data"></a><span class="summary-sig"><span class="summary-sig-name">sign_ssh_data</span>(<span class=summary-sig-arg>self</span>,
+ <span class=summary-sig-arg>rpool</span>,
+ <span class=summary-sig-arg>data</span>)</span></code>
+</td></tr>
+<tr><td align="right" valign="top" width="15%"><font size="-1"> boolean
+</font></td>
+ <td><code><span class="summary-sig"><a href="paramiko.RSAKey-class.html#verify_ssh_sig" class="summary-sig-name"><code>verify_ssh_sig</code></a>(<span class=summary-sig-arg>self</span>,
+ <span class=summary-sig-arg>data</span>,
+ <span class=summary-sig-arg>msg</span>)</span></code>
+<br />
+Given a blob of data, and an SSH message representing a signature of
+that data, verify that it was signed with this key.</td></tr>
+<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
+ <td><code><span class="summary-sig"><a href="paramiko.RSAKey-class.html#write_private_key_file" class="summary-sig-name"><code>write_private_key_file</code></a>(<span class=summary-sig-arg>self</span>,
+ <span class=summary-sig-arg>filename</span>,
+ <span class=summary-sig-arg>password</span>)</span></code>
+<br />
+Write private key contents into a file.</td></tr>
+<tr bgcolor="#e8f0f8" class="group">
+ <th colspan="2">&nbsp;&nbsp;&nbsp;&nbsp;Inherited from object</th></tr>
+<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</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') &lt;==&gt; del x.name</td></tr>
+<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</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') &lt;==&gt; x.name</td></tr>
+<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</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, ...) -&gt; a new object with type S, a subtype of T</td></tr>
+<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</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">&nbsp;</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">&nbsp;</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__() &lt;==&gt; repr(x)</td></tr>
+<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</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) &lt;==&gt; x.name = value</td></tr>
+</table><br />
+
+
+<!-- =========== START OF INSTANCE METHOD DETAILS =========== -->
+<table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white">
+<tr bgcolor="#70b0f0" class="details">
+ <th colspan="2">Instance Method Details</th></tr>
+</table>
+
+<a name="__init__"></a>
+<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
+ <h3><span class="sig"><span class="sig-name">__init__</span>(<span class=sig-arg>self</span>,
+ <span class=sig-arg>msg</span>=<span class=sig-default>None</span>,
+ <span class=sig-arg>data</span>=<span class=sig-default>None</span>,
+ <span class=sig-arg>filename</span>=<span class=sig-default>None</span>,
+ <span class=sig-arg>password</span>=<span class=sig-default>None</span>,
+ <span class=sig-arg>vals</span>=<span class=sig-default>None</span>)</span>
+ <br /><i>(Constructor)</i>
+ </h3>
+ Create a new instance of this public key type. If <code>msg</code>
+ is given, the key's public part(s) will be filled in from the message.
+ If <code>data</code> is given, the key's public part(s) will be filled
+ in from the string.
+ <dl><dt></dt><dd>
+ <dl><dt><b>Parameters:</b></dt>
+ <dd><code><b>msg</b></code> -
+ an optional SSH <a href="paramiko.Message-class.html"
+ class="link"><code>Message</code></a> containing a public key of
+ this type.
+ <br /><i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ (type=<a href="paramiko.Message-class.html"
+ class="link"><code>Message</code></a>)</i>
+ <dd><code><b>data</b></code> -
+ an optional string containing a public key of this type
+ <br /><i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ (type=str)</i>
+ </dd>
+ </dl>
+ <dl><dt><b>Raises:</b></dt>
+ <dd><code><b>SSHException</b></code> -
+ if a key cannot be created from the <code>data</code> or
+ <code>msg</code> given, or no key was passed in.
+ </dl>
+ <dl><dt><b>Overrides:</b></dt>
+ <dd><a href="../private/paramiko.PKey-class.html#__init__"><code>paramiko.PKey.__init__</code></a> <i>(inherited documentation)</i>
+</dd>
+ </dl>
+ </dd></dl>
+</td></tr></table>
+
+<a name="__str__"></a>
+<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
+ <h3><span class="sig"><span class="sig-name">__str__</span>(<span class=sig-arg>self</span>)</span>
+ <br /><i>(Informal representation operator)</i>
+ </h3>
+ Return a string of an SSH <a href="paramiko.Message-class.html"
+ class="link"><code>Message</code></a> made up of the public part(s) of
+ this key. This string is suitable for passing to <a
+ href="../private/paramiko.PKey-class.html#__init__"
+ class="link"><code>__init__</code></a> to re-create the key object
+ later.
+ <dl><dt></dt><dd>
+ <dl><dt><b>Returns:</b></dt>
+ <dd>
+ string representation of an SSH key message.
+ <br /><i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ (type=str)</i>
+ </dd>
+ </dl>
+ <dl><dt><b>Overrides:</b></dt>
+ <dd><a href="../private/paramiko.PKey-class.html#__str__"><code>paramiko.PKey.__str__</code></a> <i>(inherited documentation)</i>
+</dd>
+ </dl>
+ </dd></dl>
+</td></tr></table>
+
+<a name="can_sign"></a>
+<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
+ <h3><span class="sig"><span class="sig-name">can_sign</span>(<span class=sig-arg>self</span>)</span>
+ </h3>
+ Return <code>True</code> if this key has the private part necessary
+ for signing data.
+ <dl><dt></dt><dd>
+ <dl><dt><b>Returns:</b></dt>
+ <dd>
+ <code>True</code> if this is a private key.
+ <br /><i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ (type=bool)</i>
+ </dd>
+ </dl>
+ <dl><dt><b>Overrides:</b></dt>
+ <dd><a href="../private/paramiko.PKey-class.html#can_sign"><code>paramiko.PKey.can_sign</code></a> <i>(inherited documentation)</i>
+</dd>
+ </dl>
+ </dd></dl>
+</td></tr></table>
+
+<a name="get_bits"></a>
+<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
+ <h3><span class="sig"><span class="sig-name">get_bits</span>(<span class=sig-arg>self</span>)</span>
+ </h3>
+ Return the number of significant bits in this key. This is useful
+ for judging the relative security of a key.
+ <dl><dt></dt><dd>
+ <dl><dt><b>Returns:</b></dt>
+ <dd>
+ bits in the key.
+ <br /><i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ (type=int)</i>
+ </dd>
+ </dl>
+ <dl><dt><b>Overrides:</b></dt>
+ <dd><a href="../private/paramiko.PKey-class.html#get_bits"><code>paramiko.PKey.get_bits</code></a> <i>(inherited documentation)</i>
+</dd>
+ </dl>
+ </dd></dl>
+</td></tr></table>
+
+<a name="get_name"></a>
+<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
+ <h3><span class="sig"><span class="sig-name">get_name</span>(<span class=sig-arg>self</span>)</span>
+ </h3>
+ Return the name of this private key implementation.
+ <dl><dt></dt><dd>
+ <dl><dt><b>Returns:</b></dt>
+ <dd>
+ name of this private key type, in SSH terminology (for
+ example, <code>&quot;ssh-rsa&quot;</code>).
+ <br /><i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ (type=str)</i>
+ </dd>
+ </dl>
+ <dl><dt><b>Overrides:</b></dt>
+ <dd><a href="../private/paramiko.PKey-class.html#get_name"><code>paramiko.PKey.get_name</code></a> <i>(inherited documentation)</i>
+</dd>
+ </dl>
+ </dd></dl>
+</td></tr></table>
+
+<a name="verify_ssh_sig"></a>
+<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
+ <h3><span class="sig"><span class="sig-name">verify_ssh_sig</span>(<span class=sig-arg>self</span>,
+ <span class=sig-arg>data</span>,
+ <span class=sig-arg>msg</span>)</span>
+ </h3>
+ Given a blob of data, and an SSH message representing a signature of
+ that data, verify that it was signed with this key.
+ <dl><dt></dt><dd>
+ <dl><dt><b>Parameters:</b></dt>
+ <dd><code><b>data</b></code> -
+ the data that was signed.
+ <br /><i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ (type=str)</i>
+ <dd><code><b>msg</b></code> -
+ an SSH signature message
+ <br /><i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ (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> if the signature verifies correctly;
+ <code>False</code> otherwise.
+ <br /><i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ (type=boolean)</i>
+ </dd>
+ </dl>
+ <dl><dt><b>Overrides:</b></dt>
+ <dd><a href="../private/paramiko.PKey-class.html#verify_ssh_sig"><code>paramiko.PKey.verify_ssh_sig</code></a> <i>(inherited documentation)</i>
+</dd>
+ </dl>
+ </dd></dl>
+</td></tr></table>
+
+<a name="write_private_key_file"></a>
+<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
+ <h3><span class="sig"><span class="sig-name">write_private_key_file</span>(<span class=sig-arg>self</span>,
+ <span class=sig-arg>filename</span>,
+ <span class=sig-arg>password</span>=<span class=sig-default>None</span>)</span>
+ </h3>
+ Write private key contents into a file. If the password is not
+ <code>None</code>, the key is encrypted before writing.
+ <dl><dt></dt><dd>
+ <dl><dt><b>Parameters:</b></dt>
+ <dd><code><b>filename</b></code> -
+ name of the file to write.
+ <br /><i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ (type=str)</i>
+ <dd><code><b>password</b></code> -
+ an optional password to use to encrypt the key file.
+ <br /><i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ (type=str)</i>
+ </dd>
+ </dl>
+ <dl><dt><b>Raises:</b></dt>
+ <dd><code><b>IOError</b></code> -
+ if there was an error writing the file.
+ <dd><code><b>SSHException</b></code> -
+ if the key is invalid.
+ </dl>
+ <dl><dt><b>Overrides:</b></dt>
+ <dd><a href="../private/paramiko.PKey-class.html#write_private_key_file"><code>paramiko.PKey.write_private_key_file</code></a> <i>(inherited documentation)</i>
+</dd>
+ </dl>
+<p><b>Since:</b> fearow
+</p>
+
+ </dd></dl>
+</td></tr></table>
+<br />
+
+
+<!-- =========== START OF STATIC METHOD DETAILS =========== -->
+<table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white">
+<tr bgcolor="#70b0f0" class="details">
+ <th colspan="2">Static Method Details</th></tr>
+</table>
+
+<a name="generate"></a>
+<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
+ <h3><span class="sig"><span class="sig-name">generate</span>(<span class=sig-arg>bits</span>,
+ <span class=sig-arg>progress_func</span>=<span class=sig-default>None</span>)</span>
+ </h3>
+ Generate a new private RSA key. This factory function can be used to
+ generate a new host key or authentication key.
+ <dl><dt></dt><dd>
+ <dl><dt><b>Parameters:</b></dt>
+ <dd><code><b>bits</b></code> -
+ number of bits the generated key should be.
+ <br /><i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ (type=int)</i>
+ <dd><code><b>progress_func</b></code> -
+ an optional function to call at key points in key generation
+ (used by <code>pyCrypto.PublicKey</code>).
+ <br /><i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ (type=function)</i>
+ </dd>
+ </dl>
+ <dl><dt><b>Returns:</b></dt>
+ <dd>
+ new private key
+ <br /><i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ (type=<a href="paramiko.RSAKey-class.html"
+ class="link"><code>RSAKey</code></a>)</i>
+ </dd>
+ </dl>
+<p><b>Since:</b> fearow
+</p>
+
+ </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">&nbsp;&nbsp;&nbsp;<a class="navbar" href="paramiko-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
+ <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="trees.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
+ <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="indices.html">Index</a>&nbsp;&nbsp;&nbsp;</th>
+ <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
+ <th class="navbar" width="100%"></th>
+ </tr>
+</table>
+
+<table border="0" cellpadding="0" cellspacing="0" width="100%">
+ <tr>
+ <td align="left"><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>