Rebex
Products Downloads Buy Support Contact
Show / Hide Table of Contents

FileTransferSettings Class

Namespace: Rebex.Net
Assembly: Rebex.FileTransfer.dll (version 7.0.9147)

Specifies various settings for FileTransferClient.

Syntax
public class FileTransferSettings : IFtpSettings, ICloneable
Inheritance
Object
FileTransferSettings
Implements
IFtpSettings
ICloneable
Inherited Members
Object.Equals(Object)
Object.Equals(Object, Object)
Object.GetHashCode()
Object.GetType()
Object.MemberwiseClone()
Object.ReferenceEquals(Object, Object)
Object.ToString()

Properties

Name Description
As400ListingDateFormat

Forces listing date format on AS/400 like systems. Format is 'DMY' for day,month,year; 'MDY' for month, day, year; and so on.

CompressionLevel

Gets or sets the compression level used when uploading in mode Z (Zlib). Possible values are 0-9, where 0 means no compression (fastest) and 9 means best compression (slowest). Default value is 6 (medium compression and speed).

ConnectPassiveLater

Makes the passive mode transfer initialize the connection only after the LIST/NLST/RETR/STOR command has been sent.

DisableFxpStatWorkaround

Gets or sets a value that disables workaround for a SSH_FXP_STAT command, which is known not to work correctly on some servers.

DisableImplicitAs400NameFormat

Gets or sets a value indicating whether the SITE NAMEFMT 1 is used when AS/400 system is detected. Default is false, which means the SITE NAMEFMT 1 is used.

DisableInvalidPassiveModeAddressWorkaround

Disables a workaround for FTP servers that announce private range IP addresses even though a public IP was used to connect to them. By default, when such server is detected, an IP address announced by the server in response to PASV command used is overrode with an IP used by the control connection.

DisablePathNormalization

Gets or sets a value that disables normalization of paths passed to all commands (paths are used unchanged).

DisableProgressPercentage

Disables progress percentage reporting.

DisablePutFileZeroOffsetTruncate

Gets or sets a value that specifies whether Sftp.PutFile method truncates files when a zero remote offset is specified.

DisableSftp4

Disable SFTP v4 and only use v3.

DisableTransferQueue

Disable queuing of read and write requests.

DoNotDetectFeatures

Disables feature detection using FEAT and other commands.

DoNotSendAbort

Do not send the ABOR command when aborting download.

DoNotSendSignals

Do not send abort signals when aborting download.

DownloadBufferSize

Sets the size of data packets used during download. Supported sizes are 4 KB to 48 KB.

DownloadQueueLength

Sets the length of packed queue for downloads.

EnableChecksumVerification

Gets or sets a value indicating whether to perform checksum verification after successful file transfer. Not available for methods with Stream arguments, the checksum is computed from file on disk. Use PreferredChecksumAlgorithm to specify the preferred checksum algorithm.

EnableControlConnectionFlushing

Enables reading and throwing out any unexpected incoming responses when sending an FTP command.

EnableFactsNegotiation

Gets or sets a value indicating whether to attempt to negotiate extended MLST/MLSD facts using OPTS MLST command.

EnableFileSync

Gets or sets a value indicating whether to synchronize file changes after successful file transfer by calling 'fsync' when a file has been uploaded, ensuring that all file data has been transferred to the storage device. Only supported when 'fsync@openssh.com' extension is available.

EnableMultipleBlockingCalls

Makes it possible to call multiple methods from different threads at once. The calls will block until the operation is completed.

ForceActiveCcc

Forces the CCC command behavior that was used by older Rebex FTP releases.

ForceExtendedDataChannelCommand

Gets or sets a value indicating whether to use EPSV/EPRT commands to initiate a data channel.

ForceListHiddenFiles

Use "LIST -la" instead of "LIST" in GetList()/GetRawList() methods.

ForceMdtmForGetFileDateTime

Forces MDTM command to be always used by GetFileDateTime(String) instead of MLST (which is used when available by default).

ForceSimpleDirectoryExists

Specifies whether to just use a combination of PWD and CWD commands when determining remote directory existence.

FtpSecureTransfers

Gets or sets a value which specifies whether data transfers are secure. This is used only when FTP protocol is used.

GetFileOpenRemoteFirst

Gets or sets a value that specifies whether to open the remote file first while downloading (before opening the local file).

IgnorePassiveModeAddress

Overrides an IP address announced by the server in response to PASV command with an IP used by the control connection.

KeepAliveDuringTransfer

Send NOOP command during file transfers every 10 minutes.

KeepAliveDuringTransferInterval

Gets or sets the length of interval (in seconds) between NOOP commands sent during transfer when the Rebex.Net.FtpOptions.KeepAliveDuringTransfer option is enabled.

MdtmSetTimeOffset

Gets or sets a time offset, which is added to date/time value when sending MDTM command to the FTP server. If this offset is set, other workarounds for MDTM command are disabled.

MultiFileLinkMode

Gets or sets the processing mode of detected links in multi-file operations.

MultiFileMoveMode

Gets or sets the move behavior in multi-file transfers.

PauseBeforeUploadClose

Performs a small pause before closing the encrypted upload connection when the transfer is finished. Used as a workaround for servers that are unable to correctly handle the last block data if it is followed by a TLS CloseNotify message in the same TCP block.

PreferredChecksumAlgorithm

Gets or sets the preferred checksum algorithm. Default is SHA1. Applies to multi-file transfers (with OverwriteDifferentChecksum). and single-file transfers (when EnableChecksumVerification has been enabled).

RaiseEventsFromCurrentThread

Specifies whether to raise asynchronous events from the current working thread or whether to raise them using a SynchronizationContext available when an asynchronous operation was started.

RecheckItemExistence

In multi-file operations it forces checking, whether currently processing item still exists.

RestoreDateTime

Gets or sets a value that indicates which date/time is restored after successful transfer.

ReuseControlConnectionSession

Re-use control connection session ID for data connections.

SendDataAsynchronously

Deprecated. Doesn't have any effect now.

SkipDuplicateItems

Gets or sets a value that indicates whether to skip duplicate items in directory listings or whether to fail.

SshParameters

Gets or sets SSH session parameters.

SslAcceptAllCertificates

Specifies whether to accept all server certificates by default. This is strongly discouraged in production environment.

SslAllowedCurves

Gets or sets the group of allowed elliptic curves (for ECDHE cipher suites).

SslAllowedSuites

Gets or sets the group of allowed TLS/SSL cipher suites.

SslAllowedVersions

Gets or sets allowed TLS/SSL versions.

SslAllowVulnerableSuites

Gets or sets a value indicating whether vulnerable ciphers might be enabled using SslAllowedSuites property.

SslClientCertificateRequestHandler

Gets or sets TLS/SSL client certificate request handler.

SslDoNotInsertEmptyFragment

Do not send empty record after successful handshake with CBC ciphers.

SslMinimumDiffieHellmanKeySize

Gets or sets the minimum allowed size (in bits) of the ephemeral Diffie-Hellman prime. Valid values are from 512 to 16384, inclusive.

SslReuseSessions

Gets or sets a value indicating whether to reuse TLS/SSL sessions for data transfers. Default value is true.

SslServerCertificateValidationOptions

Gets or sets validation options to use when validating a server certificate using the default certificate validator. This value is passed as Options as well.

SslServerCertificateVerifier

Gets or sets TLS/SSL server certificate verifier.

SslServerName

Gets or sets TLS/SSL server's common name.

SslUpgradeType

Gets or sets the type of TLS/SSL initialization for explicit TLS/SSL mode.

TimeComparisonGranularity

Gets or sets a value which specifies granularity for time comparisons.

TimeoutAsynchronousMethods

Makes Timeout property affect asynchronous methods as well. By default, it only affects the synchronous methods.

TryPasswordFirst

When authenticating using both password and private key, try password authentication first (default is to try the private key first).

UploadBufferSize

Sets the size of data packets used during upload. Supported sizes are 4 KB to 48 KB.

UploadCommand

Specifies FTP command for uploading files. STOR is used by default.

UploadQueueLength

Sets the length of packed queue for uploads.

UseLargeBuffers

Use larger receive buffer for incoming and outgoing data.

UseLegacyPaths

Specifies whether to use old API style paths (relative) or new API style paths (absolute) in multi-file transfers.

UsePosixRename

Gets or sets a value that indicates whether to use POSIX rename instead of standard SFTP rename (when available).

UseReadWriteModeForDownloads

Opens file for downloading (in GetFile(String, String)/Download(String, String, TraversalMode) methods) in read-write mode instead of read-only mode.

UseSmallPackets

Use small data packets (4KB each) during upload and never split them.

WaitForServerWelcomeMessage

Wait for server SSH protocol welcome message before sending the client one.

Methods

Name Description
ClearCommandChannel()

Calls ClearCommandChannel on the underlying Ftp object. This method cannot be used with SFTP protocol.

ClearCommandChannelAsync(Object)

Calls ClearCommandChannel on the underlying Ftp object. This method cannot be used with SFTP protocol.

Clone()

Clones this instance.

GetSymmetricCipherSuites()

Gets an enumeration of allowed symmetric cipher suites for TLS 1.3 and their order. See SetSymmetricCipherSuites(TlsSymmetricCipherSuite[]) for more info.

SetSymmetricCipherSuites(TlsSymmetricCipherSuite[])

Specifies a list of allowed symmetric cipher suites for TLS 1.3 and their order. For TLS 1.2 and lower, use SslAllowedSuites property instead.

In This Article
  • Properties
  • Methods
© REBEX ČR s.r.o. Back to top
Privacy policy
Manage cookies