Branch :
| Author | Commit | Date | CI | Message |
|---|---|---|---|---|
| 86dfd2ce | 2016-03-21 17:09:17 | be_sock: cancel in-progress dns requests Before this patch we didn't have such functionality and this can cause some issues when we are cancelling HTTP request while after this we will get a response/timeout from the NS and in this case error_cb will be called and can damage newly started HTTP request. We could also have problems with connect, but we don't have them since we closes the fd in HTTP layer. This is not so good that this is done in be_sock, but it is internal, so we can change without pain. Plus I don't like that callback-via-evutil, but since we have event_extra we need do like that. And after this patch the following tests doesn't report leaks: $ valgrind --leak-check=full --show-reachable=yes --track-fds=yes --error-exitcode=1 regress --no-fork http/cancel.. ... ==10469== FILE DESCRIPTORS: 2309 open at exit. ... ==10469== HEAP SUMMARY: ==10469== in use at exit: 0 bytes in 0 blocks ==10469== total heap usage: 33,846 allocs, 33,846 frees, 4,617,651 bytes allocated ==10469== ==10469== All heap blocks were freed -- no leaks are possible v2: do under lock v3: reset dns request v4: ignore EVUTIL_EAI_CANCEL in regular callback | ||
| 3c1f58f5 | 2015-11-05 17:45:09 | be: introduce bufferevent_generic_adj_existing_timeouts_() And use it in openssl/sock layers to avoid copy-pasting it's variants. | ||
| b2c68bc2 | 2015-08-26 09:45:23 | Add missing include of <netinet/in.h>. POSIX states that sockaddr_in6 should be declared in <netinet/in.h>. By including this header, the code now builds on FreeBSD and CloudABI. | ||
| c2122919 | 2015-08-19 23:27:51 | be: include all variations of headers for sockaddr_in6 struct Fixes: c42bc6b279fd7cd4bc9b04c86a12e2ec5512cce1 ("be: fix sockaddr_in6 type definition for win32") Fixes: e04555155816306f23829a15b747664a57330c28 ("Merge branch 'reuse-conn_address-on-retry-v11'") CI: https://ci.appveyor.com/project/nmathewson/libevent/build/2.1.5.109 Tested: manually | ||
| c42bc6b2 | 2015-08-19 22:52:22 | be: fix sockaddr_in6 type definition for win32 bufferevent-internal.h:217:23: error: field 'in6' has incomplete type struct sockaddr_in6 in6; ^ CI: https://ci.appveyor.com/project/nmathewson/libevent/build/2.1.5.108 | ||
| 38896124 | 2014-12-02 14:24:19 | be: replace sockaddr_storage with sockaddr_in6 for conn_address We need only ipv6/ipv4 for connect in bufferevent, and since sockaddr_storage is pretty big (128 bytes) it will be better to use sockaddr_in6 here (it will fit ipv4 too). | ||
| e5615aa7 | 2014-11-16 00:29:19 | be: replace conn_address by full struct instead of pointer | ||
| 8bb38425 | 2014-11-15 21:46:11 | bufferevent: move conn_address out from http into bufferevent In http the only case when when we could store it is when we already connected, *but* if we are doing request using domain name, then we need to do request to nameserver to get IP address, and this is handled by bufferevent. So when we have IP address (from nameserver) and don't have connection to this IP address, we could already cache it to avoid extra DNS requests (since UDP is slow), and we can't do this from http layer, only from bufferevent. | ||
| 1ed6718d | 2015-05-06 14:56:31 | expose bufferevent_incref/decref (with fewer modifications) | ||
| 4c8ebcd3 | 2013-12-24 15:02:02 | Remove unneeded declaration in bufferevent-internal.h |