diff options
author | Jeremy T. Bouse <jbouse@debian.org> | 2009-11-27 16:20:09 -0500 |
---|---|---|
committer | Jeremy T. Bouse <jbouse@debian.org> | 2009-11-27 16:20:09 -0500 |
commit | 176c6caf4ea7918e1698438634b237fab8456471 (patch) | |
tree | 6e2a8e5be1af2a6ec324fdbf99589aa099f1ec2a /docs/private/paramiko.SFTPServerInterface-class.html | |
download | python-paramiko-upstream/1.5.2.tar python-paramiko-upstream/1.5.2.tar.gz |
Imported Upstream version 1.5.2upstream/1.5.2
Diffstat (limited to 'docs/private/paramiko.SFTPServerInterface-class.html')
-rw-r--r-- | docs/private/paramiko.SFTPServerInterface-class.html | 744 |
1 files changed, 744 insertions, 0 deletions
diff --git a/docs/private/paramiko.SFTPServerInterface-class.html b/docs/private/paramiko.SFTPServerInterface-class.html new file mode 100644 index 0000000..a0bd429 --- /dev/null +++ b/docs/private/paramiko.SFTPServerInterface-class.html @@ -0,0 +1,744 @@ +<?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.SFTPServerInterface</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 SFTPServerInterface + </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.SFTPServerInterface-class.html" target="_top">no frames</a>]</font></td></tr> + </table></td> +</tr></table> + +<!-- =========== START OF CLASS DESCRIPTION =========== --> +<h2 class="class">Type SFTPServerInterface</h2> + +<pre class="base-tree"> +<a href="__builtin__.object-class.html"><code>object</code></a> --+ + | + <b>SFTPServerInterface</b> +</pre><br /> + +<hr/> + +<p>This class defines an interface for controlling the behavior of +paramiko when using the <a href="paramiko.SFTPServer-class.html" +class="link"><code>SFTPServer</code></a> subsystem to provide an SFTP +server.</p> +Methods on this class are called from the SFTP session's thread, so +you can block as long as necessary without affecting other sessions (even +other SFTP sessions). However, raising an exception will usually cause +the SFTP session to abruptly end, so you will usually want to catch +exceptions and return an appropriate error code. +<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"> </font></td> + <td><code><span class="summary-sig"><a href="../private/paramiko.SFTPServerInterface-class.html#__init__" class="summary-sig-name"><code>__init__</code></a>(<span class=summary-sig-arg>self</span>, + <span class=summary-sig-arg>server</span>, + <span class="summary-sig-vararg">*largs</span>, + <span class="summary-sig-kwarg">**kwargs</span>)</span></code> +<br /> +Create a new SFTPServerInterface object.</td></tr> +<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td> + <td><code><span class="summary-sig"><a href="../private/paramiko.SFTPServerInterface-class.html#canonicalize" class="summary-sig-name"><code>canonicalize</code></a>(<span class=summary-sig-arg>self</span>, + <span class=summary-sig-arg>path</span>)</span></code> +<br /> +Return the canonical form of a path on the server.</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.SFTPServerInterface-class.html#chattr" class="summary-sig-name"><code>chattr</code></a>(<span class=summary-sig-arg>self</span>, + <span class=summary-sig-arg>path</span>, + <span class=summary-sig-arg>attr</span>)</span></code> +<br /> +Change the attributes of a file.</td></tr> +<tr><td align="right" valign="top" width="15%"><font size="-1"> list of <a href="paramiko.SFTPAttributes-class.html" + class="link"><code>SFTPAttributes</code></a> <i>or error + code</i> +</font></td> + <td><code><span class="summary-sig"><a href="../private/paramiko.SFTPServerInterface-class.html#list_folder" class="summary-sig-name"><code>list_folder</code></a>(<span class=summary-sig-arg>self</span>, + <span class=summary-sig-arg>path</span>)</span></code> +<br /> +Return a list of files within a given folder.</td></tr> +<tr><td align="right" valign="top" width="15%"><font size="-1"> <a href="paramiko.SFTPAttributes-class.html" + class="link"><code>SFTPAttributes</code></a> <i>or error + code</i> +</font></td> + <td><code><span class="summary-sig"><a href="../private/paramiko.SFTPServerInterface-class.html#lstat" class="summary-sig-name"><code>lstat</code></a>(<span class=summary-sig-arg>self</span>, + <span class=summary-sig-arg>path</span>)</span></code> +<br /> +Return an <a href="paramiko.SFTPAttributes-class.html" +class="link"><code>SFTPAttributes</code></a> object for a path on the +server, or an error code.</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.SFTPServerInterface-class.html#mkdir" class="summary-sig-name"><code>mkdir</code></a>(<span class=summary-sig-arg>self</span>, + <span class=summary-sig-arg>path</span>, + <span class=summary-sig-arg>attr</span>)</span></code> +<br /> +Create a new directory with the given attributes.</td></tr> +<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td> + <td><code><span class="summary-sig"><a href="../private/paramiko.SFTPServerInterface-class.html#open" class="summary-sig-name"><code>open</code></a>(<span class=summary-sig-arg>self</span>, + <span class=summary-sig-arg>path</span>, + <span class=summary-sig-arg>flags</span>, + <span class=summary-sig-arg>attr</span>)</span></code> +<br /> +Open a file on the server and create a handle for future operations on +that file.</td></tr> +<tr><td align="right" valign="top" width="15%"><font size="-1"> str <i>or error code</i> +</font></td> + <td><code><span class="summary-sig"><a href="../private/paramiko.SFTPServerInterface-class.html#readlink" class="summary-sig-name"><code>readlink</code></a>(<span class=summary-sig-arg>self</span>, + <span class=summary-sig-arg>path</span>)</span></code> +<br /> +Return the target of a symbolic link (or shortcut) on the server.</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.SFTPServerInterface-class.html#remove" class="summary-sig-name"><code>remove</code></a>(<span class=summary-sig-arg>self</span>, + <span class=summary-sig-arg>path</span>)</span></code> +<br /> +Delete a file, if possible.</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.SFTPServerInterface-class.html#rename" class="summary-sig-name"><code>rename</code></a>(<span class=summary-sig-arg>self</span>, + <span class=summary-sig-arg>oldpath</span>, + <span class=summary-sig-arg>newpath</span>)</span></code> +<br /> +Rename (or move) a file.</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.SFTPServerInterface-class.html#rmdir" class="summary-sig-name"><code>rmdir</code></a>(<span class=summary-sig-arg>self</span>, + <span class=summary-sig-arg>path</span>)</span></code> +<br /> +Remove a directory if it exists.</td></tr> +<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td> + <td><code><span class="summary-sig"><a href="../private/paramiko.SFTPServerInterface-class.html#session_ended" class="summary-sig-name"><code>session_ended</code></a>(<span class=summary-sig-arg>self</span>)</span></code> +<br /> +The SFTP server session has just ended, either cleanly or via an +exception.</td></tr> +<tr><td align="right" valign="top" width="15%"><font size="-1"> </font></td> + <td><code><span class="summary-sig"><a href="../private/paramiko.SFTPServerInterface-class.html#session_started" class="summary-sig-name"><code>session_started</code></a>(<span class=summary-sig-arg>self</span>)</span></code> +<br /> +The SFTP server session has just started.</td></tr> +<tr><td align="right" valign="top" width="15%"><font size="-1"> <a href="paramiko.SFTPAttributes-class.html" + class="link"><code>SFTPAttributes</code></a> <i>or error + code</i> +</font></td> + <td><code><span class="summary-sig"><a href="../private/paramiko.SFTPServerInterface-class.html#stat" class="summary-sig-name"><code>stat</code></a>(<span class=summary-sig-arg>self</span>, + <span class=summary-sig-arg>path</span>)</span></code> +<br /> +Return an <a href="paramiko.SFTPAttributes-class.html" +class="link"><code>SFTPAttributes</code></a> object for a path on the +server, or an error code.</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.SFTPServerInterface-class.html#symlink" class="summary-sig-name"><code>symlink</code></a>(<span class=summary-sig-arg>self</span>, + <span class=summary-sig-arg>target_path</span>, + <span class=summary-sig-arg>path</span>)</span></code> +<br /> +Create a symbolic link on the server, as new pathname +<code>path</code>, with <code>target_path</code> as the target of the +link.</td></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#__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="__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>server</span>, + <span class="sig-vararg">*largs</span>, + <span class="sig-kwarg">**kwargs</span>)</span> + <br /><i>(Constructor)</i> + </h3> + Create a new SFTPServerInterface object. This method does nothing by + default and is meant to be overridden by subclasses. + <dl><dt></dt><dd> + <dl><dt><b>Parameters:</b></dt> + <dd><code><b>server</b></code> - + the server object associated with this channel and SFTP + subsystem + <br /><i> + (type=<a href="../private/paramiko.ServerInterface-class.html" + class="link"><code>ServerInterface</code></a>)</i> + </dd> + </dl> + <dl><dt><b>Overrides:</b></dt> + <dd><a href="__builtin__.object-class.html#__init__"><code>__builtin__.object.__init__</code></a></dd> + </dl> + </dd></dl> +</td></tr></table> + +<a name="canonicalize"></a> +<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td> + <h3><span class="sig"><span class="sig-name">canonicalize</span>(<span class=sig-arg>self</span>, + <span class=sig-arg>path</span>)</span> + </h3> + <p>Return the canonical form of a path on the server. For example, if + the server's home folder is <code>/home/foo</code>, the path + <code>"../betty"</code> would be canonicalized to + <code>"/home/betty"</code>. Note the obvious security issues: + if you're serving files only from a specific folder, you probably don't + want this method to reveal path names outside that folder.</p> + <p>You may find the python methods in <code>os.path</code> useful, + especially <code>os.path.normpath</code> and + <code>os.path.realpath</code>.</p> + The default implementation returns <code>os.path.normpath('/' + + path)</code>. + <dl><dt></dt><dd> + </dd></dl> +</td></tr></table> + +<a name="chattr"></a> +<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td> + <h3><span class="sig"><span class="sig-name">chattr</span>(<span class=sig-arg>self</span>, + <span class=sig-arg>path</span>, + <span class=sig-arg>attr</span>)</span> + </h3> + Change the attributes of a file. The <code>attr</code> object will + contain only those fields provided by the client in its request, so you + should check for the presence of fields before using them. + <dl><dt></dt><dd> + <dl><dt><b>Parameters:</b></dt> + <dd><code><b>path</b></code> - + requested path (relative or absolute) of the file to + change. + <br /><i> + (type=str)</i> + <dd><code><b>attr</b></code> - + requested attributes to change on the file. + <br /><i> + (type=<a href="paramiko.SFTPAttributes-class.html" + class="link"><code>SFTPAttributes</code></a>)</i> + </dd> + </dl> + <dl><dt><b>Returns:</b></dt> + <dd> + an error code like <a + href="../private/paramiko-module.html#SFTP_OK" + class="link"><code>SFTP_OK</code></a>. + <br /><i> + (type=int)</i> + </dd> + </dl> + </dd></dl> +</td></tr></table> + +<a name="list_folder"></a> +<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td> + <h3><span class="sig"><span class="sig-name">list_folder</span>(<span class=sig-arg>self</span>, + <span class=sig-arg>path</span>)</span> + </h3> + <p>Return a list of files within a given folder. The <code>path</code> + will use posix notation (<code>"/"</code> separates folder + names) and may be an absolute or relative path.</p> + <p>The list of files is expected to be a list of <a + href="paramiko.SFTPAttributes-class.html" + class="link"><code>SFTPAttributes</code></a> objects, which are similar + in structure to the objects returned by <code>os.stat</code>. In + addition, each object should have its <code>filename</code> field + filled in, since this is important to a directory listing and not + normally present in <code>os.stat</code> results. The method + <code>SFTPAttributes.from_stat</code> will usually do what you + want.</p> + In case of an error, you should return one of the + <code>SFTP_*</code> error codes, such as <a + href="../private/paramiko-module.html#SFTP_PERMISSION_DENIED" + class="link"><code>SFTP_PERMISSION_DENIED</code></a>. + <dl><dt></dt><dd> + <dl><dt><b>Parameters:</b></dt> + <dd><code><b>path</b></code> - + the requested path (relative or absolute) to be listed. + <br /><i> + (type=str)</i> + </dd> + </dl> + <dl><dt><b>Returns:</b></dt> + <dd> + a list of the files in the given folder, using <a + href="paramiko.SFTPAttributes-class.html" + class="link"><code>SFTPAttributes</code></a> objects. + <br /><i> + (type=list of <a href="paramiko.SFTPAttributes-class.html" + class="link"><code>SFTPAttributes</code></a> <i>or error + code</i>)</i> + </dd> + </dl> +<p><b>Note:</b> You should normalize the given <code>path</code> first (see the +<code>os.path</code> module) and check appropriate permissions before +returning the list of files. Be careful of malicious clients attempting +to use relative paths to escape restricted folders, if you're doing a +direct translation from the SFTP server path to your local +filesystem. +</p> + + </dd></dl> +</td></tr></table> + +<a name="lstat"></a> +<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td> + <h3><span class="sig"><span class="sig-name">lstat</span>(<span class=sig-arg>self</span>, + <span class=sig-arg>path</span>)</span> + </h3> + Return an <a href="paramiko.SFTPAttributes-class.html" + class="link"><code>SFTPAttributes</code></a> object for a path on the + server, or an error code. If your server supports symbolic links (also + known as "aliases"), you should <i>not</i> follow them -- + instead, you should return data on the symlink or alias itself. (<a + href="../private/paramiko.SFTPServerInterface-class.html#stat" + class="link"><code>stat</code></a> is the corresponding call that + follows symlinks/aliases.) + <dl><dt></dt><dd> + <dl><dt><b>Parameters:</b></dt> + <dd><code><b>path</b></code> - + the requested path (relative or absolute) to fetch file + statistics for. + <br /><i> + (type=str)</i> + </dd> + </dl> + <dl><dt><b>Returns:</b></dt> + <dd> + an attributes object for the given file, or an SFTP error code + (like <a + href="../private/paramiko-module.html#SFTP_PERMISSION_DENIED" + class="link"><code>SFTP_PERMISSION_DENIED</code></a>). + <br /><i> + (type=<a href="paramiko.SFTPAttributes-class.html" + class="link"><code>SFTPAttributes</code></a> <i>or error + code</i>)</i> + </dd> + </dl> + </dd></dl> +</td></tr></table> + +<a name="mkdir"></a> +<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td> + <h3><span class="sig"><span class="sig-name">mkdir</span>(<span class=sig-arg>self</span>, + <span class=sig-arg>path</span>, + <span class=sig-arg>attr</span>)</span> + </h3> + <p>Create a new directory with the given attributes. The + <code>attr</code> object may be considered a "hint" and + ignored.</p> + The <code>attr</code> object will contain only those fields provided + by the client in its request, so you should use <code>hasattr</code> to + check for the presense of fields before using them. In some cases, the + <code>attr</code> object may be completely empty. + <dl><dt></dt><dd> + <dl><dt><b>Parameters:</b></dt> + <dd><code><b>path</b></code> - + requested path (relative or absolute) of the new folder. + <br /><i> + (type=str)</i> + <dd><code><b>attr</b></code> - + requested attributes of the new folder. + <br /><i> + (type=<a href="paramiko.SFTPAttributes-class.html" + class="link"><code>SFTPAttributes</code></a>)</i> + </dd> + </dl> + <dl><dt><b>Returns:</b></dt> + <dd> + an SFTP error code like <a + href="../private/paramiko-module.html#SFTP_OK" + class="link"><code>SFTP_OK</code></a>. + <br /><i> + (type=int)</i> + </dd> + </dl> + </dd></dl> +</td></tr></table> + +<a name="open"></a> +<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td> + <h3><span class="sig"><span class="sig-name">open</span>(<span class=sig-arg>self</span>, + <span class=sig-arg>path</span>, + <span class=sig-arg>flags</span>, + <span class=sig-arg>attr</span>)</span> + </h3> + <p>Open a file on the server and create a handle for future operations + on that file. On success, a new object subclassed from <a + href="paramiko.SFTPHandle-class.html" + class="link"><code>SFTPHandle</code></a> should be returned. This + handle will be used for future operations on the file (read, write, + etc). On failure, an error code such as <a + href="../private/paramiko-module.html#SFTP_PERMISSION_DENIED" + class="link"><code>SFTP_PERMISSION_DENIED</code></a> should be + returned.</p> + <code>flags</code> contains the requested mode for opening + (read-only, write-append, etc) as a bitset of flags from the + <code>os</code> module: + <ul> + <li> + <code>os.O_RDONLY</code> + </li> + <li> + <code>os.O_WRONLY</code> + </li> + <li> + <code>os.O_RDWR</code> + </li> + <li> + <code>os.O_APPEND</code> + </li> + <li> + <code>os.O_CREAT</code> + </li> + <li> + <code>os.O_TRUNC</code> + </li> + <li> + <code>os.O_EXCL</code> + </li> + </ul> + <p>(One of <code>os.O_RDONLY</code>, <code>os.O_WRONLY</code>, or + <code>os.O_RDWR</code> will always be set.)</p> + The <code>attr</code> object contains requested attributes of the + file if it has to be created. Some or all attribute fields may be + missing if the client didn't specify them. + <dl><dt></dt><dd> + <dl><dt><b>Parameters:</b></dt> + <dd><code><b>path</b></code> - + the requested path (relative or absolute) of the file to be + opened. + <br /><i> + (type=str)</i> + <dd><code><b>flags</b></code> - + flags or'd together from the <code>os</code> module indicating + the requested mode for opening the file. + <br /><i> + (type=int)</i> + <dd><code><b>attr</b></code> - + requested attributes of the file if it is newly created. + <br /><i> + (type=<a href="paramiko.SFTPAttributes-class.html" + class="link"><code>SFTPAttributes</code></a>)</i> + </dd> + </dl> + <dl><dt><b>Returns:</b></dt> + <dd> + a new <a href="paramiko.SFTPHandle-class.html" + class="link"><code>SFTPHandle</code></a> <i>or error code</i>. + @rtype <a href="paramiko.SFTPHandle-class.html" + class="link"><code>SFTPHandle</code></a> + </dd> + </dl> +<p><b>Note:</b> The SFTP protocol defines all files to be in "binary" mode. +There is no equivalent to python's "text" mode. +</p> + + </dd></dl> +</td></tr></table> + +<a name="readlink"></a> +<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td> + <h3><span class="sig"><span class="sig-name">readlink</span>(<span class=sig-arg>self</span>, + <span class=sig-arg>path</span>)</span> + </h3> + Return the target of a symbolic link (or shortcut) on the server. If + the specified path doesn't refer to a symbolic link, an error should be + returned. + <dl><dt></dt><dd> + <dl><dt><b>Parameters:</b></dt> + <dd><code><b>path</b></code> - + path (relative or absolute) of the symbolic link. + <br /><i> + (type=str)</i> + </dd> + </dl> + <dl><dt><b>Returns:</b></dt> + <dd> + the target path of the symbolic link, or an error code like <a + href="../private/paramiko-module.html#SFTP_NO_SUCH_FILE" + class="link"><code>SFTP_NO_SUCH_FILE</code></a>. + <br /><i> + (type=str <i>or error code</i>)</i> + </dd> + </dl> + </dd></dl> +</td></tr></table> + +<a name="remove"></a> +<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td> + <h3><span class="sig"><span class="sig-name">remove</span>(<span class=sig-arg>self</span>, + <span class=sig-arg>path</span>)</span> + </h3> + Delete a file, if possible. + <dl><dt></dt><dd> + <dl><dt><b>Parameters:</b></dt> + <dd><code><b>path</b></code> - + the requested path (relative or absolute) of the file to + delete. + <br /><i> + (type=str)</i> + </dd> + </dl> + <dl><dt><b>Returns:</b></dt> + <dd> + an SFTP error code like <a + href="../private/paramiko-module.html#SFTP_OK" + class="link"><code>SFTP_OK</code></a>. + <br /><i> + (type=int)</i> + </dd> + </dl> + </dd></dl> +</td></tr></table> + +<a name="rename"></a> +<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td> + <h3><span class="sig"><span class="sig-name">rename</span>(<span class=sig-arg>self</span>, + <span class=sig-arg>oldpath</span>, + <span class=sig-arg>newpath</span>)</span> + </h3> + Rename (or move) a file. The SFTP specification implies that this + method can be used to move an existing file into a different folder, + and since there's no other (easy) way to move files via SFTP, it's + probably a good idea to implement "move" in this method too, + even for files that cross disk partition boundaries, if at all + possible. + <dl><dt></dt><dd> + <dl><dt><b>Parameters:</b></dt> + <dd><code><b>oldpath</b></code> - + the requested path (relative or absolute) of the existing + file. + <br /><i> + (type=str)</i> + <dd><code><b>newpath</b></code> - + the requested new path of the file. + <br /><i> + (type=str)</i> + </dd> + </dl> + <dl><dt><b>Returns:</b></dt> + <dd> + an SFTP error code like <a + href="../private/paramiko-module.html#SFTP_OK" + class="link"><code>SFTP_OK</code></a>. + <br /><i> + (type=int)</i> + </dd> + </dl> +<p><b>Note:</b> You should return an error if a file with the same name as +<code>newpath</code> already exists. (The rename operation should be +non-desctructive.) +</p> + + </dd></dl> +</td></tr></table> + +<a name="rmdir"></a> +<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td> + <h3><span class="sig"><span class="sig-name">rmdir</span>(<span class=sig-arg>self</span>, + <span class=sig-arg>path</span>)</span> + </h3> + Remove a directory if it exists. The <code>path</code> should refer + to an existing, empty folder -- otherwise this method should return an + error. + <dl><dt></dt><dd> + <dl><dt><b>Parameters:</b></dt> + <dd><code><b>path</b></code> - + requested path (relative or absolute) of the folder to + remove. + <br /><i> + (type=str)</i> + </dd> + </dl> + <dl><dt><b>Returns:</b></dt> + <dd> + an SFTP error code like <a + href="../private/paramiko-module.html#SFTP_OK" + class="link"><code>SFTP_OK</code></a>. + <br /><i> + (type=int)</i> + </dd> + </dl> + </dd></dl> +</td></tr></table> + +<a name="session_ended"></a> +<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td> + <h3><span class="sig"><span class="sig-name">session_ended</span>(<span class=sig-arg>self</span>)</span> + </h3> + The SFTP server session has just ended, either cleanly or via an + exception. This method is meant to be overridden to perform any + necessary cleanup before this <code>SFTPServerInterface</code> object + is destroyed. + <dl><dt></dt><dd> + </dd></dl> +</td></tr></table> + +<a name="session_started"></a> +<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td> + <h3><span class="sig"><span class="sig-name">session_started</span>(<span class=sig-arg>self</span>)</span> + </h3> + The SFTP server session has just started. This method is meant to be + overridden to perform any necessary setup before handling callbacks + from SFTP operations. + <dl><dt></dt><dd> + </dd></dl> +</td></tr></table> + +<a name="stat"></a> +<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td> + <h3><span class="sig"><span class="sig-name">stat</span>(<span class=sig-arg>self</span>, + <span class=sig-arg>path</span>)</span> + </h3> + Return an <a href="paramiko.SFTPAttributes-class.html" + class="link"><code>SFTPAttributes</code></a> object for a path on the + server, or an error code. If your server supports symbolic links (also + known as "aliases"), you should follow them. (<a + href="../private/paramiko.SFTPServerInterface-class.html#lstat" + class="link"><code>lstat</code></a> is the corresponding call that + doesn't follow symlinks/aliases.) + <dl><dt></dt><dd> + <dl><dt><b>Parameters:</b></dt> + <dd><code><b>path</b></code> - + the requested path (relative or absolute) to fetch file + statistics for. + <br /><i> + (type=str)</i> + </dd> + </dl> + <dl><dt><b>Returns:</b></dt> + <dd> + an attributes object for the given file, or an SFTP error code + (like <a + href="../private/paramiko-module.html#SFTP_PERMISSION_DENIED" + class="link"><code>SFTP_PERMISSION_DENIED</code></a>). + <br /><i> + (type=<a href="paramiko.SFTPAttributes-class.html" + class="link"><code>SFTPAttributes</code></a> <i>or error + code</i>)</i> + </dd> + </dl> + </dd></dl> +</td></tr></table> + +<a name="symlink"></a> +<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td> + <h3><span class="sig"><span class="sig-name">symlink</span>(<span class=sig-arg>self</span>, + <span class=sig-arg>target_path</span>, + <span class=sig-arg>path</span>)</span> + </h3> + Create a symbolic link on the server, as new pathname + <code>path</code>, with <code>target_path</code> as the target of the + link. + <dl><dt></dt><dd> + <dl><dt><b>Parameters:</b></dt> + <dd><code><b>target_path</b></code> - + path (relative or absolute) of the target for this new + symbolic link. + <br /><i> + (type=str)</i> + <dd><code><b>path</b></code> - + path (relative or absolute) of the symbolic link to + create. + <br /><i> + (type=str)</i> + </dd> + </dl> + <dl><dt><b>Returns:</b></dt> + <dd> + an error code like <code>SFTP_OK</code>. + <br /><i> + (type=int)</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:48 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> |