Daniel Stenberg
b9e5fecf5f
Check for a NULL easy->easy_conn in multi_getsock() since it can in fact
...
happen when curl_multi_remove_handle() is called.
CID 13. coverity.com scan
2007-03-31 10:56:07 +00:00
Daniel Stenberg
3af08472ad
Removed check for ftpcode being NULL, as later it is derefenced unconditionally
...
anyway and we can just as well rely on it being valid.
CID 12, coverity.com scan
2007-03-31 10:39:54 +00:00
Daniel Stenberg
75db459f0a
Pointer "conn" dereferenced before NULL check. found by coverity.com scan
2007-03-30 20:54:32 +00:00
Daniel Stenberg
74e54c5a49
Pointer "cur_pos" dereferenced before NULL check, found by coverity.com scan.
...
Removed the NULL check since the pointer must be valid already.
2007-03-30 20:52:42 +00:00
Daniel Stenberg
3dcc7202d5
dead code removed, found by the coverity.com scan
2007-03-30 19:59:15 +00:00
Dan Fandrich
ffb11ad5c6
Don't tear down the ftp connection if the maximum filesize was exceeded
...
and added tests 290 and 291 to check.
2007-03-30 01:13:47 +00:00
Dan Fandrich
7763bb9172
Send an EOF message before closing a channel, as recommended by RFC4254.
...
Enable libssh2 tracing when ssh debugging is turned on.
2007-03-29 19:17:18 +00:00
Yang Tse
a1e5c621c0
fix compiler warning
2007-03-29 12:29:32 +00:00
Yang Tse
3d5a8515a6
fix error introduced in last commit
2007-03-29 00:11:55 +00:00
Yang Tse
bfa0f8c6c2
fix compiler warning
2007-03-28 19:05:43 +00:00
Yang Tse
869d192ffc
Improve detection of socket events which allow a further recv() call
...
to complete with no delay and actually find out what happened with
the socket. As well as detection of socket send()able condition.
This also allows removal of a Cygwin specific block of code.
2007-03-28 18:59:42 +00:00
Gisle Vanem
60bc103a78
djgpp uses gcc which has varadic macros.
2007-03-28 04:48:11 +00:00
Gisle Vanem
8a0a7ce3a8
Fix compiler warning.
2007-03-28 04:44:14 +00:00
Gisle Vanem
25c064c888
Simplified code around 'tld_errmsg' a bit.
2007-03-28 04:23:33 +00:00
Gunter Knauf
45b2577974
added variadic macro stuff.
2007-03-27 19:27:43 +00:00
Yang Tse
d58c7a8bdd
Update message
2007-03-27 18:16:35 +00:00
Yang Tse
eed47311f8
New Internal wrapper function Curl_select() around select (2), it
...
uses poll() when a fine poll() is available, so now libcurl can be
built without select() support at all if a fine poll() is available.
2007-03-27 18:15:26 +00:00
Yang Tse
59eaae42b8
don't retry select() call upon unrecoverable error EBADF
2007-03-27 15:22:49 +00:00
Yang Tse
4294cac701
Platforms that lack autotools support should define HAVE_VARIADIC_MACROS_C99
...
and/or HAVE_VARIADIC_MACROS_GCC for specific compiler versions that support
variadic macros with C99 style and/or old gcc style in their specific config.h
file.
If previous definitions are not done, even when aplicable, and --disable-verbose
is used, the fallback (void) method will be used to define infof, avoiding the
inclusion of unwanted strings in the resulting library/executable.
2007-03-27 04:17:26 +00:00
Yang Tse
fba4cd0e62
Internal function Curl_select() renamed to Curl_socket_ready()
2007-03-26 23:23:46 +00:00
Gunter Knauf
8272abef28
changed link lib order to make nlmconv happy.
2007-03-26 17:01:35 +00:00
Gunter Knauf
5fbc93c3eb
added CVS Id tag.
2007-03-26 01:54:06 +00:00
Gunter Knauf
8851df41c5
fixed build to use compiler-default lib extension.
2007-03-26 01:50:44 +00:00
Daniel Stenberg
6c56b5301f
- Daniel Johnson fixed multi code to traverse the easy handle list properly.
...
A left-over bug from the February 21 fix.
2007-03-25 08:16:16 +00:00
Yang Tse
fa0780bb91
fix compiler warning
2007-03-25 03:20:17 +00:00
Yang Tse
f08ac86834
fix compiler warning
2007-03-25 02:30:58 +00:00
Yang Tse
d6eca89229
fix compiler warning
2007-03-25 01:59:52 +00:00
Dan Fandrich
2bd1d7e996
Fixed a couple of compile problems.
2007-03-24 17:23:01 +00:00
Dan Fandrich
0dd1219668
Fixed a memory leak when specifying a proxy with a file: URL and added
...
test case 288 to verify it.
2007-03-24 02:15:20 +00:00
Daniel Stenberg
3d528e1b15
add missing state name for the debug state switch output
2007-03-23 22:25:04 +00:00
Daniel Stenberg
f9a339a225
fix debug message
2007-03-23 22:24:33 +00:00
Dan Fandrich
0043e87014
Added --pubkey option to curl and made --key also work for SCP/SFTP,
...
plus made --pass work on an SSH private key as well.
2007-03-23 17:59:40 +00:00
Yang Tse
0f634a0c89
fix yet another leftover in previous commit
2007-03-23 12:13:08 +00:00
Yang Tse
047cd1a533
fix leftover in previous commit
2007-03-23 12:09:16 +00:00
Yang Tse
f9eb61e90a
fix compiler warning: empty body in an if/else-statement
2007-03-23 12:01:19 +00:00
Yang Tse
34afb0b257
Change spelling, ONE_TERRABYTE -> ONE_TERABYTE
...
Shave off a couple of function calls in the part of
Curl_pgrsUpdate() which is always executed when called.
Fix a couple of comments.
2007-03-23 04:23:53 +00:00
Dan Fandrich
6bb9bd8b69
Don't shut down sftp in an error if it was never started.
2007-03-23 00:03:34 +00:00
Dan Fandrich
3229a80c9f
Fixed unused variable compiler warning.
2007-03-22 17:58:01 +00:00
Dan Fandrich
5eba84eed3
Use C99-style variadic macros when available.
2007-03-22 17:18:41 +00:00
Yang Tse
4fb483012c
Add a couple of local macros to improve code readability.
...
For completeness sake, wait_ms() might also get interrupted when
experimental CURL_ACKNOWLEDGE_EINTR is defined.
2007-03-22 15:32:28 +00:00
Yang Tse
90ce18019c
reverted back to previous version => http://curl.haxx.se/mail/lib-2007-03/0258.html
2007-03-21 13:09:39 +00:00
Yang Tse
fe10cb2ef5
avoid the use of variadic macros for greater portability
2007-03-21 08:17:13 +00:00
Yang Tse
842be6c52f
fix compiler warning: implicit conversion from "long" to "int"
2007-03-21 07:29:03 +00:00
Yang Tse
e4b754f64e
Fixed: When a signal was caught awaiting for an event using Curl_select()
...
or Curl_poll() with a non-zero timeout both functions would restart the
specified timeout. This could even lead to the extreme case that if a
signal arrived with a frecuency lower to the specified timeout neither
function would ever exit.
Added experimental symbol definition check CURL_ACKNOWLEDGE_EINTR in
Curl_select() and Curl_poll(). When compiled with CURL_ACKNOWLEDGE_EINTR
defined both functions will return as soon as a signal is caught. Use it
at your own risk, all calls to these functions in the library should be
revisited and checked before fully supporting this feature.
2007-03-20 20:00:40 +00:00
Gisle Vanem
34ed4642ec
Remove unneeded 'HAVE_*' defines.
2007-03-20 16:30:14 +00:00
Yang Tse
072a8b2955
Bryan Henderson fixed the progress function so that it can get called
...
more frequently allowing same calling frecuency for the client progress
callback, while keeping the once a second frecuency for speed calculations
and internal display of the transfer progress.
2007-03-19 12:02:33 +00:00
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