Yang Tse
da2b75a026
Fix compiler warning/error: ISO C90 forbids mixed declarations and code
2007-03-18 17:29:24 +00:00
Yang Tse
0e2d3b7b6c
Code refactoring, extracting a new function wait_ms() from Curl_select and
...
Curl_poll() which is called whenever not a single valid file descriptor is
passed to these functions.
Improve readibility using a poll() macro to replace WSApoll().
2007-03-18 04:51:40 +00:00
Gisle Vanem
46a50aa001
Remove unneeded 'HAVE_*' defines. Detect i386 OS-target (gcc).
2007-03-17 18:19:15 +00:00
Dan Fandrich
9189ac1141
Fixed some memory leaks in various error paths.
2007-03-15 21:25:56 +00:00
Dan Fandrich
8605321d06
Fixed a memory leak.
2007-03-15 00:04:41 +00:00
Daniel Stenberg
d314453037
yassl doesn't have SSL_get_shutdown() in its OpenSSL() layer so we check for
...
it and avoid it, even if this cripples the CCC command
2007-03-14 23:40:46 +00:00
Dan Fandrich
9cb69f77f1
Fixed a NULL pointer dereference on sftp initialization failure.
...
Added some more debug logs.
2007-03-14 02:04:17 +00:00
Gisle Vanem
0188493d54
Use Curl_inet_pton() instead of inet_pton().
2007-03-13 12:52:28 +00:00
Yang Tse
b66def2b4c
Emmanuel Dreyfus fixed not being able to find ber_free() in
...
libldap when available in liblber.
2007-03-12 05:09:25 +00:00
Daniel Stenberg
20b9ab49a7
can just as well NULLify the pointer in a single spot
2007-03-11 22:48:58 +00:00
Daniel Stenberg
c8cd13337e
reverted the pselect patch => http://curl.haxx.se/mail/lib-2007-03/0100.html
2007-03-11 09:11:29 +00:00
Yang Tse
40e9e40cb4
fix compiler warning: unused variable
2007-03-11 00:26:01 +00:00
Daniel Stenberg
09c70dec08
Eygene Ryabinkin fixed a use-after-free issue with HTTP transfers with the
...
multi interface
2007-03-10 22:51:20 +00:00
Daniel Stenberg
dbaf4f9361
- Bryan Henderson introduces two things:
...
1) the progress callback gets called more frequently (at times)
2) libcurl *might* call the callback when it receives a signal
2007-03-10 12:11:21 +00:00
Daniel Stenberg
1e55ed5c7d
- Robert Iakobashvili fixed CURLOPT_INTERFACE for IPv6.
2007-03-09 22:48:07 +00:00
Daniel Stenberg
6dd4fe0740
- Robert A. Monat improved the maketgz and VC6/8 generating to set the correct
...
machine type too.
2007-03-09 22:26:59 +00:00
Dan Fandrich
85daec253c
Honour --ftp-ssl-control on ftps:// URLs to allow encrypted control and
...
unencrypted data connections.
2007-03-07 22:42:05 +00:00
Yang Tse
82d310d0d9
Do not remove CURLM_STATE_WAITPROXYCONNECT from the CURLMstate enum
...
in builds with HTTP support disabled to keep consistent enum values
for CURLMstate in all kind of builds.
2007-03-01 12:02:17 +00:00
Yang Tse
4fdb42377b
proper symbol definition check for Novell NetWare
2007-02-28 15:10:20 +00:00
Yang Tse
be8a5d0aef
proper symbol definition check for all AmigaOS flavours
2007-02-28 14:45:48 +00:00
Yang Tse
99dcd33f04
protect from themselves those who need it
2007-02-28 05:15:56 +00:00
Daniel Stenberg
060f7ca2d2
- Hang Kin Lau found and fixed: When I use libcurl to connect to an https
...
server through a proxy and have the remote https server port set using the
CURLOPT_PORT option, protocol gets reset to http from https after the first
request.
User defined URL was modified internally by libcurl and subsequent reuse of
the easy handle may lead to connection using a different protocol (if not
originally http).
I found that libcurl hardcoded the protocol to "http" when it tries to
regenerate the URL if CURLOPT_PORT is set. I tried to fix the problem as
follows and it's working fine so far
2007-02-27 22:12:15 +00:00
Gisle Vanem
d165da07fe
Added TOPDIR variable. Put dependencies in external file.
2007-02-27 15:24:32 +00:00
Yang Tse
acc4cf87cd
no proxy support if libcurl is built with HTTP disabled
2007-02-27 02:24:13 +00:00
Daniel Stenberg
7444342675
Jose Kahan pointed out a Digest server that provided the algorith last in the
...
header line without quotes and with a CRLF immediately following...
2007-02-26 22:03:01 +00:00
Gisle Vanem
c514a2a89a
Removed inclusion of <sys/types.h> and <sys/stat.h> in .c-files
...
since they're already included through "setup.h".
2007-02-26 04:24:26 +00:00
Gisle Vanem
e2f0580dfe
Removed unneeded 'HAVE_x' defines.
2007-02-26 03:41:25 +00:00
Gisle Vanem
d165bed2d6
Fix typo.
2007-02-26 03:38:26 +00:00
Daniel Stenberg
b819c72700
- Adam D. Moss made the HTTP CONNECT procedure less blocking when used from
...
the multi interface. Note that it still does a part of the connection in a
blocking manner.
2007-02-25 11:38:13 +00:00
Yang Tse
4937281ddc
compiler warning fix
2007-02-22 07:39:45 +00:00
Yang Tse
8e27ed2fdd
Fix compiler warning "statement is unreachable"
2007-02-22 06:22:19 +00:00
Yang Tse
9bf9617ad6
Fix compiler warnings
...
"case label value exceeds maximum value for type" and
"comparison is always false due to limited range of data type"
Both triggered when using a bool variable as the switch variable
in a switch statement and using enums for the case targets.
2007-02-22 06:19:39 +00:00
Yang Tse
69565afab0
Check for stdbool.h at configuration stage, and include it if available.
...
Check for lowercase 'bool' type at configuration stage. If not available
provide a suitable replacement with a type definition of 'unsigned char'
in setup_once.h
Move definitions of TRUE and FALSE to setup_once.h
2007-02-22 02:51:54 +00:00
Daniel Stenberg
39aac63521
silence two cases of "comparison between signed and unsigned"
2007-02-21 22:02:13 +00:00
Daniel Stenberg
f19d333ef6
- Ravi Pratap provided work on libcurl making pipelining more robust and
...
fixing some bugs:
o Don't mix GET and POST requests in a pipeline
o Fix the order in which requests are dispatched from the pipeline
o Fixed several curl bugs with pipelining when the server is returning
chunked encoding:
* Added states to chunked parsing for final CRLF
* Rewind buffer after parsing chunk with data remaining
* Moved chunked header initializing to a spot just before receiving
headers
2007-02-21 21:59:40 +00:00
Yang Tse
3a634a273a
curlassert macro replaced with DEBUGASSERT macro defined in setup_once.h
2007-02-21 19:03:20 +00:00
Dan Fandrich
06d1b029f6
Include some possible dependencies of arpa/inet.h
2007-02-21 18:05:38 +00:00
Yang Tse
48029d7e74
fix compiler warning "enumerated type mixed with another type"
2007-02-21 05:48:07 +00:00
Linus Nielsen Feltzing
2f5e99ca02
New FTP CCC functionality - adds passive and active mode to accomodate for different server behaviour
2007-02-20 22:02:11 +00:00
Dan Fandrich
6014c21bc9
Include network byte order conversion macros on Minix.
2007-02-20 17:31:20 +00:00
Yang Tse
8c0b1dc3c5
compiler warning fix
2007-02-20 14:26:15 +00:00
Yang Tse
be3c5f0b94
compiler warning fix
2007-02-20 14:01:04 +00:00
Yang Tse
29bb6f65f1
Move header file inclusion logic and definition of timeval
...
struct for platforms that don't have it to setup_once.h
2007-02-20 12:12:27 +00:00
Daniel Stenberg
1045b8d382
- Shmulik Regev found a memory leak in re-used HTTPS connections, at least
...
when the multi interface was used.
2007-02-19 12:20:32 +00:00
Daniel Stenberg
d2bdad5945
and fix warnings due to lack of protos
2007-02-19 11:55:49 +00:00
Daniel Stenberg
17e8d60c01
- Robson Braga Araujo made passive FTP transfers work with SOCKS (both 4 and
...
5).
2007-02-19 11:53:54 +00:00
Daniel Stenberg
ec1b351317
fixed code to compile and removed one warning
2007-02-19 11:47:04 +00:00
Daniel Stenberg
cbf58d88d0
- Jeff Pohlmeyer identified two problems: first a rather obscure problem with
...
the multi interface and connection re-use that could make a
curl_multi_remove_handle() ruin a pointer in another handle.
The second problem was less of an actual problem but more of minor quirk:
the re-using of connections wasn't properly checking if the connection was
marked for closure.
2007-02-18 23:02:42 +00:00
Yang Tse
300cbc2e21
Michal Marek comment fix
2007-02-18 00:54:26 +00:00
Yang Tse
ec9e399668
fix ENAMETOOLONG and ENOTEMPTY may already be defined in errno.h
2007-02-18 00:34:37 +00:00
Yang Tse
d9bf55570b
Move portable error number symbolic name definitions to setup_once.h
2007-02-17 13:51:24 +00:00
Dan Fandrich
a0a47f2767
Better separate the library dependencies into those required by libcurl
...
and those required by other components to avoid forcing unneeded
dependencies into the target objects.
2007-02-17 01:29:01 +00:00
Dan Fandrich
69f2f5cb6f
Replicate the configure tests that determined that timeval was available.
2007-02-17 01:23:37 +00:00
Yang Tse
a1d5983991
use macros ERRNO, SET_ERRNO(), SOCKERRNO and SET_SOCKERRNO() for errno handling
2007-02-16 18:19:35 +00:00
Daniel Stenberg
aa4435c23b
- Duncan Mac-Vicar Prett and Michal Marek reported problems with resetting
...
CURLOPT_RANGE back to no range on an easy handle when using FTP.
2007-02-16 15:37:05 +00:00
Daniel Stenberg
dca8f962e0
maxdownload is actually -1 for unlimited
2007-02-16 15:27:49 +00:00
Yang Tse
6663608d15
avoid redefinition of SET_ERRNO()
2007-02-15 18:44:32 +00:00
Yang Tse
d21e4eb8ae
introduce uppercase macros SOCKERRNO, SET_SOCKERRNO(), ERRNO and SET_ERRNO()
...
making them available to any source code file which includes "setup.h".
Macro SOCKERRNO / SET_SOCKERRNO() returns / sets the *socket-related* errno
(or equivalent) on this platform to hide platform details to code using it.
Macro ERRNO / SET_ERRNO() returns / sets the NOT *socket-related* errno
(or equivalent) on this platform to hide platform details to code using it.
2007-02-15 16:23:24 +00:00
Yang Tse
d86e6d3ed2
Do not define HAVE_GMTIME_R for native Windows builds
2007-02-15 01:58:37 +00:00
Yang Tse
f99ca90540
Daniel Mirchandani fix to make libcurl build nicely on Winsock
...
build targets when --disable-verbose is specified.
2007-02-15 01:38:07 +00:00
Gunter Knauf
e24cb6cb90
enabled IPV6 builds.
2007-02-15 01:36:35 +00:00
Yang Tse
fbcf86b83e
avoid using funtion isblank() and just use our ISBLANK
...
macro to provide this functionality on all platforms
2007-02-14 13:31:37 +00:00
Yang Tse
5c3f36b4b4
compiler warning fix
2007-02-14 04:45:30 +00:00
Daniel Stenberg
4efa0d9f68
ftp@example.com is now the new anonymous FTP password. I opted for 'ftp' on
...
the left side of @ to make it short(er).
2007-02-13 22:50:16 +00:00
Daniel Stenberg
e021fe9444
- Robert A. Monat made libcurl build fine with VC2005 - it doesn't have
...
gmtime_r() like the older VC versions. He also made use of some machine-
specific defines to differentiate the "OS" define.
2007-02-13 21:21:44 +00:00
Yang Tse
be71ccbce3
check for isblank() at configuration stage. If not available
...
provide a suitable replacement for use in our ISBLANK macro
2007-02-13 19:01:03 +00:00
Yang Tse
0db485a448
use our own ISUPPER and ISLOWER macros
2007-02-13 18:02:20 +00:00
Yang Tse
6d05a33ed9
use our own ISBLANK macro
2007-02-13 17:47:27 +00:00
Yang Tse
569c169559
use our own ISSPACE macro
2007-02-13 17:28:40 +00:00
Yang Tse
5649b738be
compiler warning fix
2007-02-13 02:30:31 +00:00
Daniel Stenberg
7f70dbcad5
Rob Crittenden added support for NSS (Network Security Service) for the
...
SSL/TLS layer. http://www.mozilla.org/projects/security/pki/nss/
2007-02-12 22:32:37 +00:00
Daniel Stenberg
28b932fb4e
- Shmulik Regev fixed so that the final CRLF of HTTP response headers are sent
...
to the debug callback.
- Shmulik Regev added CURLOPT_HTTP_CONTENT_DECODING and
CURLOPT_HTTP_TRANSFER_DECODING that if set to zero will disable libcurl's
internal decoding of content or transfer encoded content. This may be
preferable in cases where you use libcurl for proxy purposes or similar. The
command line tool got a --raw option to disable both at once.
2007-02-12 21:13:47 +00:00
Daniel Stenberg
c7d0966201
- Jeff Pohlmeyer fixed a flaw in curl_multi_add_handle() when adding a handle
...
that has an easy handle present in the "closure" list pending closure.
2007-02-12 12:15:41 +00:00
Daniel Stenberg
04e6568a7e
SCP upload done non-blocking
2007-02-07 22:00:33 +00:00
Yang Tse
77fcad041f
fix for millisecond resolution timeouts
2007-02-06 18:08:11 +00:00
Yang Tse
e213555c98
compiler warning fix
2007-02-06 18:06:37 +00:00
Daniel Stenberg
028a9d6785
read SFTP with the non-blocking API
2007-02-06 15:41:19 +00:00
Yang Tse
d0aca8017f
compiler warning fix
2007-02-06 03:31:27 +00:00
Daniel Stenberg
91386937ff
- Michael Wallner provided a patch that adds support for CURLOPT_TIMEOUT_MS
...
and CURLOPT_CONNECTTIMEOUT_MS that, as their names should hint, do the
timeouts with millisecond resolution instead. The only restriction to that
is the alarm() (sometimes) used to abort name resolves as that uses full
seconds. I fixed the FTP response timeout part of the patch.
Internally we now count and keep the timeouts in milliseconds but it also
means we multiply set timeouts with 1000. The effect of this is that no
timeout can be set to more than 2^31 milliseconds (on 32 bit systems), which
equals 24.86 days. We probably couldn't before either since the code did
*1000 on the timeout values on several places already.
2007-02-05 22:51:32 +00:00
Yang Tse
bc2183b440
compiler warning fix
2007-02-05 04:10:32 +00:00
Gisle Vanem
6a175b42db
Suppress warning "'nread' might be used uninitialized in this function".
2007-02-04 12:18:22 +00:00
Yang Tse
82f52e5a6f
compiler warning fix
2007-02-03 13:05:28 +00:00
Daniel Stenberg
138b4f27b4
- Manfred Schwarb reported that socks5 support was broken and help us pinpoint
...
the problem. The code now tries harder to use httproxy and proxy where
apppropriate, as not all proxies are HTTP...
2007-02-03 09:33:54 +00:00
Yang Tse
c26ec47e90
compiler warning fix
2007-02-02 17:16:06 +00:00
Yang Tse
ef6f24a7ce
move DEBUGF macro definition to setup_once.h
2007-02-02 15:31:32 +00:00
Daniel Stenberg
abe90019d3
prefer using the (upcoming) non-blocking libssh2 API
2007-02-02 15:26:57 +00:00
Yang Tse
d2dd3d7e16
compiler warning fix
2007-02-01 15:36:56 +00:00
Gisle Vanem
1c63ceb317
Suppress the "'convbuf' might be used uninitialized in this function" warning.
2007-02-01 12:23:00 +00:00
Yang Tse
c25283185a
fogot to change Curl_mk_connc in header file
2007-02-01 11:27:42 +00:00
Yang Tse
54db98c220
compiler warning fix
2007-02-01 01:42:13 +00:00
Yang Tse
49c4d9c9cd
add debug messages for initialization failures
2007-01-31 19:47:49 +00:00
Gisle Vanem
e994c6af75
Use DOS line-endings.
2007-01-29 19:08:04 +00:00
Daniel Stenberg
abdbd3100f
- Michael Wallner reported that when doing a CONNECT with a custom User-Agent
...
header, you got _two_ User-Agent headers in the CONNECT request...! Added
test case 287 to verify the fix.
2007-01-29 09:26:36 +00:00
Gunter Knauf
ddace02efe
fixed segfault when compiled with MingW32 and cmd or command shell.
2007-01-29 00:51:02 +00:00
Daniel Stenberg
1f4c8c4f09
Andreas Rieke added extra infof() for when a connection is not re-used due to
...
SSL conditions not being the same
2007-01-28 22:45:22 +00:00
Daniel Stenberg
8162b32bad
silence compiler warnings
2007-01-28 22:36:23 +00:00
Gunter Knauf
daf527b276
enabled build with sspi.
2007-01-28 21:54:10 +00:00
Gunter Knauf
ee51c07be6
enabled build with hardcoded ca-bundle path;
...
added distclean target.
2007-01-28 15:31:06 +00:00
Gunter Knauf
856ba4c6c6
force to create ca-bunde.h even if it exists already.
2007-01-28 15:07:53 +00:00
Gunter Knauf
b3e23373bd
use var for awk.
2007-01-28 14:43:25 +00:00
Daniel Stenberg
e5adab39b1
curl_easy_reset() now resets the CA bundle path correctly
2007-01-28 12:58:13 +00:00
Gunter Knauf
d31153584e
another small fix to directory listing output; disabled CURL_LIBSSH2_DEBUG.
2007-01-28 12:35:39 +00:00
Gunter Knauf
a79e5d7925
fix sftp directory listing so that it works without -v and is redirectable with -o/-O.
2007-01-27 12:14:02 +00:00
Gunter Knauf
82491d5c06
tell us what we put out here...
2007-01-27 11:50:42 +00:00
Yang Tse
b6f889085d
update copyright year notice
2007-01-27 03:43:05 +00:00
Yang Tse
cdbbb7d900
Compiler warning fix
2007-01-27 03:14:25 +00:00
Yang Tse
f1918aa343
sync comment with reality
2007-01-27 01:56:20 +00:00
Dan Fandrich
e6aed92742
Fixed compiler warning.
2007-01-26 17:50:06 +00:00
Gunter Knauf
5f5a28d20e
added project header to lib resource file; fixed header copyright.
2007-01-26 08:53:03 +00:00
Daniel Stenberg
2b280bcc69
fix compiler warnings for SSL-disabled builds
2007-01-25 21:00:03 +00:00
Gunter Knauf
83a43bea8a
removed unused define.
2007-01-25 15:00:01 +00:00
Gunter Knauf
2b7bcf2505
fixed copyright for new year.
2007-01-25 13:17:20 +00:00
Gunter Knauf
4b27fae069
enabled build with libssh2.
2007-01-25 13:14:42 +00:00
Daniel Stenberg
10a13eba72
fix non-SSL builds again
2007-01-25 11:09:56 +00:00
Dan Fandrich
44ac2776ae
Fixed a dangling pointer problem that prevented the http_proxy environment
...
variable from being properly used in many cases (and caused test case 63
to fail).
2007-01-25 01:35:43 +00:00
Gunter Knauf
36e3e6ed16
removed not used define.
2007-01-25 00:26:29 +00:00
Dan Fandrich
5f9cbc4209
Only shut down SSL if the CCC command succeeded.
2007-01-24 19:09:12 +00:00
Daniel Stenberg
3239f059b8
moved the SSL pending function to the proper place and name
2007-01-24 17:19:08 +00:00
Daniel Stenberg
45bac25d90
bail out on strdup() errors
2007-01-24 12:34:23 +00:00
Daniel Stenberg
354c8dcd82
- David McCreedy did NTLM changes mainly for non-ASCII platforms:
...
#1
There's a compilation error in http_ntlm.c if USE_NTLM2SESSION is NOT
defined. I noticed this while testing various configurations. Line 867 of
the current http_ntlm.c is a closing bracket for an if/else pair that only
gets compiled in if USE_NTLM2SESSION is defined. But this closing bracket
wasn't in an #ifdef so the code fails to compile unless USE_NTLM2SESSION was
defined. Lines 198 and 140 of my patch wraps that closing bracket in an
#ifdef USE_NTLM2SESSION.
#2
I noticed several picky compiler warnings when DEBUG_ME is defined. I've
fixed them with casting. By the way, DEBUG_ME was a huge help in
understanding this code.
#3
Hopefully the last non-ASCII conversion patch for libcurl in a while. I
changed the "NTLMSSP" literal to hex since this signature must always be in
ASCII.
Conversion code was strategically added where necessary. And the
Curl_base64_encode calls were changed so the binary "blobs" http_ntlm.c
creates are NOT translated on non-ASCII platforms.
2007-01-23 22:57:42 +00:00
Daniel Stenberg
9e1aef7183
very minor indent change
2007-01-23 22:13:05 +00:00
Gunter Knauf
9ab7cda010
enabled build with libssh2; fixed copyright for new year..
2007-01-23 00:26:45 +00:00
Gisle Vanem
7b704e173c
Supress "comparison between signed and unsigned" warning.
2007-01-17 15:15:21 +00:00
Daniel Stenberg
8cade952bf
David McCreedy fixed a flaw from his previous non-ascii HTTP patch
2007-01-16 22:26:50 +00:00
Daniel Stenberg
385e612fa5
- Armel Asselin improved libcurl to behave a lot better when an easy handle
...
doing an FTP transfer is removed from a multi handle before completion. The
fix also fixed the "alive counter" to be correct on "premature removal" for
all protocols.
2007-01-16 22:22:10 +00:00
Daniel Stenberg
1886388791
restore previous addition to the amount of data that is returned
2007-01-16 21:28:45 +00:00
Dan Fandrich
bbdc483671
Fixed a small memory leak in tftp uploads discovered by curl's memory leak
...
detector. Also changed tftp downloads to URL-unescape the downloaded
file name.
2007-01-16 18:33:25 +00:00
Daniel Stenberg
0fb5a65a58
- David McCreedy provided libcurl changes for doing HTTP communication on
...
non-ASCII platforms. It does add some complexity, most notably with more
#ifdefs, but I want to see this supported added and I can't see how we can
add it without the extra stuff added.
2007-01-14 14:57:51 +00:00
Daniel Stenberg
869d65337e
fixed bad variable use when getting the size which we should read when
...
attempting not to read data that might belong to the next response (if
pipelining)
2007-01-13 23:33:21 +00:00
Daniel Stenberg
277df1c6b1
make Curl_cookie_clearall() survive getting called with a NULL pointer
2007-01-13 23:32:14 +00:00
Dan Fandrich
9e61c904ac
Display crypto engine name correctly in debug message.
2007-01-10 21:21:53 +00:00
Linus Nielsen Feltzing
d465199411
Correct error code for CCC/SSL shutdown failure
2007-01-08 11:24:11 +00:00
Linus Nielsen Feltzing
55123424c8
Removed unused variable in Curl_ossl_shutdown()
2007-01-08 10:03:19 +00:00
Linus Nielsen Feltzing
7515a75206
Fix compilation errors when building without SSL
2007-01-06 10:49:11 +00:00
Daniel Stenberg
4750e6f3c5
- Linus Nielsen Feltzing introduced the --ftp-ssl-ccc command line option to
...
curl that uses the new CURLOPT_FTP_SSL_CCC option in libcurl. If enabled, it
will make libcurl shutdown SSL/TLS after the authentication is done on a
FTP-SSL operation.
2007-01-05 23:11:14 +00:00
Gisle Vanem
b7aaa4d907
Include <dos.h> for delay() on MSDOS.
2007-01-05 15:56:28 +00:00
Daniel Stenberg
359d500908
- David McCreedy made changes to allow base64 encoding/decoding to work on
...
non-ASCII platforms.
2007-01-03 23:04:38 +00:00
Daniel Stenberg
d8ff0336a5
- Matt Witherspoon fixed the flaw which made libcurl 7.16.0 always store
...
downloaded data in two buffers, just to be able to deal with a special HTTP
pipelining case. That is now only activated for pipelined transfers. In
Matt's case, it showed as a considerable performance difference,
2007-01-03 22:18:38 +00:00
Daniel Stenberg
0682d25da5
- Victor Snezhko helped us fix bug report #1603712
...
(http://curl.haxx.se/bug/view.cgi?id=1603712 ) (known bug #36 ) --limit-rate
(CURLOPT_MAX_SEND_SPEED_LARGE and CURLOPT_MAX_RECV_SPEED_LARGE) are broken
on Windows (since 7.16.0, but that's when they were introduced as previous
to that the limiting logic was made in the application only and not in the
library). It was actually also broken on select()-based systems (as apposed
to poll()) but we haven't had any such reports. We now use select(), Sleep()
or delay() properly to sleep a while without waiting for anything input or
output when the rate limiting is activated with the easy interface.
2007-01-02 22:34:56 +00:00
Daniel Stenberg
bd600fbebe
curl_easy_duphandle() sets the magic number in the new handle
2006-12-29 11:32:14 +00:00
Daniel Stenberg
bedc61ac45
- Robert Foreman provided a prime example snippet showing how libcurl would
...
get confused and not acknowledge the 'no_proxy' variable properly once it
had used the proxy and you re-used the same easy handle. I made sure the
proxy name is properly stored in the connect struct rather than the
sessionhandle/easy struct.
2006-12-22 15:04:59 +00:00
Daniel Stenberg
61a6992559
Curl_getinfo() now checks for a NULL SessionHandle pointer
2006-12-22 13:44:10 +00:00
Daniel Stenberg
ebee2e323d
- David McCreedy fixed a bad call to getsockname() that wrongly used a size_t
...
variable to point to when it should be a socklen_t.
2006-12-22 13:30:54 +00:00
Daniel Stenberg
b2f8de571f
When setting a proxy with environment variables and (for example) running
...
'curl [URL]' with a URL without a protocol prefix, curl would not send a
correct request as it failed to add the protocol prefix.
2006-12-22 07:30:21 +00:00
Daniel Stenberg
cb4a5f5a2b
minor indent fix
2006-12-21 15:47:19 +00:00
Daniel Stenberg
1beb7de7e0
removed unused variables
2006-12-21 10:18:15 +00:00
Daniel Stenberg
89ab5f4380
Robson Braga Araujo reported bug #1618359
...
(http://curl.haxx.se/bug/view.cgi?id=1618359 ) and subsequently provided a
patch for it: when downloading 2 zero byte files in a row, curl 7.16.0
enters an infinite loop, while curl 7.16.1-20061218 does one additional
unnecessary request.
Fix: During the "Major overhaul introducing http pipelining support and
shared connection cache within the multi handle." change, headerbytecount
was moved to live in the Curl_transfer_keeper structure. But that structure
is reset in the Transfer method, losing the information that we had about
the header size. This patch moves it back to the connectdata struct.
2006-12-21 10:15:38 +00:00
Daniel Stenberg
8d11767048
recv() doesn't take MSG_NOSIGNAL in its forth argument so let's not pass it.
...
Brendan Jurd pointed out.
2006-12-16 22:28:08 +00:00
Daniel Stenberg
fcccf9aa0d
Brendan Jurd provided a fix that now prevents libcurl from getting a SIGPIPE
...
during certain conditions when GnuTLS is used.
2006-12-16 21:33:51 +00:00
Daniel Stenberg
72bd027537
Brendan Jurd pointed out these typos
2006-12-16 21:05:33 +00:00
Gisle Vanem
33831759b5
Fix typo.
2006-12-15 16:49:40 +00:00
Daniel Stenberg
88c8d72a21
Alexey Simak found out that when doing FTP with the multi interface and
...
something went wrong like it got a bad response code back from the server,
libcurl would leak memory. Added test case 538 to verify the fix.
I also noted that the connection would get cached in that case, which
doesn't make sense since it cannot be re-use when the authentication has
failed. I fixed that issue too at the same time, and also that the path
would be "remembered" in vain for cases where the connection was about to
get closed.
2006-12-11 09:32:58 +00:00
Daniel Stenberg
cf99fed17a
PROT_CLOSEACTION doesn't have to be its own bit but can just as well just
...
include the protocol bits of such actions, which currently only means FTP
2006-12-11 09:31:08 +00:00
Daniel Stenberg
ca48b6bf35
fixed the printf formatting after I changed the type of 'excess'
2006-12-07 15:33:06 +00:00
Daniel Stenberg
840e796aa9
Sebastien Willemijns reported bug #1603712
...
(http://curl.haxx.se/bug/view.cgi?id=1603712 ) which is about connections
getting cut off prematurely when --limit-rate is used. While I found no such
problems in my tests nor in my reading of the code, I found that the
--limit-rate code was severly flawed (since it was moved into the lib, since
7.15.5) when used with the easy interface and it didn't work as documented so
I reworked it somewhat and now it works for my tests.
2006-12-06 09:37:40 +00:00
Daniel Stenberg
5fd096da8d
Stefan Krause pointed out a compiler warning with a picky MSCV compiler when
...
passing a curl_off_t argument to the Curl_read_rewind() function which takes
an size_t argument. Curl_read_rewind() also had debug code left in it and it
was put in a different source file with no good reason when only used from
one single spot.
2006-12-05 21:40:14 +00:00
Daniel Stenberg
eb29c5c285
removed the final traces of the closepolicy option
2006-12-05 21:39:24 +00:00
Daniel Stenberg
e4505aefd9
Jared Lundell filed bug report #1604956
...
(http://curl.haxx.se/bug/view.cgi?id=1604956 ) which identified setting
CURLOPT_MAXCONNECTS to zero caused libcurl to SIGSEGV. Starting now, libcurl
will always internally use no less than 1 entry in the connection cache.
2006-12-05 15:36:26 +00:00
Daniel Stenberg
d6b0612882
better preprocessor check for recent MSVC versions
2006-12-05 15:24:18 +00:00
Daniel Stenberg
4c65eb0af8
CURLOPT_FORBID_REUSE works again with a cleaned up order of doing things in
...
Curl_done()
2006-12-05 15:17:32 +00:00
Daniel Stenberg
318a8258fd
oops, fix belonging to the previous curl_getdate() fix since it makes MSVC
...
use gmtime_r
2006-12-05 15:00:14 +00:00
Daniel Stenberg
17ae28e0fe
Martin Skinner brought back bug report #1230118 to haunt us once again.
...
(http://curl.haxx.se/bug/view.cgi?id=1230118 ) curl_getdate() did not work
properly for all input dates on Windows. It was mostly seen on some TZ time
zones using DST. Luckily, Martin also provided a fix.
2006-12-05 14:57:43 +00:00
Daniel Stenberg
3c4f622479
Alexey Simak filed bug report #1600447
...
(http://curl.haxx.se/bug/view.cgi?id=1600447 ) in which he noted that active
FTP connections don't work with the multi interface. The problem is here that
the multi interface state machine has a state during which it can wait for the
data connection to connect, but the active connection is not done in the same
step in the sequence as the passive one is so it doesn't quite work for
active. The active FTP code still use a blocking function to allow the remote
server to connect.
The fix (work-around is a better word) for this problem is to set the
boolean prematurely that the data connection is completed, so that the "wait
for connect" phase ends at once.
2006-12-05 13:49:29 +00:00
Daniel Stenberg
3ce43764be
Matt Witherspoon fixed a problem case when the CPU load went to 100% when a
...
HTTP upload was disconnected:
"What appears to be happening is that my system (Linux 2.6.17 and 2.6.13) is
setting *only* POLLHUP on poll() when the conditions in my previous mail
occur. As you can see, select.c:Curl_select() does not check for POLLHUP. So
basically what was happening, is poll() was returning immediately (with
POLLHUP set), but when Curl_select() looked at the bits, neither POLLERR or
POLLOUT was set. This still caused Curl_readwrite() to be called, which
quickly returned. Then the transfer() loop kept continuing at full speed
forever."
2006-12-05 13:37:05 +00:00
Daniel Stenberg
d8c61d459e
Toon Verwaest reported that there are servers that send the Content-Range:
...
header in a third, not suppported by libcurl, format and we agreed that we
could make the parser more forgiving to accept all the three found
variations.
2006-12-01 07:49:22 +00:00
Daniel Stenberg
688699a046
no need to access it with conn->data since data is already a local variable
...
holding the conn->data value
2006-11-27 13:38:32 +00:00
Daniel Stenberg
da58d03ff7
Venkat Akella found out that libcurl did not like HTTP responses that simply
...
responded with a single status line and no headers nor body. Starting now, a
HTTP response on a persistent connection (i.e not set to be closed after the
response has been taken care of) must have Content-Length or chunked
encoding set, or libcurl will simply assume that there is no body.
To my horror I learned that we had no less than 57(!) test cases that did bad
HTTP responses like this, and even the test http server (sws) responded badly
when queried by the test system if it is the test system. So although the
actual fix for the problem was tiny, going through all the newly failing test
cases got really painful and boring.
2006-11-25 13:32:04 +00:00
Daniel Stenberg
9ea3831c08
James Housley fixed SCP downloading by setting the maxdownload.
2006-11-25 09:49:29 +00:00
Yang Tse
a46f55b9de
Make sure RETSIGTYPE is properly defined
2006-11-25 01:02:52 +00:00
Daniel Stenberg
a634f64400
James Housley did lots of work and introduced SFTP downloads.
2006-11-24 22:14:39 +00:00
Yang Tse
bcd8a3b240
Define HAVE_SIGNAL_H, HAVE_SIG_ATOMIC_T and HAVE_SIG_ATOMIC_T_VOLATILE
...
as appropriate for platforms that don't have autotools support
2006-11-24 16:38:58 +00:00
Yang Tse
73226415fc
Added a check in configure that verifies if <signal.h> is available,
...
defining HAVE_SIGNAL_H if the header is available.
Added a check in configure that tests if the sig_atomic_t type is
available, defining HAVE_SIG_ATOMIC_T if it is available. Providing
a suitable default in setup_once.h if not available.
Added a check in configure that tests if the sig_atomic_t type is
already defined as volatile, defining HAVE_SIG_ATOMIC_T_VOLATILE
if it is available and already defined as volatile.
2006-11-22 18:41:34 +00:00
Gisle Vanem
b8039a821b
Call libssh2_session_free() to release memory allocated during
...
libssh2 startup.
2006-11-15 05:35:35 +00:00
Gisle Vanem
438312f00e
Free 'scp->path' in case of libssh2 setup failure.
2006-11-14 20:26:13 +00:00
Daniel Stenberg
3204494883
bug #1595348 by Ron pointed out this flaw and fix
2006-11-13 17:26:43 +00:00
Daniel Stenberg
e1ac99af1f
fix header to match actual proto
2006-11-11 22:05:33 +00:00
Daniel Stenberg
be0d17e812
cleaned up Curl_write() and the sub functions it uses for various protocols.
...
They all now return ssize_t to Curl_write().
Unfortunately, Curl_read() is in a sorrier state but it too would benefit from
a similar cleanup.
2006-11-11 21:34:43 +00:00
Daniel Stenberg
4eb35406f4
Nir Soffer updated libcurl.framework.make: fix symlinks, should link to
...
Versions, not to ./Versions and indentation improvments
2006-11-09 21:58:28 +00:00
Daniel Stenberg
624745ab20
Dmitriy Sergeyev found a SIGSEGV with his test04.c example posted on 7 Nov
...
2006. It turned out we wrongly assumed that the connection cache was present
when tearing down a connection.
2006-11-09 21:54:33 +00:00
Daniel Stenberg
9354822e09
Ciprian Badescu found a SIGSEGV when doing multiple TFTP transfers using the
...
multi interface, but I could also repeat it doing multiple sequential ones
with the easy interface. Using Ciprian's test case, I could fix it.
2006-11-09 21:36:18 +00:00
Daniel Stenberg
f830d77307
Bradford Bruce reported that when setting CURLOPT_DEBUGFUNCTION without
...
CURLOPT_VERBOSE set to non-zero, you still got a few debug messages from the
SSL handshake. This is now stopped.
2006-11-08 21:49:14 +00:00
Daniel Stenberg
b5b3d9e5c7
Olaf fixed a leftover problem with the CONNECT fix of his that would leave a
...
wrong error message in the error message buffer.
2006-11-07 14:07:02 +00:00
Yang Tse
01926d66d7
add TODO note
2006-11-06 18:28:34 +00:00
Yang Tse
69f7d0a0ce
compiler warning fix
2006-11-06 18:27:25 +00:00
Yang Tse
d1c84705ec
remove redundant check for Win32
2006-11-06 18:26:36 +00:00
Yang Tse
1bcbe89802
Prevent multiple initialization of memdebug configuration variables.
...
This was possible on debug c-ares enabled builds when both CURL_MEMDEBUG
and CARES_MEMDEBUG environment variables were set. Leading to a file handle
leak even when both variables had the same value, and wierd test suite
results when different.
2006-11-05 12:42:50 +00:00
Gisle Vanem
bf57e9bb12
Ifdef around S_IRGRP and S_IROTH (meaningless on Win32).
2006-11-03 15:52:21 +00:00
Daniel Stenberg
a777eb3d81
Olaf Stueben provided a patch that I edited slightly. It fixes the notorious
...
KNOWN_BUGS #25 , which happens when a proxy closes the connection when
libcurl has sent CONNECT, as part of an authentication negotiation. Starting
now, libcurl will re-connect accordingly and continue the authentication as
it should.
2006-11-03 12:43:55 +00:00
Daniel Stenberg
db680edc26
Update the information about what c-ares version that's required. 1.3.1 had
...
a fatal bug so we must require 1.3.2 to get flawless functionality with c-ares.
2006-11-03 10:56:37 +00:00
Daniel Stenberg
2147284cad
James Housley brought support for SCP transfers
2006-11-02 21:56:40 +00:00
Yang Tse
0ed285e84d
prototype for gethostname is in unistd.h
2006-11-02 00:33:43 +00:00
Daniel Stenberg
b1db9dbb16
corrected how tests/memanalyze.pl is used
2006-10-29 23:00:52 +00:00
Yang Tse
ba481718a4
Make more human readable and maintainable previous
...
compiler warning fix since it was Ok and actually
avoids the targeted compiler warning.
2006-10-29 14:58:59 +00:00
Daniel Stenberg
1be60dde7f
updated to current status
2006-10-29 09:18:32 +00:00
Daniel Stenberg
e92e811a61
updated to reflect reality
2006-10-29 09:11:44 +00:00
Yang Tse
a93695a70e
Compiler warning fix.
...
Assigning the const value zero to a pointer to function
results in a null pointer value assignment to the function
pointer.
Assignment of any nonzero value is what should result in a
implementation compiler dependent result.
Since what we want to do here is the first case, this should
not trigger compiler warnings related with conversions from
'pointer to data' to 'pointer to function'.
Our autobuild test suite will judge.
2006-10-27 15:32:18 +00:00
Gisle Vanem
ce935a2697
Fixed 'x_TYPE_ARG2' to match prototypes of recv() and send().
2006-10-27 14:13:32 +00:00
Gisle Vanem
812ce0d93f
Get rid of the special sread()+swrite() for MSDOS. Use recv()
...
and send(). Added needed HAVE_x defines.
2006-10-27 14:07:32 +00:00
Gisle Vanem
bbae5b49f9
Added 'RECV_TYPE_ARGx' needed in getinfo.c.
2006-10-27 13:57:16 +00:00
Yang Tse
772a985dc3
Update copyright year, since the file has been modified
2006-10-27 03:47:57 +00:00
Yang Tse
8a7514de8a
Compiler warning fix
2006-10-27 02:18:29 +00:00
Yang Tse
8a8d5c784c
Do an explicit typecast of data pointers to function pointers
...
to avoid picky compiler warnings, since this is what we want!
2006-10-27 01:04:41 +00:00
Yang Tse
012d7e2878
Fix Curl_open() not reporting failure when allocation of the
...
buffer used to store headers in the SessionHandle failed.
2006-10-26 11:15:25 +00:00
Daniel Stenberg
cde5e35d9b
Fixed CURLOPT_FAILONERROR to return CURLE_HTTP_RETURNED_ERROR even for the
...
case when 401 or 407 are returned, *IF* no auth credentials have been given.
The CURLOPT_FAILONERROR option is not possible to make fool-proof for 401
and 407 cases when auth credentials is given, but we've now covered this
somewhat more.
You might get some amounts of headers transferred before this situation is
detected, like for when a "100-continue" is received as a response to a
POST/PUT and a 401 or 407 is received immediately afterwards.
Added test 281 to verify this change.
2006-10-25 20:40:14 +00:00
Daniel Stenberg
b2c378267b
updated copyright year
2006-10-25 07:19:45 +00:00
Daniel Stenberg
f44ef427a2
other pipelining fixes by Ravi Pratap, that now makes pipelines get used better
2006-10-24 21:14:40 +00:00
Daniel Stenberg
36a3514225
the check in ConnectionExists() for not re-using a non-resolved connection now
...
applies for asynch name resolves in general and not only ares
2006-10-23 20:41:50 +00:00
Daniel Stenberg
e1edd41e1b
Ravi Pratap provided a major update with pipelining fixes. We also no longer
...
re-use connections (for pipelining) before the name resolving is done.
2006-10-23 20:34:56 +00:00
Daniel Stenberg
ef769500d4
Nir Soffer fixed a cp line and got rid of an rm
2006-10-22 22:18:24 +00:00
Daniel Stenberg
23692574a2
until we learn how to use Makefile.inc from here, I've added socks.o in here
...
as well
2006-10-22 07:43:34 +00:00
Yang Tse
db24518a30
Fix misplaced runtime library specification for 'release-dll' target
2006-10-21 16:25:31 +00:00
Yang Tse
de59cde155
Fix copy-paste error
2006-10-21 12:36:10 +00:00
Yang Tse
3cd95eacdf
Compiler warning fix
2006-10-21 12:35:16 +00:00
Daniel Stenberg
4e717cdb30
Armel Asselin separated CA cert verification problems from problems with
...
reading the (local) CA cert file to let users easier pinpoint the actual
problem. CURLE_SSL_CACERT_BADFILE (77) is the new libcurl error code.
2006-10-21 11:32:05 +00:00
Yang Tse
316a9f6480
Compiler warning fix
2006-10-20 17:54:05 +00:00
Daniel Stenberg
bd5d21aaf2
When a resolve is made on a pipelined connection we need to detect it properly
...
(when the resoling isn't completede yet) and not confuse it with a simple
connection re-use (non-pipelined).
2006-10-20 12:25:39 +00:00
Yang Tse
83884180ac
Builds using synchronous name resolver dislike marking the connection as async.
2006-10-19 02:30:02 +00:00
Yang Tse
5df4be1165
Check for USE_WINSOCK instead of WIN32 where the check was done
...
to verify winsock API availability.
2006-10-18 21:05:40 +00:00
Yang Tse
96445f1b7d
Introduce symbol USE_WINSOCK which will be defined when
...
using winsock or winsock2 API.
2006-10-18 15:57:49 +00:00
Daniel Stenberg
4bdd7596d3
the expire timer is a bit too annoying to see all the time ;-)
2006-10-18 15:11:24 +00:00
Daniel Stenberg
18aae32015
When a connection is re-used, it can be flagged for re-use before the name
...
resolving is completed so we must make sure to survive it and mark the
connection as async (ie not yet connected completely).
2006-10-18 15:10:49 +00:00
Daniel Stenberg
a8996b9e52
use the return code from lseek() to detect problems and bail out if so
2006-10-18 14:47:58 +00:00
Gisle Vanem
94095c61d8
Added ISPRINT() required for src/main.c.
2006-10-18 13:50:23 +00:00
Daniel Stenberg
1cddd744ad
Tor's spell fixes
2006-10-18 12:59:02 +00:00
Daniel Stenberg
5b8d5fdf2f
cut out matching host names starting with telnet or ftps, since they hardly
...
ever actually are used
2006-10-18 11:13:39 +00:00
Yang Tse
71c6335293
Move definition of IS*() macros to setup_once.h
2006-10-18 03:41:19 +00:00
Dan Fandrich
8c38ea4ebc
Fixed compile error in HAVE_SIGACTION case.
2006-10-17 21:45:37 +00:00
Daniel Stenberg
44d84ac164
Avoid typecasting a signed char to an int when using is*() functions, as that
...
could very well cause a negate number get passed in and thus cause reading
outside of the array usually used for this purpose.
We avoid this by using the uppercase macro versions introduced just now that
does some extra crazy typecasts to avoid byte codes > 127 to cause negative
int values.
2006-10-17 21:32:56 +00:00
Daniel Stenberg
930f9bd534
clear the struct size not the pointer size, pointed out in bug report
...
#1579171
2006-10-17 20:34:11 +00:00
Yang Tse
ec956b0334
Explicit typecast for Curl_debug() size argument
2006-10-17 10:04:13 +00:00
Yang Tse
44ffe0dc79
Typo
2006-10-17 09:07:38 +00:00
Daniel Stenberg
e3a61fba52
make the low_speed check set the expire timer so that it has a chance to work
...
even when using curl_multi_socket() or even using the multi_perform() when
relying on multi_timeout() to be good.
2006-10-17 09:05:44 +00:00
Daniel Stenberg
7a710b4970
Jeff helped me pinpoint that we didn't properly set the expire timer during
...
c-ares name resolves, but now we do!
2006-10-17 08:06:27 +00:00
Daniel Stenberg
0bb20cc611
fix the name resolve abort timeout calculation (when signals are used)
2006-10-17 08:05:41 +00:00
Yang Tse
433c0c895e
Compiler warning fix
2006-10-17 02:31:06 +00:00
Yang Tse
10d1fc0e73
Compiler warning fix
2006-10-15 23:13:12 +00:00
Gisle Vanem
2260c8aa11
Replace ";;" with ";".
2006-10-15 20:28:03 +00:00
Gisle Vanem
97eb62aff8
Rearranged target HAVE_x section.
2006-10-15 19:41:15 +00:00
Yang Tse
1855fc35f2
Declare our own timeval struct if HAVE_STRUCT_TIMEVAL is not defined
2006-10-14 12:02:19 +00:00
Yang Tse
dc3ed35313
Define HAVE_STRUCT_TIMEVAL as appropriate for platforms that lack autotools support
2006-10-14 12:01:44 +00:00
Dan Fandrich
5ccbbe40c2
The tagging of application/x-www-form-urlencoded POST body data sent
...
to the CURLOPT_DEBUGFUNCTION callback has been fixed (it was erroneously
included as part of the header). A message was also added to the
command line tool to show when data is being sent, enabled when
--verbose is used.
2006-10-13 21:02:27 +00:00
Daniel Stenberg
86f93a53d6
print the actual (externally known) easy handle and not the internal container
...
for it
2006-10-13 14:54:36 +00:00
Daniel Stenberg
efe3cb6e1a
Added curl_multi_dump() when built with CURLDEBUG - this is not a stable public
...
function, this is only meant to allow easier tracking of the internal handle's
state and what sockets they use. Only for research and development.
2006-10-13 07:11:26 +00:00
Yang Tse
32ac4edeed
Check for struct timeval at configuration time
2006-10-13 01:35:14 +00:00
Daniel Stenberg
ab60a12465
Starting now, adding an easy handle to a multi stack that was already added
...
to a multi stack will cause CURLM_BAD_EASY_HANDLE to get returned.
2006-10-12 14:30:47 +00:00
Daniel Stenberg
b61c06384a
Jeff Pohlmeyer has been working with the hiperfifo.c example source code,
...
and while doing so it became apparent that the current timeout system for
the socket API really was a bit awkward since it become quite some work to
be sure we have the correct timeout set.
Jeff then provided the new CURLMOPT_TIMERFUNCTION that is yet another
callback the app can set to get to know when the general timeout time
changes and thus for an application like hiperfifo.c it makes everything a
lot easier and nicer. There's a CURLMOPT_TIMERDATA option too of course in
good old libcurl tradition.
2006-10-12 08:36:47 +00:00
Yang Tse
22307ae0ee
Inclusion of time header files based on header existance
2006-10-12 03:57:33 +00:00
Yang Tse
e150150d9f
Remove redundant __CYGWIN__ symbol check
2006-10-11 16:01:16 +00:00
Daniel Stenberg
1ce7b48057
mark the handle as no longer having a broken pipe when a transfer has failed
2006-10-10 14:23:34 +00:00
Daniel Stenberg
d390039873
minor indent fix
2006-10-09 21:24:50 +00:00
Daniel Stenberg
7d0c58a285
when going to completed due to error, mark the handle as not in a pipeline
...
anymore
2006-10-09 21:24:34 +00:00
Yang Tse
15e3dfe1d3
Compiler warning fix
2006-10-09 11:21:40 +00:00
Daniel Stenberg
a1de9367ec
Bogdan Nicula's second test case (posted Sun, 08 Oct 2006) converted to test
...
case 535 and it now runs fine. Again a problem with the pipelining code not
taking all possible (error) conditions into account.
2006-10-09 06:58:05 +00:00
Yang Tse
eceb37bde2
Cygwin 1.5.21 needs this hack to pass test 160.
...
In this way 304 tests out of 304 reported OK.
2006-10-09 00:35:36 +00:00
Daniel Stenberg
1128029599
don't display or act on state changes that doesn't actually change state
2006-10-07 21:04:57 +00:00
Daniel Stenberg
befc30bc55
Bogdan Nicula's hanging test case was converted to test case 533 and the test
...
now runs fine.
2006-10-06 21:19:57 +00:00
Gunter Knauf
8547ab1663
updated for latest OpenSSL release.
2006-10-06 00:24:25 +00:00
Daniel Stenberg
552b963e6d
Dmitriy Sergeyev provided an example source code that crashed CVS libcurl
...
but that worked nicely in 7.15.5. I converted it into test case 532 and
fixed the problem.
2006-10-04 21:11:08 +00:00
Daniel Stenberg
e2b48366d3
removed more dead code that is unused since the removal of the third party
...
transfer support
2006-10-02 13:00:54 +00:00
Daniel Stenberg
5e0d9aea32
Support for FTP third party transfers is now dropped
2006-09-30 20:31:11 +00:00
Daniel Stenberg
ae13c93b7d
Reported in #1561470 ( http://curl.haxx.se/bug/view.cgi?id=1561470 ), libcurl
...
would crash if a bad function sequence was used when shutting down after
using the multi interface (i.e using easy_cleanup after multi_cleanup) so
precautions have been added to make sure it doesn't any more - test case 529
was added to verify.
2006-09-28 21:26:06 +00:00
Daniel Stenberg
68e9f75708
As reported in bug: #1566077 the former URL mentioned in the generated cookie
...
jar has died and we now instead point out our own version of that
2006-09-27 21:00:45 +00:00
Yang Tse
15d8bb2105
Compiler warning fix
2006-09-25 00:54:32 +00:00
Yang Tse
b2ca777a08
Compiler warning fix
2006-09-25 00:16:23 +00:00
Yang Tse
ba01198e6c
Compiler warning fix
2006-09-25 00:05:39 +00:00
Yang Tse
6ebd5e1761
Compiler warning fix
2006-09-24 23:55:53 +00:00
Daniel Stenberg
1fa3a5cce9
Cory Nelson made libcurl use the WSAPoll() function if built for Windows
...
Vista (_WIN32_WINNT >= 0x0600)
2006-09-24 10:41:00 +00:00
Daniel Stenberg
9cd928674f
standard curl source code headers
2006-09-23 19:09:39 +00:00
Daniel Stenberg
3ea8a4d220
Dmitriy Sergeyev provided a patch that made the SOCKS[45] code work better as
...
it now will read the full data sent from servers. The SOCKS-related code was
also moved to the new lib/socks.c source file.
2006-09-23 19:07:20 +00:00
Daniel Stenberg
ab798fe5ba
(FTP) a failed upload does not invalidate the control connection
2006-09-21 20:52:58 +00:00
Daniel Stenberg
ec4a16f2e0
Armel Asselin fixed problems when you gave a proxy URL with user name and
...
empty password or no password at all. Test case 278 and 279 were added to
verify.
2006-09-20 21:49:41 +00:00
Daniel Stenberg
71920d61e6
Michael Wallner's test program again help me track down a problem. This time
...
it basically was that we didn't remove the current connection from the pipe
list when following a redirect. Also in this commit: several cases of
additional debug code for debug builds helping to check and track down some
signs of run-time trouble.
2006-09-20 12:03:50 +00:00
Daniel Stenberg
2d5fc39d35
Resize the connection cache upwards when adding more handles than what
...
currently fits in the cache, to make the cache work better especially for
pipelining cases but also for "mere" (persistent) connection re-use.
2006-09-16 21:50:29 +00:00
Daniel Stenberg
c001ed53fa
Armel Asselin - When the easy handle is removed from the multi while libcurl
...
is still trying to resolve the host name, it seems that the ftp struct is not
yet initialized, but the removal action calls Curl_done() which calls
Curl_ftp_done. So we simply return success from there if no ftp pointer is
set.
2006-09-16 20:57:59 +00:00
Daniel Stenberg
39e01e9349
file-local function should be static and not use Curl_ prefix!
...
Curl_signalPipeClose is now signalPipeClose().
2006-09-15 08:47:55 +00:00
Yang Tse
7d3e719a2c
Compiler warning fix
2006-09-13 12:42:12 +00:00
Yang Tse
733a184ce0
Compiler warning fix
2006-09-12 23:51:01 +00:00
Daniel Stenberg
7c5745720a
If the current connection doesn't fit to get added to the connection cache,
...
we certainly MUST NOT kill an active connection... Problem tracked down thanks
to Michael Wallner's excellent test program.
2006-09-11 20:50:58 +00:00
Daniel Stenberg
29dc39fce1
- Fixed my breakage from earlier today so that doing curl_easy_cleanup() on a
...
handle that is part of a multi handle first removes the handle from the
stack.
- Added CURLOPT_SSL_SESSIONID_CACHE and --no-sessionid to disable SSL
session-ID re-use on demand since there obviously are broken servers out
there that misbehave with session-IDs used.
2006-09-11 17:18:18 +00:00
Daniel Stenberg
5c184cfc0d
stupid mistake rectified by Jeff Pohlmeyer
2006-09-11 11:25:47 +00:00
Yang Tse
055022a55f
Compiler warning fix
2006-09-10 23:45:54 +00:00
Yang Tse
c30e908034
Compiler warning fix
2006-09-10 23:37:42 +00:00
Daniel Stenberg
8240cea628
Jeff Pohlmeyer presented a *multi_socket()-using program that exposed a
...
problem with it (SIGSEGV-style). It clearly showed that the existing
socket-state and state-difference function wasn't good enough so I rewrote
it and could then re-run Jeff's program without any crash. The previous
version clearly could miss to tell the application when a handle changed
from using one socket to using another.
While I was at it (as I could use this as a means to track this problem
down), I've now added a 'magic' number to the easy handle struct that is
inited at curl_easy_init() time and cleared at curl_easy_cleanup() time that
we can use internally to detect that an easy handle seems to be fine, or at
least not closed or freed (freeing in debug builds fill the area with 0x13
bytes but in normal builds we can of course not assume any particular data
in the freed areas).
2006-09-10 22:15:32 +00:00
Daniel Stenberg
f2a33eb372
Added a useful debug function within #if 0. The function makes it easy to
...
"dump" a hash table which is useful when tracking problems with data stored
in one of our hashes.
2006-09-10 22:12:24 +00:00
Gisle Vanem
690888cfc1
SIGALARM -> SIGALRM.
2006-09-09 19:13:13 +00:00
Gisle Vanem
fb8d9b6645
#ifdef around alarmfunc() to supress warning.
2006-09-09 19:11:54 +00:00
Gisle Vanem
f7ddb39ee1
iconv-data needs to be fully reallocated (to prevent a double-free).
2006-09-09 18:23:29 +00:00
Gisle Vanem
f1ba12607a
Duplicate iconv-data too in curl_easy_duphandle().
2006-09-09 16:36:05 +00:00
Yang Tse
bb87b65f08
Compiler warning fix
2006-09-09 13:24:42 +00:00
Daniel Stenberg
b0f6e7cee4
Michele Bini fixed how the hostname is put in NTLM packages. As servers
...
don't expect fully qualified names we need to cut them off at the first dot.
2006-09-09 11:45:27 +00:00
Daniel Stenberg
ed72d4e104
tab => space
2006-09-09 11:45:05 +00:00
Daniel Stenberg
8ec1bfe897
Peter Sylvester cleaned up and fixed the getsockname() uses in ftp.c. Some
...
of them can be completetly removed though...
2006-09-08 22:17:39 +00:00
Gisle Vanem
1dec17562f
signal() returns 'void (*)(int)'.
2006-09-08 13:06:41 +00:00
Gisle Vanem
be1306a6c2
Update comment reflecting structure change.
2006-09-08 12:17:58 +00:00
Gisle Vanem
0a670c578f
Compilation fix; 'reqdata' is not a pointer. 'path' is part of SessionHandle.
2006-09-08 12:03:39 +00:00
Yang Tse
dc7c915553
Compilation fix
2006-09-08 05:18:07 +00:00
Daniel Stenberg
b7eeb6e67f
Major overhaul introducing http pipelining support and shared connection
...
cache within the multi handle.
2006-09-07 21:49:20 +00:00
Yang Tse
7e4193b538
Fix compiler warning
2006-09-07 01:18:46 +00:00
Daniel Stenberg
0bb3ac7c31
Jari Sundell's minor cleanup, added comments and some extra error-checkings
...
for easier future error-tracking.
2006-09-04 22:19:13 +00:00
Daniel Stenberg
466d093a92
- "Dortik" ( http://curl.haxx.se/bug/view.cgi?id=1551412 ) provided a patch that
...
while not fixing things very nicely, it does make the SOCKS5 proxy
connection slightly better as it now acknowledges the timeout for connection
and it no longer segfaults in the case when SOCKS requires authentication
and you did not specify username:password.
2006-09-03 22:52:42 +00:00
Gisle Vanem
4f4277d9c7
Simplified #ifdef on WIN32; the statement
...
" !defined(__GNUC__) || defined(__MINGW32__)" implies
CygWin.
2006-09-03 13:52:07 +00:00
Daniel Stenberg
d7168a82e2
Dmitriy Sergeyev found and fixed a multi interface flaw when using asynch
...
name resolves. It could get stuck in the wrong state.
2006-08-31 12:53:39 +00:00
Gisle Vanem
c9c8ee3796
Added HAVE_SYS_TIME_H for djgpp and HighC.
2006-08-30 16:18:03 +00:00
Gisle Vanem
c7aae10300
Removed "#ifndef__WATCOMC__". Use "#ifdef HAVE_SYS_TIME_H" instead.
2006-08-30 16:17:06 +00:00
Gisle Vanem
4031eb1d91
Avoid Metaware's High-C warning "'=' encountered where '==' may have been intended."
2006-08-29 21:11:55 +00:00
Gisle Vanem
59cf6fd4f0
Watcom lacks <sys/time.h>.
2006-08-29 18:45:55 +00:00
Gisle Vanem
6de9732a88
Added support for Watcom/DOS.
2006-08-29 18:40:36 +00:00
Gisle Vanem
1f7f500922
Updated dependency section.
2006-08-29 18:17:43 +00:00
Gisle Vanem
4b1462ec65
Don't include zlib headers in dependency output.
2006-08-29 18:13:54 +00:00
Gisle Vanem
6ed47f0aad
Renamed config.dj -> config.dos.
2006-08-29 16:40:47 +00:00
Gisle Vanem
2d8c7ba9fc
Use config.dos instead. Updated generated dependencies.
2006-08-29 16:35:11 +00:00
Gisle Vanem
3b342d18bc
Removed. New file is config.dos.
2006-08-29 16:34:40 +00:00
Gisle Vanem
f24ad3800c
Renamed config.dj -> config.dos. Added #ifdef-section for djgpp.
2006-08-29 16:33:41 +00:00
Gisle Vanem
e2ff369eba
BUFSIZE defined in Metaware's <stdio.h>. Undefine to avoid warning.
2006-08-29 16:27:13 +00:00
Gisle Vanem
9691a78f6b
Support other MS-DOS compilers (MSDOS is a djgpp built-in define).
2006-08-29 16:26:41 +00:00
Daniel Stenberg
5acadc9cd7
David McCreedy added CURLOPT_SOCKOPTFUNCTION and CURLOPT_SOCKOPTDATA to
...
allow applications to set their own socket options.
2006-08-29 14:39:33 +00:00
Daniel Stenberg
2ff609dd43
Armel Asselin reported that the 'running_handles' counter wasn't updated
...
properly if you removed a "live" handle from a multi handle with
curl_multi_remove_handle().
2006-08-25 13:53:20 +00:00
Daniel Stenberg
bdbd0cf27a
David McCreedy fixed a remaining mistake from the August 19 TYPE change.
2006-08-22 21:23:25 +00:00
Daniel Stenberg
d792937686
Peter Sylvester pointed out a flaw in the AllowServerConnect() in the FTP
...
code when doing pure ipv6 EPRT connections.
2006-08-22 21:21:01 +00:00
Dan Fandrich
77516822f6
Workaround for Cray UNICOS 9.0 to fix ftp.
2006-08-21 22:28:19 +00:00
Daniel Stenberg
cfdcae4bc7
Based on a patch by Armel Asselin, the FTP code no longer re-issues the TYPE
...
command on subsequent requests on a re-used connection unless it has to.
2006-08-19 21:18:36 +00:00
Daniel Stenberg
74a6921bc4
Armel Asselin fixed a crash in the FTP code when using SINGLECWD mode and
...
files in the root directory.
2006-08-18 23:17:33 +00:00
Daniel Stenberg
490cccba3c
Andrew Biggs pointed out a "Expect: 100-continue" flaw where libcurl didn't
...
send the whole request at once, even though the Expect: header was disabled
by the application. An effect of this change is also that small (< 1024
bytes) POSTs are now always sent without Expect: header since we deem it
more costly to bother about that than the risk that we send the data in
vain.
2006-08-18 22:54:57 +00:00
Dan Fandrich
839441e236
Minor portability fixes to get things running on UNICOS 9.0 on a Cray Y-MP
2006-08-16 18:48:27 +00:00
Gisle Vanem
455087faae
Use gnutls_strerror() for clearer error message.
2006-08-16 17:05:54 +00:00
Gisle Vanem
31def9e217
Use '_LIBICONV_VERSION' instead of variable '_libiconv_version'
...
to support older iconv versions.
2006-08-15 17:02:24 +00:00
Dan Fandrich
eb26a581f9
Use __minix to detect Minix, which works on both ACK and GCC.
2006-08-11 18:11:42 +00:00
Dan Fandrich
4272af801f
Only define the string prototypes in ANSI mode to reduce interference on
...
systems that prototype them slightly differently.
2006-08-09 16:36:17 +00:00
Gunter Knauf
93943ef949
added build info output.
2006-08-09 14:04:51 +00:00
Gunter Knauf
b184b87714
fixed some web links.
2006-08-09 13:59:39 +00:00
Daniel Stenberg
1eedad27a2
Armel Asselin made the CURLOPT_PREQUOTE option work fine even when
...
CURLOPT_NOBODY is set true. PREQUOTE is then run roughly at the same place
in the command sequence as it would have run if there would've been a
transfer.
2006-08-08 22:56:46 +00:00
Gunter Knauf
ac02d379ba
moved ugly NetWare hack to hostip.h so that hostip.c uses it too.
2006-08-08 22:37:53 +00:00
Daniel Stenberg
a4ebf5b507
Fixed a flaw in the "Expect: 100-continue" treatment. If you did two POSTs
...
on a persistent connection and allowed the first to use that header, you
could not disable it for the second request.
2006-08-08 21:12:49 +00:00
Dan Fandrich
997a987943
Minix 3 doesn't have MSG_PEEK
2006-08-08 18:47:14 +00:00
Yang Tse
b33f47804d
Allow again proper compilation outside of the source tree
2006-08-07 18:06:37 +00:00
Dan Fandrich
c012e2b408
Initial stab at making libcurl compile under Minix 3.
2006-08-04 18:53:47 +00:00
Yang Tse
646a6b604f
Minor compatibility fix
2006-08-04 17:35:05 +00:00
Gisle Vanem
cca00a6378
Added version info for iconv.
2006-08-04 16:10:48 +00:00
Gisle Vanem
21aa8f0b45
Added dependency for splay.obj.
2006-08-04 15:57:07 +00:00
Daniel Stenberg
8709f6c4b3
oops, the previous commit was incomplete as we made an unconditional call
...
to multi_runsingle() without it being really necessary or good
2006-08-04 14:39:19 +00:00
Daniel Stenberg
2ac560e58b
even when we get a single connection to deal with, we must still check for
...
timeout'ed connections and possibly deal with them too
2006-08-04 13:06:36 +00:00
Yang Tse
8f8ba9486d
Fix compiler warning
2006-08-04 02:49:04 +00:00
Yang Tse
f55924b3e0
Avoid redundant check. configure script takes care of not defining
...
HAVE_WINDOWS_H, HAVE_WINSOCK_H, HAVE_WINSOCK2_H, neither
HAVE_WS2TCPIP_H when __CYGWIN__ is defined.
2006-08-04 01:13:24 +00:00
Daniel Stenberg
01a79be2c9
removed running_handles argument from multi_runsingle() since it wasn't really
...
used anymore since multi->num_alive was introduced
2006-08-03 11:47:42 +00:00
Yang Tse
d211fcd34f
Silence compiler warning 'unused parameter running_handles' in function multi_runsingle(). This is done here returning multi->num_alive in the running_handles parameter even when functions that call multi_runsingle() at this moment overwrite the returned value with the one that is valid when those functions curl_multi_perform() and multi_socket() have removed expired timers from the splay. Most probably, parameter 'running_handles' in function multi_runsingle() should be just removed.
2006-08-03 11:41:49 +00:00
Daniel Stenberg
159834171e
keep count of the number of "alive" handles in a struct member, as otherwise
...
*multi_socket*() can't return the proper number
2006-08-02 22:29:29 +00:00
Daniel Stenberg
8a38c72c48
Mark Lentczner fixed how libcurl was not properly doing chunked encoding
...
if the header "Transfer-Encoding: chunked" was set by the application.
http://curl.haxx.se/bug/view.cgi?id=1531838
2006-08-02 18:18:47 +00:00
Daniel Stenberg
ee642859ef
Maciej Karpiuk fixed a crash that would occur if we passed Curl_strerror()
...
an unknown error number on glibc systems.
http://curl.haxx.se/bug/view.cgi?id=1532289
2006-08-01 09:39:01 +00:00
Daniel Stenberg
9f579f12fc
spell-fixed a comment
2006-08-01 09:38:35 +00:00
Yang Tse
9dde0b54a3
Silence warning: empty body in an if-statement
2006-07-31 17:46:28 +00:00
Yang Tse
f1343b2f55
Force compilation failure in case macros sread() or swrite() are not defined.
2006-07-31 17:12:24 +00:00
Yang Tse
962b7985e6
Provide definitions needed for macros sread() and swrite() in config file.
2006-07-31 16:58:10 +00:00
Daniel Stenberg
01b2cf82ec
curl_multi_socket() and curl_multi_socket_all() got modified prototypes: they
...
both now provide the number of running handles back to the calling function.
2006-07-30 22:44:07 +00:00
Yang Tse
c033c4c71c
Winsock and Cygwin need address family specification before bind(), this should be harmless for others.
2006-07-29 16:17:36 +00:00
Yang Tse
77b3bc239d
First step trying to avoid the multiple header inclusion and recursion nightmare.
...
Reintroduce checking for HAVE_MSG_NOSIGNAL in configure script, so that we don't depend on header inclusion order for a valid check.
2006-07-28 14:19:02 +00:00
Daniel Stenberg
a88deadd6f
Yves Lejeune fixed so that replacing Content-Type: when doing multipart
...
formposts work exactly the way you want it (and the way you'd assume it
works)
2006-07-27 22:35:09 +00:00
Daniel Stenberg
e6ea8f1199
put back the correct logic, as the change dated July 11th 2006 added bad
...
behaviour and a socket leak
2006-07-27 22:28:53 +00:00
Daniel Stenberg
6f6b93da02
[Hiper-related work] Added a function called curl_multi_assign() that will
...
set a private pointer added to the internal libcurl hash table for the
particular socket passed in to this function.
2006-07-26 22:19:42 +00:00
Daniel Stenberg
2527b53019
Dan Nelson added the CURLOPT_FTP_ALTERNATIVE_TO_USER libcurl option and curl
...
tool option named --ftp-alternative-to-user. It provides a mean to send a
particular command if the normal USER/PASS approach fails.
2006-07-25 22:45:21 +00:00
Daniel Stenberg
78a47826b2
Michael Jerris added magic that builds lib/curllib.vcproj automatically (for
...
newer MSVC versions)
2006-07-25 22:06:42 +00:00
Yang Tse
ecfaa4f869
Fix warning: no newline at end of file
2006-07-25 18:48:12 +00:00
Daniel Stenberg
f36adcdb73
Georg Horn made the transfer timeout error message include more details
2006-07-25 18:38:51 +00:00
Yang Tse
13616f8f96
Simplify check for NEED_MALLOC_H, and make more explicit that NEED_MALLOC_H shall be defined if <malloc.h> header file must be included even when including <stdlib.h>.
2006-07-25 13:49:49 +00:00
Gisle Vanem
ab486d1e27
Silence iconv() warnings.
2006-07-25 11:35:35 +00:00
Gisle Vanem
4a1a1a75fb
Added note for CURLRES_ARES and CURLRES_IPV6.
2006-07-25 10:49:12 +00:00
Gisle Vanem
e4d6ade4b3
Moved functions common to IPv4 and C-ares to hostip.c;
...
Curl_freeaddrinfo() and Curl_ip2addr().
2006-07-25 10:31:31 +00:00
Gisle Vanem
c82e880f5b
Remove comment about c-ares not supporting IPv6.
2006-07-25 10:23:15 +00:00
Gisle Vanem
f2aa3b21e0
Use the proper Curl_freeaddrinfo() for CURLRES_ARES.
2006-07-24 15:58:33 +00:00
Gisle Vanem
385db0e97d
Fix typo.
2006-07-24 15:56:40 +00:00
Gisle Vanem
4e58da5222
Ares needs CURLRES_ADDRINFO_COPY. Curl_hostent_relocate() is gone.
2006-07-24 15:48:48 +00:00
Daniel Stenberg
1c6ebb0782
added splay.o
2006-07-23 12:01:06 +00:00
Gisle Vanem
c4ad533300
Constify some arguments in Curl_connecthost() and singleipconnect().
2006-07-21 06:50:39 +00:00
Gisle Vanem
5cdbd0cf4a
Constify arguments to Curl_he2ai() and Curl_addrinfo_copy().
2006-07-21 06:21:46 +00:00
Gisle Vanem
a55c70d4ae
Constify 'hostname' and 'service' to various resolver functions.
2006-07-21 05:51:12 +00:00
Gisle Vanem
02938a010d
Changes for combination ENABLE_IPV6 and USE_ARES.
2006-07-21 04:22:44 +00:00
Gisle Vanem
e40641bf7c
Use calloc() instead.
2006-07-21 04:19:44 +00:00
Daniel Stenberg
27c0b43897
David McCreedy fixed a build error when building libcurl with HTTP disabled,
...
problem added with the curl_formget() patch.
2006-07-20 20:04:52 +00:00
Gisle Vanem
d46de5ab8b
Avoid warning "comparison of unsigned expression < 0 is always false"
2006-07-20 16:37:05 +00:00
Gisle Vanem
73ebb0edde
Avoid warning 'port' might be used uninitialized in this function.
2006-07-20 15:54:01 +00:00
Dan Fandrich
684245d6ce
Changes to support building for eCos 1.3.1. This has been tested with
...
file: URLs only.
2006-07-19 22:27:49 +00:00
Yang Tse
d157c29269
Fix compiler warnings
2006-07-19 21:14:02 +00:00
Yang Tse
483a586d55
Avoid variable declaration shadowing previously declared one
2006-07-19 18:46:56 +00:00
Yang Tse
4ac54f8c2c
remove variable declaration shadowing previously declared one
2006-07-19 18:32:38 +00:00
Yang Tse
840aacf7dd
Remove variable declaration shadowing previously declared one
2006-07-19 18:19:30 +00:00
Yang Tse
ef82da93fb
"*connected" must be set to FALSE if trynextip() fails.
2006-07-17 19:22:28 +00:00
Daniel Stenberg
06d05b18b2
Jari Sundell did some excellent research and bug tracking, figured out that
...
we did wrong and patched it: When nodes were removed from the splay tree,
and we didn't properly remove it from the splay tree when an easy handle was
removed from a multi stack and thus we could wrongly leave a node in the
splay tree pointing to (bad) memory.
2006-07-17 18:35:58 +00:00
Yang Tse
f72c4e82fd
Return NULL if argument is NULL.
2006-07-17 15:25:37 +00:00
Yang Tse
9c83a20a27
Fix compiler warning "enumerated type mixed with another type"
2006-07-17 14:52:31 +00:00
Yang Tse
f3c508f6e8
Update error buffer size used for SSL_strerror()
2006-07-17 05:05:57 +00:00
Daniel Stenberg
3b0a920fad
don't use 'new' in the proto
2006-07-15 18:57:51 +00:00
Daniel Stenberg
daef1cf34d
David McCreedy fixed a flaw where the CRLF counter wasn't properly cleared
...
for FTP ASCII transfers.
2006-07-14 18:58:42 +00:00
Yang Tse
d2cefc140a
Change the ai_addrlen type of struct addrinfo from size_t to socklen_t, per RFC 3493.
2006-07-14 10:30:44 +00:00
Yang Tse
700cd5805c
Oops, missing "u"
2006-07-13 18:57:34 +00:00
Yang Tse
73f407b7ae
Fix compiler warning.
2006-07-13 18:44:24 +00:00
Gisle Vanem
4be7dcba48
Remove unneeded stuff.
2006-07-12 13:57:18 +00:00
Yang Tse
f975fd03a1
Read the return value of the swrite() macro and 'print' a message in case of failure.
2006-07-12 07:33:54 +00:00
Yang Tse
8272874704
Place parenthesis surrounding macro parameters so that the use of sread and swrite is more intuitive.
2006-07-12 06:52:40 +00:00
Yang Tse
2278e8f1ba
DJGPP/WATT32 does not have functions named recv() send() getnameinfo().
2006-07-12 05:20:05 +00:00
Yang Tse
58176d1484
Use platform's native types for recv() and send() arguments.
2006-07-12 05:19:00 +00:00
Yang Tse
fe22872d14
include <malloc.h> only if HAVE_MALLOC_H and NEED_MALLOC_H are both defined.
2006-07-11 21:34:23 +00:00
Dan Fandrich
c6fc5a1a26
Moved strdup replacement from src/main.c into src/strdup.c so it's available
...
in libcurl as well, if necessary.
2006-07-11 17:02:06 +00:00
Gisle Vanem
012d75442a
Added comment and CVS id.
2006-07-11 13:12:57 +00:00
Yang Tse
dcc7900e7c
Socket must be set to CURL_SOCKET_BAD after closing it.
2006-07-11 00:23:21 +00:00
Yang Tse
34f5e8ad0e
DNS cache must use the multi DNS cache if the easy handle's one is not using anyone in curl_multi_add_handle.
2006-07-10 16:14:36 +00:00
Daniel Stenberg
28611704d9
Ates Goral pointed out that libcurl's cookie parser did case insensitive
...
string comparisons on the path which is incorrect and provided a patch that
fixes this. I edited test case 8 to include details that test for this.
2006-07-08 18:52:08 +00:00
Daniel Stenberg
ca319f63ad
Ingmar Runge provided a source snippet that caused a crash. The reason for
...
the crash was that libcurl internally was a bit confused about who owned the
DNS cache at all times so if you created an easy handle that uses a shared
DNS cache and added that to a multi handle it would crash. Now we keep more
careful internal track of exactly what kind of DNS cache each easy handle
uses: None, Private (allocated for and used only by this single handle),
Shared (points to a cache held by a shared object), Global (points to the
global cache) or Multi (points to the cache within the multi handle that is
automatically shared between all easy handles that are added with private
caches).
2006-07-07 22:58:06 +00:00
Daniel Stenberg
af5e6e7e6d
HTTP Pipelining is for GET and HEAD requests only.
2006-07-07 20:45:56 +00:00
Dan Fandrich
70f2b5e877
Fixed building curllib.dsp when running make outside the source tree.
2006-07-07 18:37:14 +00:00
Gisle Vanem
725f734bae
Correct the trace for WinCE.
2006-07-07 07:49:16 +00:00
Gisle Vanem
0f32460656
WinCE uses CreateThread(). Hence error is not in 'errno'.
2006-07-07 07:46:40 +00:00
Gisle Vanem
25180cc850
Removed copying 'stderr' since it doesn't have the desired
...
effect.
2006-07-07 07:41:47 +00:00
Daniel Stenberg
2a0e41cab9
updated after discussions and thinking
2006-07-07 07:22:05 +00:00
Gisle Vanem
2ddb9d57aa
Undefine symbols before redefining them.
2006-07-06 13:57:26 +00:00
Gisle Vanem
4f012ad703
Undefine correct symbol.
2006-07-06 13:33:56 +00:00
Yang Tse
a1cd180082
Oops !
2006-07-05 23:16:28 +00:00
Yang Tse
bc2f0c7dcb
Prevent definition of HAVE_WINxxx_H symbols and avoid inclusion of Windows headers when compiled with Cygwin in POSIX emulation mode.
2006-07-05 23:10:37 +00:00
Gisle Vanem
c6ae0ebcbf
Cludge fix for djgpp 2.03 or older; it doesn't have snprintf() etc.
...
So avoid using x_was_used().
2006-07-05 14:23:09 +00:00
Gisle Vanem
c6ec576cbb
Add types and qualifiers for getnameifo(), send() and recv().
...
(Yang Tse forgot about djgpp)
2006-07-05 14:15:21 +00:00
Yang Tse
7e43d06b60
Get qualifier of arg 2 for send() apart into SEND_QUAL_ARG2.
2006-07-04 16:54:10 +00:00
Yang Tse
89f54f3739
Platforms that don't have/run configure need default values in their config files for:
...
HAVE_GETNAMEINFO, GETNAMEINFO_QUAL_ARG1, GETNAMEINFO_TYPE_ARG1, GETNAMEINFO_TYPE_ARG2, GETNAMEINFO_TYPE_ARG46, GETNAMEINFO_TYPE_ARG7
HAVE_RECV, RECV_TYPE_ARG1, RECV_TYPE_ARG2, RECV_TYPE_ARG3, RECV_TYPE_ARG4, RECV_TYPE_RETV
HAVE_SEND, SEND_TYPE_ARG1, SEND_TYPE_ARG2, SEND_TYPE_ARG3, SEND_TYPE_ARG4, SEND_TYPE_RETV
2006-07-04 16:10:13 +00:00
Daniel Stenberg
8bed45340a
Toshiyuki Maezawa fixed a problem where you couldn't override the
...
Proxy-Connection: header when using a proxy and not doing CONNECT.
2006-07-04 12:01:59 +00:00
Yang Tse
55138753c6
Test HAVE_GETNAMEINFO definition before using GETNAMEINFO_XXX definitions.
2006-07-04 02:27:11 +00:00
Yang Tse
43369b8096
Fix compiler warning.
2006-07-03 18:38:03 +00:00
Daniel Stenberg
a3949c7786
with a very recent yassl, we now can display 'yassl' when the OpenSSL API is
...
in fact provided by yassl instead
2006-06-29 07:35:02 +00:00
Yang Tse
b01286d280
fix better minor compiler warning
2006-06-28 05:22:47 +00:00
Yang Tse
64f72c22b9
fix minor compiler warning
2006-06-28 04:17:04 +00:00
Yang Tse
856114d05c
fix minor compiler warning
2006-06-28 02:45:27 +00:00
Daniel Stenberg
c508ab1aef
Added README.pipelining but also extracted the "docs" files to a separate list
...
to get a better overview
2006-06-24 21:54:22 +00:00
Daniel Stenberg
0793dc922c
thoughts and ideas as posted to the list the other day
2006-06-24 21:51:28 +00:00
Daniel Stenberg
37f4877e56
Michael Wallner added curl_formget(), which allows an application to extract
...
(serialise) a previously built formpost (as with curl_formadd()).
2006-06-24 21:46:41 +00:00
Daniel Stenberg
a8ac6f1dc1
Arve Knudsen found a flaw in curl_multi_fdset() for systems where
...
curl_socket_t is unsigned (like Windows) that could cause it to wrongly
return a max fd of -1.
2006-06-23 22:07:06 +00:00
Daniel Stenberg
dfe1884c25
Peter Silva introduced CURLOPT_MAX_SEND_SPEED_LARGE and
...
CURLOPT_MAX_RECV_SPEED_LARGE that limit tha maximum rate libcurl is allowed
to send or receive data. This kind of adds the the command line tool's
option --limit-rate to the library.
The rate limiting logic in the curl app is now removed and is instead
provided by libcurl itself. Transfer rate limiting will now also work for -d
and -F, which it didn't before.
2006-06-22 21:36:53 +00:00
Daniel Stenberg
76cf020750
select_res is not a socket, it should be a plain int
2006-06-15 21:30:32 +00:00
Daniel Stenberg
8df5dcb193
proper use of newlines
2006-06-09 12:07:34 +00:00
Daniel Stenberg
a05ea124b9
oops, serious breakage in the fdset() function
2006-06-09 07:08:34 +00:00
Daniel Stenberg
990e56fb13
Brian Dessent's fixes for cygwin builds
2006-06-08 06:12:30 +00:00
Daniel Stenberg
2bd3033f68
NTLM2 session response support
2006-06-07 14:14:04 +00:00
Daniel Stenberg
a5782defd3
Added config-tpf.h to the release package
2006-05-31 05:17:27 +00:00
Daniel Stenberg
973d63f4f2
one modified proto and one removed proto
2006-05-27 22:26:41 +00:00
Daniel Stenberg
405d98ee63
adapted to the new Curl_splayremovebyaddr() proto
2006-05-27 22:26:16 +00:00
Daniel Stenberg
f81724969d
Ifdef'ed out unused function, added lots of comments and renamed a few
...
variables, simplified the splayprint function, modified
Curl_splayremovebyaddr() to return error code. All in an effort to track down
the reported splay problem, but I've failed to do that so far...
2006-05-27 22:25:55 +00:00
Daniel Stenberg
e877cb7bd7
scar Morales Viv updated the libcurl.framework.make file.
2006-05-26 22:23:54 +00:00
Daniel Stenberg
482b3ba702
long/int cleanup to silence picky compiler warnings
2006-05-26 11:26:42 +00:00
Daniel Stenberg
752acedc0b
Olaf Stben fixed a bug that caused Digest authentication with md5-sess to
...
fail. When using the md5-sess, the result was not Md5 encoded and Base64
transformed.
2006-05-25 23:04:20 +00:00
Daniel Stenberg
606562aa7e
Michael Wallner provided a patch that allows "SESS" to be set with
...
CURLOPT_COOKIELIST, which then makes all session cookies get cleared. (slightly
edited by me, and the re-indent in cookie.c was also done by me)
2006-05-24 22:46:38 +00:00
Daniel Stenberg
7cfd7f3fb1
minor fix to make Curl_splayremove() return a NULL as "removed" in case
...
nothing matched fine
2006-05-24 16:11:31 +00:00
Daniel Stenberg
b81d41df22
David McCreedy's update
2006-05-23 21:19:36 +00:00
Daniel Stenberg
5d5f5e3be8
make sure the LASTSOCKET check only checks for SSL status if the socket
...
truly use SSL
2006-05-11 05:17:40 +00:00
Daniel Stenberg
d9e14408f0
silence warning
2006-05-11 05:16:38 +00:00
Daniel Stenberg
c9c5ce2365
David McCreedy provided a fix for CURLINFO_LASTSOCKET that does extended
...
checks on the to-be-returned socket to make sure it truly seems to be alive
and well. For SSL connection it (only) uses OpenSSL functions.
2006-05-10 22:17:42 +00:00
Daniel Stenberg
3c6d3b69c2
1 - allow DICT with properly URL-escaped words, like using %20 for spaces
...
2 - properly escape certain letters within a DICT word to comply to the RFC2229
2006-05-10 11:44:31 +00:00
Daniel Stenberg
c811e1ce70
oops, could return an uninitialized variable
2006-05-09 13:02:53 +00:00
Daniel Stenberg
1946058e7b
Robson Braga Araujo fixed two problems in the recently added non-blocking SSL
...
connects. The state machine was not reset properly so that subsequent
connects using the same handle would fail, and there were two memory leaks.
2006-05-09 12:43:49 +00:00
Daniel Stenberg
73daf8ce33
Robson Braga Araujo fixed a memory leak when you added an easy handle to a
...
multi stack and that easy handle had already been used to do one or more
easy interface transfers, as then the code threw away the previously used
DNS cache without properly freeing it.
2006-05-09 11:33:00 +00:00
Daniel Stenberg
094ceeba14
check more return codes and skip the initial slash in given file names
2006-05-08 22:23:33 +00:00
Daniel Stenberg
3b7359a27a
no longer uses errno but Curl_sockerrno() and now acknowledges return codes
...
from Curl_client_write
2006-05-08 21:00:44 +00:00
Dan Fandrich
df9108e19b
Stop sending retransmitted received blocks up to client
...
Fixed handling of retransmitted blocks on transmit
Properly aligned data to transmit within packet
Replaced calls to strerror() with Curl_strerror()
2006-05-08 19:41:26 +00:00
Daniel Stenberg
6307e783d8
Fixed known bug #28 . The TFTP code no longer assumes a packed struct and
...
thus works reliably on more platforms.
2006-05-08 15:09:50 +00:00
Daniel Stenberg
b9cd73c76d
Fix GnuTLS compile warning. Risking breakage with some older version of GnuTLS?
2006-05-07 18:27:36 +00:00
Daniel Stenberg
b62c230ca2
Curl_https_getsock() was OpenSSL-specific and really should not be present
...
like this in this source file. The quickfix for now is to provide a simple
version for GnuTLS builds. The GnuTLS version of libcurl doesn't yet allow
fully non-blocking connects anyway so this function doesn't get used.
2006-05-05 22:14:40 +00:00
Daniel Stenberg
800193da9b
get the Curl_sockerrno proto
2006-05-05 22:07:01 +00:00
Daniel Stenberg
9bece2b313
additional renames of Curl_ourerrno => Curl_sockerrno
2006-05-05 10:24:27 +00:00
Daniel Stenberg
e85e30546c
Roland Blom filed bug report #1481217
...
(http://curl.haxx.se/bug/view.cgi?id=1481217 ), with follow-ups by Michele Bini
and David Byron. libcurl previously wrongly used GetLastError() on windows to
get error details after socket-related function calls, when it really should
use WSAGetLastError() instead.
When changing to this, the former function Curl_ourerrno() is now instead
called Curl_sockerrno() as it is necessary to only use it to get errno from
socket-related functions as otherwise it won't work as intended on Windows.
2006-05-04 22:39:47 +00:00
Daniel Stenberg
758f6eed51
Mark Eichin submitted bug report #1480821
...
(http://curl.haxx.se/bug/view.cgi?id=1480821 ) He found and identified a
problem with how libcurl dealt with GnuTLS and a case where gnutls returned
GNUTLS_E_AGAIN indicating it would block. It would then return an unexpected
return code, making Curl_ssl_send() confuse the upper layer - causing random
28 bytes trash data to get inserted in the transfered stream.
The proper fix was to make the Curl_gtls_send() function return the proper
return codes that the callers would expect. The Curl_ossl_send() function
already did this.
2006-05-04 06:00:40 +00:00
Gisle Vanem
06a7b0561b
Added revision ID-tag.
2006-04-26 17:27:36 +00:00
Gisle Vanem
12db20be4e
Fixed signed/unsigned convertion errors in Salford-C.
...
#ifdef around WSAEDISCON in strerror.c.
2006-04-26 17:26:22 +00:00
Gisle Vanem
3cbb1b2b64
Use the HAVE_MALLOC_H and HAVE_PROCESS_H defines
...
(more logical).
2006-04-26 17:23:28 +00:00
Gisle Vanem
d75e587613
djgpp has <process.h> too.
2006-04-26 17:15:57 +00:00
Gisle Vanem
414c57d138
Added support for Salford-C under Win32 (scc). HAVE_MALLOC_H and
...
HAVE_PROCESS_H added for all except scc.
2006-04-26 17:11:05 +00:00
Daniel Stenberg
def0db30e7
crlf_conversions needs to be a curl_off_t for ASCII transfers > 4GB on 32bit
...
systems
2006-04-26 13:08:12 +00:00
Daniel Stenberg
95152aec68
David McCreedy brought line end conversions when doing FTP ASCII
...
transfers. They are done on non-windows systems and translate CRLF to LF.
2006-04-26 07:40:37 +00:00
Daniel Stenberg
87c5ed8bec
Paul Querna fixed libcurl to better deal with deflate content encoding when
...
the stream (wrongly) lacks a proper zlib header. This seems to be the case on
too many actual server implementations.
2006-04-25 20:49:40 +00:00
Daniel Stenberg
ecc6c1f501
prevent signed/unsigned warnings
2006-04-25 05:32:05 +00:00
Daniel Stenberg
db03d4bdd0
Ale Vesely fixed CURLOPT_INTERFACE when using a hostname
2006-04-21 13:46:19 +00:00
Daniel Stenberg
0ec96e4279
each socket is used by exactly one easy handle, but of course each easy handle
...
can and will use more than one socket
2006-04-21 13:40:07 +00:00
Gunter Knauf
1e8683d72d
removed -fpack-struct because gcc4 seems to know its obsolete and warns...
2006-04-20 10:26:51 +00:00
Daniel Stenberg
f191b143e9
CURL_VERSION_CONV is returned by curl_version_info if libcurl has been built
...
to allow/support character conversions
2006-04-19 09:03:21 +00:00
Daniel Stenberg
e532b196cc
Robson Braga Araujo provided a patch that makes libcurl less eager to close
...
the control connection when using FTP, for example when you remove an easy
handle from a multi stack.
2006-04-18 23:14:30 +00:00
Daniel Stenberg
38898ba4af
corrected the SSL timeout, as Ates Goral's patch did it and that works (opposed
...
to my previous brain-damaged version)
2006-04-18 22:10:19 +00:00
Daniel Stenberg
48f56d9600
attempt to silence the MIPSPro compiler warning
2006-04-18 10:55:41 +00:00
Daniel Stenberg
17bf5ac2fc
avoid a warning about declaring a variable that shadows an earlier declared
...
one
2006-04-18 10:51:07 +00:00
Daniel Stenberg
343b882d80
there's an curl_easy_unescape too now
2006-04-18 09:23:03 +00:00
Gunter Knauf
19240f08bb
added missing symbol export.
2006-04-17 17:06:10 +00:00
Daniel Stenberg
d774730f83
added splay
2006-04-12 18:12:46 +00:00
Gisle Vanem
c2edf42567
Added splay.c.
2006-04-12 14:01:21 +00:00
Gisle Vanem
08f0e55b4f
Add "multiif.h" for GETSOCK_WRITESOCK() macro.
2006-04-12 13:54:07 +00:00
Daniel Stenberg
0542002d7a
adjusted to the new internal *_getsock() concept for providing info internally
...
about what sockets to wait for what action on
2006-04-11 07:23:30 +00:00
Daniel Stenberg
c1e307f585
added docs and removed proto
2006-04-11 07:22:55 +00:00
Daniel Stenberg
676597e961
Ates Goral found out that if you specified both CURLOPT_CONNECTTIMEOUT and
...
CURLOPT_TIMEOUT, the _longer_ time would wrongly be used for the SSL
connection time-out!
2006-04-10 21:49:55 +00:00
Daniel Stenberg
686d90745b
First curl_multi_socket() commit. Should primarily be considered as an internal
...
code rearrange to fit the future better.
2006-04-10 15:00:53 +00:00
Daniel Stenberg
0598547b58
added README.multi_socket
2006-04-10 14:54:12 +00:00
Daniel Stenberg
67c7745f5d
state of the multi_socket API works
2006-04-10 14:44:23 +00:00
Daniel Stenberg
e6efecd054
avoid duplicate typedefs, as this type is also defined in our public headers
2006-04-10 13:14:14 +00:00
Daniel Stenberg
a21a77d230
CURLE_FTP_USER_PASSWORD_INCORRECT is not returned by libcurl anymore!
2006-04-09 22:41:22 +00:00
Gisle Vanem
e4a4b562c4
readint_le() not needed in USE_WINDOWS_SSPI code.
2006-04-08 11:04:53 +00:00
Gisle Vanem
35b4a755f9
curl_easy_unescape() takes 4 arguments.
2006-04-08 11:01:40 +00:00
Daniel Stenberg
5a4b43848a
First commit of David McCreedy's EBCDIC and TPF changes.
2006-04-07 21:50:47 +00:00
Daniel Stenberg
4d33cf739d
added typedefed function pointers and typecast the NULL assignments in an
...
attempt to silence picky compilers when assigning data pointers to a function
pointer variable
2006-04-07 11:47:21 +00:00
Daniel Stenberg
34e7daf989
attempt to avoid warnings in picky environments by storing options as
...
unsigned chars
2006-04-07 11:46:16 +00:00
Daniel Stenberg
be285cde3f
Michele Bini modified the NTLM code to work for his "weird IIS case"
...
(http://curl.haxx.se/mail/lib-2006-02/0154.html ) by adding the NTLM hash
function in addition to the LM one and making some other adjustments in the
order the different parts of the data block are sent in the Type-2 reply.
Inspiration for this work was taken from the Firefox NTLM implementation.
I edited the existing 21(!) NTLM test cases to run fine with these news. Due
to the fact that we now properly include the host name in the Type-2 message
the test cases now only compare parts of that chunk.
2006-04-05 12:35:48 +00:00