If the method succeeds, the return value is non-zero. If the
command is not recognized, the method will return zero. If the method
fails, the GetLastError method will return more information
about the last error that has occurred.
The DisableCommand method is used to disable
access to a specific command on the server. When a command is
disabled, it will also disable any corresponding feature related to
that command. For example, if the MDTM command is disabled and a
client issues the FEAT command to request a list of supported
features, the command will no longer be listed. This method is
typically used to disable certain commands for compatibility with older
client software. The IsCommandEnabled method can be used
to determine if a command is enabled or not.
The command name provided to this method must match the commands
defined in RFC 959 or related protocol standards. It is important
to distinguish between commands recognized by an FTP server and the
commands that client programs may use. For example, the standard
Windows FTP command line program provides commands such as GET and PUT
to download and upload files. However, those are not the actual
commands sent to a server. Instead, the corresponding server commands
issued by a client application would bet RETR (retrieve) and STOR
(store). Refer to File Transfer
Protocol Commands for a complete list of server commands.
Some commands cannot be disabled because they are required to
perform essential server functions. For example, the USER and PASS
commands are required to perform client authentication and therefore
cannot be disabled. If you attempt to disable a required command, this
method will return zero and the last error code will be set to
ST_ERROR_COMMAND_REQUIRED. Because this method affects all clients
connected to the server, it should not be used to limit access to
certain commands for specific clients. Instead, either assign the
client the appropriate permissions using the AuthenticateClient
method, or use an event handler to filter the commands.