aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2010-06-05OpenSSL: fix spurious SSL connection abortsConstantine Sapuntzakis
Was seeing spurious SSL connection aborts using libcurl and OpenSSL. I tracked it down to uncleared error state on the OpenSSL error stack - patch attached deals with that. Rough idea of problem: Code that uses libcurl calls some library that uses OpenSSL but don't clear the OpenSSL error stack after an error. ssluse.c calls SSL_read which eventually gets an EWOULDBLOCK from the OS. Returns -1 to indicate an error ssluse.c calls SSL_get_error. First thing, SSL_get_error calls ERR_get_error to check the OpenSSL error stack, finds an old error and returns SSL_ERROR_SSL instead of SSL_ERROR_WANT_READ or SSL_ERROR_WANT_WRITE. ssluse.c returns an error and aborts the connection Solution: Clear the openssl error stack before calling SSL_* operation if we're going to call SSL_get_error afterwards. Notes: This is much more likely to happen with multi because it's easier to intersperse other calls to the OpenSSL library in the same thread.
2010-06-05replace socklen_t with curl_socklen_tYang Tse
2010-06-05getinfo: added *_PRIMARY_PORT, *_LOCAL_IP and *_LOCAL_PORTFrank Meier
2010-06-04RELEASE-NOTES: add contributors not mentionedDaniel Stenberg
2010-06-04Enable OpenLDAP support for cygwin builds.Yang Tse
Enable OpenLDAP support for cygwin builds. This support was disabled back in 2008 due to incompatibilities between OpenSSL and OpenLDAP headers. cygwin's OpenSSL 0.9.8l and OpenLDAP 2.3.43 versions on cygwin 1.5.25 allow building an OpenLDAP enabled libcurl supporting back to Windows 95. Remove non-functional CURL_LDAP_HYBRID code and references.
2010-06-02ftplistparser.c: oops, fix typo in the last commitKamil Dudka
2010-06-02ftplistparser.c: avoid some invalid dereferencesKamil Dudka
2010-06-02lib: eliminate some dead codeKamil Dudka
2010-06-02SSH: corrected the inability to respect the timeoutDaniel Stenberg
Jason McDonald posted bug report #3006786 when he found that the SFTP code didn't timeout properly in several places in the code even if a timeout was set properly. Based on his suggested patch, I wrote a different implementation that I think addressed the issue better and also uses the connect timeout for the initial part of the SSH/SFTP done during the "protocol connect" phase. (http://curl.haxx.se/bug/view.cgi?id=3006786)
2010-06-02mention last changesYang Tse
2010-06-02add missing new files to non-configure target build filesYang Tse
2010-06-02include libcurl standard internal headersYang Tse
2010-06-02TODO: add multi interface improvement remove ldap selectDaniel Stenberg
2010-06-02make setup.h first included fileYang Tse
2010-06-02fix spnego memory leakYang Tse
2010-06-02openldap header inclusions fixYang Tse
2010-06-01multi_socket: handles timer inaccuracy better for timeoutsDaniel Stenberg
Igor Novoseltsev reported a problem with the multi socket API and using timeouts and timers. It boiled down to a problem with libcurl's use of GetTickCount() interally to figure out the current time, while Igor's own application code used another function call. It made his app call the socket API timeout function a bit _before_ libcurl would consider the timeout to trigger, and that could easily lead to timeouts or stalls in the app. It seems GetTickCount() in general often has no better resolution than 16ms and switching to the alternative function QueryPerformanceCounter has its share of problems: http://www.virtualdub.org/blog/pivot/entry.php?id=106 We address this problem by simply having libcurl treat timers that already has occured or will occur within 40ms subject for treatment. I'm confident that there are other implementations and operating systems with similarly in accurate timer functions so it makes sense to have applied generically and I don't believe we sacrifice much by adding a 40ms inaccuracy on these timeouts.
2010-06-01fix ldaps option issueYang Tse
2010-06-01fix ldap related compilation issuesYang Tse
2010-06-01fix compiler warning: enumerated type mixed with another typeYang Tse
2010-05-31fix compiler warning: enumerated type mixed with another typeYang Tse
2010-05-31smtp_authenticate: avoid compiler warningsPatrick Monnerat
2010-05-31fix compiler warning: enumerated type mixed with another typeYang Tse
2010-05-31fix compiler warning: enumerated type mixed with another typeYang Tse
2010-05-31fix compiler warning: enumerated type mixed with another typeYang Tse
2010-05-31fix compiler warning: external declaration in primary source fileYang Tse
2010-05-31fix compiler warning: variable was set but never usedYang Tse
2010-05-31fix compiler warning: enumerated type mixed with another typeYang Tse
2010-05-31fix compiler warning: external declaration in primary source fileYang Tse
2010-05-31update year in copyright noticeYang Tse
2010-05-29strtoofft: rename CURL_LLONG_MIN -> CURL_OFF_T_MINKamil Dudka
... and CURL_LLONG_MAX -> CURL_OFF_T_MAX
2010-05-29CURL_LLONG_MAX: avoid constant overflowKamil Dudka
... when (CURL_SIZEOF_CURL_OFF_T == 4)
2010-05-28LDAPS: list availability depending on SSL's presenceHoward Chu
2010-05-28LDAP: make it build without SSL if no such support is availableHoward Chu
of course it also goes for the case where SSL is explicitly disabled
2010-05-28TODO: removed fixed itemsDaniel Stenberg
These two items are now actually implemented: 11.1 Content-Disposition 11.5 ftp wildcard download
2010-05-28lib: eliminate 'statement not reached' warningsKamil Dudka
2010-05-28test1115: verify that unexpected 1xx responses work fineDaniel Stenberg
2010-05-28lib577: avoid redefinition of ERRORKamil Dudka
2010-05-27test313: a new test for CRL supportKamil Dudka
2010-05-27tests/certs: re-generated because of lost pass-phraseKamil Dudka
2010-05-27tests/certs/scripts: generate also CRLKamil Dudka
... and make it possible to do so without any user interaction
2010-05-27openldap: fix compiler warningsHoward Chu
2010-05-27indent: some whitespace editsDaniel Stenberg
2010-05-27wildcard.c: add missing include of "setup.h"Kamil Dudka
2010-05-27lib573: do not compare double for exact matchTor Arntsen
2010-05-27wildcard.c: add missing include of "curl_memory.h"Pavel Raiskup
2010-05-27setup_once: use enum type for 'bool' on non-C99 platformsTor Arntsen
An enum will catch non-bool assignments to bool on platforms with a strict compiler, e.g MIPSPro. Signed-off-by: Kamil Dudka <kdudka@redhat.com>
2010-05-27url.c: avoid implied cast to boolKamil Dudka
2010-05-27curl_fnmatch: remove use of register keywordTor Arntsen
Using the 'register' keyword rarely improves anything with modern compilers and architectures.
2010-05-26RTMP: Fix compiler warningsJulien Chaffraix