aboutsummaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2011-04-14Fix a buffer overflow in pubkey_show().Andrei Benea
2011-04-14Replaced var manipulations with perlish hacks.Guenter Knauf
2011-04-11checkconnection: don't call with NULL pointerDaniel Stenberg
When checking if an existing RTSP connection is alive or not, the checkconnection function might be called with a SessionHandle pointer being NULL and then referenced causing a crash. This happened only using the multi interface. Reported by: Tinus van den Berg Bug: http://curl.haxx.se/bug/view.cgi?id=3280739
2011-04-10OpenSSL: no-sslv2 awareDaniel Stenberg
Allow openSSL without SSL2 to be used. This fix is inspired by the fix provided by Cristian Rodríguez. Reported by: Cristian Rodríguez
2011-04-08nss: allow to use multiple client certificates for a single hostKamil Dudka
In case a client certificate is used, invalidate SSL session cache at the end of a session. This forces NSS to ask for a new client certificate when connecting second time to the same host. Bug: https://bugzilla.redhat.com/689031
2011-04-07mk-ca-bundle.pl: show full URL in outputDaniel Stenberg
When I decided to search for a potential error with the cacert bundle it struck me I wanted to see the full source URL in the output...
2011-04-07lib/Makefile.b32: updatesGisle Vanem
* Rename the object object directory from 'objs' to 'BCC_obj'. I feel it should be named properly. Ref. Makefile.Watcom where it's called 'WC_Win32.obj'. * Turn off these warnings to keep the build totally silent (with CBuilder-6 that is). -w-inl 8026 Functions X are not expanded inline. -w-pia 8060 Possibly incorrect assignment -w-pin 8061 Initialization is only partially bracketed I'm sure the warnings could be fixed the "proper" way or with some added "#pragma" statements. But that just clutters the sources IMHO. * $(MKDIR) and $(RMDIR) have been replaced with the shell-commands 'md' and 'rd'. When having MingW/Msys programs 'mkdir.exe' and 'rmdir.exe' in $PATH, this confuses Borland's make and the result (the cleaning etc.) would not be as expected. * Added a ".path.int = $(OBJDIR)" to tell make where the $(PREPROCESSED) files are. Why we need the preprocess step in the fist place is beyond me (Yang?). But I'll leave that for now.
2011-04-07HTTP pipelining: Fix handling of zero-length responsesChris Smowton
Also add test case 584 for the same Bug: http://curl.haxx.se/bug/view.cgi?id=3214223
2011-04-05Changed some nonportable typesDan Fandrich
2011-04-05Don't list NTLM in curl-config when HTTP is disabledDan Fandrich
Also, fixed Curl_proxyCONNECT() stub with HTTP disabled.
2011-04-05return code cleanup: build, init and run-time errorsDaniel Stenberg
Stop the abuse of CURLE_FAILED_INIT as return code for things not being init related by introducing two new return codes: CURLE_NOT_BUILT_IN and CURLE_UNKNOWN_OPTION CURLE_NOT_BUILT_IN replaces return code 4 that has been obsoleted for several years. It is used for returning error when something is attempted to be used but the feature/option was not enabled or explictitly disabled at build-time. Getting this error mostly means that libcurl needs to be rebuilt. CURLE_FAILED_INIT is now saved and used strictly for init failures. Getting this problem means something went seriously wrong, like a resource shortage or similar. CURLE_UNKNOWN_OPTION is the option formerly known as CURLE_UNKNOWN_TELNET_OPTION (and the old name is still present, separately defined to be removed in a very distant future). This error code is meant to be used to return when an option is given to libcurl that isn't known. This problem would mostly indicate a problem in the program that uses libcurl.
2011-04-05FTP+proxy: macrofied functions when proxy disabledDaniel Stenberg
In my attempts to reduce #ifdefs in code, the SOCKS functions are now macros when libcurl is built without proxy support and therefore the FTP code could avoid some #ifs.
2011-04-05[pop3 starttls] PASS command was not sent after upgrade to TLS.Ben Noordhuis
2011-04-05[pop3 starttls] the command to send is STLS, not STARTTLS.Ben Noordhuis
2011-04-04http-proxy: move proxy code to http_proxy.cDaniel Stenberg
The new http_proxy.* files now host HTTP proxy specific code (500+ lines moved out from http.c), and as a consequence there is a macro introduced for the Curl_proxyCONNECT() function so that code can use it without actually supporting proxy (or HTTP) in builds.
2011-04-04disable cookies: remove ifdefs, move codeDaniel Stenberg
1 - make sure to #define macros for cookie functions in the cookie header when cookies are disabled to avoid having to use #ifdefs in code using those functions. 2 - move cookie-specific code to cookie.c and use the functio conditionally as mentioned in (1). net result: 6 #if lines removed, and 9 lines of code less
2011-04-04nss: fix a crash within SSL_AuthCertificate()Kamil Dudka
The bug was introduced in 806dbb0 (a wrong value was passed in as the first argument to the default callback in our wrapper).
2011-04-03multi: shorten linesDaniel Stenberg
We keep them less than 80 columns
2011-04-02multi: conn goes bad when data changeDaniel Stenberg
Within multi_socket when conn is used as a shorthand, data could be changed and multi_runsingle could modify the connectdata struct to deal with. This bug has not been included in a public release. Using 'conn' like that turned out to be ugly. This change is a partial revert of commit f1c6cd42f474df59. Reported by: Miroslav Spousta Bug: http://curl.haxx.se/bug/view.cgi?id=3265485
2011-04-01Increased script version.Guenter Knauf
2011-04-01Make use of proxy vars if set.Guenter Knauf
Posted to the list by Quanah Gibson-Mount [quanah zimbra.com].
2011-04-01Use var again instead of hard-coded filename.Guenter Knauf
2011-03-29typo fixGisle Vanem
2011-03-25TSL-SRP: enabled with OpenSSLPeter Sylvester
If a new enough OpenSSL version is used, configure detects the TLS-SRP support and enables it.
2011-03-25fix: re-use of bound connectionsDaniel Stenberg
When asked to bind the local end of a connection when doing a request, the code will now disqualify other existing connections from re-use even if they are connected to the correct remote host. This will also affect which connections that can be used for pipelining, so that only connections that aren't bound or bound to the same device/port you're asking for will be considered.
2011-03-23rtsp: move protocol code to dedicated fileDaniel Stenberg
The RTSP-specific function for checking for "dead" connection is better located in rtsp.c. The code using this is now written without #ifdefs as the function call is instead turned into a macro (in rtsp.h) when RTSP is disabled.
2011-03-23ipv6: only probe onceDaniel Stenberg
Move ipv6-functional-probe into a single function that is used from all places that need to know. Make the probe function store the result in a static variable so that subsequent invokes just returns the previous result and won't have to probe again.
2011-03-21progress: don't print the last update on a separate line.Julien Chaffraix
Curl_posttransfer is called too soon to add the final new line. Moved the new line logic to pgrsDone as there is no more call to update the progress status after this call. Reported by: Dmitri Shubin <sbn_at_tbricks.com> http://curl.haxx.se/mail/lib-2010-12/0162.html
2011-03-20retry-request: rewind if data was sentDaniel Stenberg
When libcurl sends a HTTP request on a re-used connection and detects it being closed (ie no data at all was read from it), it is important to rewind if any data in the request was sent using the read callback or was read from file, as otherwise the retried request will be broken. Reported by: Chris Smowton Bug: http://curl.haxx.se/bug/view.cgi?id=3195205
2011-03-19url: 0 is PROTOPT_NONE.Julien Chaffraix
Tiny tweak after Daniel's refactoring of the protocol handlers.
2011-03-19pop3: add state name in debug arrayDaniel Stenberg
We have an array with the state names only built and used when built debug enabled and this need to list all the states from the .h
2011-03-18pop3: use Curl_safefree() to allow torture tests to succeedDan Fandrich
2011-03-18pop3: remove unused variableDaniel Stenberg
2011-03-17Added support for LISTing a single POP3 messageDan Fandrich
Added tests for a number of POP3 LIST operations, including one that shows a curl problem when listing no messages, so is disabled.
2011-03-17pop3: fixed memory leak in an error retrieval caseDan Fandrich
2011-03-17connection setup: if HTTP is disabled asking for HTTP proxy is badDaniel Stenberg
2011-03-16scan-build warningDaniel Stenberg
Value stored to 'len' is never read
2011-03-16ldap_recv: check return code from ldap_get_dn_berDaniel Stenberg
2011-03-16compiler warnings fixedDaniel Stenberg
Use (void)[variable] to inhibit unused argument/variables warnings.
2011-03-15SMTP-multi: non-blocking connectBen Noordhuis
Use Curl_ssl_connect_nonblocking() when upgrading the connection to TLS/SSL while using the multi interface.
2011-03-15SMTP in multi mode: use Curl_ssl_connect_nonblocking() when connecting.Ben Noordhuis
2011-03-15buildfix: spell define correctlyDaniel Stenberg
2011-03-15nss: do not ignore value of CURLOPT_SSL_VERIFYPEERKamil Dudka
When NSS-powered libcurl connected to a SSL server with CURLOPT_SSL_VERIFYPEER equal to zero, NSS remembered that the peer certificate was accepted by libcurl and did not ask the second time when connecting to the same server with CURLOPT_SSL_VERIFYPEER equal to one. This patch turns off the SSL session cache for the particular SSL socket if peer verification is disabled. In order to avoid any performance impact, the peer verification is completely skipped in that case, which makes it even faster than before. Bug: https://bugzilla.redhat.com/678580
2011-03-15protocol handler cleanup: SSL awarenessDaniel Stenberg
As a follow-up to commit 8831000bc0: don't assume that the SSL powered protocol alternatives are available.
2011-03-15ldap: use the new protocol handler setupDaniel Stenberg
Use the new flags field and stop using the old protocol defines.
2011-03-14protocols: use CURLPROTO_ internallyDaniel Stenberg
The PROT_* set of internal defines for the protocols is no longer used. We now use the same bits internally as we have defined in the public header using the CURLPROTO_ prefix. This is for simplicity and because the PROT_* prefix was already used duplicated internally for a set of KRB4 values. The PROTOPT_* defines were moved up to just below the struct definition within which they are used.
2011-03-14protocol handler: added flags fieldDaniel Stenberg
The protocol handler struct got a 'flags' field for special information and characteristics of the given protocol. This now enables us to move away central protocol information such as CLOSEACTION and DUALCHANNEL from single defines in a central place, out to each protocol's definition. It also made us stop abusing the protocol field for other info than the protocol, and we could start cleaning up other protocol-specific things by adding flags bits to set in the handler struct. The "protocol" field connectdata struct was removed as well and the code now refers directly to the conn->handler->protocol field instead. To make things work properly, the code now always store a conn->given pointer that points out the original handler struct so that the code can learn details from the original protocol even if conn->handler is modified along the way - for example when switching to go over a HTTP proxy.
2011-03-14sslgen: define Curl_ssl_connect_nonblocking for non-SSLDaniel Stenberg
The non-blocking connect improvement for IMAP showed that we didn't properly define the Curl_ssl_connect_nonblocking function for non-SSL builds. Reported by: Tor Arntsen
2011-03-14mk-ca-bundle.pl: Only download if modifiedAsk Bjørn Hansen
Only download and convert the certdata to the ca-bundle.crt if Mozilla changed the data The Perl LWP module (which in a bit of a circular reference is used by mk-ca-bundle.pl) is now indirectly using this script. I made this small tweak to make it easier to automatically maintain the generated ca-bundle.crt file in version control.
2011-03-13SSH: add protocol lock directionDaniel Stenberg
Some protocols have to call the underlying functions without regard to what exact state the socket signals. For example even if the socket says "readable", the send function might need to be called while uploading, or vice versa. This is the case for libssh2 based protocols: SCP and SFTP and we now introduce a define to set those protocols and we make the multi interface code aware of this concept. This is another fix to make test 582 run properly.