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

Daniel Stenberg's avatar
Daniel Stenberg committed
                                  Changelog
Daniel Fandrich (21 Oct 2008)
- Fixed some problems with SFTP range support to fix test cases 634 through
  637.

Daniel Fandrich (17 Oct 2008)
- Fixed a compile error reported by Albert Chin on AIX and IRIX when using
  GTLS.

Daniel Stenberg (16 Oct 2008)
- Igor Novoseltsev added CURLOPT_PROXYUSER and CURLOPT_PROXYPASSWORD that then
  make CURLOPT_PROXYUSERPWD sort of deprecated. The primary motive for adding
  these new options is that they have no problems with the colon separator
  that the CURLOPT_PROXYUSERPWD option does.

Daniel Stenberg (15 Oct 2008)
- Pascal Terjan filed bug #2154627
  (http://curl.haxx.se/bug/view.cgi?id=2154627) which pointed out that libcurl
  uses strcasecmp() in multiple places where it causes failures when the
  Turkish locale is used. This is because 'i' and 'I' isn't the same letter so
  strcasecmp() on those letters are different in Turkish than in English (or
  just about all other languages). I thus introduced a totally new internal
Daniel Stenberg's avatar
Daniel Stenberg committed
  function in libcurl (called Curl_raw_equal) for doing case insentive
  comparisons for english-(ascii?) style strings that thus will make "file"
  and "FILE" match even if the Turkish locale is selected.

Daniel Fandrich (15 Oct 2008)
- A <precheck> command is considered to have failed if it returns a non-zero
  return code.  This way, if the precheck command can't be run at all for
  whatever reason, it's treated as a precheck failure which causes the
  test to be skipped.

Daniel Stenberg (15 Oct 2008)
- John Wilkinson filed bug #2155496
  (http://curl.haxx.se/bug/view.cgi?id=2155496) pointing out an error case
  without a proper human-readable error message. When a read callback returns
  a too large value (like when trying to return a negative number) it would
  trigger and the generic error message then makes the proplem slightly
  different to track down. I've added an error message for this now.

Daniel Fandrich (9 Oct 2008)
- Fixed the --interface option to work with IPv6 connections on glibc
  systems supporting getifaddrs(). Also fixed a problem where an IPv6
  address could be chosen instead of an IPv4 one for --interface when it
  involved a name lookup.

Daniel Fandrich (8 Oct 2008)
- Added tests 1082 through 1085 to test symbolic --interface parameters

- Added tests 633 through 637 to test the new file range support for SFTP.
  All but the first test cause an infinite loop or other failure and so
  are added to DISABLED.

- John Wilkinson filed bug #2152270
  (http://curl.haxx.se/bug/view.cgi?id=2152270) which identified and fixed a
  CURLINFO_REDIRECT_URL memory leak and an additional wrong-doing:

  Any subsequent transfer with a redirect leaks memory, eventually crashing
  the process potentially.

  Any subsequent transfer WITHOUT a redirect causes the most recent redirect
  that DID occur on some previous transfer to still be reported.

Daniel Stenberg's avatar
Daniel Stenberg committed
- Igor Novoseltsev filed bug #2111613
  (http://curl.haxx.se/bug/view.cgi?id=2111613) that eventually identified a
  flaw in how the multi_socket interface in some cases missed to call the
  timeout callback when easy interfaces are removed and added within the same
  millisecond.
- Igor Novoseltsev brought a patch that introduced two new options to
  curl_easy_setopt: CURLOPT_USERNAME and CURLOPT_PASSWORD that sort of
  deprecates the good old CURLOPT_USERPWD since they allow applications to set
  the user name and password independently and perhaps more importantly allow
  both to contain colon(s) which CURLOPT_USERPWD doesn't fully support.

Daniel Fandrich (7 Oct 2008)
- Changed the handling of read/write errors in Curl_perform() to allow a
  a fresh connection to be made in such cases and the request retransmitted.
  This should fix test case 160.  Added test case 1079 in an attempt to
  test a similar connection dropping scenario, but as a race condition, it's
  hard to test reliably.

- Created test cases 1080 and 1081 to reproduce a problem of
  CURLINFO_REDIRECT_URL leaking memory and returning incorrect results when
  two URLs are requested. Reported by vmpdemo in bug #2152270

Daniel Stenberg (7 Oct 2008)
- Fixed CURLINFO_PRIMARY_IP: When libcurl created a connection to host A then
  the app re-used the handle to do a connection to host B and then again
  re-used the handle to host A, it would not update the info with host A's IP
  address (due to the connection being re-used) but it would instead report
  the info from host B.

Yang Tse's avatar
Yang Tse committed
Yang Tse (7 Oct 2008)
- Added --enable-optimize configure option to enable and disable compiler
  optimizations to allow decoupled setting from --enable-debug.

Yang Tse (2 Oct 2008)
- Added --enable-warnings configure option to enable and disable strict
  compiler warnings to allow decoupled setting from --enable-debug.

  runtests.pl will now run with picky compiler warnings enabled unless
  explicitly disabled.
  
Daniel Fandrich (1 Oct 2008)
- "make clean" now cleans out the docs and tests directories, too.

Daniel Stenberg (30 Sep 2008)
- The libcurl FTP code now returns CURLE_REMOTE_FILE_NOT_FOUND error when SIZE
  gets a 550 response back for the cases where a download (or NOBODY) is
  wanted. It still allows a 550 as response if the SIZE is used as part of an
  upload process (like if resuming an upload is requested and the file isn't
  there before the upload). I also modified the FTP test server and a few test
  cases accordingly to match this modified behavior.

Daniel Stenberg (29 Sep 2008)
- Daniel Egger provided a patch that allows you to disable proxy support in
  libcurl to somewhat reduce the size of the binary. Run configure
  --disable-proxy.
  
Daniel Fandrich (29 Sep 2008)
- Moved all signal-based name resolution timeout handling into a single new
  Curl_resolv_timeout function to reduce coupling.

- Ian Lynagh provided a patch that now makes CURLOPT_RANGE work fine for SFTP
  downloads!

Daniel Stenberg's avatar
Daniel Stenberg committed
- Maxim Ivanov filed bug report #2107803
  (http://curl.haxx.se/bug/view.cgi?id=2107803) "no CURLINFO_REDIRECT_URL in
  multi mode" together with a patch that fixed the problem.
Daniel Stenberg's avatar
Daniel Stenberg committed
- Emanuele Bovisio submitted bug report #2126435. We fixed the HTTP Digest
  auth code to not behave badly when getting a blank realm with
  realm="". http://curl.haxx.se/bug/view.cgi?id=2126435
Daniel Fandrich (23 Sep 2008)
- Make sure not to dereference the wrong UrlState proto union member when
  switching from one protocol to another in a single request (e.g.
  redirecting from HTTP to FTP as in test 1055) by resetting
  state.expect100header before every request.

- Introducing Jamie Lokier's function for date to epoch conversion used in the
  date parser function. This makes our function less dependent on system-
  provided functions and instead we do all the magic ourselves. We also no
  longer depend on the TZ environment variable. Switching to our own converter
  has some side-effect and they are noted here for future reference (taken
  from a mail by mr Lokier):

  time_t is not measured in seconds in the ANSI C standard - or even counted
  uniformly - weird platforms can use other numeric representations of dates
  in time_t - hence the difftime() function.

  On POSIX time_t is measured in UTC seconds, which means not including leap
  seconds.  But it's mentioned in a few places that some old POSIX-ish
  environments include leap seconds in their time_t counts...

  I'm pretty sure [the new implementation is] correct on anything truly POSIX.
  And it's obviously a lot less dependent on platform quirks and corner cases
  in many ways than the mktime() version.

- Rob Crittenden brought a patch to "add some locking for thread-safety to NSS
  implementation".

- Made the SOCKS code use the new Curl_read_plain() function to fix the bug
  Markus Moeller reported: http://curl.haxx.se/mail/archive-2008-09/0016.html

- recv() errors other than those equal to EAGAIN now cause proper
  CURLE_RECV_ERROR to get returned. This made test case 160 fail so I've now
  disabled it until we can figure out another way to exercise that logic.

- Michael Goffioul filed bug report #2107377 "Problem with multi + GnuTLS +
  proxy" (http://curl.haxx.se/bug/view.cgi?id=2107377) that showed how a multi
  interface using program didn't work when built with GnuTLS and a CONNECT
  request was done over a proxy (basically test 502 over a proxy to a HTTPS
  site). It turned out the ssl connect function would get called twice which
  caused the second call to fail.

Daniel Fandrich (22 Sep 2008)
- Fixed test 539 to handle an out of memory condition that shows up now
  that memdebug.h is included in the test programs.

Yang Tse (20 Sep 2008)
- Fix regression in configure script which affected OpenSSL builds on MSYS.

Yang Tse (19 Sep 2008)
- configure script now checks availability of the alarm() function.

Loading full blame...