Namespace FluentFTP
Classes
- AsyncFtpClient
An FTP client that manages a connection to a single FTP server. Interacts with any FTP/FTPS server and provides a high-level and low-level API to work with files and folders. Uses asynchronous operations only. For the sync version use
FtpClient
.Debugging problems with FTP is much easier when you enable logging. Visit our Github Wiki for more info.
- FtpClient
An FTP client that manages a connection to a single FTP server. Interacts with any FTP/FTPS server and provides a high-level and low-level API to work with files and folders. Uses synchronous operations only. For the async version use
AsyncFtpClient
.Debugging problems with FTP is much easier when you enable logging. Visit our Github Wiki for more info.
- FtpClientState
The current "state" of the client
- FtpConfig
Holds all the configuration settings for a single FTP client. One FtpConfig object can only be bound to one client at a time. If you want to reuse it across multiple FTP clients, then clone it and then reuse it.
- FtpDataStream
Base class for data stream connections
- FtpFxpSession
Object that keeps track of an active FXP Connection between 2 FTP servers.
- FtpFxpSessionAsync
Object that keeps track of an active FXP Connection between 2 FTP servers.
- FtpHash
Represents a computed hash of an object on the FTP server. See the following link for more information: http://tools.ietf.org/html/draft-bryan-ftpext-hash-02
- FtpListItem
Represents a file system object on the server
- FtpProfile
The current "profile" defining the client
- FtpProgress
Class to report FTP file transfer progress during upload or download of files
- FtpProxyProfile
Connection profile for a proxy connection.
- FtpResult
Stores the result of a file transfer when UploadDirectory or DownloadDirectory is used.
- FtpSizeReply
Reply from a SIZE command
- FtpSocketStream
Stream class used for talking. Used by FtpClient, extended by FtpDataStream
- FtpSslValidationEventArgs
Event args for the FtpSslValidationError delegate
Structs
- FtpLogEntry
Metadata of a single log message.
- FtpReply
Represents a reply to an event on the server
Interfaces
- IAsyncFtpClient
Interface for the AsyncFtpClient class. For detailed documentation of the methods, please see the FtpClient class or check the Wiki on the FluentFTP Github project.
- IBaseFtpClient
Base object for FtpClient, AsyncFtpClient and the internal client
- IFtpClient
Interface for the FtpClient class. For detailed documentation of the methods, please see the FtpClient class or check the Wiki on the FluentFTP Github project.
- IInternalFtpClient
Interface for the InternalFtpClient class. For detailed documentation of the methods, please see the FtpClient class or check the Wiki on the FluentFTP Github project.
Enums
- FtpCapability
Server features
- FtpCompareOption
Flags that control how file comparison is performed. If you are unsure what to use, set it to Auto.
- FtpCompareResult
The result of a file comparison operation.
- FtpDataConnectionType
Data connection type
PASV, EPSV, PORT, EPRT correspond directly to the "classic" FTP connection types available on most "modern" FTP servers. These are subject to the well known caveats and you might like to examine the following enhanced alternatives:
AutoActive, AutoPassive are FluentFTP extensions to make a fallback to the non-extended versions of EPSV and EPRT automatic if not supported.
PassiveExtended delivers the functionality of EPSV on servers that do not support this command.
PassiveAllowUnroutable makes using PASV work inside local networks.
- FtpDataType
Type of data transfer to do
- FtpDate
Controls how timestamps returned by the server are converted.
- FtpEncryptionMode
Defines the type of encryption to use
- FtpError
Defines how multi-file processes should handle a processing error.
- FtpExists
This enum is obsolete. Please use FtpRemoteExists instead.
- FtpFolderSyncMode
Determines how we handle downloading and uploading folders
- FtpHashAlgorithm
Different types of hashing algorithms for computing checksums.
- FtpIpVersion
IP Versions to allow when connecting to a server.
- FtpListOption
Flags that can control how a file listing is performed. If you are unsure what to use, set it to Auto.
- FtpLocalExists
Determines how we handle partially downloaded files
- FtpNavigate
Directory navigation mode that control how server-side directory traversal is performed. Manual mode is the legacy version which allows users full control of the working directory. All the other modes are smarter automatic versions where FluentFTP will take control of the working directory when executing FTP subcommands that accept a pathname[+filename] combination.
- FtpObjectSubType
Type of file system of object
- FtpObjectType
Type of file system of object
- FtpOperatingSystem
Defines the operating system of the FTP server.
- FtpOperator
For setting up rules
- FtpParser
The type of response the server responded with
- FtpPermission
Types of file permissions
- FtpRemoteExists
Defines the behavior for uploading/downloading files that already exist
- FtpResponseType
The type of response the server responded with
- FtpServer
Defines the type of the FTP server software. Add constants here as you add detection scripts for individual server types.
- FtpSpecialPermissions
Types of special UNIX permissions
- FtpStatus
The result of an upload or download operation
- FtpTraceLevel
Defines the level of the tracing message. Depending on the framework version this is translated to an equivalent logging level in System.Diagnostices (if available)
- FtpVerify
Defines if additional verification and actions upon failure that should be performed when uploading/downloading files using the high-level APIs. Ignored if the FTP server does not support any hashing algorithms.
- FtpVerifyMethod
Defines which verification types should be performed when uploading/downloading files using the high-level APIs. Multiple verification types can be combined.
- FtpZOSListRealm
Flags that can control how a file listing is performed. If you are unsure what to use, set it to Auto.
- FtpsBuffering
Determines how SSL Buffering is handled
Delegates
- CustomRemoteCertificateValidationCallback
Callback for any custom streams to handle certificate validation
- FtpConfig.CustomParser
Callback format to implement your custom FTP listing line parser.
- FtpSocketStreamSslValidation
Event fired if a bad SSL certificate is encountered. This even is used internally; if you don't have a specific reason for using it you are probably looking for FtpSslValidation.
- FtpSslValidation
Event is fired when a SSL certificate needs to be validated