Newer
Older
_ _ ____ _
___| | | | _ \| |
/ __| | | | |_) | |
| (__| |_| | _ <| |___
\___|\___/|_| \_\_____|
History of Changes
- Ricardo Cadime fell over a multiple requests problem when first a FTP
directory fetch failed and then a second request is made after that. The
second request happened to get the FTP server response back from the
previous request, when it did its initial CWD command.
- Bjorn Reese pointed out that we could improved the time diff function to
prevent truncation a bit.
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
- Kai-Uwe Rommel made me aware that -p (http proxy tunnel) silly enough didn't
work for plain HTTP requests! So I made that work.
Version 7.9.2-pre1
Daniel (12 November 2001)
- Rewrote the Curl_ConnectHTTPProxyTunnel(). It should now not only work a lot
faster, it should only support such ("broken") proxies that John Lask
previously have reported problems with. His proxy sends a trailing zero byte
after the end of the (proxy-) headers. I've tested this myself and it seems
to work on a proxy the previous version also worked with...! This rewrite is
due to the problems John Lask previously experienced.
- Andrés García found out why the "current speed" meter sometimes showed 2048K
for very quick transfers. It turned out the "time diff"-function returned a
zero millisecond diff. We now always say it is at least one millisecond! In
reality, these timers very rarely have that good resolution so even though
the time diff was longer than 1 millisecond, it was reported as no diff.
- I also modified the getinfo() again when returning times, as Paul Harrington
reports that 7.9.1 only returns times with 1 second accuracy, which indeed
is wrong.
Daniel (8 November 2001)
- Marcus Webster found out that curl_formadd() could read one byte outside a
buffer boundary, which then of course could lead to a crash. Marcus also
gracefully provided a patch for this this.
- Glen Scott ran configure on his Cobalt Qube and it didn't figure out the
correct way of calling gethostbyname_r() and thus failed to resolve hosts.
This is two errors: it shouldn't continue the configure script if it finds
gethostbyname_r() but can't figure out how to use it, and it should really
figure out how to use it as it was running Linux and we know how that
works...
Daniel (7 November 2001)
- docs/VERSIONS is a new file in the archive that explains the version number
system we use in the curl project.
- Did some more fixes that now makes libcurl only ignore signals as long as
it needs to, and then restore (if any) previous signal handler again.
Daniel Stenberg
committed
Daniel (6 November 2001)
- Enrik Berkhan posted bug report #478780, in which he very correctly pointed
out two bad timeout matters in libcurl: we didn't restore the sigaction
struct (the alarm handler for SIGALRM) nor did we restore the previous
alarm() timeout that could've been set by a "parent" process or similar.
Daniel Stenberg
committed
- Kevin Roth made the cygwin binary get stripped before install.
Daniel (5 November 2001)
- Detlef Schmier reported that curl didn't compile using Solaris 8 with the
native cc compiler. It was due to a bad function prototype. Fixed now.
Unfortunately, I can't enable the -Wstrict-prototypes in my debug builds
though, as gcc then complains like crazy on OpenSSL include files... :-(
- John Lask provided SSL over HTTP proxy fixes. They'll need some tweaking
to work on all platforms.
Daniel Stenberg
committed
- John Lask added the -1/--TLSv1 options that forces SSL into using TLS
version 1 when speaking HTTPS.
- John Lask brought a brand new VC++ makefile for the lib directory, that
works a lot better than the previous!
- Ramana Mokkapati brought some clever insights on the LDAP failures (bug
report #475407), and his suggested changes are now applied.
Version 7.9.1
Daniel (4 November 2001)
- I've added a number of new test cases the last few days. A few of them since
I got reports that hinted on problems on timeouts, so I added four tests
with timeouts for all sorts of protocols and stuff. I also came to think of
a few other error scenarios that we currently didn't test properly, so I
wrote up tests for a few of those too.
Daniel (2 November 2001)
- Replaced read() and write() with recv() and send() for socket operations
even under normal unixes.
Daniel (1 November 2001)
- When an FTP transfer was aborted due to a timeout, it wasn't really aware of
how many bytes that had been transferred and the error text always said 0
bytes. I modified this to output the actually transferred amount! :-)
- The FTP fixes in pre7 didn't compile on IPv6 enabled hosts. Does now. I also
added more comments in the lib/ftp.c source file.
- Minor updates to the FAQ, added a brand new section to the web site about
the name issue (who owns "curl"? will someone sue us? etc etc):
http://curl.haxx.se/legal/thename.html
Daniel Stenberg
committed
- The curl_easy_getinfo() timers accidentally lost their subsecond accuracy as
the calculations used longs instead of doubles! Paul Harrington reported.
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
- The SSL SocketIsDead() checks weren't good enough (as expected really), so I
had to add a generic internal try-it-out system. If the request on a re-used
connection seems to fail, then we go back and get a new (fresh) connection
and re-tries the request on that instead. It kind of makes the
SocketIsDead() check obsolete, but I think it is a quicker way for those
cases where it actually discovers that the connection is dead.
- When fixing the above, I noticed that we did quite a few writes to sockets
in libcurl where we didn't check the return code (that it actually worked to
send the data). With the new "attempted request" system we must detect those
situations so I went over a bunch of functions, changed return types and
added checks for what they actually return.
Version 7.9.1-pre6
Daniel (31 October 2001)
- Paul Harrington detected a problem with persistant SSL connections. Or to be
more exact, we didn't properly detect that the connection was dead and then
a second connection would try to re-use it wrongly. The solution to this
problem is still not very clear and I'm working on it. One OpenSSL insider
said there is no way to know if the SSL connection is alive or not without
actually trying an operation.
Daniel (30 October 2001)
- If a cookie was read from a file, it could accidentally strdup() a NULL
pointer. Paul Harrington reported. [http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/curl/curl/lib/cookie.c.diff?r1=1.25&r2=1.26]
- The MANUAL file now documents -t correctly. I also fixed the -T description
in the curl.1 man page.
- John Janssen found out that curl_formadd was missing in the libcurl.def file
and that the docs stated the wrong return type for the function.
- Andrés García found a bug with multiple files in the curl_formadd() function,
that I removed with this patch [http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/curl/curl/lib/formdata.c.diff?r1=1.25&r2=1.26].
- Kevin Roth brought another patch that moved the cygwin package files to the
packages/Win32/cygwin directory.
- A bug in the connection re-use logic made repeated requests to the same FTP
server (when using name+pasword in the URL) sometimes use more than one
connection. [http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/curl/curl/lib/url.c.diff?r1=1.166&r2=1.167]
- Moonesamy tracked down and fixed a problem with the new 7.9.1 connect
code. This corrected the error Kevin Roth reported on the 7.9.1-pre5 release
(test 19)...
[http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/curl/curl/lib/connect.c.diff?r1=1.13&r2=1.14]
Daniel (26 October 2001)
- Added test28 which verifies that "Location:"-following works even if the
contents is separated with more than one space.
Daniel (25 October 2001)
- Ramana Mokkapati pointed out that LDAP transfers would 'hang' after the
correct data has been output.
Version 7.9.1-pre5
Daniel (24 October 2001)
- T. Bharath found a memory leak in the cookie engine. When we update a cookie
that we already knew about, we lost a chunk of memory in the progress... The
brand new test case 27 now tests for this occurrence. [http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/curl/curl/lib/cookie.c.diff?r1=1.24&r2=1.25]
Daniel (23 October 2001)
- pack_hostent() didn't properly align some pointers, so at least SPARC CPUs
would core. [http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/curl/curl/lib/hostip.c.diff?r1=1.34&r2=1.35]
Daniel (22 October 2001)
- Tom Benoist reported that this SGI IRIX compiler didn't handle indented
preprocessor instructions, so they're no longer in the source code!
- Applied Kevin Roth's patches to make it easier to build cygwin packages from
the out-of-the-box curl release archives.
- I forgot to mention it below, but libcurl now closes connections that report
transfer failures. Unconditionally. This could be made more nicely in the
future if we set a flag or something that the connection is still good to be
used for the errors that know that for a fact. We have to close the
connection for the cases where we abort for example a HTTP transfer in the
middle, or otherwise we might re-use that connection later with lots of data
still being sent to us on it. [http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/curl/curl/lib/transfer.c.diff?r1=1.63&r2=1.64]
Loading full blame...