| Index: net/ftp/ftp_network_transaction.cc
|
| diff --git a/net/ftp/ftp_network_transaction.cc b/net/ftp/ftp_network_transaction.cc
|
| index ecbe6cd858138e3653f8fcc4f6b3b0cb2fd67c71..1b5bd92f61465ce67121b137bb3bbd04c0f64450 100644
|
| --- a/net/ftp/ftp_network_transaction.cc
|
| +++ b/net/ftp/ftp_network_transaction.cc
|
| @@ -1149,7 +1149,13 @@ int FtpNetworkTransaction::ProcessResponseCWDNotADirectory() {
|
|
|
| // LIST command
|
| int FtpNetworkTransaction::DoCtrlWriteLIST() {
|
| - std::string command(system_type_ == SYSTEM_TYPE_VMS ? "LIST *.*;0" : "LIST");
|
| + // Use the -l option for mod_ftp configured in LISTIsNLST mode: the option
|
| + // forces LIST output instead of NLST (which would be ambiguous for us
|
| + // to parse).
|
| + std::string command("LIST -l");
|
| + if (system_type_ == SYSTEM_TYPE_VMS)
|
| + command = "LIST *.*;0";
|
| +
|
| next_state_ = STATE_CTRL_READ;
|
| return SendFtpCommand(command, command, COMMAND_LIST);
|
| }
|
|
|