more _ftp_cwd

This commit is contained in:
Sterling Hughes 2001-08-15 07:21:21 +00:00
parent 546f4dca52
commit 7d17713d62
1 changed files with 7 additions and 12 deletions

View File

@ -632,6 +632,8 @@ CURLcode _ftp_cwd(struct connectdata *conn, char *path)
failf(conn->data, "Couldn't change back to directory %s", path); failf(conn->data, "Couldn't change back to directory %s", path);
return CURLE_FTP_ACCESS_DENIED; return CURLE_FTP_ACCESS_DENIED;
} }
return CURLE_OK;
} }
static static
@ -667,9 +669,9 @@ CURLcode _ftp(struct connectdata *conn)
return result; return result;
} }
/* This is a re-used connection. Since we change directory to where the /* This is a re-used connection. Since we change directory to where the
transfer is taking place, we must now get back to the original dir transfer is taking place, we must now get back to the original dir
where we ended up after login: */ where we ended up after login: */
if (conn->bits.reuse) { if (conn->bits.reuse) {
if ((result = _ftp_cwd(conn, ftp->entrypath)) != CURLE_OK) if ((result = _ftp_cwd(conn, ftp->entrypath)) != CURLE_OK)
return result; return result;
@ -678,15 +680,8 @@ CURLcode _ftp(struct connectdata *conn)
/* change directory first! */ /* change directory first! */
if(ftp->dir && ftp->dir[0]) { if(ftp->dir && ftp->dir[0]) {
ftpsendf(conn->firstsocket, conn, "CWD %s", ftp->dir); if ((result = _ftp_cwd(conn, ftp->dir)) != CURLE_OK)
nread = Curl_GetFTPResponse(conn->firstsocket, buf, conn, &ftpcode); return result;
if(nread < 0)
return CURLE_OPERATION_TIMEOUTED;
if(ftpcode != 250) {
failf(data, "Couldn't change to directory %s", ftp->dir);
return CURLE_FTP_ACCESS_DENIED;
}
} }
if(data->bits.get_filetime && ftp->file) { if(data->bits.get_filetime && ftp->file) {