An FTP protocol implementation
Class | InvalidPath | Internal exception used to signify an error during parsing a path. |
Function | toSegments | Normalize a path, as represented by a list of strings each representing one segment of the path. |
Function | errnoToFailure | Map OSError and IOError to standard FTP
errors. |
Class | FTPCmdError | Generic exception for FTP commands. |
Class | FileNotFoundError | Raised when trying to access a non existent file or directory. |
Class | AnonUserDeniedError | Raised when an anonymous user issues a command that will alter the filesystem |
Class | PermissionDeniedError | Raised when access is attempted to a resource to which access is not allowed. |
Class | IsNotADirectoryError | Raised when RMD is called on a path that isn't a directory. |
Class | FileExistsError | Raised when attempted to override an existing resource. |
Class | IsADirectoryError | Raised when DELE is called on a path that is a directory. |
Class | CmdSyntaxError | Raised when a command syntax is wrong. |
Class | CmdArgSyntaxError | Raised when a command is called with wrong value or a wrong number of arguments. |
Class | CmdNotImplementedError | Raised when an unimplemented command is given to the server. |
Class | CmdNotImplementedForArgError | Raised when the handling of a parameter for a command is not implemented by the server. |
Class | FTPError | Undocumented |
Class | PortConnectionError | Undocumented |
Class | BadCmdSequenceError | Raised when a client sends a series of commands in an illogical sequence. |
Class | AuthorizationError | Raised when client authentication fails. |
Function | debugDeferred | Undocumented |
Class | DTP | No class docstring; 2/15 methods documented |
Class | DTPFactory | Client factory for data transfer process protocols. |
Class | ASCIIConsumerWrapper | Undocumented |
Class | FileConsumer | A consumer for FTP input that writes data to a file. |
Class | FTPOverflowProtocol | FTP mini-protocol for when there are too many connections. |
Class | FTP | Protocol Interpreter for the File Transfer Protocol |
Class | FTPFactory | A factory for producing ftp protocol instances |
Interface | IFTPShell | An abstraction of the shell commands used by the FTP protocol for a given user account. |
Interface | IReadFile | A file out of which bytes may be read. |
Interface | IWriteFile | A file into which bytes may be written. |
Class | FTPAnonymousShell | An anonymous implementation of IFTPShell |
Class | FTPShell | An authenticated implementation of IFTPShell . |
Class | BaseFTPRealm | Base class for simple FTP realms which provides an easy hook for specifying the home directory for each user. |
Class | FTPRealm | |
Class | SystemFTPRealm | SystemFTPRealm
uses system user account information to decide what the home directory for
a particular avatarId is. |
Class | ConnectionLost | Undocumented |
Class | CommandFailed | Undocumented |
Class | BadResponse | Undocumented |
Class | UnexpectedResponse | Undocumented |
Class | UnexpectedData | Undocumented |
Class | FTPCommand | Undocumented |
Class | ProtocolWrapper | Undocumented |
Interface | IFinishableConsumer | A Consumer for producers that finish. |
Class | SenderProtocol | No class docstring; 2/8 methods documented |
Function | decodeHostPort | Decode an FTP response specifying a host and port. |
Function | encodeHostPort | Undocumented |
Class | FTPDataPortFactory | Factory for data connections that use the PORT command |
Class | FTPClientBasic | Foundations of an FTP client. |
Class | FTPClient | FTPClient is a
client implementation of the FTP protocol which exposes FTP commands as
methods which return Deferred s. |
Class | FTPFileListProtocol | Parser for standard FTP file listings |
Function | parsePWDResponse | Returns the path from a response to a PWD command. |
Function | _isGlobbingExpression | Helper for checking if a FTPShell `segments` contains a wildcard Unix expression. |
Function | _getgroups | Return the primary and supplementary groups for the given UID. |
Function | _testPermissions | checks to see if uid has proper permissions to access path with mode |
Class | _FileReader | Undocumented |
Class | _FileWriter | Undocumented |
Function | _unwrapFirstError | Undocumented |
Class | _PassiveConnectionFactory | Undocumented |
Normalize a path, as represented by a list of strings each representing one segment of the path.
Helper for checking if a FTPShell `segments` contains a wildcard Unix expression.
Only filename globbing is supported. This means that wildcards can only be presents in the last element of `segments`.
Parameters | segments | List of path elements as used by the FTP server protocol. (type: list ) |
Returns | True if `segments` contains a globbing expression. (type: Boolean) |
checks to see if uid has proper permissions to access path with mode
Parameters | uid | numeric user id (type: int ) |
gid | numeric group id (type: int ) | |
spath | the path on the server to test (type: str ) | |
mode | 'r' or 'w' (read or write) (type: str ) | |
Returns | True if the given credentials have the specified form of access to the
given path (type: bool ) |
Decode an FTP response specifying a host and port.
Returns | a 2-tuple of (host, port). |
Returns the path from a response to a PWD command.
Responses typically look like:
257 "/home/andrew" is current directory.
For this example, I will return '/home/andrew'
.
If I can't find the path, I return None
.