]> granicus.if.org Git - curl/commitdiff
more _ftp_cwd
authorSterling Hughes <sterling@bumblebury.com>
Wed, 15 Aug 2001 07:21:21 +0000 (07:21 +0000)
committerSterling Hughes <sterling@bumblebury.com>
Wed, 15 Aug 2001 07:21:21 +0000 (07:21 +0000)
lib/ftp.c

index 4c1ba71bccd03a60371f3a68a7c79c54b8c4729b..7afc53e9e02fd8d50562f49518f6fa0804d6b9ba 100644 (file)
--- a/lib/ftp.c
+++ b/lib/ftp.c
@@ -632,6 +632,8 @@ CURLcode _ftp_cwd(struct connectdata *conn, char *path)
     failf(conn->data, "Couldn't change back to directory %s", path);
     return CURLE_FTP_ACCESS_DENIED;
   }
+
+  return CURLE_OK;
 }
 
 static
@@ -667,9 +669,9 @@ CURLcode _ftp(struct connectdata *conn)
       return result;
   }
     
-    /* 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
-       where we ended up after login: */
+  /* 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
+     where we ended up after login: */
   if (conn->bits.reuse) {
     if ((result = _ftp_cwd(conn, ftp->entrypath)) != CURLE_OK)
       return result;
@@ -678,15 +680,8 @@ CURLcode _ftp(struct connectdata *conn)
 
   /* change directory first! */
   if(ftp->dir && ftp->dir[0]) {
-    ftpsendf(conn->firstsocket, conn, "CWD %s", ftp->dir);
-    nread = Curl_GetFTPResponse(conn->firstsocket, buf, conn, &ftpcode);
-    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 ((result = _ftp_cwd(conn, ftp->dir)) != CURLE_OK)
+        return result;
   }
 
   if(data->bits.get_filetime && ftp->file) {