Sync from SUSE:ALP:Source:Standard:1.0 libevent revision 93846b878b1ac0625dbe50f797680726
This commit is contained in:
commit
0c32c7cf04
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@ -0,0 +1,23 @@
|
||||
## Default LFS
|
||||
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||
*.png filter=lfs diff=lfs merge=lfs -text
|
||||
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||
*.zst filter=lfs diff=lfs merge=lfs -text
|
1150
0001-evwatch-Add-prepare-and-check-watchers.patch
Normal file
1150
0001-evwatch-Add-prepare-and-check-watchers.patch
Normal file
File diff suppressed because it is too large
Load Diff
52
0002-evwatch-fix-race-condition.patch
Normal file
52
0002-evwatch-fix-race-condition.patch
Normal file
@ -0,0 +1,52 @@
|
||||
From 1eefbe38f6a7266e1489765317f4e89489856fc1 Mon Sep 17 00:00:00 2001
|
||||
From: Dan Rosen <mergeconflict@google.com>
|
||||
Date: Wed, 17 Apr 2019 15:44:59 -0400
|
||||
Subject: [PATCH 2/2] evwatch: fix race condition
|
||||
|
||||
There was a race between event_base_loop and evwatch_new (adding a
|
||||
prepare/check watcher while iterating over the watcher list). Only
|
||||
release the mutex immediately before invoking each watcher callback,
|
||||
and reacquire it immediately afterwards (same as is done for normal
|
||||
event handlers).
|
||||
---
|
||||
event.c | 14 ++++++++------
|
||||
1 file changed, 8 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/event.c b/event.c
|
||||
index 5e41ae04..c6eb175c 100644
|
||||
--- a/event.c
|
||||
+++ b/event.c
|
||||
@@ -2012,11 +2012,12 @@ event_base_loop(struct event_base *base, int flags)
|
||||
event_queue_make_later_events_active(base);
|
||||
|
||||
/* Invoke prepare watchers before polling for events */
|
||||
- EVBASE_RELEASE_LOCK(base, th_base_lock);
|
||||
prepare_info.timeout = tv_p;
|
||||
- TAILQ_FOREACH(watcher, &base->watchers[EVWATCH_PREPARE], next)
|
||||
+ TAILQ_FOREACH(watcher, &base->watchers[EVWATCH_PREPARE], next) {
|
||||
+ EVBASE_RELEASE_LOCK(base, th_base_lock);
|
||||
(*watcher->callback.prepare)(watcher, &prepare_info, watcher->arg);
|
||||
- EVBASE_ACQUIRE_LOCK(base, th_base_lock);
|
||||
+ EVBASE_ACQUIRE_LOCK(base, th_base_lock);
|
||||
+ }
|
||||
|
||||
clear_time_cache(base);
|
||||
|
||||
@@ -2033,10 +2034,11 @@ event_base_loop(struct event_base *base, int flags)
|
||||
|
||||
/* Invoke check watchers after polling for events, and before
|
||||
* processing them */
|
||||
- EVBASE_RELEASE_LOCK(base, th_base_lock);
|
||||
- TAILQ_FOREACH(watcher, &base->watchers[EVWATCH_CHECK], next)
|
||||
+ TAILQ_FOREACH(watcher, &base->watchers[EVWATCH_CHECK], next) {
|
||||
+ EVBASE_RELEASE_LOCK(base, th_base_lock);
|
||||
(*watcher->callback.check)(watcher, &check_info, watcher->arg);
|
||||
- EVBASE_ACQUIRE_LOCK(base, th_base_lock);
|
||||
+ EVBASE_ACQUIRE_LOCK(base, th_base_lock);
|
||||
+ }
|
||||
|
||||
timeout_process(base);
|
||||
|
||||
--
|
||||
2.23.0
|
||||
|
1
baselibs.conf
Normal file
1
baselibs.conf
Normal file
@ -0,0 +1 @@
|
||||
libevent-2_1-7
|
BIN
libevent-2.1.12-stable.tar.gz
(Stored with Git LFS)
Normal file
BIN
libevent-2.1.12-stable.tar.gz
(Stored with Git LFS)
Normal file
Binary file not shown.
11
libevent-2.1.12-stable.tar.gz.asc
Normal file
11
libevent-2.1.12-stable.tar.gz.asc
Normal file
@ -0,0 +1,11 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQEzBAABCAAdFiEEnjrIOieXS4TRs0AduGCGhI74aG0FAl8BwzYACgkQuGCGhI74
|
||||
aG31WAf/ZNi3PMWw/N6L03Ga4jD3HVPjfY60zGM3MAIT//4hyEhSBfdvutSawt/R
|
||||
GLOFXAEpdVWi6tojKiKUPKco9mEkLUcY9C/ZTosD1F8tXGM1IEogK7AMrJo8hg1/
|
||||
4fW3tnIiU6JFcuPTIL1a5ReaOPhUCfDiikqx6LkWYuh8fNn2iKcG4Ev6NaSTqGaE
|
||||
sQyshQb0Y1yYSImSjEJQr32d4JxN0z4n03aHruMJ4MHZhrUDzhmQbqLh0KQYybP5
|
||||
G9jmeUqMMQJzlTLn1xCIrQehUeUVKg+WtXfDvWKfbSCyRVJfWO3RsHQvzoyflzuj
|
||||
Nor16y9qAleMVO4i0kHfhGuyCEwx+Q==
|
||||
=nkKm
|
||||
-----END PGP SIGNATURE-----
|
3
libevent-rpmlintrc
Normal file
3
libevent-rpmlintrc
Normal file
@ -0,0 +1,3 @@
|
||||
# libevent-devel-static is a proper name in this package, in analogy to
|
||||
# libevent-devel
|
||||
addFilter("libevent-devel-static.*: W: shlib-policy-missing-lib")
|
883
libevent.changes
Normal file
883
libevent.changes
Normal file
@ -0,0 +1,883 @@
|
||||
-------------------------------------------------------------------
|
||||
Sun Jan 15 22:06:53 UTC 2023 - Cristian Rodríguez <crrodriguez@opensuse.org>
|
||||
|
||||
- Disable the select backend, this can be easily done by lying
|
||||
to configure. This is done due to:
|
||||
* using fd number > 1024 on an fd_set results in a runtime
|
||||
fortify source assertion, preventing further doom.
|
||||
* select will not be changed to handle fd > 1024.
|
||||
* this limit is unreasonable low for this century.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Feb 9 08:18:41 UTC 2021 - Dominique Leuenberger <dimstar@opensuse.org>
|
||||
|
||||
- Drop insserv_prereq and fillup_prereq macros: there are no
|
||||
pre-scripts that would justify these dependencies.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jul 28 23:30:12 UTC 2020 - David Disseldorp <ddiss@suse.com>
|
||||
|
||||
- Update to 2.1.12 stable
|
||||
* buffer: do not pass NULL to memcpy() from evbuffer_pullup()
|
||||
* http: fix undefined-shift in EVUTIL_IS*_ helpers
|
||||
* Check error code of evhttp_add_header_internal() in
|
||||
evhttp_parse_query_impl()
|
||||
* http: fix EVHTTP_CON_AUTOFREE in case of timeout
|
||||
* evdns: Add additional validation for values of dns options
|
||||
* Fix memory corruption in EV_CLOSURE_EVENT_FINALIZE with debug enabled
|
||||
* increase segment refcnt only if evbuffer_add_file_segment() succeeds
|
||||
* evdns: fix a crash when evdns_base with waiting requests is freed
|
||||
* event_base_once: fix potential null pointer threat
|
||||
* http: do not assume body for CONNECT
|
||||
* evbuffer_add_file: fix freeing of segment in the error path
|
||||
* Fix checking return value of the evdns_base_resolv_conf_parse()
|
||||
* Support EV_CLOSED on linux for poll(2)
|
||||
* Parse IPv6 scope IDs.
|
||||
* evutil_time: detect and use _gmtime64_s()/_gmtime64()
|
||||
* bufferevent: allow setting priority on socket and openssl type
|
||||
* Fix EV_CLOSED detection/reporting
|
||||
* Revert "Warn if forked from the event loop during event_reinit()"
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Sep 24 12:03:16 UTC 2019 - Michał Rostecki <mrostecki@opensuse.org>
|
||||
|
||||
- Add upstream patches with the feature of "prepare" and "check"
|
||||
watchers. That feature is needed by envoy-proxy:
|
||||
* 0001-evwatch-Add-prepare-and-check-watchers.patch
|
||||
* 0002-evwatch-fix-race-condition.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Aug 20 22:27:52 UTC 2019 - David Disseldorp <ddiss@suse.com>
|
||||
|
||||
- Update to 2.1.11 stable
|
||||
* Fix ABI breakage that had been introduced in 2.1.10. Strictly speaking
|
||||
this release breaks ABI again to make it compatible with <= 2.1.9.
|
||||
+ See git commit 18104973 for more details
|
||||
* evdns: add new options -- so-rcvbuf/so-sndbuf
|
||||
* various autotools and cmake build changes
|
||||
* buffer: fix possible NULL dereference in evbuffer_setcb() on ENOMEM
|
||||
* Warn if forked from the event loop during event_reinit()
|
||||
* evutil: set the have_checked_interfaces in evutil_check_interfaces()
|
||||
* https-client: correction error checking
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 2 07:05:45 UTC 2019 - Martin Liška <mliska@suse.cz>
|
||||
|
||||
- Use FAT LTO objects in order to provide proper static library.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jul 1 09:40:17 UTC 2019 - Andreas Schwab <schwab@suse.de>
|
||||
|
||||
- Fix name of library package (bsc#1138369)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon May 27 16:37:28 UTC 2019 - David Disseldorp <ddiss@suse.com>
|
||||
|
||||
- Update to 2.1.10 stable
|
||||
* evdns: add DNS_OPTION_NAMESERVERS_NO_DEFAULT /
|
||||
EVDNS_BASE_NAMESERVERS_NO_DEFAULT
|
||||
* Add support for EV_TIMEOUT to event_base_active_by_fd
|
||||
* kqueue: Avoid undefined behaviour.
|
||||
* Prevent integer overflow in kq_build_changes_list.
|
||||
* evdns: fix lock/unlock mismatch in evdns_close_server_port()
|
||||
* Protect min_heap_push_ against integer overflow.
|
||||
* le-proxy: initiate use of the Winsock DLL
|
||||
* Fix leaks in error path of the bufferevent_init_common_()
|
||||
* buffer: make evbuffer_prepend() of zero-length array no-op
|
||||
* Don't loose top error in SSL
|
||||
* Remove needless check for arc4_seeded_ok
|
||||
* Cleanup __func__ detection
|
||||
* Add convenience macros for user-triggered events
|
||||
* Notify event base if there are no more events, so it can exit without
|
||||
delay
|
||||
* Fix base unlocking in event_del() if event_base_set() runned in another
|
||||
thread
|
||||
* If precise_time is false, we should not set EVENT_BASE_FLAG_PRECISE_TIMER
|
||||
* Fix race in access to ev_res from event loop with event_active()
|
||||
* Return from event_del() after the last event callback termination
|
||||
* Preserve socket error from listen across closesocket cleanup
|
||||
* fix connection retries when there more then one request for connection
|
||||
* improve error path for bufferevent_{setfd,enable,disable}()
|
||||
* Fix conceivable UAF of the bufferevent in evhttp_connection_free()
|
||||
* Fix evhttp_connection_get_addr() fox incomming http connections
|
||||
* fix leaks in evhttp_uriencode()
|
||||
* CONNECT method only takes an authority
|
||||
* Allow bodies for GET/DELETE/OPTIONS/CONNECT
|
||||
* Do not crash when evhttp_send_reply_start() is called after a timeout.
|
||||
* Fix crashing http server when callback do not reply in place
|
||||
* fix handling of close_notify (ssl) in http with openssl bufferevents
|
||||
* use *_new_with_arg() to match function prototype
|
||||
* avoid NULL dereference on request is not EVHTTP_REQ_POST
|
||||
* bufferevent_socket_connect{,_hostname}() missing event callback and use
|
||||
ret code
|
||||
* don't fail be_null_filter if bytes are copied
|
||||
* Call underlying bev ctrl GET_FD on filtered bufferevents
|
||||
* be_openssl: avoid leaking of SSL structure
|
||||
* Add missing includes into openssl-compat.h
|
||||
* Explicitly call SSL_clear when reseting the fd.
|
||||
* sample/https-client: use host SSL certificate store by default
|
||||
* ipv6only socket bind support
|
||||
* evdns: handle NULL filename explicitly
|
||||
* Fix assert() condition in evbuffer_drain() for IOCP
|
||||
* fix incorrect unlock of the buffer mutex (for deferred callbacks)
|
||||
* Fix wrong assert in evbuffer_drain()
|
||||
* Port `event_rpcgen.py` and `test/check-dumpevents.py` to Python 3.
|
||||
- rename python2-shebang.patch -> python3-shebang.patch following port
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jul 10 16:19:03 UTC 2018 - mrostecki@suse.com
|
||||
|
||||
- Make use of %license macro
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jun 12 14:50:53 UTC 2018 - mrostecki@suse.com
|
||||
|
||||
- Add devel-static package, which is needed for building Envoy
|
||||
(https://www.envoyproxy.io/) and Cilium with Envoy integration
|
||||
- Fix an error about /usr/bin/env shebang in event_rpcgen.py
|
||||
* python2-shebang.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Oct 2 21:13:04 UTC 2017 - jengelh@inai.de
|
||||
|
||||
- Trim description of secondary packages and SRPM.
|
||||
Rectify RPM group.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Oct 2 08:24:33 UTC 2017 - dimstar@opensuse.org
|
||||
|
||||
- Add baselibs.conf: build libevent-2_1-8-32bit (needed by
|
||||
libqt5-qtwebengine).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Feb 20 14:13:21 UTC 2017 - ddiss@suse.com
|
||||
|
||||
- Update to 2.1.8 stable
|
||||
* Fix _FILE_OFFSET_BITS redefinition
|
||||
* evutil_time: include <unistd.h> when there is only sleep()/usleep()
|
||||
* test/dns: run async resolving after sync one (to avoid timeouts)
|
||||
* test/http: turn off some tests that based on backlog filling
|
||||
* Fix incorrect MIME type
|
||||
- Add libevent-2.1.8-stable.tar.gz.asc tarball GPG signature
|
||||
* Replace keyring with Azat Khuzhin's public key
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Nov 25 13:32:16 UTC 2016 - ddiss@suse.com
|
||||
|
||||
- Update to 2.1.7 rc
|
||||
* Fix cmake -DEVENT__COVERAGE=ON
|
||||
* use ev_uint16_t instead of unsigned short for port
|
||||
* poll: Prevent libevent from spinning if POLLNVAL occurs
|
||||
* Make it build using OpenSSL 1.1.0
|
||||
* Don't call BIO_number_{read|written} on NULL BIOs.
|
||||
* Switch from a 512 to 2048-bit RSA key.
|
||||
* Ignore temporary configure files
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jul 6 13:23:28 UTC 2016 - ddiss@suse.com
|
||||
|
||||
- Fix pkg-config/pkgconfig BuildRequires for Fedora.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Mar 14 09:10:46 UTC 2015 - mpluskal@suse.com
|
||||
|
||||
- Cleanup spec file with spec-cleaner
|
||||
- Add gpg signature
|
||||
- Enable tests that do not require network connection
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Feb 22 15:47:36 UTC 2015 - benoit.monin@gmx.fr
|
||||
|
||||
- update to 2.0.22:
|
||||
* Avoid integer overflow bugs in evbuffer_add() and related
|
||||
functions. See CVE-2014-6272 advisory for more information
|
||||
* fix #73 and fix http_connection_fail_test to catch it
|
||||
* Avoid racy bufferevent activation
|
||||
* Fix compilation with WIN32_HAVE_CONDITION_VARIABLES enabled
|
||||
* Fix missing AC_PROG_SED on older Autoconfs
|
||||
* Backport libevent to vanilla Autoconf 2.59 (as used in RHEL5)
|
||||
* Use AC_CONFIG_HEADERS in place of AM_CONFIG_HEADERS for
|
||||
autmake 1.13 compat
|
||||
* Rename configure.in to configure.ac to appease newer autoconfs
|
||||
* Avoid using top_srcdir in TESTS: new automakes do not like this
|
||||
* Use windows vsnprintf fixup logic on all windows environments
|
||||
* Fix a compiler warning when checking for arc4random_buf linker
|
||||
breakage
|
||||
* Fix another arc4random_buf-related warning
|
||||
* Add -Qunused-arguments for clang on macos
|
||||
* Avoid leaking fds on evconnlistener with no callback set
|
||||
* Avoid double-close on getsockname error in
|
||||
evutil_ersatz_socketpair
|
||||
* Fix a locking error in bufferevent_socket_get_dns_error
|
||||
* libevent/win32_dealloc() : fix sizeof(pointer) vs
|
||||
sizeof(*pointer)
|
||||
* bufferevent_pair: don't call downcast(NULL)
|
||||
* Consistently check for failure from evbuffer_pullup()
|
||||
* Fix race caused by event_active
|
||||
* Avoid redundant invocations of init_extension_functions for
|
||||
IOCP
|
||||
* Typo fixes from Linus Nordberg
|
||||
* Add a few files created by "make verify" to .gitignore
|
||||
* regress_buffer: fix 'memcmp' compare size
|
||||
* Fix bufferevent setwatermark suspend_read
|
||||
* Fix evbuffer_peek() with len==-1 and start_at non-NULL
|
||||
* Checking request nameserver for NULL, before using it
|
||||
* Fix SEGFAULT after evdns_base_resume if no nameservers
|
||||
installed
|
||||
* Fix a crash in evdns related to shutting down evdns
|
||||
* Check does arch have the epoll_create and __NR_epoll_wait
|
||||
syscalls
|
||||
* Avoid other RNG initialization FS reads when urandom file is
|
||||
specified
|
||||
* When we seed from /proc/sys/kernel/random/uuid, count it as
|
||||
success
|
||||
* Document that arc4random is not a great cryptographic PRNG
|
||||
* Add evutil_secure_rng_set_urandom_device_file
|
||||
* Really remove RNG seeds from the stack
|
||||
* Fix a mistake in evbuffer_remove() arguments in example http
|
||||
server code
|
||||
* Fix a typo in a comment in buffer.h
|
||||
* Clarify event_base_loop exit conditions
|
||||
* Use FindClose for handle from FindFirstFile in http-server.c
|
||||
* Fix a typo in a doxygen comment
|
||||
- update source URL
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jan 9 18:01:22 UTC 2015 - ddiss@suse.com
|
||||
|
||||
- Update to 2.1.5 beta
|
||||
* Avoid integer overflow bugs in evbuffer_add() and related
|
||||
functions. See CVE-2014-6272 advisory for more information.
|
||||
* Provide support for SO_REUSEPORT through LEV_OPT_REUSABLE_PORT
|
||||
* Fix use-after-free error in EV_CLOSURE_EVENT callback
|
||||
* Fix race caused by event_active
|
||||
* Fix evbuffer_peek() with len==-1 and start_at non-NULL.
|
||||
* Consistently check for failure from evbuffer_pullup()
|
||||
* Fix evbuffer_peek() with len==-1 and start_at non-NULL.
|
||||
* be async: avoid double close()
|
||||
* Avoid double free for filterevents that use BEV_OPT_CLOSE_ON_FREE
|
||||
* fix bufferevent setwatermark suspend_read
|
||||
* bufferevent_openssl: reset fd_is_set when setfd with -1 is called
|
||||
* Add evhttp_connection_set_family() to set addrinfo->family for
|
||||
DNS requests
|
||||
* Implement interface that provides the ability to have an outbound
|
||||
evhttp_connection free itself once all requests have completed
|
||||
* Implement new/free for struct evutil_monotonic_timer and export
|
||||
monotonic time functions
|
||||
* Fix a crash in evdns related to shutting down evdns
|
||||
* evdns: avoid read-after-free in evdns_request_timeout_callback()
|
||||
* Correctly handle allocation failures in evdns_getaddrinfo
|
||||
* evdns: fix EVDNS_BASE_DISABLE_WHEN_INACTIVE in case
|
||||
retransmit/retry
|
||||
* evdns: add retry/reissue tests for
|
||||
EVDNS_BASE_DISABLE_WHEN_INACTIVE
|
||||
* evdns: fail ns after we are failing/retrasmitting request
|
||||
* http: reset connection before installing retry timer (fix http
|
||||
retries handling)
|
||||
* regress_dns: fix leaks in getaddrinfo_async{,_cancel_stress}
|
||||
tests
|
||||
* use correct tt macro for pointer compare
|
||||
* regress_buffer: fix 'memcmp' compare size
|
||||
* Use a more precise calculation for max in time-ratelim.c
|
||||
* Make a buffer larger in the tests to avoid a scary
|
||||
evbuffer_copyout_from()
|
||||
* Make http-server.c output into good html5
|
||||
* Use FindClose for handle from FindFirstFile in http-server.c
|
||||
* https-client: add -retries argument, for connection retries
|
||||
* Fix mixed declarations and code (forbidden by ISO C90)
|
||||
* tree.h: drop duplicated content of tree.h
|
||||
* evdns: disable probing with EVDNS_BASE_DISABLE_WHEN_INACTIVE
|
||||
* Change return type of evutil_load_windows_system_library_ to
|
||||
HMODULE
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 21 13:19:13 UTC 2014 - ddiss@suse.com
|
||||
|
||||
- Fix build on non-SUSE rpm based platforms.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 21 12:49:07 UTC 2014 - ddiss@suse.com
|
||||
|
||||
- Update to 2.1.4 alpha
|
||||
* Added event_base_get_num_events()
|
||||
* New event_base_active_by_fd API
|
||||
* Add event_base_active_by_signal by analogy
|
||||
* Add access to max event count stats
|
||||
* Implemented EV_CLOSED event for epoll backend
|
||||
(EPOLLRDHUP).
|
||||
* Add evutil_secure_rng_set_urandom_device_file
|
||||
* Add function to fetch underlying ratelimit cfg
|
||||
* Pass and return const for bufferevent_get_token_bucket_cfg
|
||||
* Add watermark introspection
|
||||
* Add an option to trigger bufferevent I/O callbacks
|
||||
* Add an option to trigger bufferevent event callbacks
|
||||
* Add evhttp_connection_get_server()
|
||||
* add a http default content type option
|
||||
* http: implement new evhttp_connection_get_addr() api.
|
||||
* Add a variant of evhttp_send_reply_chunk() with a callback on
|
||||
evhttp_write_buffer()
|
||||
* Allow registering callback for parsing HTTP headers
|
||||
* Provide on request complete callback facility
|
||||
* evhttp_request_set_on_complete_cb to be more specific about what
|
||||
the function actually does and usage
|
||||
* bug fix for issues #293 evdns_base_load_hosts doesn't remove
|
||||
outdated addresses
|
||||
* Don't segfault on no found event backend.
|
||||
* Change the BSD license from 4 to 3-clause.
|
||||
* Minimum required python version is 2.4.
|
||||
* Added EVENT__ENABLE_GCC_WARNINGS, turns all warnings into
|
||||
errors.
|
||||
* Some work on making it possible to simply do add_subdirectory() on
|
||||
the project.
|
||||
* Rename event_extras to event_extra
|
||||
* If evsel->del() fails, don't leave the evmap in an inconsistent
|
||||
state
|
||||
* Move event_debug_note_teardown_ before mm_free.
|
||||
* Check CLOCK_MONOTONIC_* at runtime if needed.
|
||||
* Fix reinit of fds with EV_WRITE but not EV_READ.
|
||||
* Tweaked callbacks to prevent race condition
|
||||
(https://github.com/libevent/libevent/issues/104)
|
||||
* Move assert(ev) to before we use ev in EV_CLOSURE_EVENT_FINALIZE
|
||||
case
|
||||
* Fix a double close() bug in evhttp when the underlying bufferevent uses
|
||||
BEV_OPT_CLOSE_ON_FREE.
|
||||
* Avoid racy bufferevent activation
|
||||
* When we seed from /proc/sys/kernel/random/uuid, count it as success
|
||||
* Avoid other RNG initialization FS reads when urandom file is
|
||||
specified
|
||||
* Really remove RNG seeds from the stack
|
||||
* Initialize async bufferevent timeout CBs unconditionally
|
||||
* Checking request nameserver for NULL, before using it.
|
||||
* Fix SEGFAULT after evdns_base_resume if no nameservers
|
||||
installed.
|
||||
* Actually use the log facility for reporting evdns problems.
|
||||
* Fix SEGFAULT after evdns_base_resume if no nameservers
|
||||
installed.
|
||||
* fix for ServFail from RIPE Atlas release
|
||||
* Missed lock acquire/release in event_base_cancel_single_callback_()
|
||||
* Fix locking in bufferevent_get_options_().
|
||||
* Avoid leaking segment mappings when offset is not a page multiple
|
||||
* Add tests for evdns_base_resume().
|
||||
* Avoid redundant syscall to make a nonblocking socket nonblocking
|
||||
* Avoid redundant syscall if making a socket cloexec twice
|
||||
* Avoid redundant invocations of init_extension_functions for IOCP
|
||||
* le-proxy: Fail more gracefully if opening listener fails
|
||||
* http-server: drop uri_root from base_url in http-server.
|
||||
* https-client: POST supported, args supported
|
||||
* https-client: Set hostname for SNI extension
|
||||
|
||||
- Update to 2.1.3 alpha
|
||||
* Implement event_finalize() and related functions to avoid certain
|
||||
deadlocks
|
||||
* Use finalization feature so bufferevents can avoid deadlocks
|
||||
* Always run pending finalizers when event_base_free() is called
|
||||
* Remove bufferevent_del_generic_timeout_cbs as now unused
|
||||
* More documentation for finalization feature
|
||||
* Make the event_finalize* functions return an error code
|
||||
* Mark the finalize stuff as experiemental in case it needs to
|
||||
change
|
||||
* evdns: New flag to make evdns not prevent the event loop from
|
||||
exiting
|
||||
* Make event_remove_timer behave correctly with persistent timers
|
||||
* Unit test for event_remove_timer with EV_PERSIST.
|
||||
* Double-check next timeout when adding events
|
||||
* event_base_update_cache_time should be a no-op if the loop isn't
|
||||
running
|
||||
* Avoid leaking fds on evconnlistener with no callback set
|
||||
* Avoid double-close on getsockname error in evutil_ersatz_socketpair
|
||||
* Fix a locking error in bufferevent_socket_get_dns_error.
|
||||
* Fix a mistake in evbuffer_remove() arguments in example http server code
|
||||
* When EWOULDBLOCK is not EAGAIN, treat it as equivalent to it
|
||||
* Fix ipv6 support for http. When URL contain domain, not IP
|
||||
address.
|
||||
* uri decode: fix for warning "use of uninitialised value"
|
||||
* uri decode: changed the test for the existence of the next character
|
||||
* Add new error_cb for actual reporting of HTTP request errors.
|
||||
* Add test for EVREQ_HTTP_REQUEST_CANCEL into http_cancel_test()
|
||||
* Drop extra header http_struct.h from regress_http.c
|
||||
* https-client was putting newlines at 256-byte boundaries
|
||||
* better handling of OpenSSL errors
|
||||
* use Debian's default root certificate location
|
||||
* use iSECPartners code to validate hostname in certificate
|
||||
* pull in wildcard matching code from cURL
|
||||
|
||||
- Update to 2.1.2 alpha
|
||||
* Replace pipe-based notification with EVFILT_USER where possible.
|
||||
* Make th_base_lock nonrecursive.
|
||||
* New event_get_priority() function to return an event's priority
|
||||
* Add a bufferevent_get_priority() function
|
||||
* Add an event_base_loopcontinue() to tell Libevent to rescan for more
|
||||
events right away
|
||||
* Add a new callback to get called on evbuffer_file_segment free
|
||||
* Expose event_base_foreach_event() as a public API.
|
||||
* Add an event_remove_timer() to remove timer on an event without
|
||||
deleting it
|
||||
* Make bufferevent_set_timeouts(bev, NULL, NULL) have plausible
|
||||
semantics
|
||||
* Rename event_enable_lock_debuging() to ..._debugging(). (The old name
|
||||
should still work.)
|
||||
* Add missing implementation for event_enable_debug_logging
|
||||
* Do not track use_monotonic field when is no monotonic clock
|
||||
* EVENT_BASE_FLAG_PRECISE_TIMER indicates we want fine timer precision
|
||||
* On Linux, use CLOCK_MONOTONIC_COARSE by default
|
||||
* Refactor monotonic timer handling into a new type and set of
|
||||
functions; add a gettimeofday-based ratcheting implementation
|
||||
* Add EVENT_PRECISE_TIMER environment var for selecting precise-but-slow
|
||||
timer
|
||||
* Avoid giving a spurious warning when timerfd support is unavailable
|
||||
* Free dangling event_once objects on event_base_free()
|
||||
* Avoid (unlikely) overflow in bench_httpclient.c
|
||||
* Change evutil_weakrand_() to avoid platform random()
|
||||
* Refactor the callback part of an event into its own event_callback
|
||||
type
|
||||
* Add "active later" event_callbacks to supersede deferred
|
||||
* event_base_assert_ok: check value of event_active_count for
|
||||
correctness
|
||||
* Replace deferred_cbs with event_callback-based implementation.
|
||||
* Restore our priority-inversion-prevention code with deferreds
|
||||
* Refactor event_persist_closure: raise and extract some common logic
|
||||
* Remove the unused bits from EVLIST_ALL
|
||||
* ignore LWS after field-content in headers
|
||||
* Remove trailing tabs in HTTP headers as well.
|
||||
* Remove internal ws from multiline http headers correctly
|
||||
* add evhttp_request_get_response_code_line
|
||||
* Use EVUTIL_SOCKET_ERROR() wrapper to save/restore errno in
|
||||
evhttp_connection_fail_
|
||||
* preserve errno in evhttp_connection_fail_ for inspection by the
|
||||
callback
|
||||
* Correctly handle running on a system where accept4 doesn't work.
|
||||
* Avoid double-free on error in evbuffer_add_file.
|
||||
* Fix another possible uninitialized read in dns regression tests.
|
||||
* Prevent reference leak of bufferevent if getaddrinfo fails.
|
||||
* Make event_base_getnpriorities work with old "implicit base" code
|
||||
* Fix event_dlist definition when sys/queue not included
|
||||
|
||||
- Update to 2.1.1 alpha
|
||||
* Replace several TAILQ users with LIST. LIST can be a little faster than
|
||||
TAILQ for cases where we don't need queue-like behavior.
|
||||
* Disabled code to optimize the case where we reinsert an existing
|
||||
timeout
|
||||
* Remove a needless base-notify when rescheduling the first timeout
|
||||
* Save a needless comparison when removing/adjusting timeouts
|
||||
* Possible optimization: split event_queue_insert/remove into
|
||||
separate functions.
|
||||
* Make event_count maintenance branchless at the expense of an
|
||||
extra shift.
|
||||
* Optimization in event_process_active(): ignore maxcb & endtime
|
||||
for highest priority events.
|
||||
* Bypass event_add when using event_base_once() for a 0-sec timeout
|
||||
* Remove the eventqueue list and the ev_next pointers.
|
||||
* Roughly 20% speed increase when line-draining a buffer using
|
||||
EVBUFFER_EOL_CRLF
|
||||
* Infrastructure for using faster/fewer syscalls when creating
|
||||
sockets
|
||||
* Minimize syscalls during socket creation in listener.c
|
||||
* Use a wrapper function to create the notification
|
||||
pipe/socketpair/eventfd
|
||||
* Use pipes for telling signals to main thread when possible
|
||||
* Save syscalls when constructing listener sockets for evhttp
|
||||
* Save some syscalls when creating evdns sockets
|
||||
* Save some syscalls when constructing a socket for a bufferevent
|
||||
* Prefer epoll_create1 on Linux where available
|
||||
* Use current event set rather than current pending change when
|
||||
deciding whether to no-op a del
|
||||
* evport: use evmap_io to track fdinfo status. Should save time and
|
||||
RAM.
|
||||
* evport: Remove a linear search over recent events when
|
||||
reactivating them
|
||||
* evport: Use portev_user to remember fdinfo struct
|
||||
* evport: don't scan more events in ed_pending than needed
|
||||
* evport: Remove artificial low limit on max events per getn call
|
||||
* Reenable main/many_events_slow_add for evport in 2.1
|
||||
* Add event_enable_debug_logging() to control use of debug logs
|
||||
* Add event_config function to limit time/callbacks between calls
|
||||
to dispatch
|
||||
* New EVLOOP_NO_EXIT_ON_EMPTY option to keep looping even when no
|
||||
events are pending
|
||||
* Add event_base_get_npriorities() function.
|
||||
* Make evbase_priority_init() and evbase_get_npriorities()
|
||||
threadsafe
|
||||
* New event_base_update_cache_time() to set cached_tv to current
|
||||
time
|
||||
* Add event_self_cbarg() to be used in conjunction with
|
||||
event_new().
|
||||
* Add a new libevent_global_shutdown() to free all globals before
|
||||
exiting.
|
||||
* Use getifaddrs to detect our interfaces if possible
|
||||
* Add event_base_get_running_event() to get the event* whose cb we
|
||||
are in
|
||||
* Add evbuffer_add_file_segment() so one fd can be used efficiently
|
||||
in more than one evbuffer_add_file at a time
|
||||
* Allow evbuffer_ptr_set to yield a point just after the end of the
|
||||
buffer.
|
||||
* Allow evbuffer_ptr to point to position 0 in an empty evbuffer
|
||||
* Set the special "not found" evbuffer_ptr consistently.
|
||||
* support adding buffers to other buffers non-destructively
|
||||
* prevent nested multicast references, reworked locking
|
||||
* New EVBUFFER_EOL_NUL to read NUL-terminated strings from an
|
||||
evbuffer
|
||||
* Make evbuffer_file_segment_types adaptable
|
||||
* Added evbuffer_add_iovec and unit tests.
|
||||
* Add evbuffer_copyout_from to copy data from the middle of a
|
||||
buffer
|
||||
* Allow users to set allow_dirty_shutdown
|
||||
* Add a bufferevent_getcb() to find a bufferevent's current
|
||||
callbacks
|
||||
* bufferevent: Add functions to set/get max_single_read/write
|
||||
values.
|
||||
* bev_ssl: Be more specific in event callbacks. evhttp in particular gets
|
||||
confused without at least one of BEV_EVENT_{READING|WRITING}.
|
||||
* Support TCP_DEFER_ACCEPT sockopts for listeners
|
||||
* Allow evconnlistener to be created in disabled state.
|
||||
* The LEV_OPT_CLOSE_ON_EXEC flag now applies to accepted listener
|
||||
sockets too
|
||||
* Add evhttp callback for bufferevent creation; this lets evhttp
|
||||
support SSL.
|
||||
* evhttp: Add evhttp_foreach_bound_socket.
|
||||
* Provide the autoconf m4 macros for the new OpenSSL via pkg-config
|
||||
stuff.
|
||||
* Move libevent 1.x headers to include/, to put all public headers in
|
||||
a new place.
|
||||
* Add a magic number to debug_locks to better catch lock-coding
|
||||
errors.
|
||||
* munge the debug_lock signature before freeing it: it might help us
|
||||
catch use-after-free
|
||||
* Tweaks to return types with end-of-buf ptrs
|
||||
* New evhttp function to adjust initial retry timeout
|
||||
* event_rpcgen.py now prints status information to stdout and errors to
|
||||
stderr.
|
||||
* Restore fast-path event_reinit() for slower backends
|
||||
* Check changelist as part of checking representational integrity
|
||||
* Convert event-config.h macros to avoid reserved identifiers
|
||||
* Convert include-guard macro convention to avoid reserved identifiers
|
||||
* Make event_rpcgen.py output conform to identifier conventions
|
||||
* Apply the naming convention to our EVUTIL_IS* functions
|
||||
* Do not use system EAI/AI values if we are not using the system
|
||||
getaddrinfo.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Jun 29 12:36:28 UTC 2013 - i@marguerite.su
|
||||
|
||||
- update to 2.0.21
|
||||
* see ChangeLog for details.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Nov 16 21:24:42 UTC 2012 - andreas.stieger@gmx.de
|
||||
|
||||
- update to 2.0.20
|
||||
* core: Make event_pending() threadsafe
|
||||
* evhttp: Fix a memory leak on error in evhttp_uriencode
|
||||
* evbuffer: Avoid possible needless call to writev
|
||||
* evdns: memset sockaddr_in before using it
|
||||
* evhttp: Check more setsockopt return values when binding sockets
|
||||
* evdns: Avoid segfault on weird timeout during name lookup
|
||||
* bufferevent_ssl: Correctly invoke callbacks when a SSL
|
||||
bufferevent reads some and then blocks
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jul 30 22:21:50 UTC 2012 - crrodriguez@opensuse.org
|
||||
|
||||
- Libevent 2.0.19
|
||||
* Fix periodic timeout behavior when time jumps forwar
|
||||
* Avoid certain priority inversions
|
||||
* More evdns improvements
|
||||
* lots of other bugfixes, see NEWS for details.
|
||||
- Provide openssl support.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Feb 1 01:13:02 UTC 2012 - jengelh@medozas.de
|
||||
|
||||
- Remove redundant tags/sections per specfile guideline suggestions
|
||||
- Use "pkgconfig" BR so that the package also works on Redhats.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 3 13:59:36 UTC 2011 - friseer@gmx.de
|
||||
|
||||
- spec mods
|
||||
o libsoname macro
|
||||
o name macro
|
||||
- added baselibs.conf
|
||||
- rpmlint
|
||||
o fix self obsoletes
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Mar 22 11:51:31 UTC 2011 - dimstar@opensuse.org
|
||||
|
||||
- Drop autoreconf call from build section. We do not carry any
|
||||
patches at this time.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Mar 21 23:02:31 UTC 2011 - dimstar@opensuse.org
|
||||
|
||||
- Update to version 2.0.10:
|
||||
+ Bugfixes:
|
||||
- Minor fix for IOCP shutdown handling fix
|
||||
- Correctly notify the main thread when activating an event
|
||||
from a subthread
|
||||
- Reject overlong http requests early when Expect:100-continue
|
||||
is set
|
||||
- EVUTIL_ASSERT: Use sizeof() to avoid "unused variable"
|
||||
warnings with -DNDEBUG.
|
||||
+ Code cleanups:
|
||||
- bufferevent-internal.h: Use the new event2/util.h header,
|
||||
not evutil.h
|
||||
- Use relative includes instead of system includes consistently
|
||||
- Make whitespace more consistent
|
||||
- For all changes between 1.4.14 and 2.0.10, see ChangeLog.
|
||||
- BuildRequire pkg-config, for proper pkgconfig() provides.
|
||||
- Change library soname to libevent-2_0-5
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 21 14:41:53 UTC 2010 - alexandre@exatati.com.br
|
||||
|
||||
- Spec file cleaned with spec-cleaner;
|
||||
- Changes in 1.4.14b-stable
|
||||
o Set the VERSION_INFO correctly for 1.4.14
|
||||
|
||||
- Changes in 1.4.14-stable
|
||||
o Add a .gitignore file for the 1.4 branch. (d014edb)
|
||||
o Backport evbuffer_readln(). (b04cc60 Nicholas Marriott)
|
||||
o Make the evbuffer_readln backport follow the current API (c545485)
|
||||
o Valgrind fix: Clear struct kevent before checking for OSX bug. (5713d5d William Ahern)
|
||||
o Fix a crash when reading badly formatted resolve.conf (5b10d00 Yasuoka Masahiko)
|
||||
o Fix memory-leak of signal handler array with kqueue. [backport] (01f3775)
|
||||
o Update sample/signal-test.c to use newer APIs and not leak. (891765c Evan Jones)
|
||||
o Correct all versions in 1.4 branch (ac0d213)
|
||||
o Make evutil_make_socket_nonblocking() leave any other flags alone. (81c26ba Jardel Weyrich)
|
||||
o Adjusted fcntl() retval comparison on evutil_make_socket_nonblocking(). (5f2e250 Jardel Weyrich)
|
||||
o Correct a debug message in evhttp_parse_request_line (35df59e)
|
||||
o Merge branch 'readln-backport' into patches-1.4 (8771d5b)
|
||||
o Do not send an HTTP error when we've already closed or responded. (4fd2dd9 Pavel Plesov)
|
||||
o Re-add event_siglcb; some old code _was_ still using it. :( (bd03d06)
|
||||
o Make Libevent 1.4 build on win32 with Unicode enabled. (bce58d6 Brodie Thiesfield)
|
||||
o Distribute nmake makefile for 1.4 (20d706d)
|
||||
o do not fail while sending on http connections the client closed. (5c8b446)
|
||||
o make evhttp_send() safe against terminated connections, too (01ea0c5)
|
||||
o Fix a free(NULL) in min_heap.h (2458934)
|
||||
o Fix memory leak when setting up priorities; reported by Alexander Drozdov (cb1a722)
|
||||
o Clean up properly when adding a signal handler fails. (ae6ece0 Gilad Benjamini)
|
||||
o Do not abort HTTP requests missing a reason string. (29d7b32 Pierre Phaneuf)
|
||||
o Fix compile warning in http.c (906d573)
|
||||
o Define _REENTRANT as needed on Solaris, elsewhere (6cbea13)
|
||||
|
||||
- Changes in 1.4.13-stable:
|
||||
o If the kernel tells us that there are a negative number of bytes to read from a socket, do not believe it. Fixes bug 2841177; found by Alexander Pronchenkov.
|
||||
o Do not allocate the maximum event queue and fd array for the epoll backend at startup. Instead, start out accepting 32 events at a time, and double the queue's size when it seems that the OS is generating events faster than we're requesting them. Saves up to 512K per epoll-based event_base. Resolves bug 2839240.
|
||||
o Fix compilation on Android, which forgot to define fd_mask in its sys/select.h
|
||||
o Do not drop data from evbuffer when out of memory; reported by Jacek Masiulaniec
|
||||
o Rename our replacement compat/sys/_time.h header to avoid build a conflict on HPUX; reported by Kathryn Hogg.
|
||||
o Build kqueue.c correctly on GNU/kFreeBSD platforms. Patch pulled upstream from Debian.
|
||||
o Fix a problem with excessive memory allocation when using multiple event priorities.
|
||||
o When running set[ug]id, don't check the environment. Based on a patch from OpenBSD.
|
||||
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Oct 28 17:39:29 UTC 2009 - crrodriguez@opensuse.org
|
||||
|
||||
- libevent-devel Requires glibc-devel
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Aug 27 15:21:57 CEST 2009 - meissner@suse.de
|
||||
|
||||
- Changes in 1.4.12-stable:
|
||||
o Try to contain degree of failure when running on a win32 version so
|
||||
heavily firewalled that we can't fake a socketpair.
|
||||
o Fix an obscure timing-dependent, allocator-dependent crash in the evdns code.
|
||||
o Use __VA_ARGS__ syntax for varargs macros in event_rpcgen when compiler
|
||||
is not GCC.
|
||||
o Activate fd events in a pseudorandom order with O(N) backends, so
|
||||
that we don't systematically favor low fds (select) or earlier-added fds
|
||||
(poll, win32).
|
||||
o Fix another pair of fencepost bugs in epoll.c. [Patch from Adam Langley.]
|
||||
o Do not break evdns connections to nameservers when our IP changes.
|
||||
o Set truncated flag correctly in evdns server replies.
|
||||
o Disable strict aliasing with GCC: our code is not compliant with it.
|
||||
|
||||
- Changes in 1.4.11-stable:
|
||||
o Fix a bug when removing a timeout from the heap. [Patch from Marko Kreen]
|
||||
o Remove the limit on size of HTTP headers by removing static buffers.
|
||||
o Fix a nasty dangling pointer bug in epoll.c that could occur after
|
||||
epoll_recalc(). [Patch from Kevin Springborn]
|
||||
o Distribute Win32-Code/event-config.h, not ./event-config.h
|
||||
|
||||
- Changes in 1.4.10-stable:
|
||||
o clean up buffered http connection data on reset; reported by Brian O'Kelley
|
||||
o bug fix and potential race condition in signal handling; from Alexander Drozdov
|
||||
o rename the Solaris event ports backend to evport
|
||||
o support compilation on Haiku
|
||||
o fix signal processing when a signal callback delivers a signal; from Alexander Drozdov
|
||||
o const-ify some arguments to evdns functions.
|
||||
o off-by-one error in epoll_recalc; reported by Victor Goya
|
||||
o include Doxyfile in tar ball; from Jeff Garzik
|
||||
o correctly parse queries with encoded \r, \n or + characters
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Mar 16 16:48:18 CET 2009 - meissner@suse.de
|
||||
|
||||
- updated to 1.4.9-stable:
|
||||
o event_add would not return error for some backends; from Dean McNamee
|
||||
o Clear the timer cache on entering the event loop; reported by Victor Chang
|
||||
o Only bind the socket on connect when a local address has been provided;
|
||||
reported by Alejo Sanchez
|
||||
o Allow setting of local port for evhttp connections to support millions
|
||||
of connections from a single system; from Richard J ones.
|
||||
o Clear the timer cache when leaving the event loop; reported by Robin Haberkorn
|
||||
o Fix a typo in setting the global event base; reported by lance.
|
||||
o Fix a memory leak when reading multi-line headers
|
||||
o Fix a memory leak by not running explicit close detection for server connections
|
||||
|
||||
- updated to 1.4.8-stable:
|
||||
o Match the query in DNS replies to the query in the request; from Vsevolod Stakhov.
|
||||
o Fix a merge problem in which name_from_addr returned pointers to the stack; found by Jiang Hong.
|
||||
o Do not remove Accept-Encoding header
|
||||
|
||||
- updated to 1.4.7-stable:
|
||||
o Fix a bug where headers arriving in multiple packets were not parsed; fix from Jiang Hong; test by me.
|
||||
|
||||
- updated to 1.4.6-stable:
|
||||
o evutil.h now includes <stdarg.h> directly
|
||||
o switch all uses of [v]snprintf over to evutil
|
||||
o Correct handling of trailing headers in chunked replies; from Scott Lamb.
|
||||
o Support multi-line HTTP headers; based on a patch from Moshe Litvin
|
||||
o Reject negative Content-Length headers; anonymous bug report
|
||||
o Detect CLOCK_MONOTONIC at runtime for evdns; anonymous bug report
|
||||
o Fix a bug where deleting signals with the kqueue backend would cause subsequent adds to fail
|
||||
o Support multiple events listening on the same signal; make signals
|
||||
regular events that go on the same event queue; problem
|
||||
report by Alexander Drozdov.
|
||||
o Deal with evbuffer_read() returning -1 on EINTR|EAGAIN; from Adam Langley.
|
||||
o Fix a bug in which the DNS server would incorrectly set the type of a cname reply to a.
|
||||
o Fix a bug where setting the timeout on a bufferevent would take not effect if the event was already pending.
|
||||
o Fix a memory leak when using signals for some event bases; reported by Alexander Drozdov.
|
||||
o Add libevent.vcproj file to distribution to help with Windows build.
|
||||
o Fix a problem with epoll() and reinit; problem report by Alexander Drozdov.
|
||||
o Fix off-by-one errors in devpoll; from Ian Bell
|
||||
o Make event_add not change any state if it fails; reported by Ian Bell.
|
||||
o Do not warn on accept when errno is either EAGAIN or EINTR
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Sep 16 17:54:14 CEST 2008 - mrueckert@suse.de
|
||||
|
||||
- split out devel and shared library package.
|
||||
- drop static libs
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 3 11:57:22 CEST 2008 - meissner@suse.de
|
||||
|
||||
- upgraded to version 1.4.5-stable:
|
||||
o Fix connection keep-alive behavior for HTTP/1.0
|
||||
o Fix use of freed memory in event_reinit; pointed out by Peter Postma
|
||||
o Constify struct timeval * where possible; pointed out by Forest
|
||||
Wilkinson
|
||||
o allow min_heap_erase to be called on removed members; from liusifan.
|
||||
o Rename INPUT and OUTPUT to EVRPC_INPUT and EVRPC_OUTPUT. Retain
|
||||
INPUT/OUTPUT aliases on on-win32 platforms for backwards compatibility.
|
||||
o Do not use SO_REUSEADDR when connecting
|
||||
o Fix Windows build
|
||||
o Fix a bug in event_rpcgen when generated fixed-sized entries
|
||||
|
||||
- upgraded to version 1.4.4-stable:
|
||||
o Correct the documentation on buffer printf functions.
|
||||
o Don't warn on unimplemented epoll_create(): this isn't a problem,
|
||||
just a reason to fall back to poll or select.
|
||||
o Correctly handle timeouts larger than 35 minutes on Linux with epoll.c.
|
||||
This is probably a kernel defect, but we'll have to support old kernels
|
||||
anyway even if it gets fixed.
|
||||
o Fix a potential stack corruption bug in tagging on 64-bit CPUs.
|
||||
o expose bufferevent_setwatermark via header files and fix high watermark
|
||||
on read
|
||||
o fix a bug in bufferevent read water marks and add a test for them
|
||||
o introduce bufferevent_setcb and bufferevent_setfd to allow better
|
||||
manipulation of bufferevents
|
||||
o use libevent's internal timercmp on all platforms, to avoid bugs on
|
||||
old platforms where timercmp(a,b,<=) is buggy.
|
||||
o reduce system calls for getting current time by caching it.
|
||||
o fix evhttp_bind_socket() so that multiple sockets can be bound by
|
||||
the same http server.
|
||||
o Build test directory correctly with CPPFLAGS set.
|
||||
o Fix build under Visual C++ 2005.
|
||||
o Expose evhttp_accept_socket() API.
|
||||
o Merge windows gettimeofday() replacement into a new
|
||||
evutil_gettimeofday() function.
|
||||
o Fix autoconf script behavior on IRIX.
|
||||
o Make sure winsock2.h include always comes before windows.h include.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Apr 8 09:04:44 CEST 2008 - meissner@suse.de
|
||||
|
||||
- upgraded to version 1.4.3stable
|
||||
* include Content-Length in reply for HTTP/1.0 requests with keep-alive
|
||||
* Patch from Tani Hosokawa: make some functions in http.c threadsafe.
|
||||
* Do not free the kqop file descriptor in other processes, also allow it to be 0; from Andrei Nigmatulin
|
||||
* make event_rpcgen.py generate code include event-config.h; reported by Sam Banks.
|
||||
* make event methods static so that they are not exported; from Andrei Nigmatulin
|
||||
* make RPC replies use application/octet-stream as mime type
|
||||
* do not delete uninitialized timeout event in evdns
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Mar 28 13:47:32 CET 2008 - meissner@suse.de
|
||||
|
||||
- upgraded to version 1.4.2rc
|
||||
* make Solaris event subsystems more reliable; from W.C.A. Wijngaards
|
||||
* event_base_get_method(); from Springande Ulv
|
||||
* fix HTTP/1.1 chunk formatting; from "propanbutan"
|
||||
* allow 64-bit content lengths; from Scott Lamb
|
||||
* and more...
|
||||
- upgraded to version 1.4.1beta
|
||||
* fixed some memory leaks and other misc cleanup; from Christopher Layne, Scott Lamb and Charles Kerr
|
||||
* introduced event_reinit to deal with fork()
|
||||
* improved efficiency of generated RPC structure
|
||||
* performance improvements to Win32 backend
|
||||
* and many more...
|
||||
- upgraded to version 1.4.0beta
|
||||
* a new RPC subsytem for writing distributed clients and servers
|
||||
* almost everything is documented via Doxygen now
|
||||
* many fixes and improvements to evdns and evhttp
|
||||
* libevent now builds two additional libraries: libevent_core (containing only the event core) and libevent_extras (contained evdns, evhttp and evrpc)
|
||||
* performance improvements due to using a heap instead of red-black trees for timeouts
|
||||
* Solaris' event ports are better supported
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 27 06:09:22 CET 2007 - crrodriguez@suse.de
|
||||
|
||||
- fix library-without-ldconfig-* errors
|
||||
- version 1.3e
|
||||
* Add a "Date" header to HTTP responses when it's missing, as required by HTTP 1.1. Original Patch from Ralph Moritz.
|
||||
* Fix a memory leak in which failed HTTP connections whould not free the request object.
|
||||
* Fix a memory leak in the DNS server.
|
||||
* Handle NULL timeouts correctly on Solaris; from Trond Norbye
|
||||
* Recalculate pending events properly when reallocating event array on Solaris; from Trond Norbye
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Mar 5 14:00:29 CET 2007 - meissner@suse.de
|
||||
|
||||
- upgraded to 1.3b:
|
||||
+ signals now useable in multithreaded apps.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Feb 20 13:17:44 CET 2007 - meissner@suse.de
|
||||
|
||||
- Updated to 1.3a.
|
||||
+ Small bug and performances fixes to evhttp layer.
|
||||
+ DNS Server from Adam Langley and Nick Mathewson
|
||||
+ Chunked transfer encoding for HTTP/1.1 from Dug Song.
|
||||
+ DNS DDoS fix; bug report from Jon Oberheide.
|
||||
+ Various small improvements.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Nov 12 19:04:24 CET 2006 - lmuelle@suse.de
|
||||
|
||||
- Update to version 1.2.
|
||||
+ Support for non-blocking DNS resolution.
|
||||
+ Support for lightweight HTTP clients and servers.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jan 25 21:37:27 CET 2006 - mls@suse.de
|
||||
|
||||
- converted neededforbuild to BuildRequires
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon May 30 12:05:26 CEST 2005 - okir@suse.de
|
||||
|
||||
- Initial packaging
|
||||
|
30
libevent.keyring
Normal file
30
libevent.keyring
Normal file
@ -0,0 +1,30 @@
|
||||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
Version: GnuPG v2
|
||||
|
||||
mQENBEwRCC4BCAC8lYmLG0vWUjMTLO6o44X6hDLuNanolgmVuPpNaeuuST+JrVo6
|
||||
L4xO+O/3IhSxS9icwojnk1Zz5UR9gFXVz3MMy/ONsCjZZEo+URHNw08c7mohfFIz
|
||||
2EARwF3qRC7PASGDRk6XxEx9L1A3gMPSCjwCNmLbRqacfZghsUjN9Spo69lJQNX6
|
||||
NfQ3+11w8vHUU2I5Jk1v2WTd2XAVK6monniItEvG6T58LZaxC8H/rxAPHeN1oBjk
|
||||
N/XSbxu3+pZXZXyNJ80tjFYEIcJ9Zd1bZV7cE7i7HORr0aL6n768K4ufpT0ps1bu
|
||||
oj6v9TQZSH0CJeiAZRBQ3dbqkg/tEmywhOC1ABEBAAG0IkF6YXQgS2h1emhpbiA8
|
||||
YTNhdC5tYWlsQGdtYWlsLmNvbT6JATgEEwECACIFAkwRCC4CGwMGCwkIBwMCBhUI
|
||||
AgkKCwQWAgMBAh4BAheAAAoJELhghoSO+Ght8KMH/0r4tHMQgo/j6Bsz4hnoQKo3
|
||||
aEC8htHfxUPkewAxwHRTXAjSYc5qpkCgN+Ek0ezWmV8ZiZM40jomASDKKGHQvd9u
|
||||
TIgUm0tHWlbc0zVVdXUTu3uuoeZUNNOfUD+sBTF9KF4gqhekI891LBWdsZlGrOUq
|
||||
Nr3XWFlke2Ldd/h4fVFTcIVaIej+zyuOZiKxgZh2Y5lvRbJk2GHIOJmDkNIo8cl3
|
||||
uv1AKXUeVlwr6hsndFDNXNrXw/f5ftS/m0zl3igoid6f35w8JU/HjbesxICUtQ9p
|
||||
Lr5YiKY8oQLc8sESS83g17Qb73lVhyFy/3XkLUUSbpueQVo3iii9b9rXEBQ43ny5
|
||||
AQ0ETBEILgEIAO8jcJ8AyLTWj92jePIl0vw1h8nlZXopWRA8pUqFlKGuKForCOP2
|
||||
F08E9dpUj1y091fl+HCI5fvyPkLgHITwXsg6IVamVuS06VB7oAcUhimbRxn++5dO
|
||||
Jlaom2nU89Da51nP9vXnKVr89q/+mAmt0l9JwMVCV8756VzUNHmkh/e6HRUoawst
|
||||
bexRf5yu6lzx0xYURTNoSSBoKNWkawoYiClYPdBg356uo1ivTrmuzHhgl8Gjpf5s
|
||||
MQ1Rndui9wj/7ru1edBe7uU7klz4OYI3NvvRZZGPByodUJhX4mLsFUZzM1COwO5b
|
||||
Yk2AVO7Ga57fPMhW7+PWAz+TwbnG6cKiZdEAEQEAAYkBHwQYAQIACQUCTBEILgIb
|
||||
DAAKCRC4YIaEjvhobcChB/40hyVKhkiUIOFHFuWxtAOVB/Q+XZCeM+RMiGj4hOdg
|
||||
o5eK40J4MLGp6s2Iq2pi4weE7sTXN8OjLxXnWHiqD+dF4Ve6DPjYkOxtamzEmICi
|
||||
wftmRGwjT6GOcMP9NN6lC5Zo4lfXLukfZU0BuDdn7+FAas02VwuVZP44xH1huiYl
|
||||
OQ6nPNUVPXFih3ZmvlvXtYUcEmOsF3xbNhOMR4CJhr59fanJv4qZxMWAD4w/t2C0
|
||||
12d9zu1Gh9iT78kpZ+GSsibP+3YIkr7siFAiAz5ban9WqmRWQS/aun71OamNl1p7
|
||||
wG6vhUukF/a6weIBe53/NXMSCcfy9n3TbAdW/8K7sidT
|
||||
=46so
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
177
libevent.spec
Normal file
177
libevent.spec
Normal file
@ -0,0 +1,177 @@
|
||||
#
|
||||
# spec file for package libevent
|
||||
#
|
||||
# Copyright (c) 2023 SUSE LLC
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
Name: libevent
|
||||
%define version_base 2
|
||||
%define version_minor 1
|
||||
%define version_release 12
|
||||
%define abi_release 7
|
||||
%define version_suffix stable
|
||||
%define libsoname %{name}-%{version_base}_%{version_minor}-%{abi_release}
|
||||
|
||||
Version: %{version_base}.%{version_minor}.%{version_release}
|
||||
Release: 0
|
||||
Summary: An event notification library
|
||||
License: BSD-3-Clause
|
||||
Group: Development/Libraries/C and C++
|
||||
URL: http://libevent.org/
|
||||
Source0: https://github.com/%{name}/%{name}/releases/download/release-%{version}-%{version_suffix}/%{name}-%{version}-%{version_suffix}.tar.gz
|
||||
Source1: https://github.com/%{name}/%{name}/releases/download/release-%{version}-%{version_suffix}/%{name}-%{version}-%{version_suffix}.tar.gz.asc
|
||||
Source2: %{name}.keyring
|
||||
Source3: libevent-rpmlintrc
|
||||
Source99: baselibs.conf
|
||||
Patch0: python3-shebang.patch
|
||||
# PATCH-FEATURE-UPSTREAM 0001-evwatch-Add-prepare-and-check-watchers.patch
|
||||
Patch1: 0001-evwatch-Add-prepare-and-check-watchers.patch
|
||||
# PATCH-FEATURE-UPSTREAM 0002-evwatch-fix-race-condition.patch
|
||||
Patch2: 0002-evwatch-fix-race-condition.patch
|
||||
BuildRequires: autoconf
|
||||
BuildRequires: automake
|
||||
BuildRequires: libtool
|
||||
BuildRequires: openssl-devel
|
||||
%if 0%{?fedora_version} || 0%{?rhel_version}
|
||||
BuildRequires: pkgconfig
|
||||
%else
|
||||
BuildRequires: pkg-config
|
||||
%endif
|
||||
BuildRequires: zlib-devel
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
|
||||
%description
|
||||
The libevent API provides a mechanism to execute a callback function
|
||||
when a specific event occurs on a file descriptor or after a timeout
|
||||
has been reached. Furthermore, libevent also support callbacks due to
|
||||
signals or regular timeouts.
|
||||
|
||||
%package -n %{libsoname}
|
||||
Summary: An event notification library
|
||||
Group: System/Libraries
|
||||
Provides: %{name} = %{version}
|
||||
Obsoletes: %{name} < %{version}
|
||||
|
||||
%description -n %{libsoname}
|
||||
The libevent API provides a mechanism to execute a callback function
|
||||
when a specific event occurs on a file descriptor or after a timeout
|
||||
has been reached. Furthermore, libevent also support callbacks due to
|
||||
signals or regular timeouts.
|
||||
|
||||
Currently, libevent supports /dev/poll, kqueue(2), event ports,
|
||||
POSIX select(2), Windows select(), poll(2), and epoll(4).
|
||||
|
||||
Libevent additionally provides a sophisticated framework for buffered
|
||||
network IO, with support for sockets, filters, rate-limiting, SSL,
|
||||
zero-copy file transmission, and IOCP. Libevent includes support for
|
||||
several useful protocols, including DNS, HTTP, and a minimal RPC
|
||||
framework.
|
||||
|
||||
This package holds the shared libraries for libevent.
|
||||
|
||||
%package devel
|
||||
Summary: Development files for libevent2
|
||||
Group: Development/Libraries/C and C++
|
||||
Requires: %{libsoname} = %{version}
|
||||
Requires: glibc-devel
|
||||
# Both have /usr/include/event.h
|
||||
Conflicts: libev-devel
|
||||
Provides: %{name}:%{_includedir}/event.h
|
||||
|
||||
%description devel
|
||||
The libevent API provides a mechanism to execute a callback function
|
||||
when a specific event occurs on a file descriptor or after a timeout
|
||||
has been reached. Furthermore, libevent also support callbacks due to
|
||||
signals or regular timeouts.
|
||||
|
||||
This package holds the development files for libevent2.
|
||||
|
||||
%package devel-static
|
||||
Summary: Static libraries for libevent2
|
||||
Group: Development/Libraries/C and C++
|
||||
Requires: %{name}-devel = %{version}
|
||||
|
||||
%description devel-static
|
||||
The libevent API provides a mechanism to execute a callback function
|
||||
when a specific event occurs on a file descriptor or after a timeout
|
||||
has been reached. Furthermore, libevent also support callbacks due to
|
||||
signals or regular timeouts.
|
||||
|
||||
This package holds the static libraries for libevent2.
|
||||
|
||||
%prep
|
||||
%setup -q -n %{name}-%{version}-%{version_suffix}
|
||||
%patch0 -p1
|
||||
%patch1 -p1
|
||||
%patch2 -p1
|
||||
|
||||
%build
|
||||
%global _lto_cflags %{_lto_cflags} -ffat-lto-objects
|
||||
./autogen.sh
|
||||
export ac_cv_func_select=no
|
||||
%configure \
|
||||
--disable-libevent-regress
|
||||
make %{?_smp_mflags}
|
||||
|
||||
%check
|
||||
make check
|
||||
|
||||
%install
|
||||
%make_install %{?_smp_mflags}
|
||||
find %{buildroot}%{_libdir} -type f -name "*.la" -delete -print
|
||||
|
||||
%post -n %{libsoname} -p /sbin/ldconfig
|
||||
|
||||
%postun -n %{libsoname} -p /sbin/ldconfig
|
||||
|
||||
%files -n %{libsoname}
|
||||
%defattr(-,root,root,-)
|
||||
%license LICENSE
|
||||
%doc ChangeLog whatsnew-2.0.txt whatsnew-2.1.txt
|
||||
%{_libdir}/%{name}-%{version_base}.%{version_minor}.so.%{abi_release}*
|
||||
%{_libdir}/%{name}_core-%{version_base}.%{version_minor}.so.%{abi_release}*
|
||||
%{_libdir}/%{name}_extra-%{version_base}.%{version_minor}.so.%{abi_release}*
|
||||
%{_libdir}/%{name}_pthreads-%{version_base}.%{version_minor}.so.%{abi_release}*
|
||||
%{_libdir}/%{name}_openssl-%{version_base}.%{version_minor}.so.%{abi_release}*
|
||||
|
||||
%files devel
|
||||
%defattr(-,root,root)
|
||||
%{_bindir}/event_rpcgen.py
|
||||
%{_includedir}/evdns.h
|
||||
%{_includedir}/event.h
|
||||
%{_includedir}/evhttp.h
|
||||
%{_includedir}/evrpc.h
|
||||
%{_includedir}/evutil.h
|
||||
%{_includedir}/event2
|
||||
%{_libdir}/%{name}.so
|
||||
%{_libdir}/%{name}_core.so
|
||||
%{_libdir}/%{name}_extra.so
|
||||
%{_libdir}/%{name}_pthreads.so
|
||||
%{_libdir}/%{name}_openssl.so
|
||||
%{_libdir}/pkgconfig/%{name}.pc
|
||||
%{_libdir}/pkgconfig/%{name}_pthreads.pc
|
||||
%{_libdir}/pkgconfig/%{name}_openssl.pc
|
||||
%{_libdir}/pkgconfig/%{name}_core.pc
|
||||
%{_libdir}/pkgconfig/%{name}_extra.pc
|
||||
|
||||
%files devel-static
|
||||
%defattr(-,root,root)
|
||||
%{_libdir}/%{name}.a
|
||||
%{_libdir}/%{name}_core.a
|
||||
%{_libdir}/%{name}_extra.a
|
||||
%{_libdir}/%{name}_openssl.a
|
||||
%{_libdir}/%{name}_pthreads.a
|
||||
|
||||
%changelog
|
29
python3-shebang.patch
Normal file
29
python3-shebang.patch
Normal file
@ -0,0 +1,29 @@
|
||||
From 293f2e5274ff62edcc1d49ba5439af3d986dfe3b Mon Sep 17 00:00:00 2001
|
||||
From: Michal Rostecki <mrostecki@suse.com>
|
||||
Date: Tue, 12 Jun 2018 16:41:36 +0200
|
||||
Subject: [PATCH] Use python3 instead of env as an interpreter
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
For the rpm runtime dependency detection to work, the shebang
|
||||
`#!/usr/bin/env python3` needs to be patched into
|
||||
´#!/usr/bin/python3`, otherwise the package dependency generator
|
||||
merely adds a dependency on /usr/bin/env rather than the actual
|
||||
interpreter /usr/bin/python3.
|
||||
|
||||
[ddiss@suse.de: python2 -> python3]
|
||||
---
|
||||
event_rpcgen.py | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
Index: libevent-2.1.10-stable/event_rpcgen.py
|
||||
===================================================================
|
||||
--- libevent-2.1.10-stable.orig/event_rpcgen.py
|
||||
+++ libevent-2.1.10-stable/event_rpcgen.py
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!/usr/bin/env python
|
||||
+#!/usr/bin/python3
|
||||
#
|
||||
# Copyright (c) 2005-2007 Niels Provos <provos@citi.umich.edu>
|
||||
# Copyright (c) 2007-2012 Niels Provos and Nick Mathewson
|
Loading…
Reference in New Issue
Block a user