Branch :
| Author | Commit | Date | CI | Message |
|---|---|---|---|---|
| 0fa107d8 | 2013-07-02 16:01:02 | Added event_base_get_num_events() | ||
| 90a8c539 | 2013-06-10 15:17:34 | Merge remote-tracking branch 'origin/patches-2.0' | ||
| 387e6b90 | 2013-06-10 15:16:13 | Merge remote-tracking branch 'public/pr/79' into patches-2.0 | ||
| 36ab0721 | 2013-06-10 10:47:35 | Merge branch '21_evdns_log_debug' | ||
| 0b05aa65 | 2013-06-10 10:47:28 | Merge remote-tracking branch 'origin/patches-2.0' | ||
| 6e496961 | 2013-06-10 10:38:12 | Document that arc4random is not a great cryptographic PRNG. | ||
| e35b5408 | 2013-06-10 10:33:56 | When we seed from /proc/sys/kernel/random/uuid, count it as success Found by Joseph Spadavecchia | ||
| 363388a0 | 2013-05-29 14:19:14 | restore the comment | ||
| f8d7df85 | 2013-05-11 03:53:11 | Fix SEGFAULT after evdns_base_resume if no nameservers installed. If there is no nameservers installed, using evdns_base_nameserver_ip_add(), than evdns_base_resume() will SEGFAULT, because of NULL dereference in evdns_requests_pump_waiting_queue() Conflicts: evdns.c | ||
| e1766a1b | 2013-05-29 16:26:50 | Actually use the log facility for reporting evdns problems. Fixes issue #63. Also refactors the evdns logging and log backend a bit, so that it wastes a little less code. | ||
| c307a250 | 2013-05-29 13:32:47 | Merge remote-tracking branch 'origin/patches-2.0' | ||
| e826f19e | 2013-05-29 13:30:56 | Use windows vsnprintf fixup logic on all windows environments Previously I'd relied on mingw to provide a vsnprintf with a conformant return value. But it appears that some mingw environments don't do that. | ||
| 0ac2ed65 | 2013-05-28 11:30:14 | Merge remote-tracking branch 'origin/pr/62' | ||
| 3dc2d8ab | 2013-05-28 10:14:51 | Remove a debugging assert that should not have been left in | ||
| dbc9cd4d | 2013-05-23 16:31:53 | Fix locking in bufferevent_get_options_(). | ||
| 31db8a02 | 2013-05-23 16:29:17 | Fix a double close() bug in evhttp when the underlying bufferevent uses BEV_OPT_CLOSE_ON_FREE. | ||
| 1f29b18f | 2013-05-20 12:30:40 | Avoid redundant syscall if making a socket cloexec twice I got the idea from Maxime's last patch. | ||
| 42c03da9 | 2013-05-20 12:23:53 | Avoid redundant syscall to make a nonblocking socket nonblocking | ||
| 9b5a527f | 2013-05-16 16:38:39 | If evsel->del() fails, don't leave the evmap in an inconsistent state. This fixes assertion failures in cases where epoll() fails with EBADF -- the root cause for which is as of yet unknown. It seems something (OpenSSL?) is closing the file descriptor under our feet. | ||
| 7e876df7 | 2013-05-13 19:50:30 | Fix dns/leak_resume_send_err test. Because we don't cancel request, and want our callback to recieve DNS_ERR_SHUTDOWN, we use deferred callback, and there was - one extra malloc(), @see reply_schedule_callback() - and one missing free @see request_finished() (req->handle->pending_cb = 1) than we don't need to count in testleak_cleanup() So just decrement allocated_chunks to 2, like we already take care about it. | ||
| 1cd9ff59 | 2013-05-13 19:20:42 | Add tests for evdns_base_resume(). - leak_resume - leak_cancel_and_resume - leak_resume_send_err - leak_cancel_and_resume_send_err | ||
| 14971a83 | 2013-05-11 03:53:11 | Fix SEGFAULT after evdns_base_resume if no nameservers installed. If there is no nameservers installed, using evdns_base_nameserver_ip_add(), than evdns_base_resume() will SEGFAULT, because of NULL dereference in evdns_requests_pump_waiting_queue() | ||
| 8ab612e3 | 2013-05-11 22:21:30 | Whoops. It is gdi.lib, not gdi32.lib. (github issue #61) | ||
| d3d999a1 | 2013-05-10 20:22:56 | Missed lock acquire/release in event_base_cancel_single_callback_() Call backtrace: ... event_queue_remove_active() event_callback_cancel_nolock_() event_base_cancel_single_callback_() event_base_free_() event_base_free() ... Fix for e9ebef83 | ||
| 5ba8ab76 | 2013-05-10 21:38:26 | Fix test compilation with nmake: add the gdi.lib dependency ACK: efekty | ||
| ef820dbf | 2013-05-07 10:03:28 | Merge remote-tracking branch 'origin/patches-2.0' | ||
| 5c710c03 | 2013-05-06 18:15:03 | Checking request nameserver for NULL, before using it. | ||
| f8d80a28 | 2013-05-01 23:12:08 | Bump version to 2.1.3-alpha-dev | ||
| 85a40040 | 2013-05-01 13:37:57 | Add regress_finalize to makefile.nmake | ||
| 57cbfcd6 | 2013-05-01 10:28:42 | Set a release date | ||
| 5bc290e2 | 2013-05-01 10:04:08 | Make http/connection_retry off-by-default | ||
| f2925d78 | 2013-04-30 22:57:25 | Fix a windows compilation regression This is github issue #57; reported by "efekty". I assume the compiler is MSVC. | ||
| 9e3a99ca | 2013-04-30 20:09:52 | Fix a bug in fixing a bug in out-of-tree test-dumpevents | ||
| b48c7bf8 | 2013-04-30 14:40:50 | Make regress_finalize work with malloc replacement disabled | ||
| cbfc35f6 | 2013-04-30 14:26:47 | Fix some out-of-tree build bugs | ||
| dd4be76f | 2013-04-30 12:02:49 | Incremement version to 2.1.3-alpha | ||
| c6561efb | 2013-04-30 12:02:19 | Merge remote-tracking branch 'origin/patches-2.0' | ||
| d9917c49 | 2013-04-30 11:52:55 | Add acknowledgements to readme | ||
| e6cdd17b | 2013-04-30 11:44:39 | Start editing the changelog for 2.1.3-alpha | ||
| 8415b69d | 2013-04-30 10:22:40 | Mark the finalize stuff as experiemental in case it needs to change | ||
| 959c1428 | 2013-04-30 11:42:53 | Start a changelog for Libevent 2.0.22-stable | ||
| 920a5e69 | 2013-04-26 19:15:50 | Clarify an important point about event_base_foreach_event() | ||
| 702c9aa4 | 2013-04-26 19:14:05 | Fix a bug in the new main/event_foreach test It wasn't making sure that the events weren't internal. | ||
| d5967397 | 2013-04-26 17:51:33 | More unit tests for initializing common timeouts. Try with: misformed usecs in inputs, and with initializing common timeouts from other common timeouts. | ||
| f09629ea | 2013-04-26 17:46:33 | A test for event_get_assignment() | ||
| 30ea2910 | 2013-04-26 17:28:46 | Unit tests for event_base_gettimeofday_cached() and event_base_update_cache_time() | ||
| 0b096efe | 2013-04-26 13:50:22 | New tests for event_base_foreach_event() Our dump-events code had exercised this a bit, but only via the nonlocking backend. Also, nothing was checking the "Search for a specific event" code. | ||
| a153874d | 2013-04-26 13:49:45 | New test for active_later->active transition on event_active When event_active is called, an active_later event is supposed to become active now. We had lacked a test for that. | ||
| 3555befd | 2013-04-26 12:27:05 | Merge branch '21_deadlock_fix_v2' | ||
| 25aac697 | 2013-04-26 12:00:17 | Remove a no-longer-true XXXX comment. | ||
| 5d11f4f3 | 2013-04-26 11:57:40 | Make the event_finalize* functions return an error code | ||
| a800b913 | 2013-04-26 11:36:43 | More documentation for finalization feature | ||
| 4ea4c6a9 | 2013-04-10 13:44:23 | Remove bufferevent_del_generic_timeout_cbs as now unused | ||
| e9ebef83 | 2013-04-09 21:14:52 | Always run pending finalizers when event_base_free() is called There was actually a bug in the original version of this: it tried to run the finalizers after (potentially) setting current_base to NULL; but those finalizers could themselves (potentially) be invoking stuff that needed to know about the current event_base. So the right time to do it is _before_ clearing current_base. | ||
| 02fbf687 | 2013-04-09 18:16:13 | Use finalization feature so bufferevents can avoid deadlocks Since the bufferevents' events are now EV_FINALIZE (name pending), they won't deadlock. To clean up properly, though, we must use the finalization feature. This patch also split bufferevent deallocation into an "unlink" step that happens fast, and a "destruct" step that happens after finalization. More work is needed: there needs to be a way to specify a finalizer for the bufferevent's argument itself. Also, this finalizer business makes lots of the reference counting we were doing unnecessary. Also, more testing is needed. | ||
| 9d893c97 | 2013-04-09 18:15:08 | Add some verbose notes to bufferevent unit tests | ||
| 8eedeabe | 2013-03-28 14:13:19 | Implement event_finalize() and related functions to avoid certain deadlocks | ||
| b1b054f0 | 2013-04-26 12:12:08 | Make all tests pass under EVENT_DEBUG_MODE=1 The fix was easy: the tests that were failing were those tests that also enabled debug mode themselves. So, let them know when EVENT_DEBUG_MODE is on, so they won't do that. | ||
| b3aca5d9 | 2013-04-25 15:13:24 | Merge branch '21_http_error_cb_squashed' | ||
| 54cc8005 | 2013-03-21 17:01:31 | Drop extra header http_struct.h from regress_http.c | ||
| 862c217a | 2013-03-22 14:35:47 | Add test for EVREQ_HTTP_REQUEST_CANCEL into http_cancel_test() | ||
| 7b077194 | 2013-03-21 13:55:40 | Add new error_cb for actual reporting of HTTP request errors. It is useful to know why you callback called with NULL (i.e. it failed), for example if you set max_body with evhttp_connection_set_max_body_size() you must know that it failed because of body was longer than this size. (Commit message tweaked by Nick) | ||
| ed26561b | 2013-04-25 14:48:56 | Fix another warning introduced in 0c6ec5d8 | ||
| eeb700ce | 2013-04-25 14:46:46 | Fix a warning introduced in 0c6ec5d8 | ||
| 6b94ffce | 2013-04-25 13:54:19 | Merge remote-tracking branch 'origin/patches-2.0' Conflicts: configure.ac | ||
| 66dacfa2 | 2013-04-25 13:43:49 | Merge remote-tracking branch 'origin/pr/36' into patches-2.0 | ||
| eb6b0c1f | 2013-04-25 10:47:16 | Merge branch '21_evdns_disable_when_inactive' | ||
| 6b7fa620 | 2013-03-27 20:15:46 | evdns: New flag to make evdns not prevent the event loop from exiting Here is the brief description of problem: When you are use evdns to resolve domains to IP adresses (see ./sample/dns-example) you loop never returns from event_base_dispatch(), and because of this the program will never terminated. Because existing programs may be depending on the old behavior, we only apply the fix when evdns_base_new() is created with a new flag - EVDNS_BASE_DISABLE_WHEN_INACTIVE. (Commit message edited by Nick while squashing the branch.) | ||
| 5e6fa2a3 | 2013-04-24 13:23:15 | event_base_update_cache_time should be a no-op if the loop isn't running | ||
| 1c3147f5 | 2013-04-10 18:03:16 | Add a test with an active_later event at event_base_free time. | ||
| 95acdaa3 | 2013-04-10 17:56:54 | Another tweak to https-client.c | ||
| 8a90a850 | 2013-04-10 13:53:44 | Remove http_struct.h usage in sample/https-client.c | ||
| 2fad0f3d | 2013-04-05 15: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. | ||
| 33398008 | 2013-04-01 11:59:26 | Merge branch '21_empty_strlcpy' | ||
| 49146200 | 2013-03-31 14:05:26 | Do not build strlcpy.c when it will have no code. | ||
| e834006b | 2013-03-29 09:39:52 | Merge pull request #75 from altf4/master Header update to specify evbuffer_pullup() behavior | ||
| cf8d1cdb | 2013-03-29 09:28:35 | Specify return behavior in header for evbuffer_pullup() in corner case Function returns NULL when told to pullup more data than exists | ||
| 81ea0c4c | 2013-03-28 05:57:07 | Merge pull request #47 from ppelleti/https HTTPS example adapted from Catalin | ||
| 1bc4a8f9 | 2013-03-25 21:14:10 | Merge remote-tracking branch 'origin/patches-2.0' | ||
| 773b0a5d | 2013-03-25 21:12:49 | Fix a typo in a comment in buffer.h. Spotted by Alt_F4 | ||
| f935e215 | 2013-03-15 09:33:28 | build test/test-script.sh on systems with a less-featureful $< | ||
| 787fd748 | 2013-03-15 09:33:13 | Make --disable-libevent-regress work again | ||
| 9443868d | 2013-03-05 11: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. | ||
| 13676535 | 2013-03-01 12:01:42 | Test: decoding just part of string with evhttp_decode_uri_internal() | ||
| de8101a8 | 2013-03-01 12:00:24 | Move prototype of evhttp_decode_uri_internal() to http-internal.h Make it non static, that can be called from tests | ||
| e1903e3a | 2013-02-28 23: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 | ||
| 64b6ecea | 2013-02-28 17: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' | ||
| 4db9da6b | 2013-02-27 21: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. | ||
| 6021cb50 | 2013-02-27 21: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 | ||
| 64d9f161 | 2013-02-27 17: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..." | ||
| aacd674c | 2013-02-26 00: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 :( | ||
| 5754d96a | 2013-02-25 23:43:05 | better handling of OpenSSL errors | ||
| 42d7441a | 2013-02-25 23: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. | ||
| bf31fa5d | 2013-02-27 16: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. | ||
| be46c99b | 2013-02-19 12: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> | ||
| 87c56727 | 2013-02-26 15:22:03 | Merge pull request #41 from ppelleti/winsock-errs FormatMessage for winsock errors | ||
| c9ad3af2 | 2013-02-25 20:13:01 | test filling up the hash table a bit | ||
| 4ccdd53f | 2013-02-25 19:02:32 | use hashtable instead of linked list to cache winsock errors as discussed here: https://github.com/libevent/libevent/pull/41#issuecomment-13611817 | ||
| 2078e9b4 | 2013-02-14 20:14:37 | make sure caching works, and we don't leak memory | ||
| 0c6ec5d8 | 2013-02-07 17:20:08 | use FormatMessage for winsock errors as discussed here: http://archives.seul.org/libevent/users/Feb-2013/msg00004.html |