Commit 72c14bd6 authored by Yang Tse's avatar Yang Tse
Browse files

ftp.c: fix ftp active connects which got broken with commit fdf157ab

parent 0413e248
Loading
Loading
Loading
Loading
+7 −7
Original line number Diff line number Diff line
@@ -965,13 +965,6 @@ static CURLcode ftp_state_use_port(struct connectdata *conn,
    conn->bits.ftp_use_eprt = TRUE;
#endif

  /* we set the secondary socket variable to this for now, it is only so that
     the cleanup function will close it in case we fail before the true
     secondary stuff is made */
  if(CURL_SOCKET_BAD != conn->sock[SECONDARYSOCKET])
    Curl_closesocket(conn, conn->sock[SECONDARYSOCKET]);
  conn->sock[SECONDARYSOCKET] = portsock;

  for(; fcmd != DONE; fcmd++) {

    if(!conn->bits.ftp_use_eprt && (EPRT == fcmd))
@@ -1037,6 +1030,13 @@ static CURLcode ftp_state_use_port(struct connectdata *conn,
  /* store which command was sent */
  ftpc->count1 = fcmd;

  /* we set the secondary socket variable to this for now, it is only so that
     the cleanup function will close it in case we fail before the true
     secondary stuff is made */
  if(CURL_SOCKET_BAD != conn->sock[SECONDARYSOCKET])
    Curl_closesocket(conn, conn->sock[SECONDARYSOCKET]);
  conn->sock[SECONDARYSOCKET] = portsock;

  /* this tcpconnect assignment below is a hackish work-around to make the
     multi interface with active FTP work - as it will not wait for a
     (passive) connect in Curl_is_connected().