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
Daniel Stenberg
bcc62cc9e3
#1451929 ( http://curl.haxx.se/bug/view.cgi?id=1451929 ) detailed a bug that
...
occurred when asking libcurl to follow HTTP redirects and the original URL had
more than one question mark (?). Added test case 276 to verify.
2006-03-28 08:03:25 +00:00
Gunter Knauf
d74725ce67
minor Makefile fix - let's go 2006;
...
avoid kiling hugehelp.c when not built from CVS.
2006-03-27 14:34:19 +00:00
Daniel Stenberg
3dad55d7a8
Tor Arntsen figured out that TFTP was broken on a lot of systems since we
...
called bind() with a too big argument in the 3rd parameter and at least
Tru64, AIX and IRIX seem to be very picky about it.
2006-03-26 08:52:43 +00:00
Daniel Stenberg
598ffeea89
David McCreedy added CURLINFO_FTP_ENTRY_PATH to export the FTP entry path
2006-03-21 22:30:03 +00:00
Daniel Stenberg
83367f67de
Xavier Bouchoux made the SSL connection non-blocking for the multi interface
...
(when using OpenSSL).
2006-03-21 21:54:44 +00:00
Daniel Stenberg
6421d69bff
David McCreedy fixed libcurl to no longer ignore AUTH failures and now it
...
reacts properly according to the CURLOPT_FTP_SSL setting.
2006-03-20 22:51:08 +00:00
Dan Fandrich
a63f9887b9
Fixed a bug whereby a received file whose length was a multiple of
...
512 bytes could have random garbage appended. Also, stop processing TFTP
packets which are too short to be legal.
2006-03-20 22:15:22 +00:00
Daniel Stenberg
5975229919
fixed tftp packet overflow risk
2006-03-20 07:32:50 +00:00
Daniel Stenberg
d494d62953
David McCreedy found a use of the wrong variable when display the error
...
text from OpenSSL.
2006-03-13 23:34:25 +00:00
Daniel Stenberg
7206181385
David McCreedy found a missing return code assignment
2006-03-13 23:33:46 +00:00
Daniel Stenberg
f70f11fc70
Peter Heuchert's correction for the clear control connection case
2006-03-08 15:46:21 +00:00
Daniel Stenberg
cffebd7fd6
Markus Koetter filed debian bug report #355715 which identified a problem
...
with the multi interface and multi-part formposts. The fix from February
22nd could make the Curl_done() function get called twice on the same
connection and it was not designed for that and thus tried to call free() on
an already freed memory area!
2006-03-07 23:11:41 +00:00
Daniel Stenberg
b8c8e7349f
Peter Heuchert made sure the CURLFTPSSL_CONTROL setting for CURLOPT_FTP_SSL
...
is used properly.
2006-03-07 22:28:08 +00:00
Daniel Stenberg
8bba99ae56
Lots of users on Windows have reported getting the "SSL: couldn't set
...
callback" error message so I've now made the setting of that callback not be
as critical as before. The function is only used for additional loggging/
trace anyway so a failure just means slightly less data. It should still be
able to proceed and connect fine to the server.
2006-03-06 22:35:51 +00:00
Daniel Stenberg
b5c5f57613
build fix for Interix
2006-03-04 22:39:31 +00:00
Daniel Stenberg
7d68101f83
Prevent uploading to a URL that has no file name part.
2006-03-03 13:09:30 +00:00
Gisle Vanem
dc4fbd2e97
Small fix.
2006-02-26 18:20:43 +00:00
Gisle Vanem
60b029869f
Use getprotobyname() to retrieve protocol number for TCP
...
(sorry, I don't know how to add this to the configure process).
2006-02-26 17:08:33 +00:00
Dan Fandrich
a39ac3d94a
Added user ID support to SOCKS4.
2006-02-24 21:35:48 +00:00
Daniel Stenberg
4486d336a6
argh, forgot the check for a connection before we call Curl_done
2006-02-23 21:29:48 +00:00
Dan Fandrich
45e4b811b0
Fixed a few more comment typos.
2006-02-23 18:39:22 +00:00
Daniel Stenberg
0e6a1a4420
Peter Su's SOCKS4 fix
2006-02-23 14:42:47 +00:00
Daniel Stenberg
6fdbb01194
Lots of work and analysis by "xbx___" in bug #1431750
...
(http://curl.haxx.se/bug/view.cgi?id=1431750 ) helped me identify and fix two
different but related bugs:
1) Removing an easy handle from a multi handle before the transfer is done
could leave a connection in the connection cache for that handle that is
in a state that isn't suitable for re-use. A subsequent re-use could then
read from a NULL pointer and segfault.
2) When an easy handle was removed from the multi handle, there could be an
outstanding c-ares DNS name resolve request. When the response arrived,
it caused havoc since the connection struct it "belonged" to could've
been freed already.
Now Curl_done() is called when an easy handle is removed from a multi handle
pre-maturely (that is, before the transfer was complteted). Curl_done() also
makes sure to cancel all (if any) outstanding c-ares requests.
2006-02-23 12:20:48 +00:00
Dan Fandrich
75c9430559
Fixed some spelling errors in comments, and extraneous \n in failf logs.
2006-02-22 19:09:33 +00:00
Daniel Stenberg
a15d107dde
Peter Su added support for SOCKS4 proxies. Enable this by setting the proxy
...
type to the already provided type CURLPROXY_SOCKS4.
I added a --socks4 option that works like the current --socks5 option but
instead use the socks4 protocol.
2006-02-21 07:46:41 +00:00
Daniel Stenberg
29e446e508
Shmulik Regev fixed an issue with multi-pass authentication and compressed
...
content when libcurl didn't honor the internal ignorebody flag.
2006-02-19 23:16:48 +00:00
Daniel Stenberg
10beb36b1c
Ulf Hrnhammar fixed a format string (printf style) problem in the Negotiate
...
code. It should however not be the cause of any troubles. He also fixed a
few similar problems in the HTTP test server code.
2006-02-18 22:27:01 +00:00
Yang Tse
a65a888866
Fix spacing.
2006-02-17 15:58:21 +00:00
Daniel Stenberg
92009181af
Shmulik Regev provided a fix for the DNS cache when using short life times,
...
as previously it could be holding on to old cached entries longer than
requested.
2006-02-16 23:42:32 +00:00
Daniel Stenberg
ad6511c313
Added some clarifying comments
2006-02-16 10:02:11 +00:00
Daniel Stenberg
87bcb6f377
Karl M added the CURLOPT_CONNECT_ONLY and CURLINFO_LASTSOCKET options that
...
an app can use to let libcurl only connect to a remote host and then extract
the socket from libcurl. libcurl will then not attempt to do any transfer at
all after the connect is done.
2006-02-11 22:35:16 +00:00
Daniel Stenberg
12f5c67bf5
Philippe Vaucher provided a brilliant piece of test code that show a problem
...
with re-used FTP connections. If the second request on the same connection was
set not to fetch a "body", libcurl could get confused and consider it an
attempt to use a dead connection and would go acting mighty strange.
2006-02-07 23:09:04 +00:00
Gisle Vanem
5994b62930
Squelch the "warning: 'port' might be used uninitialized in this function".
...
(occurs w/o ENABLE_IPV6).
2006-01-30 18:57:02 +00:00
Daniel Stenberg
2fbf94b0f3
Added CURLOPT_LOCALPORT and CURLOPT_LOCALPORTRANGE to libcurl. Set with the
...
curl tool with --local-port. Plain and simply set the range of ports to bind
the local end of connections to. Implemented on to popular demand.
Not extensively tested. Please let me know how it works.
2006-01-30 08:24:07 +00:00
Daniel Stenberg
32bc30e210
Based on an error report by Philippe Vaucher, we no longer count a retried
...
connection setup as a follow-redirect. It turns out 1) this fails when a FTP
connection is re-setup and 2) it does make the max-redirs counter behave
wrong. This fix was not verified since the reporter vanished, but I believe
this is the right fix nonetheless.
2006-01-30 08:20:52 +00:00
Daniel Stenberg
8d4eb2bc1f
updated source header
2006-01-26 10:39:25 +00:00
Daniel Stenberg
67bf4f28ff
Michal Marek provided a patch for FTP that makes libcurl continue to try PASV
...
even after EPSV returned a positive response code, if libcurl failed to
connect to the port number the EPSV response said. Obviously some people are
going through protocol-sensitive firewalls (or similar) that don't understand
EPSV and then they don't allow the second connection unless PASV was
used. This also called for a minor fix of test case 238.
2006-01-24 14:40:43 +00:00
Daniel Stenberg
fcfd6d9504
Duane Cathey was one of our friends who reported that curl -P [IP]
...
(CURLOPT_FTPPORT) didn't work for ipv6-enabed curls if the IP wasn't a
"native" IP while it works fine for ipv6-disabled builds!
In the process of fixing this, I removed the support for LPRT since I can't
think of many reasons to keep doing it and asking on the mailing list didn't
reveal anyone else that could either. The code that sends EPRT and PORT is
now also a lot simpler than before (IMHO).
2006-01-19 23:52:03 +00:00
Daniel Stenberg
c31451cf13
Jon Turner pointed out that doing -P [hostname] with curl (built ipv4-only)
...
didn't work.
2006-01-19 22:02:46 +00:00
Daniel Stenberg
67a83c1b34
David Shaw finally removed all traces of Gopher and we are now officially
...
not supporting it. It hasn't been functioning for years anyway, so this is
just finally stating what already was true. And a cleanup at the same time.
2006-01-16 22:14:37 +00:00
Daniel Stenberg
4c35a40858
Bryan Henderson turned the 'initialized' variable for curl_global_init()
...
into a counter, and thus you can now do multiple curl_global_init() and you
are then supposed to do the same amount of calls to curl_global_cleanup().
Bryan also updated the docs accordingly.
2006-01-15 23:55:53 +00:00
Daniel Stenberg
d9bd5de0b1
Fixed FTP_SKIP_PASV_IP and FTP_USE_EPSV to "do right" when used on FTP thru
...
HTTP proxy.
2006-01-12 22:18:38 +00:00
Daniel Stenberg
31c7aa0ba4
Michael Jahn fixed ftp over CONNECT
2006-01-12 12:40:04 +00:00
Daniel Stenberg
4431338691
When using a bad path over FTP, as in when libcurl couldn't CWD into all
...
given subdirs, libcurl would still "remember" the full path as if it is the
current directory libcurl is in so that the next curl_easy_perform() would
get really confused if it tried the same path again - as it would not issue
any CWD commands at all, assuming it is already in the "proper" dir.
Starting now, a failed CWD command sets a flag that prevents the path to be
"remembered" after returning.
2006-01-10 23:03:22 +00:00
Daniel Stenberg
bda1e9aeab
Made the copyright year match the latest modification's year.
2006-01-09 13:17:14 +00:00
Daniel Stenberg
f4cc8153ae
Mike Jean fixed so that the second CONNECT when doing FTP over a HTTP proxy
...
actually used a new connection and not sent the second request on the first
socket!
2006-01-07 22:24:16 +00:00
Gisle Vanem
4dcb930247
Include <sys/ioctl.h> before redefining ioctl().
2006-01-02 18:35:58 +00:00
Marty Kuhrt
0040a60559
fix questionable compare
2005-12-30 00:35:21 +00:00
Marty Kuhrt
cc34342790
fix questionable compare compiler error (unsigned can't be < 0)
2005-12-30 00:20:46 +00:00
Marty Kuhrt
b11dec5dd5
putting back into dist
2005-12-30 00:07:25 +00:00
Daniel Stenberg
0e3ebd9841
Kirill Vasiliev fixed the 'release-ssl-dll' target to properly build a
...
static libcurl using openssl as dll.
2005-12-23 23:40:40 +00:00
Daniel Stenberg
7d1e3ebeed
explain tld_check_name()
2005-12-20 22:46:12 +00:00
Gisle Vanem
7b51aafa86
Changes for PellesC compiler under Win32. A bit limited, but
...
we just love swedish products...
2005-12-20 22:20:04 +00:00
Dan Fandrich
178afd81a9
Fixed lcc compiler warnings.
2005-12-19 19:47:14 +00:00
Yang Tse
0ad3e046a4
Fix spacing. When defining, define to 1.
2005-12-18 16:50:33 +00:00
Yang Tse
d6c5d24af3
Cleanup windows header includes. Where aplicable, inclusion of
...
windows.h winsock.h winsock2.h ws2tcpip.h is done in setup.h
2005-12-18 15:36:14 +00:00
Yang Tse
23b34744d9
Cleanup
2005-12-17 21:20:35 +00:00
Yang Tse
bc8590aa12
Windows related cleanup
2005-12-17 20:37:53 +00:00
Yang Tse
336e3b8baf
Change multiple header inclusion prevention definition to __LIB_CURL_SETUP_H
2005-12-17 06:04:35 +00:00
Yang Tse
e105d5c28f
'Fix' windows builds
2005-12-16 20:55:07 +00:00
Daniel Stenberg
6dbfce1031
Jean Jacques Drouin pointed out that you could only have a user name or
...
password of 127 bytes or less embedded in a URL, where actually the code
uses a 255 byte buffer for it! Modified now to use the full buffer size.
2005-12-16 14:52:16 +00:00
Dan Fandrich
e2df946eee
Fixed some compiler warnings on lcc.
2005-12-13 18:54:31 +00:00
Yang Tse
d14588120f
Undo last 'fix', since it was not the proper one.
2005-12-13 13:50:22 +00:00
Yang Tse
947f9deed5
Fix compiler warning
2005-12-12 18:40:18 +00:00
Yang Tse
b15f3bb969
Undo last changes
2005-12-11 23:37:58 +00:00
Daniel Stenberg
998e8cba19
Dov Murik made defining HTTP_ONLY also disable TFTP
2005-12-11 23:14:25 +00:00
Yang Tse
e3f523ab2a
Avoid generation of additional warnings
2005-12-11 18:29:18 +00:00
Yang Tse
36485e56ed
Fix compiler warning and compatibility issue with the type of the parameter used in getnameinfo() to receive the length of the sockaddr struct.
2005-12-11 12:03:01 +00:00
Yang Tse
1cc98ab50f
Unset HAVE_STRUCT_SOCKADDR_STORAGE when using msvc 6.0 with no PSDK
2005-12-09 15:19:07 +00:00
Dan Fandrich
df03d5a8b2
Replaced nonstandard u_char and u_int types
2005-12-08 22:59:58 +00:00
Yang Tse
6a0ed81e67
Fix compiler warning
2005-12-08 20:38:04 +00:00
Yang Tse
c94f3e8188
Fix compiler warning
2005-12-08 19:47:33 +00:00