Log

Author Commit Date CI Message
Alexey Ozeritsky 29af65eb 2013-04-14T15:41:44 https-client: code cleanup
Alexey Ozeritsky 902bf21e 2013-04-14T15:12:22 Merge branch 'master' of https://github.com/libevent/libevent into https
Nick Mathewson 1c3147f5 2013-04-10T18:03:16 Add a test with an active_later event at event_base_free time.
Nick Mathewson 95acdaa3 2013-04-10T17:56:54 Another tweak to https-client.c
Nick Mathewson 8a90a850 2013-04-10T13:53:44 Remove http_struct.h usage in sample/https-client.c
Nick Mathewson 2fad0f3d 2013-04-05T15:06:54 Add an environment variable (EVENT_DEBUG_MODE) to run unit tests in debug mode Not all tests currently pass with debug mode on.
Nick Mathewson 33398008 2013-04-01T11:59:26 Merge branch '21_empty_strlcpy'
Nick Mathewson 49146200 2013-03-31T14:05:26 Do not build strlcpy.c when it will have no code.
Nick Mathewson e834006b 2013-03-29T09:39:52 Merge pull request #75 from altf4/master Header update to specify evbuffer_pullup() behavior
Dan Petro cf8d1cdb 2013-03-29T09:28:35 Specify return behavior in header for evbuffer_pullup() in corner case Function returns NULL when told to pullup more data than exists
Nick Mathewson 81ea0c4c 2013-03-28T05:57:07 Merge pull request #47 from ppelleti/https HTTPS example adapted from Catalin
Nick Mathewson 1bc4a8f9 2013-03-25T21:14:10 Merge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson 773b0a5d 2013-03-25T21:12:49 Fix a typo in a comment in buffer.h. Spotted by Alt_F4
Nick Mathewson f935e215 2013-03-15T09:33:28 build test/test-script.sh on systems with a less-featureful $<
Nick Mathewson 787fd748 2013-03-15T09:33:13 Make --disable-libevent-regress work again
Alexey Ozeritsky c5887f73 2013-03-11T18:31:19 POST supported, args supported
Nate Rosenblum 9443868d 2013-03-05T11:29:33 Double-check next timeout when adding events When resuming the system from a suspended state, the ev_timeout field of a scheduled timer event may be in the past. This leads to unexpected behavior when scheduling a short-duration timer event immediately after returning from suspension, because the new event does not land on top of the timeout minheap and so the event loop (blocked on a possibly long-duration timeout) is not notified. This patch checks for this condition and, if it obtains, notifies the event loop.
Azat Khuzhin 13676535 2013-03-01T12:01:42 Test: decoding just part of string with evhttp_decode_uri_internal()
Azat Khuzhin de8101a8 2013-03-01T12:00:24 Move prototype of evhttp_decode_uri_internal() to http-internal.h Make it non static, that can be called from tests
Azat Khuzhin e1903e3a 2013-02-28T23:10:02 uri decode: changed the test for the existence of the next character Fix for 64b6eceaba1a4 More info here https://github.com/azat/libevent/commit/64b6eceaba1a40ab0b175fa9fd9329d3e978ce6e#commitcomment-2714685
Azat Khuzhin 64b6ecea 2013-02-28T17:19:44 uri decode: fix for warning "use of uninitialised value" This patch add check in evhttp_decode_uri_internal() that next 2 symbols are exists in array of chars for decoding, if don't have two next 2 symbols don't try to decode '%FF'
Patrick Pelletier 4db9da6b 2013-02-27T21:12:53 pull in wildcard matching code from cURL Now, https-client accepts both: https://ip.appspot.com/ (matching wildcard certificate) https://github.com/ (matching non-wildcard certificate) but still rejects https://www.kegel.com/ (non-matching wildcard certificate) which should match the behavior of these sites in a web browser.
Patrick Pelletier 6021cb50 2013-02-27T21:19:16 avoid sign mismatch warning in openssl_hostname_validation.c sample/openssl_hostname_validation.c: In function 'matches_common_name': sample/openssl_hostname_validation.c:80: warning: comparison between signed and unsigned integer expressions sample/openssl_hostname_validation.c: In function 'matches_subject_alternative_name': sample/openssl_hostname_validation.c:124: warning: comparison between signed and unsigned integer expressions
Patrick Pelletier 64d9f161 2013-02-27T17:16:27 use iSECPartners code to validate hostname in certificate The problem is that if you go to a website whose certificate does not match its hostname, it should fail. Try this in a web browser for https://www.kegel.com/ for example. Your web browser will say the certificate is for *.pair.com, not for www.kegel.com, and won't let you visit it without clicking through a bunch of scary warnings. However, prior to this commit, https-client was happy to fetch https://www.kegel.com/ without complaining. That is bad. Now, with this commit, it will properly complain, which is good: pelletier@chives:~/src/libevent/sample$ ./https-client https://www.kegel.com/ Got 'MatchNotFound' for hostname 'www.kegel.com' and certificate: /C=US/postalCode=15203/ST=Pennsylvania/L=Pittsburgh/street=Suite 210/street=2403 Sidney Street/O=pair Networks, Inc./OU=Provided by pair Networks, Inc./OU=PairWildcardSSL $250,000/CN=*.pair.com some request failed - no idea which one though! error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed ppelletier@chives:~/src/libevent/sample$ It will still succeed for sites with an exactly-matching certificate, such as https://github.com/ and that is also good! However, the problem is that the iSECPartners code doesn't handle wildcards, which means we reject https://ip.appspot.com/ even though it is perfectly legitimate, because we don't understand the wildcard: ppelletier@chives:~/src/libevent/sample$ ./https-client https://ip.appspot.com/ Got 'MatchNotFound' for hostname 'ip.appspot.com' and certificate: /C=US/ST=California/L=Mountain View/O=Google Inc/CN=*.appspot.com some request failed - no idea which one though! error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed ppelletier@chives:~/src/libevent/sample$ So, we need to fix this. In other words, "to be continued..."
Patrick Pelletier aacd674c 2013-02-26T00:06:50 use Debian's default root certificate location as suggested here: http://archives.seul.org/libevent/users/Feb-2013/msg00034.html although curl's acinclude.m4 reveals many other possibilities: dnl /etc/ssl/certs/ca-certificates.crt Debian systems dnl /etc/pki/tls/certs/ca-bundle.crt Redhat and Mandriva dnl /usr/share/ssl/certs/ca-bundle.crt old(er) Redhat dnl /usr/local/share/certs/ca-root.crt FreeBSD dnl /etc/ssl/cert.pem OpenBSD dnl /etc/ssl/certs/ (ca path) SUSE And none of these cover Windows :(
Patrick Pelletier 5754d96a 2013-02-25T23:43:05 better handling of OpenSSL errors
Patrick Pelletier 42d7441a 2013-02-25T23:14:26 https-client was putting newlines at 256-byte boundaries presumably this was meant to put a ">" before every line, but that isn't what it does, since evbuffer_remove is simply returning fixed-size chunks. So, when retrieving a document of more than 256 bytes (e. g. any nontrivial document), we got "> " and newlines thrown in at very arbitrary places.
Patrick Pelletier bf31fa5d 2013-02-27T16:31:17 use ${OPENSSL_LIBS} instead of -lssl -lcrypto This made the difference between segfaulting and not segfaulting for me when I run https-client, when I've built libevent using an OpenSSL in a non-standard location. In the same spirit as 1d9d5110a4aebf5833f6fd78bd0252affde0f4d0 and d70af27d0152d0a87a25127faf215604beb8ffe0.
Catalin Patulea be46c99b 2013-02-19T12:22:31 Add sample/https-client.c, an example of stacking evhttp as a client on top of bufferevent_ssl. Signed-off-by: Catalin Patulea <catalinp@google.com>
Nick Mathewson 87c56727 2013-02-26T15:22:03 Merge pull request #41 from ppelleti/winsock-errs FormatMessage for winsock errors
Patrick Pelletier c9ad3af2 2013-02-25T20:13:01 test filling up the hash table a bit
Patrick Pelletier 4ccdd53f 2013-02-25T19:02:32 use hashtable instead of linked list to cache winsock errors as discussed here: https://github.com/libevent/libevent/pull/41#issuecomment-13611817
Patrick Pelletier 2078e9b4 2013-02-14T20:14:37 make sure caching works, and we don't leak memory
Patrick Pelletier 0c6ec5d8 2013-02-07T17:20:08 use FormatMessage for winsock errors as discussed here: http://archives.seul.org/libevent/users/Feb-2013/msg00004.html
Patrick Pelletier 72965126 2013-02-07T17:06:49 a program to print out the error strings for winsock errors
Nick Mathewson 97094614 2013-02-14T14:13:11 Merge remote-tracking branch 'origin/patches-2.0'
Greg Hazel b6182042 2013-02-14T09:54:56 fix #73 and fix http_connection_fail_test to catch it
Nick Mathewson 96150dd0 2013-02-13T11:38:57 Unit test for event_remove_timer with EV_PERSIST. Patch from dcicppin on sourceforge.
Nick Mathewson 5623e803 2013-02-12T15:10:50 Make event_remove_timer behave correctly with persistent timers
Nick Mathewson 74e52db4 2013-02-11T11:25:25 Merge remote-tracking branch 'ppelleti/nmake-clean-exes'
Nick Mathewson 2863c837 2013-02-08T22:10:05 Avoid using $(top_srcdir) in TESTS. Newer automakes don't like this.
Nick Mathewson ebf278b2 2013-02-08T13:03:29 Use AC_CONFIG_HEADERS in place of AM_CONFIG_HEADERS for autmake 1.13 compat Patch from cazfi.
Nick Mathewson d670e3bd 2013-02-08T22:09:00 Merge remote-tracking branch 'origin/patches-2.0' This is an "ours" commit: I'm not taking the recent autotools changes from patches-2.0, since they'd conflict with master.
Nick Mathewson a55514ee 2013-02-08T22:08:18 Avoid using top_srcdir in TESTS-new automakes do not like this
Nick Mathewson 0c79787a 2013-02-08T22:07:43 Rename configure.in to configure.ac to appease newer autoconfs
Nick Mathewson 817ea369 2013-02-08T13:03:29 Use AC_CONFIG_HEADERS in place of AM_CONFIG_HEADERS for autmake 1.13 compat Patch from cazfi.
Patrick Pelletier a452811e 2013-01-30T16:07:30 "buffer" spelling
Patrick Pelletier 974bfa07 2013-02-07T17:14:18 remove all exes on "make clean", not just regress.exe
Nick Mathewson 29015427 2013-02-05T15:09:31 Merge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson 0a5eb2eb 2013-02-05T15:07:32 Fix a locking error in bufferevent_socket_get_dns_error. Patch from Ka-Hing Cheung.
Nick Mathewson 19583a5f 2013-02-04T13:50:58 Merge pull request #30 from ppelleti/valgrind-epoll avoid valgrind false positive by zeroing epoll_event
Nick Mathewson 2ecd8947 2013-02-04T13:49:08 Merge pull request #39 from azat/fix-http-for-ipv6 Fix ipv6 support for http. When URL contain domain, not IP address.
Nick Mathewson f0a68a25 2013-02-04T13:33:10 Merge pull request #37 from ppelleti/fix-indentation fix some hinky indentation in evhttp_make_request
Nicholas Heath 0dda56a4 2013-02-03T19:08:37 Preliminary changes for Minix3.
Azat Khuzhin 9ec88bdf 2013-01-27T02:17:02 Add regress test ipv6_for_domain. Written for commit 71e709c7829275a594f767b27468b1b52e8b5bb9. Fix ipv6 support for http. When URL contain domain, not IP address.
Nick Mathewson 42aaf4dc 2013-01-23T16:55:09 Implement EVUTIL_ERR_IS_EAGAIN on windows.
Azat Khuzhin 71e709c7 2013-01-23T02:45:32 Fix ipv6 support for http. When URL contain domain, not IP address. Before this patch socket created before domain was resolved, and it always create with AF_INET (ipv4), but we must create socket only after domain was resolved to understad which protocol family have domain address. Thank to Patrick Pelletier, who found this bug.
Nick Mathewson f324b1df 2013-01-22T17:10:07 Merge remote-tracking branch 'origin/patches-2.0'
Gyepi Sam c322c207 2013-01-22T16:59:07 Fix a mistake in evbuffer_remove() arguments in example http server code (commit message by nickm)
Patrick Pelletier 80e220ee 2013-01-18T20:25:41 fix some hinky indentation in evhttp_make_request
Volker Lendecke 0c2bacca 2013-01-17T15:01:32 Fix typo : Dispatching instead of Dispaching
Nick Mathewson bf7a0ff2 2013-01-11T16:37:34 When EWOULDBLOCK is not EAGAIN, treat it as equivalent to it Acording to http://stackoverflow.com/questions/7003234/which-systems-define-eagain-and-ewouldblock-as-different-values there are some older unixes that distinguish these error.s
Sebastian Hahn b452a434 2012-12-31T18:29:56 Fix harmless clang enum warning
Sebastian Hahn 9e8cdf3d 2012-09-21T08:38:56 Fix comment to refer to sample/include.am correctly
Nick Mathewson 21c962e0 2012-12-20T11:50:23 Merge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson 0a822a64 2012-12-20T11:48:05 Avoid double-close on getsockname error in evutil_ersatz_socketpair Found by coverity; CID 739726
Nick Mathewson 69db2610 2012-12-20T11:47:09 Avoid leaking fds on evconnlistener with no callback set There's no way to retrieve an fd from an evconnlistener whose callback has been cleared, so we had better close any such fd. Found by coverity; CID 739725.
Nick Mathewson 49905ac3 2012-12-11T12:53:09 Fix cut-and-paste err in whatsnew-2.1
Patrick Pelletier 809586a9 2012-11-28T00:20:13 minor documentation typos
Nick Mathewson 5cc7806c 2012-12-04T12:32:26 Merge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson 7e45739e 2012-12-04T12:01:25 Fix compilation with WIN32_HAVE_CONDITION_VARIABLES enabled Reported by Xiuqiang Jiang
Nick Mathewson f5b3ff20 2012-11-19T10:58:04 Merge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson f7d92c63 2012-11-19T10:56:16 Increment version to 2.0.21-stable-dev
Nick Mathewson 40b95ae2 2012-11-19T10:53:25 Increment version to 2.1.2-alpha-dev
Nick Mathewson c1420690 2012-11-19T09:07:13 Fix a bug when running "make verify" out-of-tree
Nick Mathewson dc0287c4 2012-11-18T19:32:41 Clean up and clarify a little more documentation
Nick Mathewson 060c409e 2012-11-18T19:32:11 Make the argument to bufferevent_get_priority const
Nick Mathewson 96584866 2012-11-18T18:59:19 Avoid defining recommended functions in terms of deprecated ones
Nick Mathewson 3db0737a 2012-11-18T11:25:13 Update "what's new in Libevent 2.1"
Nick Mathewson ffdad1dc 2012-11-18T10:53:52 Bump versions to 2.1.2-alpha
Nick Mathewson 143cb613 2012-11-18T10:53:26 Update changelog for 2.1.2-alpha
Nick Mathewson 5af4caa9 2012-11-18T02:01:26 Update ChangeLog-2.0
Nick Mathewson 15f989ad 2012-11-18T01:44:09 Merge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson 173d7823 2012-11-18T01:40:33 Fix a gcc warning in rtrim test
Nick Mathewson f2703b2e 2012-11-18T01:40:13 Fix a warning when building without threading.
Nick Mathewson 64177777 2012-11-18T01:39:10 Increment libtool version for 2.0.21 too
Nick Mathewson 0ee10fdf 2012-11-18T01:38:07 Increment version to 2.0.21-stable
Nick Mathewson 1c5517c9 2012-11-18T01:36:33 Changelog for 2.0.21-stable
Nick Mathewson f38e0788 2012-11-18T01:36:03 Make ssl version check in unit tests work
Patrick Pelletier 1258614f 2012-11-16T21:38:04 avoid valgrind false positive by zeroing epoll_event
Nick Mathewson 9dee36bc 2012-11-16T18:34:43 Make bufferevent_set_timeouts(bev, NULL, NULL) have plausible semantics
Nick Mathewson e3b2e086 2012-11-16T16:15:03 Add an event_remove_timer() to remove timer on an event without deleting it
Nick Mathewson 5a9a0141 2012-11-16T16:17:07 Fix a couple of compile warnings in the unit tests
Nick Mathewson 1fda4928 2012-11-16T12:06:40 Merge remote-tracking branch 'origin/patches-2.0'
Nick Mathewson e3cccf38 2012-11-16T11:55:27 Avoid crash when event_pending() called with no event_base set on event Instead, give a warning and return 0. Reported by Antony Dovgal on github as https://github.com/libevent/libevent/issues/19
Nick Mathewson 7afbd602 2012-11-16T11:51:42 Use EVUTIL_SOCKET_ERROR() wrapper to save/restor errno in evhttp_connection_fail_
Nick Mathewson 29fea33a 2012-11-16T11:49:46 Merge remote-tracking branch 'ppelleti/preserve-errno'
Jay R. Wren 4f4d0c93 2012-10-10T13:16:02 add evhttp_request_get_response_code_line This is needed to be able to read the response code line especially when acting as an http client using evhttp_make_request. (patched by nickm to make the return value const)
Nick Mathewson 61b93af5 2012-11-16T11:41:59 Move evutil_rtrim_lws_ to evutil.c where it belongs
Nick Mathewson c6ff3812 2012-11-16T11:38:53 Remove internal ws from multiline http headers correctly According to RFC2616: All linear white space, including folding, has the same semantics as SP. A recipient MAY replace any linear white space with a single SP before interpreting the field value or forwarding the message downstream.