3 Commits

Author SHA1 Message Date
Nick Mathewson
8dec59bb35 Use freeze operations to prevent shenanegans on bufferevent pair evbuffers.
svn:r1167
2009-04-13 03:07:17 +00:00
Nick Mathewson
0b47b125cf Add a new EVUTIL_UPCAST macro so that I do not need to keep figuring out the right offsetof magic over and over.
svn:r1160
2009-04-12 22:02:54 +00:00
Nick Mathewson
23085c9247 Add a linked-pair abstraction to bufferevents.
The new bufferevent_pair abstraction works like a set of buferevent_sockets
connected by a socketpair, except that it doesn't require a socketpair,
and therefore doesn't need to get the kernel involved.

It's also a good way to make sure that deferred callbacks work.  It's a good
use case for deferred callbacks: before I implemented them, the recursive
relationship between the evbuffer callback and the read callback would
make the unit tests overflow the stack.

svn:r1152
2009-04-10 15:01:31 +00:00