History log of /libevent-2.1.12/bufferevent-internal.h (Results 1 – 25 of 86)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: release-2.2.1-alpha, release-2.1.12-stable, release-2.1.11-stable, release-2.1.10-stable
# 5362f749 24-Feb-2019 Azat Khuzhin <[email protected]>

Match definition with prototype for bufferevent_socket_set_conn_address_fd_()

Fixes: #772
Fixes: b29207dc ("Eliminate fd conversion warnings and introduce EVUTIL_INVALID_SOCKET (windows)")
(cherry p

Match definition with prototype for bufferevent_socket_set_conn_address_fd_()

Fixes: #772
Fixes: b29207dc ("Eliminate fd conversion warnings and introduce EVUTIL_INVALID_SOCKET (windows)")
(cherry picked from commit 5722e13b871063f13912a6ccafe4c94e1b3b41c5)

show more ...


Revision tags: release-2.1.9-beta, release-2.0.23-beta
# 4215c003 12-Feb-2018 Greg Hazel <[email protected]>

Fix evhttp_connection_get_addr() fox incomming http connections

Install conn_address of the bufferevent on incomping http connections
(even though this is kind of subsytem violation, so let's fix it

Fix evhttp_connection_get_addr() fox incomming http connections

Install conn_address of the bufferevent on incomping http connections
(even though this is kind of subsytem violation, so let's fix it in a
simplest way and thinkg about long-term solution).

Fixes: #510
Closes: #595 (pick)
(cherry picked from commit 367cd9e5c2b8e3f9b8dbed40bfe8a0ed79285c36)

show more ...


# 56faf02b 13-Apr-2017 Dominic Chen <[email protected]>

bufferevent: refactor to use type check macros

(cherry picked from commit 92cc0b9c3db38088f79c5d1e432c429fbc366968)


# 9806b126 13-Mar-2017 Azat Khuzhin <[email protected]>

Merge branch 'cmake-missing-bits'

This patchset adds next missing things (in compare to autotools):
- pkgconfig
- event_pthreads/event_openssl
- compile shared/static libraries always

And some fixe

Merge branch 'cmake-missing-bits'

This patchset adds next missing things (in compare to autotools):
- pkgconfig
- event_pthreads/event_openssl
- compile shared/static libraries always

And some fixes, because it will not build after fixing other things:
- export missing symbols for cmake (-fvisibility=hidden)

* cmake-missing-bits:
cmake: support visibility for AppleClang too
cmake: fix export absolute path and relative path and cleanup a bit
cmake: generate and install pkgconfig files
cmake: build SHARED and STATIC libraries (like autoconf does)
cmake: add missing event_openssl/event_pthreads libraries
Export symbols for -fvisibility=hidden (under cmake)

Refs: #246
(cherry picked from commit 489991a2b2628ba1ff4e6879b9f67ec35d224c38)

show more ...


Revision tags: release-2.1.8-stable, release-2.1.7-rc, release-2.1.6-beta
# 86dfd2ce 21-Mar-2016 Azat Khuzhin <[email protected]>

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
respons

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

show more ...


# 3c1f58f5 05-Nov-2015 Azat Khuzhin <[email protected]>

be: introduce bufferevent_generic_adj_existing_timeouts_()

And use it in openssl/sock layers to avoid copy-pasting it's variants.


# b2c68bc2 26-Aug-2015 Ed Schouten <[email protected]>

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 19-Aug-2015 Azat Khuzhin <[email protected]>

be: include all variations of headers for sockaddr_in6 struct

Fixes: c42bc6b279fd7cd4bc9b04c86a12e2ec5512cce1 ("be: fix sockaddr_in6 type
definition for win32")
Fixes: e04555155816306f23829a15b74766

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

show more ...


# c42bc6b2 19-Aug-2015 Azat Khuzhin <[email protected]>

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/

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

show more ...


Revision tags: release-2.0.22-stable, release-1.4.15-stable, release-2.1.5-beta
# 38896124 02-Dec-2014 Azat Khuzhin <[email protected]>

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
socka

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).

show more ...


# e5615aa7 15-Nov-2014 Azat Khuzhin <[email protected]>

be: replace conn_address by full struct instead of pointer


# 8bb38425 15-Nov-2014 Azat Khuzhin <[email protected]>

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

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.

show more ...


# 1ed6718d 06-May-2015 Mark Ellzey <[email protected]>

expose bufferevent_incref/decref (with fewer modifications)


Revision tags: release-2.1.4-alpha
# 4c8ebcd3 24-Dec-2013 Nick Mathewson <[email protected]>

Remove unneeded declaration in bufferevent-internal.h


# 4dd3abd4 24-Dec-2013 Nick Mathewson <[email protected]>

Make bufferevent_trigger_nolock_() inline

Since most of its callers are using constant EV_READ or EV_WRITE, and
using constant 0 as its argument, this should eliminate most of the
overhead for this

Make bufferevent_trigger_nolock_() inline

Since most of its callers are using constant EV_READ or EV_WRITE, and
using constant 0 as its argument, this should eliminate most of the
overhead for this function in the fast case.

show more ...


# bd419471 05-Dec-2013 Ondřej Kuzník <[email protected]>

Clarifications in response to merge req. comments


# a7384c78 03-Dec-2013 Ondřej Kuzník <[email protected]>

Add an option to trigger bufferevent event callbacks


# 61ee18b8 03-Dec-2013 Ondřej Kuzník <[email protected]>

Add an option to trigger bufferevent I/O callbacks


# 31db8a02 23-May-2013 Maxime Henrion <[email protected]>

Fix a double close() bug in evhttp when the underlying bufferevent uses BEV_OPT_CLOSE_ON_FREE.


Revision tags: release-2.1.3-alpha
# a800b913 26-Apr-2013 Nick Mathewson <[email protected]>

More documentation for finalization feature


# 4ea4c6a9 10-Apr-2013 Nick Mathewson <[email protected]>

Remove bufferevent_del_generic_timeout_cbs as now unused


# 02fbf687 09-Apr-2013 Nick Mathewson <[email protected]>

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
fi

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.

show more ...


Revision tags: release-2.1.2-alpha, release-2.0.21-stable, release-2.0.20-stable, release-2.0.19-stable
# a4079aa8 06-Apr-2012 Nick Mathewson <[email protected]>

Replace more deferred_cb names with event_callback


# ae2b84b2 06-Apr-2012 Nick Mathewson <[email protected]>

Replace deferred_cbs with event_callback-based implementation.


# 3aa44159 09-Apr-2012 Nick Mathewson <[email protected]>

Tweak the new evutil_weakrand_() code

Make its state actually get seeded.

Document it more thoroughly.

Turn its state into a structure.

Fix a bug in evutil_weakrand_range_() where it could return

Tweak the new evutil_weakrand_() code

Make its state actually get seeded.

Document it more thoroughly.

Turn its state into a structure.

Fix a bug in evutil_weakrand_range_() where it could return the top of
the range.

Change its return type to ev_int32_t.

Add a quick unit test to make sure that the value of
evutil_weakrand_range_() is in range.

show more ...


1234