curl: make --ftp-create-dirs retry on failure

The underlying libcurl option used for this feature is
CURLOPT_FTP_CREATE_MISSING_DIRS which has the ability to retry the dir
creation, but it was never set to do that by the command line tool.

Now it does.

Bug: https://curl.haxx.se/mail/archive-2016-04/0021.html
Reported-by: John Wanghui
Help-by: Leif W
This commit is contained in:
Daniel Stenberg 2016-04-22 15:25:13 +02:00
Родитель 5d8093e7d5
Коммит 3c1e84f569
1 изменённых файлов: 5 добавлений и 2 удалений

Просмотреть файл

@ -1180,9 +1180,12 @@ static CURLcode operate_do(struct GlobalConfig *global,
my_setopt(curl, CURLOPT_SSLENGINE_DEFAULT, 1L); my_setopt(curl, CURLOPT_SSLENGINE_DEFAULT, 1L);
} }
/* new in curl 7.10.7, extended in 7.19.4 but this only sets 0 or 1 */ /* new in curl 7.10.7, extended in 7.19.4. Modified to use
CREATE_DIR_RETRY in 7.49.0 */
my_setopt(curl, CURLOPT_FTP_CREATE_MISSING_DIRS, my_setopt(curl, CURLOPT_FTP_CREATE_MISSING_DIRS,
config->ftp_create_dirs?1L:0L); (long)(config->ftp_create_dirs?
CURLFTP_CREATE_DIR_RETRY:
CURLFTP_CREATE_DIR_NONE));
/* new in curl 7.10.8 */ /* new in curl 7.10.8 */
if(config->max_filesize) if(config->max_filesize)