Commit 516e60aa authored by Dan Fandrich's avatar Dan Fandrich
Browse files

ftp: fixed a NULL pointer dereference on OOM

parent eac0dc6a
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -2040,11 +2040,14 @@ static CURLcode ftp_state_pasv_resp(struct connectdata *conn,
    /* this just dumps information about this second connection */
    ftp_pasv_verbose(conn, addr->addr, ftpc->newhost, connectport);

  Curl_resolv_unlock(data, addr); /* we're done using this address */

  Curl_safefree(conn->secondaryhostname);
  conn->secondaryhostname = strdup(ftpc->newhost);
  conn->secondary_port = ftpc->newport;
  conn->secondaryhostname = strdup(ftpc->newhost);
  if(!conn->secondaryhostname)
    return CURLE_OUT_OF_MEMORY;

  Curl_resolv_unlock(data, addr); /* we're done using this address */
  conn->bits.do_more = TRUE;
  state(conn, FTP_STOP); /* this phase is completed */