include


Log

Author Commit Date CI Message
Nick Mathewson c8b0fe4a 2009-08-16T19:22:10 Define evhttp_del_accept_socket [Patch from David Reiss] svn:r1423
Nick Mathewson 6c53334c 2009-08-16T19:22:04 Define evhttp_{bind,accept}_socket_with_handle [Patch from David Reiss] svn:r1422
Nick Mathewson 4bcd5646 2009-08-16T19:21:57 Make evhttp_bound_socket visible, and provide an accessor to its fd Declare the previously private struct evhttp_bound_socket in event2/http.h as an opaque struct. Implement evhttp_bound_socket_get_fd, which returns the file descriptor of an evhttp_bound_socket. [Patch from David Reiss] svn:r1421
Nick Mathewson 0755833e 2009-08-16T19:21:50 Minor documentation fixes [Patch from David Reiss] svn:r1420
Nick Mathewson f2282398 2009-08-14T20:07:35 New function to put an SSL bufferevent into a renegotiating state. svn:r1418
Nick Mathewson 800f9aa6 2009-08-09T20:17:29 When bufferevent_socket_connect is called with no address, assume that our existing fd is connecting and put the connection into "connecting" mode. svn:r1411
Nick Mathewson 8a99083f 2009-08-07T17:16:52 Add an evbuffer_search_range() to search a bounded range of a buffer This can be handy when you have one search to find the end of a header section, and then you want to find a substring within the header section without looking at the body. svn:r1410
Nick Mathewson d4134772 2009-07-31T17:35:42 Refactor evbuffer_readln() into a search-for-eol function and an extract-line function. svn:r1404
Nick Mathewson 7c688dd9 2009-07-31T14:41:45 New function to expose bufferevent.enabled svn:r1401
Nick Mathewson 621aafd2 2009-07-30T22:11:23 Export sockaddr comparison functionality. svn:r1400
Nick Mathewson eecefc50 2009-07-30T20:41:00 Add a function to extract the SSL object from a bufferevent_openssl. svn:r1395
Nick Mathewson 7c20a6ae 2009-07-30T17:01:21 Export an ev_socklen_t. svn:r1391
Nick Mathewson 75fe762e 2009-07-30T17:00:56 Accessor function to get a listener's associated fd svn:r1390
Nick Mathewson 72ea534f 2009-07-28T19:41:57 Export evutil_str[n]casecmp as evutil_ascii_str[n]casecmp. svn:r1387
Nick Mathewson 5b5b880b 2009-07-28T19:41:39 Various MSVC cleanups from Brodie Thiesfield. svn:r1385
Nick Mathewson 709c21c4 2009-07-28T04:03:57 Bufferevent support for openssl. This code adds a new Bufferevent type that is only compiled when the openssl library is present. It supports using an SSL object and an event alert mechanism, which can either be an fd or an underlying bufferevent. There is still more work to do: the unit tests are incomplete, and we need to support flush and shutdown much better. Sometimes events are generated needlessly: this will hose performance. There's a new encrypting proxy in sample/le-proxy.c. This code has only been tested on OSX, and nowhere else. svn:r1382
Nick Mathewson 670658eb 2009-07-21T18:32:57 Correct the signatures for evdns_configure_windows_nameservers(), now that it is exposed. svn:r1369
Nick Mathewson e8400a43 2009-07-20T14:55:35 Rename encode_int(64) to avoid polluting the global namespace. They're now called evtag_encode_int(64). The old names are available as macros in event2/tag_compat.h. Also, add unit tests for encode/decode_int64. svn:r1365
Nick Mathewson 1fb2e818 2009-07-17T21:47:45 Use a uniform strategy when a function is not working: do not expose it. Rather than failing at runtime, it is better to fail at compile or link time. svn:r1363
Nick Mathewson d3bef1a1 2009-07-17T20:32:25 Finish implementing new convention that whenever an optional function is declared, a corresponding macro is defined. svn:r1361
Nick Mathewson a386fde3 2009-07-17T20:28:03 Checking for MS_WINDOWS rather than WIN32 is a Tor-ism. Fix that! svn:r1360
Nick Mathewson ed038295 2009-07-17T20:22:48 Define a macro to indicate that we have defined one of the optional evthread_use macros svn:r1355
Nick Mathewson 5d71b25b 2009-07-17T18:38:38 Remove all trailing whitespace from end-of-line. svn:r1350
Nick Mathewson eb97bb76 2009-05-28T15:58:28 Make the headers compile happily with pedantic C compilers. Original message from SF patch 2797966: While commas at the end of enumerator lists are valid in c99, they are not valid +in c89 nor in c++. When using gcc/g++ with the -pedantic flag, users will +receive a warning (gcc) or an error(g++) when including the event2/event.h and +event2/bufferevent.h. The errors look something like event2/event.h:159: error: comma at end of enumerator list Patch from Akita Noek on Sourceforge. svn:r1321
Nick Mathewson 0b4ab122 2009-05-28T15:47:15 Spell-check the the headers svn:r1320
Nick Mathewson 3f0e4928 2009-05-27T23:48:59 small doc fix. svn:r1319
Nick Mathewson 5232cfa3 2009-05-25T23:11:20 Consistently say "eventcb" instead of "errorcb" svn:r1316
Nick Mathewson 0b22ca19 2009-05-22T19:11:48 Use ev_ssize_t in place of ssize_t *everywhere*. svn:r1309
Nick Mathewson 8997f234 2009-05-21T20:59:00 Use the native "struct iovec" as our "struct evbuffer_iovec" when available, so we do not need to copy more pointers than necessary. svn:r1299
Nick Mathewson 23243b8a 2009-05-19T21:39:35 Replace reserve/commit with new iovec-based interface. Add a new evbuffer_peek. svn:r1296
Nick Mathewson ed1bbc7a 2009-05-18T16:15:56 Tweak the evconnlistener interface a little. svn:r1295
Nick Mathewson dc4c7b95 2009-05-15T22:44:18 Change the interface of evbuffer_add_reference: give the cleanup function more info. svn:r1294
Nick Mathewson bba69e03 2009-05-15T20:23:59 New semantics for evbuffer_cb_set_flags(). Previously, set_flags() would replace all previous user-visible flags. Now it just sets the flags, and there is a clear_flags() function to clear other flags. svn:r1293
Nick Mathewson b4886ec8 2009-05-15T18:44:44 Trim 22 bytes from struct event on 32 bit platforms, more on 64-bit platforms. svn:r1292
Nick Mathewson 27fef1ef 2009-05-14T18:06:41 Note problems with some newer evbuffer interfaces. svn:r1286
Nick Mathewson 3e759a01 2009-05-14T18:06:29 Actually, do not provide a compatibility name "EVBUFFER_CONNECTED": there is no old code that uses it. svn:r1285
Nick Mathewson 31d89f27 2009-05-13T20:37:21 Add a "ctrl" mechanism to bufferevents for property access. OpenSSL uses something like this to implement get/set access for properties on its BIOs, so that it doesn't need to add a pair of get/set functions to the vtable struct for every new abstract property it provides an accessor for. Doing this lets us make bufferevent_setfd abstract, and implement an abstract bufferevent_getfd. svn:r1284
Nick Mathewson 83f46e51 2009-05-13T20:36:56 Do not use the "evbuffer_" prefix to denote parts of bufferevents. This is a bit of an interface doozy, but it's really needed in order to be able to document this stuff without apologizing it. This patch does the following renamings: evbuffercb -> bufferevent_data_cb everrorcb -> bufferevent_event_cb EVBUFFER_(READ,WRITE,...) -> BEV_EVENT_(...) EVBUFFER_(INPUT,OUTPUT) -> bufferevent_get_(input,output) All the old names are available in event2/bufferevent_compat.h svn:r1283
Nick Mathewson 6b21fe2b 2009-05-05T03:01:24 oops; do not forget to distribute listener.h svn:r1273
Nick Mathewson 659d54d5 2009-05-05T02:59:26 Add new code to make and accept connections. This is stuff that it's easy to get wrong (as I noticed when writing bench_http), and that takes up a fair amount of space (see http.c). Also, it's something that we'll eventually want to abstract to use IOCP, where available. svn:r1272
Nick Mathewson 0fd70978 2009-05-05T01:09:03 Add an event_get_base() function to remove one more reason to include event_struct.h svn:r1271
Nick Mathewson d5ca0763 2009-05-02T16:23:29 Move event_set() and friends to event2/event_compat.h. These functions are deprecated in favor of event_assign(). svn:r1267
Nick Mathewson b2e8fd0e 2009-04-30T23:56:53 Apparently MSVC lacks a ssize_t. Define an ev_ssize_t for headers, and make ssize_t work elsewhere. svn:r1261
Nick Mathewson 19594141 2009-04-29T20:48:21 Clarify semantics on event_pending() svn:r1249
Niels Provos a146af1d 2009-04-25T00:15:55 move more code directly into evrpc.c; provide backwards compatible vararg macros svn:r1244
Niels Provos b228ff91 2009-04-25T00:15:31 remove vararg macros for accessing evrpc structs svn:r1243
Niels Provos bbf79707 2009-04-25T00:14:58 refactor evrpc.h header filer svn:r1241
Nick Mathewson 11ff74cf 2009-04-22T19:41:23 Add a flag to disable checking the EVENT_* environment variables. svn:r1220
Nick Mathewson ea8cc76c 2009-04-21T18:47:23 Fix the documentation of event_pending. svn:r1215
Nick Mathewson eda27f95 2009-04-19T20:54:12 Update copyright notices, add some missing license statements svn:r1208
Niels Provos f00f0c25 2009-04-18T04:34:45 make doxygen happier svn:r1199
Nick Mathewson a98a512b 2009-04-17T23:12:34 Add a generic way for any bufferevent to make its callback deferred svn:r1197
Nick Mathewson d047b323 2009-04-17T17:22:32 Increment version to 2.0.1-alpha, and add a numeric version facility svn:r1193
Nick Mathewson 49354138 2009-04-17T06:57:13 Oh hey. There is no support for suspend/unsuspend. svn:r1187
Nick Mathewson 7fa8451d 2009-04-17T06:56:57 Add a configure flag to hardcode all of our mm functions. svn:r1186
Nick Mathewson a8f6d961 2009-04-17T06:56:09 Actually stop using EVBUFFER_LENGTH/DATA, and move them to buffer_compat.h svn:r1183
Nick Mathewson 796ba15f 2009-04-17T06:55:25 Stop claiming that APIs we have are missing. svn:r1182
Nick Mathewson 838d0a81 2009-04-17T06:55:08 Document many internal functions and pieces of code. svn:r1181
Niels Provos 30648529 2009-04-17T01:03:07 have evhttp_set_cb return an int; -1 on failure, 0 on success; this is better than returning a pointer svn:r1179
Nick Mathewson 93d4f884 2009-04-14T20:11:10 Make buffer iocp stuff compile happily svn:r1174
Nick Mathewson 915193e7 2009-04-13T03:17:19 Locking support for bufferevents. svn:r1170
Nick Mathewson 1becc4c4 2009-04-13T03:08:11 Refactor new elements of bufferevent into bufferevent_private structure This way we don't expose more of a bufferevent than we need to. One motivation is to make it easier to automatically get deferred callbacks with a bufferevent without exposing the deferred_cb structure. svn:r1169
Nick Mathewson 6567ecd4 2009-04-13T03:07:37 Remove if0 code in bufferevent_struct.h svn:r1168
Niels Provos d2794e65 2009-04-11T15:26:29 document evhttp_parse_query better svn:r1157
Nick Mathewson b29b875d 2009-04-10T20:43:08 Facility to make evbuffers get their callbacks deferred. svn:r1154
Nick Mathewson decdacfa 2009-04-10T20:42:53 Better explanation for bufferevent_pair svn:r1153
Nick Mathewson 23085c92 2009-04-10T15:01:31 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
Nick Mathewson 747331d1 2009-04-08T03:04:39 Add freeze support to evbuffers. From the documentation: Prevent calls that modify an evbuffer from succeeding. A buffer may frozen at the front, at the back, or at both the front and the back. If the front of a buffer is frozen, operations that drain data from the front of the buffer, or that prepend data to the buffer, will fail until it is unfrozen. If the back a buffer is frozen, operations that append data from the buffer will fail until it is unfrozen. We'll use this to ensure correctness on an evbuffer when we're waiting for an overlapped IO call to finish. svn:r1143
Nick Mathewson d2e9caa6 2009-04-06T20:38:19 Fix evdns_cancel to alert callback and free associated RAM. Also, we add a test to make sure evdns_cancel is working properly. svn:r1139
Nick Mathewson 60e0d59b 2009-04-05T02:44:17 Add locking to evbuffers. svn:r1134
Nick Mathewson f1b1bad4 2009-04-03T14:27:03 Make the new evbuffer callbacks use a new struct-based interface. The old interface would fail pretty hard when we had to batch up multiple adds and drains in a single call. svn:r1131
Nick Mathewson f90500a5 2009-04-03T01:21:36 Add a new improved search function. The old evbuffer_find didn't allow iterative searching, and forced us to repack the buffer completely every time we searched in it. The new evbuffer_search addresses both of these. As a side-effect, the evbuffer_find implementation is now a little more efficient. svn:r1130
Niels Provos 994e8578 2009-03-30T17:36:22 correct evbuffer_drain documentation from John Khvatov svn:r1127
Nick Mathewson ec35eb55 2009-02-12T22:19:54 Make threading functions global, like the mm_ functions. Use the libevent_pthread.la library in regress_pthread. svn:r1121
Nick Mathewson 77c80b8d 2009-02-11T17:24:11 New bind-to option to allow DNS clients to bind to arbitrary ports for their outgoing addresses. svn:r1119
Nick Mathewson acaf65c3 2009-02-11T17:23:32 Make evutil_parse_sockaddr_port give a useful socket-length output. svn:r1118
Nick Mathewson c7b2f8fd 2009-02-10T19:38:05 New function to abstract SO_REUSEADDR. svn:r1102
Nick Mathewson 4d92e426 2009-02-02T19:22:27 forward-port: Make evdns_resolve_reverse args const. svn:r1096
Nick Mathewson ea4b8724 2009-02-02T19:22:13 checkpoint work on big bufferevent refactoring svn:r1095
Nick Mathewson 8d3a10f8 2009-02-01T01:43:58 Support temporarily suspending an evbuffer callback. This is different from disabling the callback, since we want to process changes, but not just yet. svn:r1091
Nick Mathewson 2e50658d 2009-02-01T01:07:33 Fix a typo in buffer.h svn:r1089
Niels Provos 66b2a7ff 2009-01-29T03:20:40 test evbuffer_add_reference svn:r1068
Nick Mathewson b85b710c 2009-01-27T22:34:36 Update copyright statements to reflect the facts that: a) this is 2009 b) niels and nick have been comaintainers for a while c) saying "all rights reserved" when you then go on to explicitly disclaim some rights is sheer cargo-cultism. svn:r1065
Nick Mathewson 9993137c 2009-01-27T21:10:31 Remove all trailing whitespace in all the source files. svn:r1063
Niels Provos fdf69493 2009-01-27T06:05:38 sendfile/mmap and memory reference implementation for evbuffers svn:r1057
Niels Provos b93e5054 2009-01-27T05:33:39 second argument to evbuffer_pullup should be ssize_t svn:r1056
Nick Mathewson c0712b16 2009-01-26T17:29:45 Initial documentation for evdns server functions. Also deprecate the one that didn't take an event_base. svn:r1054
Nick Mathewson bdbd5e0e 2009-01-26T17:09:37 For every deprecated function, explain why it is deprecated and what you should call instead. svn:r1052
Nick Mathewson 52a75f18 2009-01-26T17:09:22 Documentation (or more accurate documentation) for a few more functions. svn:r1051
Nick Mathewson dddd58ba 2009-01-26T17:09:09 Reformat util.h slightly so that it looks ok with 8-char tabs. svn:r1050
Niels Provos 765ff1b9 2009-01-24T17:38:27 really install the buffer_compat.h file svn:r1048
Nick Mathewson 81dd04a7 2009-01-23T18:04:34 Add a "flags" field to evbuffer callbacks. For now, there is just one: enabled. This lets us avoid lots of mallocs/frees/tailq-manipulations just to turn a callback on and off. The revised bufferevent code wants this. svn:r1047
Nick Mathewson de7f7a84 2009-01-23T18:03:45 Remove in_callbacks check: allow full recursion in evbuffer callbacks. If you get yourself in an infinite loop, that's not our fault. Note this in the docs. Also reindent some docs now that my tabs match Niels's. svn:r1046
Niels Provos b1495865 2009-01-23T02:04:41 also install the buffer_compat.h header file svn:r1044
Nick Mathewson ec2f4cbc 2009-01-23T01:35:57 Move obsolete evbuffer function into include/event2/buffer_compat.h svn:r1043
Nick Mathewson c735f2b4 2009-01-23T01:11:13 Code to allow multiple callbacks per evbuffer. svn:r1042
Nick Mathewson f20902a2 2009-01-22T17:56:15 Remove evperiodic_assign and its related parts: its functionality is subsumed by EV_PERSIST timeouts. svn:r1040
Niels Provos 56ea4687 2009-01-22T02:33:38 Change the semantics of timeouts in conjunction with EV_PERSIST; timeouts in that case will now repeat until deleted. svn:r1032
Nick Mathewson 309fc7c4 2009-01-21T07:51:25 New functions to provide sane threading callbacks with pthreads and win32 threading implementations. svn:r1031
Nick Mathewson ec4cfa33 2009-01-19T01:34:14 Make event_break threadsafe; make notify-thread mechanism a little more generic; let it use pipes where they work. svn:r1019