1
0
Fork 0
mirror of https://github.com/libevent/libevent.git synced 2025-12-05 20:45:03 +00:00
Event notification library
Find a file
musvaage a994a52d53
grammar and spelling (#1826)
* spelling

* grammar
2025-11-22 19:15:57 +01:00
.github CI: build and test on android virtual device (#1824) 2025-11-20 09:26:43 +01:00
cmake build: Use check_linker_flag conditionally on cmake version 2025-11-16 23:12:36 +01:00
compat/sys Add caching for evdns (#1717) 2024-10-24 08:28:53 +02:00
Documentation Fix typos (#1825) 2025-11-22 12:45:23 +01:00
extra Patch abi-compliance-checker to avoid endless loop 2024-02-20 08:25:09 +01:00
include Fix typos (#1825) 2025-11-22 12:45:23 +01:00
m4 Add option to auto-detect OpenSSL and MbedTLS 2023-06-07 11:10:14 -07:00
sample Fix typos (#1825) 2025-11-22 12:45:23 +01:00
test Fix typos (#1825) 2025-11-22 12:45:23 +01:00
test-export cmake: Update minimum required version 2024-11-16 21:26:55 +00:00
WIN32-Code Remove manually written nmake makefiles (cmake should be used instead) 2019-04-03 07:33:09 +03:00
.clang-format Add config for clang-format 2016-10-05 15:47:46 +03:00
.exrc Add config for vim/nvim 2023-02-04 14:56:53 +01:00
.gitignore gitignore cleanup (#1672) 2024-06-24 09:58:46 +02:00
.mailmap mailmap: add name/email aliases for yuangongji (name and email) 2019-11-17 15:51:07 +03:00
.uncrustify Add config for uncrustify 2016-10-05 15:47:46 +03:00
.yamllint Ignore truthy in yamllint (for github-actions) 2020-01-26 21:37:11 +03:00
arc4random.c arc4: drop 4096 bytes of the early keystream (#1586) 2024-10-27 17:30:44 +01:00
autogen.sh build: remove inconsistently used x-prefix comparisons 2021-11-24 14:41:33 +08:00
buffer.c Fix typos (#1825) 2025-11-22 12:45:23 +01:00
buffer_iocp.c Fix some typos (#1284) 2022-06-12 23:58:50 +03:00
bufferevent-internal.h Fix typos (#1825) 2025-11-22 12:45:23 +01:00
bufferevent.c Fix non-std printf %p arguments (#1327) 2022-08-28 15:27:04 +03:00
bufferevent_async.c Missing <winerror.h> on win7/MinGW(MINGW32_NT-6.1)/MSYS 2019-07-11 10:21:33 +03:00
bufferevent_filter.c Fix typos (#1634) 2024-04-30 09:59:58 +02:00
bufferevent_mbedtls.c bufferevent_ssl: do not return NULL from upcast 2024-02-18 19:49:44 +01:00
bufferevent_openssl.c Fix -Wcast-function-type errors 2024-06-01 18:24:43 +02:00
bufferevent_pair.c Fix typos (#1634) 2024-04-30 09:59:58 +02:00
bufferevent_ratelim.c Fix integer-overflow in ev_token_bucket_cfg_new 2024-03-03 16:25:08 +01:00
bufferevent_sock.c be: make the code in bufferevent_socket_connect() more reliable 2024-05-06 09:13:45 +02:00
bufferevent_ssl.c bufferevent_ssl: fix freeing ctx in case of error in bufferevent_ssl_new_impl 2024-02-18 19:51:21 +01:00
changelist-internal.h Implemented EV_CLOSED event for epoll backend (EPOLLRDHUP). 2014-01-17 23:20:42 -02:00
ChangeLog Fix typos (#1634) 2024-04-30 09:59:58 +02:00
ChangeLog-1.4 Fix typos (#1634) 2024-04-30 09:59:58 +02:00
ChangeLog-2.0 Fix typos (#1634) 2024-04-30 09:59:58 +02:00
ChangeLog-2.1 Fix typos (#1634) 2024-04-30 09:59:58 +02:00
checkpatch.sh checkpatch.sh: fix clang-format-diff usage 2020-05-27 20:36:38 +03:00
CMakeLists.txt Fix typos (#1825) 2025-11-22 12:45:23 +01:00
configure.ac evutil: use getauxval(AT_SECURE) for SUID check 2025-11-17 21:39:25 +01:00
CONTRIBUTING.md Update documentation [ci skip] 2019-03-11 20:11:44 +03:00
CONTRIBUTORS.md Update contributors (for 2.2 release) 2023-05-20 18:19:31 +02:00
defer-internal.h Export symbols for -fvisibility=hidden (under cmake) 2017-03-13 12:57:22 +03:00
devpoll.c Have all visible internal function names end with an underscore. 2012-02-29 15:07:33 -05:00
Doxyfile Add minimal WebSocket server implementation for evhttp (#1322) 2022-09-12 22:16:56 +03:00
doxygen.am Change prefix for man pages from "le_" to "libevent_" 2020-10-04 22:59:12 +03:00
epoll.c signal: new signal handling backend based on signalfd 2022-11-12 21:14:48 +01:00
epoll_sub.c Merge remote-tracking branch 'origin/patches-2.0' 2014-01-22 11:46:52 -05:00
epolltable-internal.h fix a comment error 2018-12-16 00:51:14 +03:00
evbuffer-internal.h Maximum evbuffer read configuration 2019-03-16 17:30:15 +03:00
evconfig-private.h.cmake Define __EXT_POSIX2 for QNX 2018-10-28 01:59:11 +03:00
evconfig-private.h.in Define __EXT_POSIX2 for QNX 2018-10-28 01:59:11 +03:00
evdns-internal.h Windows platform supports reading IPv6 addresses for DNS server. (#1701) 2024-11-02 18:26:59 +01:00
evdns.c grammar and spelling (#1826) 2025-11-22 19:15:57 +01:00
event-config.h.cmake evutil: use getauxval(AT_SECURE) for SUID check 2025-11-17 21:39:25 +01:00
event-internal.h Fix typos in comments (sample/test/event-internal.h) 2019-08-09 12:34:46 +03:00
event.c Fix -Wuninitialized-const-pointer for evwatch_check_cb_info 2025-11-16 23:07:15 +01:00
event_iocp.c move _WIN32_WINNT defintions before first #include 2023-07-25 10:52:10 -07:00
event_rpcgen.py Fix typos (#1825) 2025-11-22 12:45:23 +01:00
event_tagging.c Export symbols for -fvisibility=hidden (under cmake) 2017-03-13 12:57:22 +03:00
evmap-internal.h Have all visible internal function names end with an underscore. 2012-02-29 15:07:33 -05:00
evmap.c Improve hashsocket() (for win32) to avoid collisions 2024-10-27 15:55:12 +01:00
evport.c Have all visible internal function names end with an underscore. 2012-02-29 15:07:33 -05:00
evrpc-internal.h Fix typos (#1825) 2025-11-22 12:45:23 +01:00
evrpc.c evrpc: proper NULL checks (API function return value added) 2024-02-18 19:48:55 +01:00
evsignal-internal.h signal: new signal handling backend based on signalfd 2022-11-12 21:14:48 +01:00
evthread-internal.h Fix EVBASE_ACQUIRE_LOCK/EVBASE_RELEASE_LOCK for EVENT__DISABLE_THREAD_SUPPORT 2022-07-09 17:36:13 +03:00
evthread.c evthread: fix NULL dereference in evthread_setup_global_lock_() 2024-02-18 19:49:44 +01:00
evthread_pthread.c fix evthread_use_pthreads_with_flags dead lock when first return 2021-07-16 10:21:06 +08:00
evthread_win32.c move _WIN32_WINNT defintions before first #include 2023-07-25 10:52:10 -07:00
evutil.c Always add null byte in evutil_vsnprintf() even if the buffer was truncated 2025-11-19 09:09:20 +01:00
evutil_rand.c Use arc4random_stir over deprecated arc4random_addrandom (#1631) 2024-10-26 20:46:41 +02:00
evutil_time.c Fix typos (#1825) 2025-11-22 12:45:23 +01:00
ht-internal.h Fix unlikely (for libevent) UB in HT_GROW() 2024-11-03 00:40:17 +03:00
http-internal.h Add minimal WebSocket server implementation for evhttp (#1322) 2022-09-12 22:16:56 +03:00
http.c grammar and spelling (#1826) 2025-11-22 19:15:57 +01:00
iocp-internal.h cmake: Export missing symbols for win32 2017-03-14 08:47:18 +03:00
ipv6-internal.h Convert include-guard macro convention to avoid reserved identifiers 2012-02-29 15:07:31 -05:00
kqueue-internal.h Fix some comments 2024-04-24 08:27:12 +02:00
kqueue.c Improve portability on NetBSD 2025-02-02 20:41:01 +01:00
libevent.pc.in libevent.pc: link against core/extra 2018-10-28 03:09:47 +03:00
libevent_core.pc.in Make dependency paths relocatable 2023-05-16 07:46:56 +02:00
libevent_extra.pc.in Make dependency paths relocatable 2023-05-16 07:46:56 +02:00
libevent_mbedtls.pc.in Make dependency paths relocatable 2023-05-16 07:46:56 +02:00
libevent_openssl.pc.in Make dependency paths relocatable 2023-05-16 07:46:56 +02:00
libevent_pthreads.pc.in Make dependency paths relocatable 2023-05-16 07:46:56 +02:00
LICENSE Update LICENSE for ssl-client-mbedtls.c 2020-07-22 23:04:02 +03:00
listener.c Don't try to set SO_REUSEADDR and SO_REUSEPORT on Unix sockets (#1625) 2024-05-20 11:17:45 +02:00
log-internal.h Fix event_debug_logging_mask_ exporting on win32 2017-05-29 22:26:16 +03:00
log.c Revert "Make event_debug_get_logging_mask_() real symbol (win32)" 2017-05-29 22:07:57 +03:00
make-event-config.sed config.h can't be prefixed unconditionally 2018-06-08 02:14:38 +03:00
make_epoll_table.py Implemented EV_CLOSED event for epoll backend (EPOLLRDHUP). 2014-01-17 23:20:42 -02:00
Makefile.am Windows platform supports reading IPv6 addresses for DNS server. (#1701) 2024-11-02 18:26:59 +01:00
mbedtls-compat.h Initial Mbed-TLS 3 support to get the GitHub Actions working again 2022-07-09 20:47:04 +03:00
minheap-internal.h Protect min_heap_push_ against integer overflow. 2019-04-22 23:51:25 +03:00
mm-internal.h Export symbols for -fvisibility=hidden (under cmake) 2017-03-13 12:57:22 +03:00
openssl-compat.h Don't define BIO_get_init() for LibreSSL 3.5+ 2021-11-30 22:32:18 +03:00
poll.c signal: new signal handling backend based on signalfd 2022-11-12 21:14:48 +01:00
PreLoad.cmake Do not install RPATH for install tree by default 2022-03-10 23:54:58 +03:00
PrivacyInfo.xcprivacy Add Privacy Manifest for App Store submissions 2024-05-05 09:32:37 +03:00
ratelim-internal.h Have all visible internal function names end with an underscore. 2012-02-29 15:07:33 -05:00
README.md Edit logo path to match new website directory 2024-04-08 07:08:49 +02:00
SECURITY.md Create Security Policy (#1462) 2023-05-25 07:05:28 +02:00
select.c signal: new signal handling backend based on signalfd 2022-11-12 21:14:48 +01:00
sha1.c Fix "Value stored to 'a' is never read" in SHA1Transform() 2023-03-02 07:29:18 +01:00
sha1.h sha1: hide SHA1_CTX 2022-11-12 16:42:10 +01:00
signal.c signal: new signal handling backend based on signalfd 2022-11-12 21:14:48 +01:00
signalfd.c Fix memory leak in error path of sigfd_add() 2025-11-17 21:41:17 +01:00
ssl-compat.h Fix typos (#1825) 2025-11-22 12:45:23 +01:00
strlcpy-internal.h Export symbols for -fvisibility=hidden (under cmake) 2017-03-13 12:57:22 +03:00
strlcpy.c Fixes some new warnings under clang-15 2023-01-27 08:58:51 +01:00
time-internal.h Export symbols for -fvisibility=hidden (under cmake) 2017-03-13 12:57:22 +03:00
util-internal.h Add caching for evdns (#1717) 2024-10-24 08:28:53 +02:00
watch.c evwatch: Add "prepare" and "check" watchers. 2019-04-03 12:44:50 -04:00
wepoll.c Fix typos (#1634) 2024-04-30 09:59:58 +02:00
wepoll.h wepoll api: fix definition of EPOLLONESHOT to match Linux 2023-10-12 23:02:38 +03:00
whatsnew-2.0.txt Fix typos (#1825) 2025-11-22 12:45:23 +01:00
whatsnew-2.1.txt Fix typos (#1825) 2025-11-22 12:45:23 +01:00
whatsnew-2.2.txt Fix typos (#1825) 2025-11-22 12:45:23 +01:00
win32select.c variable redefinition in win32_dispatch 2020-05-25 10:33:24 +08:00
ws.c ws: fix potential NULL pointer dereference 2024-08-12 10:02:49 +02:00

libevent logo

CI Coverage Status Join the chat at https://gitter.im/libevent/libevent doxygen OpenSSF Scorecard

1. BUILDING AND INSTALLATION

CMake (Unix)

mkdir build && cd build
cmake ..     # Default to Unix Makefiles.
make
make verify  # (optional)

See Documentation/Building#Building on Unix using CMake for more information.

CMake (Windows)

Install CMake: https://cmake.org/

md build && cd build
cmake -G "Visual Studio 10" ..   # Or use any generator you want to use. Run cmake --help for a list
cmake --build . --config Release # Or "start libevent.sln" and build with menu in Visual Studio.

See Documentation/Building#Building on Windows for more information.

Package Managers

You can download and install libevent using the vcpkg dependency manager:

git clone https://github.com/Microsoft/vcpkg.git
cd vcpkg
./bootstrap-vcpkg.sh
./vcpkg integrate install
./vcpkg install libevent

The libevent port in vcpkg is kept up to date by Microsoft team members and community contributors. If the version is out of date, please create an issue or pull request on the vcpkg repository.

Autoconf

Note, since 2.2 it is deprecated

./configure
make
make verify   # (optional)
sudo make install

See Documentation/Building#Autoconf for more information.

2. USEFUL LINKS:

For the latest released version of Libevent, see the official website at https://libevent.org/ .

There's a pretty good work-in-progress manual up at http://www.wangafu.net/~nickm/libevent-book/ .

For the latest development versions of Libevent, access our Git repository via

$ git clone https://github.com/libevent/libevent.git

You can browse the git repository online at:

https://github.com/libevent/libevent

To report bugs, issues, or ask for new features:

Patches: https://github.com/libevent/libevent/pulls

OK, those are not really patches. You fork, modify, and hit the "Create Pull Request" button. You can still submit normal git patches via the mailing list.

Bugs, Features [RFC], and Issues: https://github.com/libevent/libevent/issues

Or you can do it via the mailing list.

There's also a libevent-users mailing list for talking about Libevent use and development:

https://archives.seul.org/libevent/users/

3. ACKNOWLEDGMENTS

The following people have helped with suggestions, ideas, code or fixing bugs.