summaryrefslogtreecommitdiff
path: root/lib/tevent
AgeCommit message (Collapse)AuthorFilesLines
2009-03-19tevent: fix the nesting logicStefan Metzmacher1-7/+7
Only tevent_loop_once and tevent_loop_until() should care about the nesting level. This fixes the samba3 printing code where we use tevent_loop_wait() and don't allow nested events. We still call the nesting hook for all levels, we need to decide if we really want this... metze
2009-03-19fixed a logic bug in the tevent nesting codeAndrew Tridgell1-1/+13
The event nesting code never triggered as nesting.level was never greater than 1. The main event loop needs to increase the nesting level by 1. I also added a paranoia check to the nesting setup call. The API as currently written cannot support multiple nesting hooks, so we need to abort if multiple hooks are tried.
2009-03-17tevent: change version to 0.9.5 after the ABI has changedStefan Metzmacher1-1/+1
metze
2009-03-17tevent: store the location where a request was finishedStefan Metzmacher3-19/+48
This is very useful to find bugs. You can use 'p *req' in gdb to show where tevent_req_done(), tevent_req_error() or tevent_req_nomem() was called. metze
2009-03-17tevent: use an immediate event as trigger for tevent_queueStefan Metzmacher2-42/+60
metze
2009-03-17tevent: use an immediate event fot tevent_req_post()Stefan Metzmacher2-19/+13
Now tevent_req_post() never fails metze
2009-03-17tevent: use TALLOC_FREE() in tevent_req.cStefan Metzmacher1-9/+5
metze
2009-03-17tevent: add support for immediate eventsStefan Metzmacher8-34/+295
They're like directly triggered timed events, but you can preallocated them and scheduling them will not fail. metze
2009-03-17tevent: add tevent_common_loop_wait() helper function and use itStefan Metzmacher5-55/+33
tevent_loop_wait should do the same for all backends. It should loop as long as we have pending events. metze
2009-03-17tevent: check signal events first in event_loop_onceStefan Metzmacher3-0/+15
We also check for signal events directly before and after the select/epoll calls. metze
2009-03-17tevent: let tevent_loop_once() just run one fd eventStefan Metzmacher3-45/+7
This makes the logic much simpler for the callers, and matches the samba3 behavior. If needed we can add performance tunning for tevent_loop_wait() later. metze
2009-03-13tevent: change version to 0.9.4 as the ABI has changedStefan Metzmacher1-1/+1
metze
2009-03-12tevent: Fix might be unitialized warningTim Prouty1-1/+1
2009-03-12tevent: add tevent_loop_until()Stefan Metzmacher2-0/+68
This is only a hack for samba4 and should not be used in new code. metze
2009-03-12tevent: add tevent_loop_set_nesting_hook()Stefan Metzmacher3-1/+50
This is an ugly hack to let the s4 server work arround some bugs related to nested events and uid changing. metze
2009-03-12tevent: don't allow nested tevent_loop_once() anymoreStefan Metzmacher3-1/+53
Incompatible caller should use tevent_loop_allow_nesting() function. metze
2009-03-12tevent: pass __location__ to tevent_loop_once/wait()Stefan Metzmacher6-17/+22
metze
2009-03-12tevent: add tevent_set_abort_fn()Stefan Metzmacher2-0/+21
metze
2009-03-12tevent: add tevent_signal_support()Stefan Metzmacher2-0/+10
Not every tevent backend supports signal events. metze
2009-03-10tevent: add tevent_req_callback_data_void() macroStefan Metzmacher1-0/+2
Callers can use it instead of tevent_req_callback_data() if they use a non talloc private pointer. metze
2009-03-10tevent: add tevent_req_received() functionStefan Metzmacher3-2/+29
This function can be called as last action of a _recv() function, it destroys the data attached to the tevent_req. metze
2009-03-02Make struct tevent_req opaqueSimo Sorce3-100/+137
Move struct tevent_req in tevent_internal, and ad getters and setters for private data and the callback function. This patch also renames 'private_state' into 'data'. What is held in this pointer is in fact data and not a state like enum tevent_req_state. Calling it 'state' is confusing. The functions addedd are: tevent_req_set_callback() - sets req->async.fn and req->async.private_data tevent_req_set_print_fn() - sets req->private_print tevent_req_callback_data() - gets req->async.private_data tevent_req_data() - gets rea->data This way it is much simpler to keep API/ABI compatibility in the future.
2009-03-01Merge branch 'master' of git://git.samba.org/samba into teventfixJelmer Vernooij4-4/+275
Conflicts: lib/tevent/pytevent.c
2009-03-01Avoid using tevent_util.h, which won't be available if we use the systemJelmer Vernooij1-2/+2
tevent.
2009-02-26tevent: add tevent_queue infrastructureStefan Metzmacher3-1/+221
metze
2009-02-25tevent: add private_print function feature to tevent_reqStefan Metzmacher2-3/+35
metze
2009-02-25tevent: add tevent_req_poll() functionStefan Metzmacher2-0/+18
metze
2009-02-25Attempt to fix the OpenChange build -- sorry for the breakVolker Lendecke1-1/+1
2009-02-24tevent.h requires bool and uint[16|32|64]_tVolker Lendecke1-0/+1
2009-02-21pytevent: Fix include path - tevent_util is not installed.Jelmer Vernooij1-1/+1
2009-02-18tevent: add tevent_wakeup_send/recv()Stefan Metzmacher3-1/+76
This can be used as tevent_req based timer event. metze
2009-02-18tevent: rename tevent_req_set_timeout() => tevent_req_set_endtime()Stefan Metzmacher2-2/+2
This makes more clear what the function does. metze
2009-02-17tevent: Rename ev_timeval* functions to tevent_timeval, export them.Kai Blin7-23/+61
Also add tevent_timeval_add() and tevent_timeval_current_ofs() to help not depending on lub/util/time.c for things that just need tevent
2009-02-16tevent: fix compiler warning in pytevent.cStefan Metzmacher1-1/+3
metze
2009-02-16lib/tevent: change to LGPLv3+Stefan Metzmacher16-188/+253
metze
2009-02-14Add missing prototype for "tevent_req_print"Volker Lendecke1-0/+2
2009-02-14Fix a warning and a bug: pipe(2) can failVolker Lendecke1-1/+4
2009-02-14Add two variable assignments to shut up gccVolker Lendecke1-2/+4
2009-02-13tevent: raise version to 0.9.3Stefan Metzmacher1-1/+1
- aio events are removed - tevent_req infrastructure was added metze
2009-02-13lib/tevent: add tevent_req infrastructureStefan Metzmacher4-202/+303
This is almost a copy of the async_req code, which will be removed later. metze
2009-02-13lib/tevent: add tevent_req.c as copy of lib/async_req/async_req.cStefan Metzmacher1-0/+338
metze
2009-02-13lib/tevent: expose ev_timeval_zero() for internal usageStefan Metzmacher2-1/+2
metze
2009-02-13lib/tevent: remove broken tevent_aio supportStefan Metzmacher5-610/+0
It makes no sense to support aio events because, the current implementation was based on IOCB_CMD_EPOLL_WAIT which never made it into the main kernel tree. The native linux aio can be used with select/epoll using eventfd(), which means we can implement aio with fd events and implement aio outside of tevent. metze
2009-02-02lib/tevent: the python bindings don't use swig anymoreStefan Metzmacher1-7/+2
metze
2009-02-02lib/tevent: s/private/private_dataStefan Metzmacher1-6/+6
metze
2009-01-30Do not install private headersSimo Sorce1-2/+0
2009-01-30lib/tevent: include replace.h in pytevent.cStefan Metzmacher1-0/+1
This fixes the build on Tru64. metze
2009-01-30Fix standalone configure scriptsSimo Sorce1-0/+1
2009-01-27tevent: change SA_INFO_QUEUE_COUNT from 10 to 100Stefan Metzmacher1-1/+1
The samba3 aio code requires lp_max_mux() with a default of 50 and the samba3 linux oplock code requires 100. May we could make the size dynamic later. metze
2009-01-20tevent: rename signal handler functions to start with tevent_common_Stefan Metzmacher1-5/+6
This makes debugging with gdb easier. metze