Daniel Stenberg
1d3f76df71
If only a partial file was transfered, we consider that a fatal problem so
...
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-22 13:09:00 +00:00
Daniel Stenberg
3233322622
increase the headerbytecount for incoming "headers"
2004-04-21 08:47:57 +00:00
Daniel Stenberg
b7a7600465
Cleaned up hostname/name/gname and path/ppath confusion. Removed the fixed-
...
length limit of the hostname part of the URL.
2004-04-20 07:53:24 +00:00
Daniel Stenberg
592522ceaf
ftp->dirs[] is no longer terminated with a zero entry but ftp->dirdepth
...
should be used
2004-04-15 10:43:40 +00:00
Daniel Stenberg
4f84e6d9e2
removed the fixed dir depth limit in the FTP code
2004-04-15 07:52:39 +00:00
Daniel Stenberg
cf1f46e1ca
renamed the strtoofft() macro to curlx_strtoofft() to adjust to the curlx_*
...
concept, and added lib/README.curlx to explain details about it
2004-04-07 07:30:40 +00:00
Daniel Stenberg
8ed44e8dfb
New authentication code added, particularly noticable when doing POST or PUT
...
with Digest or NTLM. libcurl will now use HEAD to negotiate the authentication
and when done perform the requested POST.
2004-04-06 15:14:10 +00:00
Daniel Stenberg
5804c995e1
Use the new HAVE_NI_WITHSCOPEID define instead of merely checking for the
...
existance of NI_WITHSCOPEID since some platforms have that define but still
can't function with it set.
2004-03-31 21:33:52 +00:00
Daniel Stenberg
ce446dbdc2
Moved the NI_WITHSCOPEID magic #ifdef to the top of the file and made sure
...
we use the NIFLAGS properly on both places in the code that use getnameinfo().
2004-03-31 10:59:48 +00:00
Daniel Stenberg
762dcf0780
include the strerror.h file without curl_ prefix
2004-03-25 13:42:23 +00:00
Daniel Stenberg
b60d6404d8
Gisle Vanem's fix to replace the bad use of strerror(). This introduces
...
Curl_strerror() that attempts to be thread-safe _and_ works on Windows too!
2004-03-24 22:45:37 +00:00
Daniel Stenberg
5b55f9ecb3
Günter Knauf's NetWare changes.
2004-03-17 12:46:42 +00:00
Daniel Stenberg
e545e33d5f
Gisle Vanem's fixes to use CURL_SOCKET_BAD more instead of -1 for sockets.
2004-03-11 13:13:35 +00:00
Daniel Stenberg
0d1fc73f21
Use more curl_off_t variables when doing the progress meter calculations and
...
argument passing and try to convert to double only when providing data to the
external world.
2004-03-10 16:20:33 +00:00
Daniel Stenberg
85838a8966
turn niflags into a define named NIFLAGS
2004-03-10 15:24:56 +00:00
Daniel Stenberg
ce5805a955
Use curl_socket_t instead of int for holding sockets. The typedefs and
...
defines are in setup.h.
2004-03-09 22:52:50 +00:00
Daniel Stenberg
ef0a2c714b
clearly tell that these are ftp response timeouts
2004-03-05 09:37:48 +00:00
Daniel Stenberg
5e7f1a0eaf
more variable type cleanups
2004-03-03 13:24:14 +00:00
Daniel Stenberg
eb9383d49b
our timeout values are longs while 'tv_sec' is int
2004-03-03 13:17:44 +00:00
Daniel Stenberg
353f764119
Yet another curl_off_t printf format attempt, we now exclude the %-letter from
...
FORMAT_OFF_T to allow additional options to get specified, like with '"%5"
FORMAT_OFF_T'.
2004-03-02 09:31:18 +00:00
Daniel Stenberg
7ab3b5b3bb
use FORMAT_OFF_T instead of CURL_FORMAT_OFF_T to reduce the complexity of
...
having to redef that name
2004-03-02 07:25:39 +00:00
Daniel Stenberg
cb72a80fe0
Use CURL_FORMAT_OFF_T for printf()inf curl_off_t variables.
2004-03-01 16:28:00 +00:00
Daniel Stenberg
4dfc0a78e7
Only attempt to send the FTP QUIT command if we actually have a FTP struct.
2004-03-01 07:59:25 +00:00
Daniel Stenberg
77268e0649
Joe Halpin made the FTP code send 'QUIT' on the control connection before
...
it disconnects the TCP connection, like a good ftp client should!
2004-02-27 07:08:37 +00:00
Daniel Stenberg
d571064b65
Clear up int/long/size_t/ssize_t usage a bit
2004-02-26 13:40:43 +00:00
Daniel Stenberg
1b26fe39f9
Tor Arntsen's fix for the bad (64bit wise) typecast when using gmtime()
2004-02-13 06:59:49 +00:00
Daniel Stenberg
011929cf4d
Tor Arntsen's patch for working around a notorious bug in the AIX5
...
getaddrinfo() implementation.
2004-02-09 07:52:36 +00:00
Daniel Stenberg
6587ff440a
use the timeout options when waiting for the server to connect when using
...
PORT
Provide better error messages to allow debugging if one if the ipv6-related
name functions fail in the ftp_use_port() function. This might help us
diagnose the problems on AIX. Also make sure getaddrinfo() uses NULL and
not "0" for the service argument.
2004-02-05 09:26:01 +00:00
Daniel Stenberg
556b68f44e
the unused quit-function didn't pass a correct variable type to the
...
response reading function
2004-02-03 09:52:32 +00:00
Daniel Stenberg
4d17d6876e
Dan Fandrich's cleanup patch to make pedantic compiler options cause less
...
warnings. Minor edits by me.
2004-01-29 13:56:45 +00:00
Daniel Stenberg
b791e158f0
use curl_off_t instead of off_t!
2004-01-22 12:45:50 +00:00
Daniel Stenberg
5e2fcc1f74
use the proper timecond defines, not the obsolete ones I've removed! ;-)
...
The initial QUIT-sending code is added, but not yet used due to the issues
previously mentioned on the mailing list.
2004-01-21 08:50:08 +00:00
Daniel Stenberg
053f6c85ef
updated year in the copyright string
2004-01-07 09:19:33 +00:00
Daniel Stenberg
b60e0fa97e
David J Meyer's large file support.
2004-01-05 22:29:29 +00:00
Daniel Stenberg
ee337309cf
better human error message when a FTP response can't be read
2003-12-08 13:06:08 +00:00
Daniel Stenberg
8ccc1148d9
my contentlength adjustment broke the ftp download range stuff, this makes
...
it work again
2003-12-03 08:26:31 +00:00
Daniel Stenberg
1b99d33b59
fix compiler warnings
2003-12-02 13:40:12 +00:00
Daniel Stenberg
800052dc50
use the HAVE_KRB4 define instead of just KRB4
2003-12-02 13:27:29 +00:00
Daniel Stenberg
2c22feced2
fixes from Gisle Vanem to try 'AUTH SSL' before 'AUTH TLS', edited by me
2003-12-02 13:21:53 +00:00
Daniel Stenberg
cd653f1be9
FTPS now works with active ftp and uploads too.
2003-12-01 10:14:39 +00:00
Daniel Stenberg
d5d55a856e
adjusted code to the new socket fields in the sessionhandle struct
2003-11-24 09:04:09 +00:00
Daniel Stenberg
1e98727c55
FTPS support added as RFC2228 and the murray-ftp-auth-ssl draft describe it
2003-11-24 07:15:37 +00:00
Daniel Stenberg
edce444551
If a partial file has been read or written, force a closure the existing
...
connection to avoid re-use of it, since we cannot know in what state it is.
2003-11-19 14:36:42 +00:00
Daniel Stenberg
17a834bc63
After Sébastien Willemijns' bug report, we now check the separators properly
...
in the 229-reply servers respond on a EPSV command and bail out better if
the reply string is not valid RFC2428-compliant.
2003-11-10 08:12:53 +00:00
Daniel Stenberg
a7aacac5e8
assume that MDTM returns the timestamp as UTC
2003-10-31 21:36:43 +00:00
Daniel Stenberg
46accd62d1
when getting headers only, stop pretending the reported time is GMT, as it
...
isn't. In fact, it might be, but we have no idea.
2003-10-30 09:06:24 +00:00
Daniel Stenberg
656d4b4c20
if malloc fails, we must bail out nicely
2003-10-24 12:58:59 +00:00
Daniel Stenberg
65dab79ca5
gcc -Wshadow complaints fixed
2003-10-18 20:14:33 +00:00
Daniel Stenberg
ce5db9a86e
Dominick Meglio implemented CURLOPT_MAXFILESIZE and --max-filesize.
2003-10-17 13:11:00 +00:00
Daniel Stenberg
9e3f54431d
made the code deal with empty name and password
2003-10-17 09:26:28 +00:00
Daniel Stenberg
749f5387c1
Gisle Vanem's IPv6-on-Windows patch applied!
2003-10-14 12:00:45 +00:00
Daniel Stenberg
45ef092cc2
Jon Turner mentioned this bug fix to correct how libcurl deals with paths
...
after a failed transfer.
2003-10-04 15:25:02 +00:00
Daniel Stenberg
cc497fd153
don't use a blank proxy
2003-09-11 22:05:23 +00:00
Daniel Stenberg
f2d422235b
Early Ehlinger's CURLOPT_FTP_RESPONSE_TIMEOUT patch applied.
2003-09-03 22:02:40 +00:00
Daniel Stenberg
2ad0a7d20f
minor fix to make better bail-out check
2003-09-03 21:44:59 +00:00
Daniel Stenberg
4459d3b434
have cwd_and_mkd prefixed with ftp_ to make it appear as a ftp-only
...
function
2003-08-22 12:35:18 +00:00
Daniel Stenberg
d00e4a377b
store the FTP response code in the httpcode variable
2003-08-20 15:41:45 +00:00
Daniel Stenberg
5dadbd094e
don't claim the PASV connect is connected unless it *really* is!
2003-08-10 17:11:41 +00:00
Daniel Stenberg
7954eee639
re-arranged the cwd/mkd stuff a bit
2003-08-08 09:55:16 +00:00
Daniel Stenberg
f9f1f0e316
Early Ehlinger's CURLOPT_FTP_CREATE_MISSING_DIRS patch was applied
2003-08-08 09:13:19 +00:00
Daniel Stenberg
b73612392d
ares awareness/usage/support added. If configure --enable-ares is used, we
...
build libcurl to use ares for asynch name resolves.
2003-08-05 14:40:59 +00:00
Daniel Stenberg
1e7e53c87e
clean up the dir tree hierarchy in *_done() to make persistant connection
...
FTP use the correct directories!
Reported in bug report #783116
2003-08-05 13:04:10 +00:00
Daniel Stenberg
e3b4dd08ff
Daniel Noguerol made the ftp code output "Accept-Ranges: bytes" in similar
...
style like other faked HTTP headers when NOBODY and HEADER are used.
2003-07-30 07:51:33 +00:00
Daniel Stenberg
1c35cbcc07
Reverted the 'filetime' struct field back to a 'long' as time_t is sometimes
...
unsigned and we want this to be able to hold -1 for illegal/unset values.
2003-07-30 07:22:28 +00:00
Daniel Stenberg
d9246ff24d
François Pons brought a patch that once again made curl deal with ftp and
...
"double slash" as indicating the root directory. In the RFC1738-fix of April
30, that ability was removed (since it is not the "right" way).
2003-07-28 08:50:02 +00:00
Daniel Stenberg
56014e74a0
krb4-fixes for the moved user+password fields within the structs
2003-07-21 09:19:48 +00:00
Daniel Stenberg
5e133e2dff
David Gardner pointed out in bug report 770755 that using the FTP command CWD
...
with a blank argument is a bad idea. Now skip blanks.
2003-07-20 00:18:11 +00:00
Daniel Stenberg
52b631fade
Access the user and passwd fields from the connectdata struct now instead
...
of the sessionhandle struct, as that was not good.
2003-07-19 23:56:33 +00:00
Daniel Stenberg
81d403e207
one typecast less for the localtime(), use CURLDEBUG instead of MALLOCDEBUG
2003-06-26 06:52:48 +00:00
Daniel Stenberg
e2f4656a86
Ricardo Cadime found a socket leak when listing directories without
...
contents. Test cases 144 and 145 were added to verify the fix.
Now we deal with return code 450 properly and other codes also do proper
cleanup.
2003-05-23 11:14:09 +00:00
Daniel Stenberg
22569681bc
George Comninos provided a fix that calls the progress meter when waiting
...
for FTP command responses take >1 second.
2003-05-14 06:31:00 +00:00
Daniel Stenberg
a51258b6bb
before using if2ip(), check if the address is an ip address and skip it if
...
it is.
2003-05-13 12:11:31 +00:00
Daniel Stenberg
9ead79c9d4
when we have accepted the server's connection in a PORT sequence, we set
...
the new socket to non-blocking
2003-05-12 12:37:35 +00:00
Daniel Stenberg
94a157d0b0
support for CURLOPT_FTP_USE_EPRT added
2003-05-09 07:39:29 +00:00
Daniel Stenberg
3ef06d7efe
when making up the list of path parts, save the last entry pointing to NULL
...
as otherwise we'll go nuts
2003-04-30 20:04:17 +00:00
Daniel Stenberg
bf2b3dbf3e
David Balazic's patch to make the FTP operations "do right" according to
...
RFC1738, which means it'll use one CWD for each pathpart.
2003-04-30 16:59:42 +00:00
Daniel Stenberg
028e9cc56f
According to RFC959, CWD is supposed to return 250 on success, but
...
there seem to be non-compliant FTP servers out there that return 200,
so we accept any '2xy' response now.
2003-04-11 08:10:54 +00:00
Daniel Stenberg
a4ffcfd4d5
timecond support added
...
made the Last-Modified (faked) header look correct using GMT always
2003-04-09 11:56:31 +00:00
Daniel Stenberg
3cba274ba6
kill a compiler warning on cygwin
2003-04-03 14:16:15 +00:00
Daniel Stenberg
853e240e1d
Use ssize_t instead of 'int' to make the 64 bit sparc compiler happier.
...
Fix by Richard Gorton.
2003-03-11 18:58:21 +00:00
Daniel Stenberg
52ebf50607
It appears that there are FTP-servers that return size 0 for files
...
when SIZE is used on the file while being in BINARY mode. To work
around that (stupid) behavior, we attempt to parse the RETR response
even if the SIZE returned size zero.
Debugging help from Salvatore Sorrentino on February 26, 2003.
2003-02-27 12:50:54 +00:00
Jean-Philippe Barette-LaPierre
beb13a1d3e
added the sharing of DNS cache
2003-02-04 23:48:46 +00:00
Daniel Stenberg
89934239d7
reset conn->size to -1 on the ftp-do function to make it not go on to
...
ftp_done() with the previous transfer's value, as Dave Halbakken found out.
He also verified this fixed corrected the problem.
2003-01-29 10:54:39 +00:00
Daniel Stenberg
a7c72b7abf
removed the local variables for emacs and vim, use the new sample.emacs
...
way for emacs, and vim users should provide a similar non-polluting style
2003-01-29 10:14:20 +00:00
Daniel Stenberg
f26a338a54
copyright year update in the source header
2003-01-16 21:08:12 +00:00
Daniel Stenberg
37ae32f688
Only output valid filetime.
...
Return file-error if 550 is returned when trying MDTM
2003-01-07 11:25:44 +00:00
Daniel Stenberg
4bcc866c52
The fread() callback pointer and associated pointer is now stored in the
...
connectdata struct instead, and is no longer modified within the 'set' struct
as previously (which was a really BAAAD thing).
2002-12-09 15:37:54 +00:00
Daniel Stenberg
d72aa49126
The waiting for the 226 or 250 line expected to come after a transfer is
...
complete is now only made for 60 seconds and if no data was received during
those 60 seconds, we store a special error message (preparing to make this
a special error code) as this most likely means that the control connection
has died while we were transferring data.
2002-12-04 08:56:55 +00:00
Daniel Stenberg
d0b97f7e1f
Curl_GetFTPResponse() takes a different set of parameters and now return a
...
proper CURLcode. The default timeout for reading one response is now also
possible to change while running.
2002-12-03 10:25:31 +00:00
Daniel Stenberg
ff5308a5af
if the PWD reply parser failed, we leaked memory
2002-12-02 07:18:24 +00:00
Daniel Stenberg
42acb00c81
moved the bools in the connectdata struct into the substruct named
...
ConnectBits where the other bools already are
2002-11-11 23:03:03 +00:00
Daniel Stenberg
66eb98bb0a
unlock dns cache entries with a function call instead of a variable fiddle
2002-11-11 22:36:00 +00:00
Daniel Stenberg
0ff1ca30c3
ipv4-fixes for the new Curl_dns_entry struct and Curl_resolv() proto
2002-11-05 11:07:49 +00:00
Daniel Stenberg
2cff251863
Curl_resolv() now returns a different struct, and it contains a reference
...
counter so that the caller needs to decrease that counter when done with
the returned data.
If compiled with MALLOCDEBUG I've added some extra checking that the counter
is decreased before a handle is closed etc.
2002-11-05 10:51:41 +00:00
Daniel Stenberg
b8a6913e09
prevent compiler warnings
2002-10-28 19:20:59 +00:00
Daniel Stenberg
aef3131e92
Craig Markwardt made the "struct hostent_data" get cleared too, as is
...
needed on Tru64 (or something).
2002-09-20 14:40:14 +00:00
Daniel Stenberg
ba4e69bebc
updated source code boilerplate/header
2002-09-03 11:52:59 +00:00
Daniel Stenberg
27a2e590cd
SSL_INSECURE support and usage added
2002-08-26 23:13:25 +00:00
Daniel Stenberg
6561ec524b
don't attempt to ftp_cwd() on a NULL path
2002-08-26 22:00:01 +00:00
Daniel Stenberg
cb895ec335
Initial fix to make the multi interface return control while waiting for
...
the initial connect to "come through".
This should work fine for connect and for FTP-PASV connects. Needs massive
testing.
2002-08-12 09:43:20 +00:00