kqueue.c


Log

Author Commit Date CI Message
Nick Mathewson 315fde1a 2009-10-30T22:43:53 Remove some duplicate code in kqueue.c and fix a small memory leak. svn:r1483
Nick Mathewson 369aafc4 2009-10-27T04:03:58 Refactor kq_init error handling. svn:r1467
Nick Mathewson 2e36dbe1 2009-10-26T20:00:43 Use EVUTIL_ASSERT() consistently instead of assert. svn:r1464
Nick Mathewson b89b58b5 2009-10-21T06:03:00 OSX compilation issues svn:r1453
Nick Mathewson 6b22e74a 2009-10-21T03:54:00 Add locking to event_base_loop. This is harder than it sounds, since we need to make sure to release the lock around the key call to the kernel (e.g., select, epoll_wait, kevent), AND we need to make sure that none of the fields that are used in that call are touched by anything that might be running concurrently in another thread. I managed to do this pretty well for everything but poll(). With poll, I needed to introduce a copy of the event_set structure. This patch also fixes a bug in win32.c where we called realloc() instead of mm_realloc(). svn:r1450
Nick Mathewson e3fd294a 2009-10-16T13:19:57 Spelling fixes in comments and strings. svn:r1445
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 8889a770 2009-01-27T22:30:46 Replace all use of config.h with event-config.h. svn:r1064
Nick Mathewson 9993137c 2009-01-27T21:10:31 Remove all trailing whitespace in all the source files. svn:r1063
Nick Mathewson 2b7febc8 2009-01-18T01:33:18 Fix osx compile svn:r1018
Nick Mathewson 554e1493 2009-01-14T20:52:32 Move per-fd info from eventops into evmap. Not done for win32.c yet. svn:r1008
Nick Mathewson 169321c9 2009-01-13T20:26:37 Rename four internal headers to follow the -internal.h convention. svn:r1000
Niels Provos b225e756 2008-12-23T22:24:32 remove unused variable svn:r974
Niels Provos d776f846 2008-12-23T22:23:37 deprecate the usage of signal_{add,del,set} and name it evsignal_{add,del,set} instead; move the old definitions to compat svn:r973
Niels Provos 02b2b4d1 2008-12-23T16:37:01 Restructure the event backends so that they do not need to keep track of events themselves, as a side effect multiple events can use the same fd or signal. svn:r972
Niels Provos f7e61870 2008-07-11T15:49:04 support multiple events listening on the same signal; make signals regular events that go on the same event queue svn:r901
Niels Provos 5512be01 2008-07-11T15:15:04 fix a bug where deleting signals with kqueue would delete subsequent adds svn:r899
Nick Mathewson 05965921 2008-05-31T14:37:31 Add new functions to access backends by their features and to query the features of a backend. svn:r842
Nick Mathewson 39400e68 2008-05-30T16:56:34 Patch from Valery Kholodkov: support for edge-triggered events with epoll and kqueue. Changed from original patch: made test into a regression test, with explicit success/failure for edge-triggered and non-edge-triggered cases. Closes SF request 1968284. svn:r840
Niels Provos 2deb3ce0 2008-05-29T01:39:43 simplify handling of environment variables for disabling backends; make event_get_supported_methods obey environment variables; this fixes make verify; problem reported by Scott Lamb. svn:r838
Nick Mathewson 49868b61 2008-04-25T01:18:08 r15316@tombo: nickm | 2008-04-24 20:58:36 -0400 Rename internal memory management functions from event_malloc() etc to mm_malloc() etc. svn:r725
Nick Mathewson 0ac73078 2008-04-16T20:01:51 r15193@tombo: nickm | 2008-04-16 16:00:35 -0400 Split event.h into several new headers in include/event2. event.h is now just a wrapper that includes all the subheaders. svn:r711
Niels Provos ca42671a 2008-03-29T01:45:45 make event methods static so that they are not exported; from Andrei Nigmatulin svn:r692
Niels Provos 19dad166 2008-03-02T01:46:00 Do not free the kqop file descriptor in other processes, also allow it to be 0; from Andrei Nigmatulin svn:r682
Niels Provos 2fde2217 2008-02-09T16:03:01 address some compiler warnings in debug mode svn:r630
Niels Provos fbe24f43 2007-12-09T05:07:20 remove obsoleted recalc code svn:r581
Niels Provos 5f3e3159 2007-11-27T01:39:10 move EV_PERSIST handling out of the event backends svn:r555
Nick Mathewson 2823cb05 2007-11-25T17:15:28 r14944@tombo: nickm | 2007-11-25 12:12:28 -0500 Make kqueue pass more unit tests. svn:r544
Nick Mathewson 7eb250e9 2007-11-25T17:14:19 r14939@tombo: nickm | 2007-11-25 11:59:26 -0500 New function event_set_mem_functions to replace internal calls to malloc, free, etc with a user-supplied functions. svn:r541
Niels Provos 88897852 2007-11-25T06:57:59 provide event_reinit() to reinitialized an event_base after fork - necessary for epoll/kqueue svn:r539
Nick Mathewson 7d821580 2007-08-10T16:31:02 Fix compile warning on osx: the udata field in struct kevent is supposed to be void*, not intptr_t. svn:r387
Niels Provos 3ad6b47e 2007-07-30T22:41:00 make clock_monotonic work; do not use default timeout; from Scott Lamb, plus some fixes from me. svn:r371
Niels Provos 41b7cbc3 2007-03-10T06:37:53 more the signal base into the event base; this removes global state and makes signals work better with threading; from Wouter Wijngaards small fixes for kqueue and style by me svn:r351
Niels Provos b5d2f9a2 2007-03-01T06:25:18 rolling back r339: evconfig.h does not work svn:r341
Niels Provos 127c260b 2007-02-28T04:02:29 make evconfig.h available as installed header file; not really ideal but good enough for me; from Nick Mathewson svn:r339
Niels Provos 64c76fbe 2006-09-03T21:12:59 typo in kqueue delete; from Bert JW Regeer svn:r232
Niels Provos 2e8051f5 2006-03-28T04:40:54 introduce a way to free the base from Nick Mathewson <nickm@freehaven.net> svn:r210
Niels Provos 139e862e 2005-12-17T20:15:25 do not remove kq inkernel flag before event_del gets to it; bug reported by Tassilo von Parseval; also add a test for this behavior. svn:r190
Niels Provos 9938aaf5 2005-06-11T21:15:22 treate EINVAL as per fd error in kqueue; use argument for debug macros in poll; version 1.1a; EINVAL fix from Nick Mathewson svn:r168
Niels Provos 57fafe6b 2005-05-11T03:34:42 detect kqueue bug in Mac OS X 10.4; from Nick Mathewson svn:r165
Niels Provos 5e2ba12a 2005-04-14T23:28:06 fixes from alexander von gernler svn:r148
Niels Provos d47798be 2005-04-07T03:35:56 return error code when kqueue fails on a specific fd; from alexander von gernler. svn:r145
Niels Provos fbdaf3ab 2005-03-29T07:03:10 debugging callbacks from Nick Mathewson <nickm@freehaven.net> svn:r136
Niels Provos 3ba224db 2005-01-03T18:58:40 fixes for threaded operations from Andrew Danforth svn:r129
Niels Provos 8773c4c9 2004-11-25T09:50:18 make libevent thread-safe; first cut svn:r122
Niels Provos d829ccea 2004-07-30T05:00:44 fix a warning on freebsd; svn:r114
Niels Provos 1b974101 2003-12-20T20:05:17 fix kqueue behaviour; requires special kernel patch to make kqueue semantics consistent; from marius@umich.edu svn:r92
Niels Provos e9cd9b56 2003-10-11T02:54:41 bad realloc; found by awohl at chessclub svn:r87
Niels Provos c3f496c7 2003-10-04T23:27:26 minor corrections; change license to 3-clause BSD license svn:r84
Niels Provos e506eaf7 2003-09-25T03:26:53 constify; some windows stuff by mike davis; fix a poll bug svn:r77
Niels Provos 6ce5b876 2003-06-12T23:33:19 clean up from NetBSD integration svn:r72
Niels Provos 6551780a 2003-06-02T19:37:13 bug fix from Ira Lee svn:r71
Niels Provos 9eb31e53 2003-04-09T18:11:31 proper indent svn:r62
Niels Provos c48e71d8 2003-03-08T16:44:51 oneshot means that its removed from the kernel list already svn:r51
Niels Provos 0036d79a 2003-03-08T16:33:18 fix kqueue problem svn:r50
Niels Provos e72dff13 2003-03-01T20:31:28 replace references to __FUNCTION__ with __func__ svn:r40
Niels Provos 3c2916aa 2003-03-01T19:48:05 ifdef config.h svn:r39
Niels Provos 9d2401ff 2002-10-07T00:47:34 portability fixes from marius@umich.edu. svn:r35
Niels Provos eb15f4d8 2002-09-08T02:46:44 fix from marius@umich.edu svn:r31
Niels Provos 5f865858 2002-07-26T14:45:50 sync with openbsd; API change: timeout_ is now evtimer_ svn:r29
Niels Provos 3821c7e2 2002-06-13T01:54:07 make kqueue signal callback work with sigchld. cast and better timeout. svn:r27
Niels Provos 484e594e 2002-06-11T18:38:37 make kqueue work for callbacks that use both read and write events simultaneously svn:r26
Niels Provos d10f85db 2002-04-10T02:10:47 signal support for kqueue; support of EV_PERSIST flag to event_set svn:r18
Niels Provos aa6567fe 2002-04-09T15:14:06 Initial revision svn:r2