aboutsummaryrefslogtreecommitdiff
path: root/lib/ftp.c
AgeCommit message (Collapse)Author
2004-11-25FTP improvements:Daniel Stenberg
If EPSV, EPRT or LPRT is tried and doesn't work, it will not be retried on the same server again even if a following request is made using a persistent connection. If a second request is made to a server, requesting a file from the same directory as the previous request operated on, libcurl will no longer make that long series of CWD commands just to end up on the same spot. Note that this is only for *exactly* the same dir. There is still room for improvements to optimize the CWD-sending when the dirs are only slightly different. Added test 210, 211 and 212 to verify these changes. Had to improve the test script too and added a new primitive to the test file format.
2004-11-19David Phillips' FD_SETSIZE fixDaniel Stenberg
2004-11-02Paul Nolan fix to make libcurl build nicely on Windows CEDaniel Stenberg
2004-10-21Dan Fandrich's better ifdef for include fixDaniel Stenberg
2004-10-16Alexander Krasnostavsky made the CURLOPT_FTP_CREATE_MISSING_DIRS option workDaniel Stenberg
fine even for third party transfers.
2004-10-06removed tabs and trailing whitespace from sourceDaniel Stenberg
2004-10-01Aleksandar Milivojevic reported a problem in the Redhat bugzilla (seeDaniel Stenberg
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=134133) and not to anyone involved in the curl project! This happens when you try to curl a file from a proftpd site using SSL. It seems proftpd sends a somewhat unorthodox PASS response code (232 instead of 230). I relaxed the response code check to deal with this and similar cases.
2004-09-29Fixed an error message: we use CWD, we don't cd into dirs with FTPDaniel Stenberg
2004-09-16Added CURLOPT_FTPSSLAUTHDaniel Stenberg
2004-09-13revert the change for the new date parser, as the new one can deal withDaniel Stenberg
the old format now
2004-09-11Minor adjustment needed for the new date parser to succeed. ifdef'ed outDaniel Stenberg
for now.
2004-08-11include the server response in the error message when an FTP server givesDaniel Stenberg
back a 530 after the password is provided, as it isn't necessary because of a bad user name or password.
2004-08-10more typecasts to please picky compilersDaniel Stenberg
2004-07-04make sure the 3rd argument passed to bind() is a socklen_tDaniel Stenberg
2004-07-04typecast the conversion from long to int to prevent picky compiler warningsDaniel Stenberg
2004-07-01variable type cleanup to fix picky compiler warningsDaniel Stenberg
2004-06-30I think 1024 bytes is enough for even most ipv6 addresses :-)Daniel Stenberg
2004-06-24Replaced all uses of sprintf() with the safer snprintf(). It is just aDaniel Stenberg
precaution to prevent mistakes to lead to buffer overflows.
2004-06-24Source cleanups. The major one being that we now _always_ use a Curl_addrinfoDaniel Stenberg
linked list for name resolved data, even on hosts/systems with only IPv4 stacks as this simplifies a lot of code.
2004-06-09Alexander Krasnostavsky's fix to make libcurl build fine with configureDaniel Stenberg
--disable-http, which thus builds a libcurl without HTTP support.
2004-06-03Alexander Krasnostavsky's FTP third party transfer (proxy) supportDaniel Stenberg
2004-06-02Gisle made ftp_mkd staticDaniel Stenberg
2004-05-26Added a new 'bit' in the connect struct named 'tunnel_proxy' that is setDaniel Stenberg
if a connection is tunneled through a proxy. A tunnel is done with CONNECT, either when using HTTPS or FTPS, or if explicitly enabled by the app.
2004-05-12Curl_done() and the protocol-specific conn->curl_done() functions now allDaniel Stenberg
take a CURLcode as a second argument, that is non-zero when Curl_done() is called after an error was returned from Curl_do() (or similar).
2004-05-11curl_global_init_mem() allows the memory functions to be replaced.Daniel Stenberg
memory.h is included everywhere for this.
2004-04-27Made host name and proxy name get stored in a 'struct hostname' and setDaniel Stenberg
all things up to work with encoded host names internally, as well as keeping 'display names' to show in debug messages. IDN resolves work for me now using ipv6, ipv4 and ares resolving. Even cookies on IDN sites seem to do right.
2004-04-26Made defines instead of plain numbers for the Curl_resolv() return code toDaniel Stenberg
make the code easier to read
2004-04-22If only a partial file was transfered, we consider that a fatal problem soDaniel Stenberg
we won't try to QUIT the control connection and risk "hanging" waiting for a response. Test case 161 verifies this. The quit-sending function was also made static.
2004-04-21increase the headerbytecount for incoming "headers"Daniel Stenberg
2004-04-20Cleaned up hostname/name/gname and path/ppath confusion. Removed the fixed-Daniel Stenberg
length limit of the hostname part of the URL.
2004-04-15ftp->dirs[] is no longer terminated with a zero entry but ftp->dirdepthDaniel Stenberg
should be used
2004-04-15removed the fixed dir depth limit in the FTP codeDaniel Stenberg
2004-04-07renamed the strtoofft() macro to curlx_strtoofft() to adjust to the curlx_*Daniel Stenberg
concept, and added lib/README.curlx to explain details about it
2004-04-06New authentication code added, particularly noticable when doing POST or PUTDaniel Stenberg
with Digest or NTLM. libcurl will now use HEAD to negotiate the authentication and when done perform the requested POST.
2004-03-31Use the new HAVE_NI_WITHSCOPEID define instead of merely checking for theDaniel Stenberg
existance of NI_WITHSCOPEID since some platforms have that define but still can't function with it set.
2004-03-31Moved the NI_WITHSCOPEID magic #ifdef to the top of the file and made sureDaniel Stenberg
we use the NIFLAGS properly on both places in the code that use getnameinfo().
2004-03-25include the strerror.h file without curl_ prefixDaniel Stenberg
2004-03-24Gisle Vanem's fix to replace the bad use of strerror(). This introducesDaniel Stenberg
Curl_strerror() that attempts to be thread-safe _and_ works on Windows too!
2004-03-17Günter Knauf's NetWare changes.Daniel Stenberg
2004-03-11Gisle Vanem's fixes to use CURL_SOCKET_BAD more instead of -1 for sockets.Daniel Stenberg
2004-03-10Use more curl_off_t variables when doing the progress meter calculations andDaniel Stenberg
argument passing and try to convert to double only when providing data to the external world.
2004-03-10turn niflags into a define named NIFLAGSDaniel Stenberg
2004-03-09Use curl_socket_t instead of int for holding sockets. The typedefs andDaniel Stenberg
defines are in setup.h.
2004-03-05clearly tell that these are ftp response timeoutsDaniel Stenberg
2004-03-03more variable type cleanupsDaniel Stenberg
2004-03-03our timeout values are longs while 'tv_sec' is intDaniel Stenberg
2004-03-02Yet another curl_off_t printf format attempt, we now exclude the %-letter fromDaniel Stenberg
FORMAT_OFF_T to allow additional options to get specified, like with '"%5" FORMAT_OFF_T'.
2004-03-02use FORMAT_OFF_T instead of CURL_FORMAT_OFF_T to reduce the complexity ofDaniel Stenberg
having to redef that name
2004-03-01Use CURL_FORMAT_OFF_T for printf()inf curl_off_t variables.Daniel Stenberg
2004-03-01Only attempt to send the FTP QUIT command if we actually have a FTP struct.Daniel Stenberg