Specifies the server features that are available for the current client session.
This enumeration has a FlagsAttribute attribute that allows a bitwise combination of its member values.
When a client connection is first established, all features are enabled by default. However, as the client issues commands to the server, if the server reports that the command is unrecognized that feature will automatically be disabled in the client.
For example, the first time an application calls the GetFileSize method to determine the size of a file, the class library will try to use the SIZE command. If the server reports that the SIZE command is not available, that feature will be disabled and the class will not use the command again during the session unless it is explicitly re-enabled. This is designed to prevent the class from repeatedly sending invalid commands to a server, which may result in the server aborting the connection.
| Member Name | Description | Value |
|---|---|---|
| featureSize | The server supports the SIZE command to determine the size of a file. If this feature is not enabled, the library will attempt to use the STAT command to determine the file size. | 1 |
| featureStat | The server supports using the STAT command to return information about a specific file. If this feature is not enabled, the client may not be able to obtain information about a specific file such as its size, permissions or modification time. | 2 |
| featureMdtm | The server supports the MDTM command to obtain information about the modification time for a specific file. This command may also be used to set the file time on the server. | 4 |
| featureRest | The server supports restarting file transfers using the REST command. If this feature is not enabled, the client will not be able to restart file transfers and must upload or download the complete file. | 8 |
| featureSite | The server supports site specific commands using the SITE command. If this feature is not enabled, no site specific commands will be sent to the server. | 16 |
| featureIdle | The server supports setting the idle timeout period using the SITE IDLE command to specify the number of seconds that the client may idle before the server terminates the connection. | 32 |
| featureChmod | The server supports modifying the permissions of a specific file using the SITE CHMOD command. If this feature is not enabled, the client will not be able to set the permissions for a file. | 64 |
| featureAuth | The server supports explicit SSL sessions using the AUTH command. If this feature is not enabled, the client will only be able to connect to a secure server that uses implicit SSL connections. Changing this feature has no effect on standard, non-secure connections. | 128 |
| featurePbsz | The server supports the PBSZ command which specifies the buffer size used with secure data connections. If this feature is disabled, it may prevent the client from changing the protection level on the data channel. Changing this feature has no effect on standard, non-secure connections. | 256 |
| featureProt | The server supports the PROT command which specifies the protection level for the data channel. If this feature is disabled, the client will be unable to change the protection level on the data channel. Changing this feature has no effect on standard, non-secure connections. | 512 |
| featureCcc | The server supports the CCC command which returns the command channel to a non-secure mode. Changing this feature has no effect on standard, non-secure connections. | 1024 |
Namespace: SocketTools
Assembly: SocketTools.FileTransfer (in SocketTools.FileTransfer.dll)