summaryrefslogtreecommitdiff
path: root/lib/tevent/wscript
AgeCommit message (Collapse)AuthorFilesLines
2025-08-07tevent: version 0.17.1tevent-0.17.1Jule Anger1-1/+1
* Coverity checks: Fix 1649525 Use of 32-bit time_t Fix Coverity ID 1649524 Dereference before null check Fix Coverity ID 1649526 Dereference before null check Signed-off-by: Jule Anger <janger@samba.org> Reviewed-by: Stefan Metzmacher <metze@samba.org>
2025-06-18tevent: version 0.17.0tevent-0.17.0Stefan Metzmacher1-1/+1
- add tevent_context_set_wait_timeout() - add tevent_reset_immediate() Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Volker Lendecke <vl@samba.org>
2025-02-06tevent: version 0.16.2tevent-0.16.2Jule Anger1-1/+1
* Documentation fixes * Add LGPLv3 LICENSE file Signed-off-by: Jule Anger <janger@samba.org> Signed-off-by: Stefan Metzmacher <metze@samba.org>
2024-01-29tevent: release 0.16.1tevent-0.16.1Jule Anger1-1/+1
- build with Python 3.12 (bug #15513) - documentation fixes BUG: https://bugzilla.samba.org/show_bug.cgi?id=15513 Signed-off-by: Jule Anger <janger@samba.org> Signed-off-by: Stefan Metzmacher <metze@samba.org>
2023-10-13tevent: version 0.16.0tevent-0.16.0Stefan Metzmacher1-1/+1
- the epoll backend is no longer limited to 2 event handlers per low level fd. - finally add support for TEVENT_FD_ERROR Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Ralph Boehme <slow@samba.org> Autobuild-User(master): Ralph Böhme <slow@samba.org> Autobuild-Date(master): Fri Oct 13 10:45:51 UTC 2023 on atb-devel-224
2023-07-19tevent: version 0.15.0tevent-0.15.0Stefan Metzmacher1-1/+1
- remove py2 ifdefs - python: Safely clear structure members - the tevent_thread_call_depth API is updated in order to allow better tracing. - add tevent_set_max_debug_level() only and don't pass TEVENT_DEBUG_TRACE to tevent_debug() callbacks by default. - Spelling fixes - Make use of epoll_create1() for epoll backend - Optimize overhead in the epoll backend Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Ralph Boehme <slow@samba.org>
2023-07-19tevent: Flow: pass function name to tevent_req_create()Pavel Filipenský1-1/+1
Note the tevent-0.14.1.sigs changes will be reverted in the 'tevent 0.15.0' commit. Signed-off-by: Pavel Filipenský <pfilipensky@samba.org> Reviewed-by: Stefan Metzmacher <metze@samba.org>
2023-07-19tevent: rely on epoll_create1() for epoll interfaceDmitry Antipov1-1/+1
Prefer epoll_create1(2) over epoll_create(2) and always require the former to use epoll(7) interface, thus saving extra fcntl(2) call to set FD_CLOEXEC. Signed-off-by: Dmitry Antipov <dantipov@cloudlinux.com> Reviewed-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Stefan Metzmacher <metze@samba.org>
2023-02-02tevent: version 0.14.1tevent-0.14.1Stefan Metzmacher1-1/+1
- Build fix for GNU/Hurd - Build fix for Solaris, after removal of ports backend (bug #15298) Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org> Autobuild-User(master): Jeremy Allison <jra@samba.org> Autobuild-Date(master): Thu Feb 2 18:27:08 UTC 2023 on atb-devel-224
2023-02-02tevent: remove the already removed tevent_port.c also from the buildStefan Metzmacher1-3/+0
This fixes a regression introduced by 147a317b7b92e60c5940d875dbd7aef19824834e. BUG: https://bugzilla.samba.org/show_bug.cgi?id=15298 Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
2023-01-18tevent: version 0.14.0tevent-0.14.0Stefan Metzmacher1-1/+1
- Support python 3.12 - remove solaris port backend (it's not maintainable) - make tevent_find_ops_byname() available for callers. - allow the "standard" backend to be overloaded - add interface for request/subrequest call depth tracking: - tevent_thread_call_depth_activate - tevent_thread_call_depth_deactivate - tevent_thread_call_depth_start - tevent_thread_call_depth_stop - tevent_thread_call_depth_reset_from_req Note the changes to ABI/tevent-0.13.0.sigs only revert the temporary changes made there... Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Pavel Filipenský <pfilipen@redhat.com> Reviewed-by: Volker Lendecke <vl@samba.org>
2022-07-25tevent: version 0.13.0tevent-0.13.0Stefan Metzmacher1-1/+1
- add tevent_cached_getpid() Note the changes to ABI/tevent-0.12.1.sigs only revert the temporary changes made there... Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
2022-06-08tevent: version 0.12.1tevent-0.12.1Stefan Metzmacher1-1/+1
* Fix build problems BUG: https://bugzilla.samba.org/show_bug.cgi?id=15071 Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org>
2022-04-11tevent: Add tevent queue tracing supportPavel Filipenský1-1/+1
Signed-off-by: Pavel Filipenský <pfilipen@redhat.com> Reviewed-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org>
2021-07-07tevent: bump the version number to 0.11.0tevent-0.11.0Pavel Březina1-1/+1
* Other minor build fixes. * Add custom tag to events * Add event trace api Pair-Programmed-With: Stefan Metzmacher <metze@samba.org> Signed-off-by: Pavel Březina <pbrezina@redhat.com> Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org>
2021-07-07tevent: add event trace apiPavel Březina1-0/+6
Adds new tracing API to trace fd, timer, signal and immediate events on specific trace points: attach, before handler and dettach. This can be used in combination with the event tag to keep track of the currently executed event for purpose of debugging. Pair-Programmed-With: Stefan Metzmacher <metze@samba.org> Signed-off-by: Pavel Březina <pbrezina@redhat.com> Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org>
2021-07-07tevent: add custom tag to eventsPavel Březina1-1/+5
Adds a new API to set and get an uint64_t tag on fd, timer, signal and immediate events. This can be used to assign a unique and known id to the event to allow easy tracking of such event. Pair-Programmed-With: Stefan Metzmacher <metze@samba.org> Signed-off-by: Pavel Březina <pbrezina@redhat.com> Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org>
2021-07-07tevent: add support for cmocka unit testsPavel Březina1-3/+26
This adds a placeholder for new cmocka tests for tevent. Tests are added in individual commits. Signed-off-by: Pavel Březina <pbrezina@redhat.com> Reviewed-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org>
2019-11-18tevent: Release tevent 0.10.2tevent-0.10.2Uri Simchoni1-1/+1
* Upgrade waf to version 2.0.18 to fix a cross-compilation issue BUG: https://bugzilla.samba.org/show_bug.cgi?id=13846 Signed-off-by: Uri Simchoni <uri@samba.org> Reviewed-by: Andrew Bartlett <abartlet@samba.org> Autobuild-User(master): Uri Simchoni <uri@samba.org> Autobuild-Date(master): Mon Nov 18 11:44:08 UTC 2019 on sn-devel-184
2019-09-04tevent: Release tevent 0.10.1tevent-0.10.1Stefan Metzmacher1-1/+1
* Update waf to version 2.0.17 in order to fix the build with python 3.8. * Other minor build fixes. Signed-off-by: Stefan Metzmacher <metze@samba.org> Autobuild-User(master): Stefan Metzmacher <metze@samba.org> Autobuild-Date(master): Wed Sep 4 11:47:04 UTC 2019 on sn-devel-184
2019-03-21tevent: Release tevent 0.10.0tevent-0.10.0Andrew Bartlett1-1/+1
* Remove Python 2.x support except to build just the bare C library * Remove --extra-python (a build time mode to produce Python2 and Python3 bindings at the same time) * New minor version to allow Samba 4.10 to release a tevent if required from that branch Signed-off-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
2019-03-21build: Standardise on calling conf.SAMBA_CHECK_PYTHON() in librariesAndrew Bartlett1-9/+2
We do this by removing the confusing mandatory option to conf.SAMBA_CHECK_PYTHON{,_HEADERS}(), instead just use the value of --disable-python internally This follows the default minimum of Python 3.4 and keeps things consistent with the main Samba build where --disable-python is required to skip building python bindings. Signed-off-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
2019-03-21build: Remove bld.gen_python_environments()Andrew Bartlett1-7/+6
This was part of --extra-python support. Signed-off-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Garming Sam <garming@catalyst.net.nz>
2019-02-26tevent: version 0.9.39tevent-0.9.39Stefan Metzmacher1-1/+1
* py_tevent: add_timer takes float argument * C99 build fixes. * Fix standalone build of tevent. Signed-off-by: Stefan Metzmacher <metze@samba.org>
2019-01-15tevent: version 0.9.38tevent-0.9.38Stefan Metzmacher1-1/+1
* Deprecate tevent wrapper api again * Build fixes * The build uses python3 by default: * --extra-python would take python2 now * To build with python2 only use: PYTHON=python2 ./configure PYTHON=python2 make PYTHON=python2 make install Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Karolin Seeger <kseeger@samba.org>
2018-09-05lib/tevent/wscript: update to handle waf 2.0.4Alexander Bokovoy1-10/+11
Signed-off-by: Alexander Bokovoy <ab@samba.org> Reviewed-by: Andrew Bartlett <abartlet@samba.org>
2018-07-11tevent: version 0.9.37tevent-0.9.37Stefan Metzmacher1-1/+1
* simplify "poll" and "poll_mt" backends * make tevent_abort() reachable for backends * add tevent_common_invoke_*_handler() functions * add tevent_context_same_loop() function * add tevent_context_wrapper_create() infrastructure * add tevent_req_profile infrastructure Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Ralph Boehme <slow@samba.org>
2018-07-11tevent: add tevent_context_wrapper_create() infrastructureStefan Metzmacher1-1/+1
This allows to specify wrapper tevent_contexts, which adds the ability to run functions before and after the event handler functions. This can be used to implement impersonation hooks or advanced debugging/profiling hooks. We'll undo the 0.9.36 ABI change on the 0.9.37 release at the end of this patchset. Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Ralph Boehme <slow@samba.org>
2018-02-23tevent: version 0.9.36tevent-0.9.36Stefan Metzmacher1-1/+1
* improve documentation of tevent_queue_add_optimize_empty() * add tevent_queue_entry_untrigger() Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Volker Lendecke <vl@samba.org>
2018-01-12tevent: version 0.9.35tevent-0.9.35Stefan Metzmacher1-1/+1
* Minor cleanup. wakeup_fd can always be gotten from the event context. * Use smb_set_close_on_exec() in example code. Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Ralph Boehme <slow@samba.org>
2017-11-13tevent: version 0.9.34tevent-0.9.34Stefan Metzmacher1-1/+1
* Remove unused select backend * Fix a race condition in tevent_threaded_schedule_immediate() (bug #13130) Signed-off-by: Stefan Metzmacher <metze@samba.org> Autobuild-User(master): Stefan Metzmacher <metze@samba.org> Autobuild-Date(master): Mon Nov 13 18:02:46 CET 2017 on sn-devel-144
2017-09-16lib: tevent: Remove select backend.Jeremy Allison1-1/+1
select() is no longer useful on modern systems. Signed-off-by: Jeremy Allison <jra@samba.org> Reviewed-by: Volker Lendecke <vl@samba.org> Autobuild-User(master): Volker Lendecke <vl@samba.org> Autobuild-Date(master): Sat Sep 16 08:35:39 CEST 2017 on sn-devel-144
2017-07-21tevent: version 0.9.33tevent-0.9.33Stefan Metzmacher1-1/+1
* make tevent_req_print() more robust against crashes Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org>
2017-06-22tevent: version 0.9.32tevent-0.9.32Stefan Metzmacher1-1/+1
* Fix mutex locking in tevent_threaded_context_destructor(). * Fix a memleak on FreeBSD. * Re-init threading in tevent_re_initialise(). * Include the finish location in tevent_req_default_print(). Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Volker Lendecke <vl@samba.org> Autobuild-User(master): Stefan Metzmacher <metze@samba.org> Autobuild-Date(master): Thu Jun 22 17:17:33 CEST 2017 on sn-devel-144
2017-03-10waf: disable-python - align tevent wscriptIan Stakenvicius1-7/+2
Drop the configure option for --disable-python as it is now global in wafsamba. If samba is set to use a system copy of tevent, and tevent wasn't built with python support, then the system pytevent will not be found. If samba is being built without python support then pytevent is not needed, so do not bother to try and find it. Signed-off-by: Ian Stakenvicius <axs@gentoo.org> Reviewed-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
2017-01-11wscript: remove executable bits for all wscript* filesStefan Metzmacher1-0/+0
These files should not be executable. Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Volker Lendecke <vl@samba.org> Autobuild-User(master): Volker Lendecke <vl@samba.org> Autobuild-Date(master): Wed Jan 11 20:21:01 CET 2017 on sn-devel-144
2016-10-05tevent: version 0.9.31tevent-0.9.31Stefan Metzmacher1-1/+1
* tevent_update_timer() and tevent_req_reset_endtime() have been added * documentation updates * it is now safe to talloc_free() a tevent_threaded_context, all running threads keep running until they're finished, but we no longer abort(). Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Volker Lendecke <vl@samba.org> Autobuild-User(master): Volker Lendecke <vl@samba.org> Autobuild-Date(master): Wed Oct 5 15:32:35 CEST 2016 on sn-devel-144
2016-08-24tevent: version 0.9.30tevent-0.9.30Stefan Metzmacher1-1/+1
* add tevent_threaded_context_create() and tevent_threaded_schedule_immediate() They add a way to pass the thread result from a helper thread into the main event loop. Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
2016-08-24tevent: Add threaded immediate activationVolker Lendecke1-1/+5
This is infrastructure to improve our async r/w result handling and latency. The pthreadpool signalling goes through a pipe. This has downsides: The main event loop has to go through a read on the pipe before it can ship the result. Also, it is not guaranteed by poll/epoll that the pthreadpool signal pipe is handled with top priority. When an async pread/pwrite has finished, we should immediately ship the result to the client, not waiting for anything else. This patch enables tevent_immediate structs as job signalling. This means a busy main tevent loop will handle the threaded job completion before any timed or file descriptor events. Opposite to Jeremy's tevent_thread_proxy this is done by a modification of the main event loop by looking at a linked list under a central mutex. Regarding performance: In a later commit I've created a test that does nothing but fire one immediate over and over again. If you add a phread_mutex_lock and unlock pair in the immediate handler, you lose roughly 25% of rounds per second, so it is measurable. It is questionable that will be measurable in the real world, but to counter concerns activation of immediates needs to go through a new struct tevent_threaded_context. Only if such a tevent_threaded_context exists for a tevent context, the main loop takes the hit to look at the mutex'ed list of finished jobs. This patch by design does not care about talloc hierarchies. The idea is that the main thread owning the tevent context creates a chunk of memory and prepares the tevent_immediate indication job completion. The main thread hands the memory chunk together with the immediate as a job description over to a helper thread. The helper thread does its job and upon completion calls tevent_threaded_schedule_immediate with the already-prepared immediate. From that point on memory ownership is again transferred to the main thread. Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
2016-07-28tevent: version 0.9.28tevent-0.9.29Stefan Metzmacher1-1/+1
* performance improvements * documentation updates * build fixes Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Andrew Bartlett <abartlet@samba.org> Autobuild-User(master): Stefan Metzmacher <metze@samba.org> Autobuild-Date(master): Thu Jul 28 08:45:34 CEST 2016 on sn-devel-144
2016-02-19tevent: version 0.9.28tevent-0.9.28Stefan Metzmacher1-1/+1
* Fix memory leak when old signal action restored (bug #11742) Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org> Autobuild-User(master): Stefan Metzmacher <metze@samba.org> Autobuild-Date(master): Fri Feb 19 19:12:25 CET 2016 on sn-devel-144
2016-02-16tevent: version 0.9.27tevent-0.9.27Stefan Metzmacher1-1/+1
* Fix bug in poll backend - poll_event_loop_poll() exits the for loop on POLLNVAL instead of continuing to find an event that is ready. * Fix ETIME handling for Solaris event ports (bug #11728). Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Michael Adam <obnox@samba.org> Autobuild-User(master): Michael Adam <obnox@samba.org> Autobuild-Date(master): Tue Feb 16 00:00:51 CET 2016 on sn-devel-144
2016-01-13tevent: Only set public headers field when installing as a public library.Jelmer Vernooij1-1/+1
Signed-off-by: Jelmer Vernooij <jelmer@jelmer.uk>
2015-11-18Set LD_LIBRARY_PATH during tests.Jelmer Vernooij1-0/+3
Without this, tests fail ir libtevent is not installed on the system. Signed-Off-By: Jelmer Vernooij <jelmer@jelmer.uk> Reviewed-by: Jeremy Allison <jra@samba.org> Autobuild-User(master): Jeremy Allison <jra@samba.org> Autobuild-Date(master): Wed Nov 18 21:40:26 CET 2015 on sn-devel-104
2015-11-05tevent: version 0.9.26tevent-0.9.26Stefan Metzmacher1-1/+1
* New tevent_thread_proxy API * Minor build fixes Signed-off-by: Stefan Metzmacher <metze@samba.org>
2015-11-05lib: tevent: Initial checkin of threaded tevent context calling code.Jeremy Allison1-1/+1
Adds 2 new functions: struct tevent_thread_proxy *tevent_thread_proxy_create( struct tevent_context *dest_ev_ctx); void tevent_thread_proxy_schedule(struct tevent_thread_proxy *tp, struct tevent_immediate **pp_im, tevent_immediate_handler_t handler, void *pp_private_data); Brief doc included. Tests, docs and tutorial to follow. Signed-off-by: Jeremy Allison <jra@samba.org> Signed-off-by: Ralph Boehme <slow@samba.org> Reviewed-by: Stefan Metzmacher <metze@samba.org>
2015-06-12tevent: version 0.9.25tevent-0.9.25Stefan Metzmacher1-1/+1
* Fix compile error in Solaris ports backend. * Fix access after free in tevent_common_check_signal(). bug #11308 * Improve pytevent bindings. * Testsuite fixes. * Improve the documentation of the tevent_add_fd() assumtions. It must be talloc_free'ed before closing the fd! See bug #11141 and bug #11316. Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Michael Adam <obnox@samba.org>
2015-06-10pytevent: Build for two versions of Python at oncePetr Viktorin1-7/+10
Signed-off-by: Petr Viktorin <pviktori@redhat.com> Reviewed-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Jelmer Vernooij <jelmer@samba.org> Autobuild-User(master): Andrew Bartlett <abartlet@samba.org> Autobuild-Date(master): Wed Jun 10 08:55:37 CEST 2015 on sn-devel-104
2015-06-10pytalloc: Improve timer wrapper, and test itPetr Viktorin1-1/+4
Using Context.add_timer resulted in crashes due to missing type object and bad reference handling. Add a TeventTimer_Type struct, and introduce a clear ownership/lifetime model. Add a "add_timer_offset" to allow adding timers from Python. (add_timer requires passing struct timeval as a Python integer, which can't really be done portably). Add tests. Signed-off-by: Petr Viktorin <pviktori@redhat.com> Reviewed-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Jelmer Vernooij <jelmer@samba.org>
2015-03-26Move waf into third_party/.Jelmer Vernooij1-1/+1
Signed-Off-By: Jelmer Vernooij <jelmer@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>