Skip to content
CHANGES 98.2 KiB
Newer Older
                                  _   _ ____  _
                              ___| | | |  _ \| |
                             / __| | | | |_) | |
                            | (__| |_| |  _ <| |___
Daniel Stenberg's avatar
Daniel Stenberg committed
                             \___|\___/|_| \_\_____|

Daniel Stenberg's avatar
Daniel Stenberg committed
                                  Changelog
- Emil Romanus found a problem and helped me repeat it. It occured when using
  the curl_multi_socket() API with HTTP pipelining enabled and could lead to
  the pipeline basically stalling for a very long period of time until it took
  off again.

- Jeff Weber reported memory leaks with aborted SCP and SFTP transfers and
  provided excellent repeat recipes. I fixed the cases I managed to reproduce
  but Jeff still got some (SCP) problems even after these fixes:
  http://curl.haxx.se/mail/lib-2008-05/0342.html

- Bug report #1973352 (http://curl.haxx.se/bug/view.cgi?id=1973352) identified
  how the HTTP redirect following code didn't properly follow to a new URL if
  the new url was but a query string such as "Location: ?moo=foo". Test case
  1031 was added to verify this fix.

- Andreas Faerber and Scott McCreary made (lib)curl build for the Haiku OS. 

Yang Tse (26 May 2008)
- David Rosenstrauch reported that header files spnegohelp.h and
  openssl/objects.h were needed to compile SPNEGO support.

Daniel Fandrich (22 May 2008)
- Made sure to pass longs in to curl_easy_setopt where necessary in the
  example programs and libtest code.

Daniel Stenberg (19 May 2008)
- When trying to repeat a multi interface problem I fell over a few multi
  interface problems:

  o with pipelining disabled, the state should never be set to WAITDO but
    rather go straight to DO

  o we had multiple states for which the internal function returned no socket
    at all to wait for, with the effect that libcurl calls the socket callback
    (when curl_multi_socket() is used) with REMOVE prematurely (as it would be
    added again within very shortly)

  o when in DO and DOING states, the HTTP and HTTPS protocol handler functions
    didn't return that the socket should be waited for writing, but instead it
    was treated as if no socket was needing monitoring so again REMOVE was
    called prematurely.

Daniel Stenberg (13 May 2008)
- Added test case 556 that uses curl_easy_send() and curl_easy_recv()

Daniel Stenberg (9 May 2008)
- Introducing curl_easy_send() and curl_easy_recv(). They can be used to send
  and receive data over a connection previously setup with curl_easy_perform()
  and its CURLOPT_CONNECT_ONLY option. The sendrecv.c example was added to
  show how they can be used.

Yang Tse (9 May 2008)
- Internal time differences now use monotonic time source if available.
  This also implies the removal of the winmm.lib dependency for WIN32.

Daniel Stenberg (9 May 2008)
- Stefan Krause reported a busy-looping case when using the multi interface
  and doing CONNECT to a proxy. The app would then busy-loop until the proxy
  completed its response.

Michal Marek (9 May 2008)
- Make Curl_write and it's callees accept a const pointer, in preparation
  of tetetest's patch for curl_easy_send()

Daniel Stenberg (7 May 2008)
- Liam Healy filed the debian bug report #480044
  (http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=480044) identifying a
  segfault when using krb5 ftp, but the krb4 code had the same problem.

Yang Tse (7 May 2008)
- Christopher Palow provided the patch (edited by me) that introduces the
  use of microsecond resolution keys for internal splay trees.

Daniel Stenberg (4 May 2008)
- Yuriy Sosov pointed out a configure fix for detecting c-ares when that is
  built debug-enabled.

Daniel Stenberg (3 May 2008)
- Ben Van Hof filed bug report #1945240: "libcurl sometimes sends body twice
  when using CURL_AUTH_ANY" (http://curl.haxx.se/bug/view.cgi?id=1945240).
  The problem was that when libcurl rewound a stream meant for upload when it
  would prepare for a second request, it could accidentally continue the
  sending of the rewound data on the first request instead of on the second.
  Ben also provided test case 1030 that verifies this fix.

Daniel Stenberg (3 May 2008)
- Jean-Francois Bertrand reported a libcurl crash with CURLOPT_TCP_NODELAY
  since libcurl used getprotobyname() and that isn't thread-safe. We now
  switched to use IPPROTO_TCP unconditionally, but perhaps the proper fix is
  to detect the thread-safe version of the function and use that.
  http://curl.haxx.se/mail/lib-2008-05/0011.html

Daniel Stenberg (1 May 2008)
- Bart Whiteley provided a patch that made libcurl work properly when an app
  uses the CURLOPT_OPENSOCKETFUNCTION callback to create a unix domain socket
  to a http server.

Daniel Stenberg (29 Apr 2008)
- To make it easier for applications that want lots of magic stuff done on
  redirections and thus cannot use CURLOPT_FOLLOWLOCATION easily, we now
  introduce the new CURLINFO_REDIRECT_URL option that lets applications
  extract the URL libcurl would've redirected to if it had been told to. This
  then enables the application to continue to that URL as it thinks is
  suitable, without having to re-implement the magic of creating the new URL
  from the Location: header etc. Test 1029 verifies it.

Yang Tse (29 Apr 2008)
- Improved easy interface resolving timeout handling in c-ares enabled builds

Daniel Fandrich (28 Apr 2008)
- Added test 1028 to test an HTTP redirect to a FTP URL.

Daniel Stenberg (28 Apr 2008)
- Norbert Frese filed bug report #1951588: "Problem with curlftpfs and
  libcurl" (http://curl.haxx.se/bug/view.cgi?id=1951588) which seems to be an
  identical report to what Denis Golovan reported in
  http://curl.haxx.se/mail/lib-2008-02/0108.html The FTP code didn't reset the
  user/password pointers properly even though there might've been a new
  struct/cconnection getting used.

Daniel Stenberg (26 Apr 2008)
- Reverted back to use automake 1.9.6 in the next release (from automake
  1.10.1) since it *still* suffers from Solaris-related bugs. Our previous
  automake 1.10 problem was reported in bug #1701360
  (http://curl.haxx.se/bug/view.cgi?id=1701360) and this recent problem was
  bug #1944825 (http://curl.haxx.se/bug/view.cgi?id=1944825). I have not
  personally approached the automake team about either one of these but I
  figure we need a Solaris 10 guy to do it!
  
Yang Tse (25 Apr 2008)
- Added 'timeout' and 'delay' attributes support for the test harness
  <command> subsection.

Daniel Fandrich (24 Apr 2008)
- Made --stderr able to redirect all stderr messages.

Yang Tse (23 Apr 2008)
- Improve synchronization between test harness runtests.pl script
  and test harness servers to minimize risk of false test failures.

Daniel Fandrich (22 Apr 2008)
- Added support for running on Symbian OS.

Daniel Fandrich (18 Apr 2008)
- Added test cases 1026 and 1027 to do some rudimentary tests on the --manual
  and --help options.

Michal Marek (14 Apr 2008)
- allow disabling the typechecker by defining CURL_DISABLE_TYPECHECK, as
  discussed in http://curl.haxx.se/mail/lib-2008-04/0291.html

- Stefan Krause reported a case where the OpenSSL handshake phase wasn't
  properly acknowledging the timeout values, like if you pulled the network
  plug in the midst of it.

- Andre Guibert de Bruet fixed a second case of not checking the malloc()
  return code in the Negotiate code.

- Sandor Feldi reported bug #1942022
  (http://curl.haxx.se/bug/view.cgi?id=1942022) pointing out a mistake in the
  lib/Makefile.vc[68] makefiles' release-ssl-dll target.

- Brock Noland reported that curl behaved differently depending on which order
  you used -i and -I.

Daniel Stenberg (12 Apr 2008)
- Andre Guibert de Bruet found and fixed a case where malloc() was called but
  was not checked for a NULL return, in the Negotiate code.

- Added test cases 1024 & 1025 to test a scenario similar to the one reported
  by Ben Combee where libcurl would send the wrong cookie to a redirected
  server.  libcurl was doing the right thing in these test cases.
Michal Marek (7 Apr 2008)
- Fix the MIT / Heimdal check for good:
  Define HAVE_GSSMIT if <gssapi/{gssapi.h,gssapi_generic.h,gssapi_krb5.h}> are
  available, otherwise define HAVE_GSSHEIMDAL if <gssapi.h> is available.
  
  Only define GSS_C_NT_HOSTBASED_SERVICE to gss_nt_service_name if
  GSS_C_NT_HOSTBASED_SERVICE isn't declared by the gssapi headers. This should
  avoid breakage in case we wrongly recognize Heimdal as MIT again.

- Alexey Simak fixed curl_easy_reset() to reset the max redirect limit properly

- Based on the Debian bug report #474224 that complained about the FTP error
  message when libcurl doesn't get a 220 back immediately on connect, I now
Loading full blame...