Fixed FTP_SKIP_PASV_IP and FTP_USE_EPSV to "do right" when used on FTP thru
HTTP proxy.
This commit is contained in:
		
							
								
								
									
										10
									
								
								CHANGES
									
									
									
									
									
								
							
							
						
						
									
										10
									
								
								CHANGES
									
									
									
									
									
								
							| @@ -7,9 +7,13 @@ | |||||||
|                                   Changelog |                                   Changelog | ||||||
|  |  | ||||||
| Daniel (12 January 2006) | Daniel (12 January 2006) | ||||||
| - Michael Jahn fixed PROXYTUNNEL to work fine when you do ftp through a proxy. | - Michael Jahn: | ||||||
|   It would previously overwrite internal memory and cause unpredicted |  | ||||||
|   behaviour! |   Fixed FTP_SKIP_PASV_IP and FTP_USE_EPSV to "do right" when used on FTP thru | ||||||
|  |   HTTP proxy. | ||||||
|  |  | ||||||
|  |   Fixed PROXYTUNNEL to work fine when you do ftp through a proxy.  It would | ||||||
|  |   previously overwrite internal memory and cause unpredicted behaviour! | ||||||
|  |  | ||||||
| Daniel (11 January 2006) | Daniel (11 January 2006) | ||||||
| - I decided to document the "secret option" here now, as I've received *NO* | - I decided to document the "secret option" here now, as I've received *NO* | ||||||
|   | |||||||
| @@ -15,6 +15,7 @@ This release includes the following changes: | |||||||
|  |  | ||||||
| This release includes the following bugfixes: | This release includes the following bugfixes: | ||||||
|  |  | ||||||
|  |  o FTP_SKIP_PASV_IP and FTP_USE_EPSV when doing FTP over HTTP proxy | ||||||
|  o Doing a second request with FTP on the same bath path, would make libcurl |  o Doing a second request with FTP on the same bath path, would make libcurl | ||||||
|    confuse what current working directory it had |    confuse what current working directory it had | ||||||
|  o FTP over HTTP proxy now sends the second CONNECT properly |  o FTP over HTTP proxy now sends the second CONNECT properly | ||||||
| @@ -28,6 +29,8 @@ Other curl-related news since the previous public release: | |||||||
|  o http://curl.hkmirror.org/ is a new curl web mirror in Hong Kong |  o http://curl.hkmirror.org/ is a new curl web mirror in Hong Kong | ||||||
|  o http://curl.storemypix.com/ is a new curl web mirror in Germany |  o http://curl.storemypix.com/ is a new curl web mirror in Germany | ||||||
|  o http://curl.s-lines.net/ is a new curl web mirror in Japan |  o http://curl.s-lines.net/ is a new curl web mirror in Japan | ||||||
|  |  o TclCurl 0.15.1 was released: | ||||||
|  |    http://personal1.iddeo.es/andresgarci/tclcurl/english/ | ||||||
|  |  | ||||||
| This release would not have looked like this without help, code, reports and | This release would not have looked like this without help, code, reports and | ||||||
| advice from friends like these: | advice from friends like these: | ||||||
|   | |||||||
							
								
								
									
										10
									
								
								lib/ftp.c
									
									
									
									
									
								
							
							
						
						
									
										10
									
								
								lib/ftp.c
									
									
									
									
									
								
							| @@ -1543,6 +1543,11 @@ static CURLcode ftp_state_pasv_resp(struct connectdata *conn, | |||||||
|         if(ptr) { |         if(ptr) { | ||||||
|           newport = num; |           newport = num; | ||||||
|  |  | ||||||
|  |           if (conn->bits.tunnel_proxy) | ||||||
|  |             /* proxy tunnel -> use other host info because ip_addr_str is the | ||||||
|  |                proxy address not the ftp host */ | ||||||
|  |             snprintf(newhost, sizeof(newhost), "%s", conn->host.name); | ||||||
|  |           else | ||||||
|             /* use the same IP we are already connected to */ |             /* use the same IP we are already connected to */ | ||||||
|             snprintf(newhost, NEWHOST_BUFSIZE, "%s", conn->ip_addr_str); |             snprintf(newhost, NEWHOST_BUFSIZE, "%s", conn->ip_addr_str); | ||||||
|         } |         } | ||||||
| @@ -1590,6 +1595,11 @@ static CURLcode ftp_state_pasv_resp(struct connectdata *conn, | |||||||
|       infof(data, "Skips %d.%d.%d.%d for data connection, uses %s instead\n", |       infof(data, "Skips %d.%d.%d.%d for data connection, uses %s instead\n", | ||||||
|             ip[0], ip[1], ip[2], ip[3], |             ip[0], ip[1], ip[2], ip[3], | ||||||
|             conn->ip_addr_str); |             conn->ip_addr_str); | ||||||
|  |       if (conn->bits.tunnel_proxy) | ||||||
|  |         /* proxy tunnel -> use other host info because ip_addr_str is the | ||||||
|  |            proxy address not the ftp host */ | ||||||
|  |         snprintf(newhost, sizeof(newhost), "%s", conn->host.name); | ||||||
|  |       else | ||||||
|         snprintf(newhost, sizeof(newhost), "%s", conn->ip_addr_str); |         snprintf(newhost, sizeof(newhost), "%s", conn->ip_addr_str); | ||||||
|     } |     } | ||||||
|     else |     else | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Daniel Stenberg
					Daniel Stenberg