This commit is contained in:
Cœur 2024-04-30 15:59:58 +08:00 committed by GitHub
parent 64decd48e2
commit eec47a6710
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
27 changed files with 48 additions and 48 deletions

View File

@ -40,9 +40,9 @@ Changes in version 2.2.1-alpha (21 May 2023)
- linux
- freebsd
- windows
- osx
- macos
- openbsd
- and also tests under Thread/Address/Undefind sanitizers
- and also tests under Thread/Address/Undefined sanitizers
Now documentation is automatically deployed to https://libevent.org/doc/
@ -106,7 +106,7 @@ Changes in version 2.2.1-alpha (21 May 2023)
o Fix crashing http server when callback do not reply in place from *gencb* (306747e5 Azat Khuzhin)
o CONNECT method only takes an authority (65eb529a Greg Hazel)
o http: fix leaks in evhttp_uriencode() (61c21492 Azat Khuzhin)
o Fix evhttp_connection_get_addr() fox incomming http connections (367cd9e5 Greg Hazel, e4edc7fc Azat Khuzhin)
o Fix evhttp_connection_get_addr() for incoming http connections (367cd9e5 Greg Hazel, e4edc7fc Azat Khuzhin)
o Improve request line parsing (0ec12bc8 Azat Khuzhin)
o Fix conceivable UAF of the bufferevent in evhttp_connection_free() (5dc88b38 Azat Khuzhin)
o http: fix connection retries when there more then one request for connection (f3f7aa5a Azat Khuzhin)
@ -158,7 +158,7 @@ Changes in version 2.2.1-alpha (21 May 2023)
o evwatch: Add "prepare" and "check" watchers. (#793) (2f184f8b, 1cd8830d Dan Rosen)
o evutil: implement socketpair with unix domain socket on Win10 (#913) (dda8968c, 1ba94bdf yuangongji)
o Add support for priority inheritance (#934) (f76456b0 Andre Pereira Azevedo Pinto, 972289f3 Azat Khuzhin)
o evutil_time: Implements usleep() using wait funtion on Windows (#939) (6412f34f yuangongji)
o evutil_time: Implements usleep() using wait function on Windows (#939) (6412f34f yuangongji)
o Add EVENT_BASE_FLAG_EPOLL_DISALLOW_TIMERFD flag (fixes: #958) (9a9b92ed Azat Khuzhin)
o evutil_time: improve evutil_gettimeofday on Windows (#1003) (f0b3160f Nick Grifka)
o Support EV_CLOSED on linux for poll(2) (4c13afae Azat Khuzhin)
@ -256,7 +256,7 @@ Changes in version 2.2.1-alpha (21 May 2023)
o test: fix 32bit linux regress (#554) (63c4bf78 Carlo Marcelo Arenas Belón)
o test: avoid regress hanging in macOS (#757) (a86f89d3 Carlo Marcelo Arenas Belón)
o Avoid possible SEGVs in select() (in unit tests) (33baa4e5 Philip Prindeville)
o Intorduce TT_RETRIABLE (4d2f013b Azat Khuzhin)
o Introduce TT_RETRIABLE (4d2f013b Azat Khuzhin)
o test-ratelim: calculate timers bias (for slow CPUs) to avoid false-positive (8a348699 Azat Khuzhin)
o Merge branch 'osx-clock' (a6f81aa4 Azat Khuzhin)
o Fix some OpenSSL 3 test issues (#1291) (29032da6 Peter Edwards)

View File

@ -152,7 +152,7 @@ Changes in 1.4.2-rc:
o remove NDEBUG ifdefs from evdns.c
o update documentation of event_loop and event_base_loop; from Tani Hosokawa.
o detect integer types properly on platforms without stdint.h
o Remove "AM_MAINTAINER_MODE" declaration in configure.in: now makefiles and configure should get re-generated automatically when Makefile.am or configure.in chanes.
o Remove "AM_MAINTAINER_MODE" declaration in configure.in: now makefiles and configure should get re-generated automatically when Makefile.am or configure.in changes.
o do not insert event into list when evsel->add fails
Changes in 1.4.1-beta:
@ -163,7 +163,7 @@ Changes in 1.4.1-beta:
o better documentation for event_base_loopexit; from Scott Lamb.
o Make kqueue have the same behavior as other backends when a signal is caught between event_add() and event_loop(). Previously, it would catch and ignore such signals.
o Make kqueue restore signal handlers correctly when event_del() is called.
o provide event_reinit() to reintialize an event_base after fork
o provide event_reinit() to reinitialize an event_base after fork
o small improvements to evhttp documentation
o always generate Date and Content-Length headers for HTTP/1.1 replies
o set the correct event base for HTTP close events

View File

@ -263,7 +263,7 @@ Changes in version 2.0.12-stable (4 Jun 2011)
BUGFIXES
o Fix a warn-and-fail bug in kqueue by providing kevent() room to report errors (28317a0)
o Fix an assert-inducing fencepost bug in the select backend (d90149d)
o Fix failing http assertion introducd in commit 0d6622e (0848814 Kevin Ko)
o Fix failing http assertion introduced in commit 0d6622e (0848814 Kevin Ko)
o Fix a bug that prevented us from configuring IPv6 nameservers. (74760f1)
o Prevent size_t overflow in evhttp_htmlescape. (06c51cd Mansour Moufid)
o Added several checks for under/overflow conditions in evhttp_handle_chunked_read (a279272 Mark Ellzey)
@ -986,7 +986,7 @@ BUILD AND DISTRIBUTION CHANGES
INTERNALS AND CODE CLEANUPS
o Add a .gitignore file. (ba34071)
o New EVTHREAD_TRY_LOCK function to try to grab a lock. (689fc09)
o Add the abilitity to mark some buffer callbacks as never-deferred. (438f9ed)
o Add the ability to mark some buffer callbacks as never-deferred. (438f9ed)
o Refactor our 'suspend operation' logic on bufferevents. (0d744aa)
o Simplify the read high-watermark checking. (5846bf6)
o Improve readability of evutil_unparse_protoname() (5a43df8 Jardel Weyrich)
@ -994,7 +994,7 @@ INTERNALS AND CODE CLEANUPS
o Whitespace fixes in test.sh (0b151a9)
o Enable branch-prediction hints with EVUTIL_UNLIKELY. (eaaf27f)
o Refactor code from evdns into a new internal "read a file" function. (0f7144f)
o Comestic changes in evconnlistener_new(), new_accepting_socket(), accepted_socket_invoke_user_cb() and iocp_listener_enable(). (510ab6b Jardel Weyrich)
o Cosmetic changes in evconnlistener_new(), new_accepting_socket(), accepted_socket_invoke_user_cb() and iocp_listener_enable(). (510ab6b Jardel Weyrich)
o Add unit-test for bad_request bug fixed in 1.4 recently. (6cc79c6 Pavel Plesov) o Add a comment on evthread_enable_lock_debuging. (b9f43b2)
o Fix test.sh on shells without echo -n (94131e9)
o More unit tests for getaddrinfo_async: v4timeout and cancel. (a334b31)
@ -1082,7 +1082,7 @@ Changes in 2.0.2-alpha (25 Jul 2009):
o Add a new flag to bufferevents to make all callbacks automatically deferred.
o Make evdns functionality locked, and automatically defer dns callbacks.
o Fix a possible free(NULL) when freeing an event_base with no signals.
o Add a flag to disable checking environment varibles when making an event_base
o Add a flag to disable checking environment variables when making an event_base
o Disallow setting less than 1 priority.
o Fix a bug when removing a timeout from the heap. [Patch from Marko Kreen]
o Use signal.h, not sys/signal.h. [Patch from mmadia]

View File

@ -42,7 +42,7 @@ Changes in version 2.1.7-rc (2 Novemer 2016)
and plus Vagrantfile for testing under multiple OS'es.
Continious Integration:
Continuous Integration:
o Use coveralls.io via travis (9ac000c Azat Khuzhin)
o travis-ci: use container-based infrastructure (7e12e96 Azat Khuzhin)
o travis-ci/osx: fix compiling/linking openssl libraries (9d2f8d4 Azat Khuzhin)
@ -361,7 +361,7 @@ Changes in version 2.1.6-beta (4 July 2016)
o be: include all variations of headers for sockaddr_in6 struct (c212291 Azat Khuzhin)
o be: fix sockaddr_in6 type definition for win32 (c42bc6b Azat Khuzhin)
Continious Integration:
Continuous Integration:
o travis: split long lines, and make it cleaner (685a6a1 Azat Khuzhin)
o travis: fix autotools on osx by reinstalling libtool (088ea5e Azat Khuzhin)
o appveyor/autotools: link with openssl by passing LDFLAGS/CFLAGS (6fcfa25 Azat Khuzhin)
@ -820,7 +820,7 @@ Changes in version 2.1.3-alpha (1 May 2013)
o Remove bufferevent_del_generic_timeout_cbs as now unused (4ea4c6a)
o More documentation for finalization feature (a800b91)
o Make the event_finalize* functions return an error code (5d11f4f)
o Mark the finalize stuff as experiemental in case it needs to
o Mark the finalize stuff as experimental in case it needs to
change (23e2e29)
Evdns
@ -1379,7 +1379,7 @@ Changes in version 2.0.12-stable (4 Jun 2011)
BUGFIXES
o Fix a warn-and-fail bug in kqueue by providing kevent() room to report errors (28317a0)
o Fix an assert-inducing fencepost bug in the select backend (d90149d)
o Fix failing http assertion introducd in commit 0d6622e (0848814 Kevin Ko)
o Fix failing http assertion introduced in commit 0d6622e (0848814 Kevin Ko)
o Fix a bug that prevented us from configuring IPv6 nameservers. (74760f1)
o Prevent size_t overflow in evhttp_htmlescape. (06c51cd Mansour Moufid)
o Added several checks for under/overflow conditions in evhttp_handle_chunked_read (a279272 Mark Ellzey)

View File

@ -82,7 +82,7 @@ struct bufferevent_filtered {
/** The bufferevent that we read/write filtered data from/to. */
struct bufferevent *underlying;
/** A callback on our inbuf to notice somebory removes data */
/** A callback on our inbuf to notice somebody removes data */
struct evbuffer_cb_entry *inbuf_cb;
/** A callback on our outbuf to notice when somebody adds data */
struct evbuffer_cb_entry *outbuf_cb;

View File

@ -287,7 +287,7 @@ be_pair_destruct(struct bufferevent *bev)
* bufferevent_free(bev1) # refcnt == 0 -> unlink
* bufferevent_free(bev2) # refcnt == 0 -> unlink
*
* event_base_free() -> finilizers -> EVTHREAD_FREE_LOCK(bev1->lock)
* event_base_free() -> finalizers -> EVTHREAD_FREE_LOCK(bev1->lock)
* -> BEV_LOCK(bev2->lock) <-- already freed
*
* Where bev1 == pair[0], bev2 == pair[1].

View File

@ -19,7 +19,7 @@ GET_FILENAME_COMPONENT(_selfdir_CheckFileOffsetBits
MACRO (CHECK_FILE_OFFSET_BITS)
IF(NOT DEFINED _FILE_OFFSET_BITS)
MESSAGE(STATUS "Cheking _FILE_OFFSET_BITS for large files")
MESSAGE(STATUS "Checking _FILE_OFFSET_BITS for large files")
TRY_COMPILE(__WITHOUT_FILE_OFFSET_BITS_64
${CMAKE_CURRENT_BINARY_DIR}
${_selfdir_CheckFileOffsetBits}/CheckFileOffsetBits.c

View File

@ -14,7 +14,7 @@
#
# When you try to locate the libevent libraries, you should specify which components you want to use.
# The following table lists all available components. If none is given, all imported targets will used.
# core - the core functons of libevent
# core - the core functions of libevent
# extra - extra functions, contains http, dns and rpc
# pthreads - multiple threads for libevent, does not exist on Windows
# openssl - OpenSSL support for libevent

View File

@ -1,6 +1,6 @@
# This module defines the following variables utilizing
# git to determine the parent tag. And if found the macro
# will attempt to parse them in the github tag fomat
# will attempt to parse them in the github tag format
#
# Useful for auto-versioning in our CMakeLists
#

View File

@ -772,7 +772,7 @@ if test "$enable_gcc_warnings" != "no" && test "$GCC" = "yes"; then
dnl Disable unknown pragmas warnings.
AX_CHECK_COMPILE_FLAG([-Wno-pragmas], [CFLAGS="$CFLAGS -Wno-pragmas"],[],[-Werror])
dnl Disable Variable Lenght Array
dnl Disable Variable Length Array
AX_CHECK_COMPILE_FLAG([-Wvla], [CFLAGS="$CFLAGS -Wvla"],[],[-Werror])
if test "$have_clang" = "yes"; then
@ -882,7 +882,7 @@ AM_CONDITIONAL([ENABLE_DOXYGEN], [test "$DX_FLAG_doc" = "1"])
AM_CONDITIONAL([ENABLE_DOXYGEN_MAN], [test "$DX_FLAG_man" = "1"])
dnl autotools uses the same pkg-config templates as cmake, and in cmake we have
dnl CMAKE_DEBUG_POSTFIX, so define it to empty value to simply replcae it in
dnl CMAKE_DEBUG_POSTFIX, so define it to empty value to simply replace it in
dnl *.pc.in
CMAKE_DEBUG_POSTFIX=""
AC_SUBST([CMAKE_DEBUG_POSTFIX])

16
evdns.c
View File

@ -617,7 +617,7 @@ evdns_remove_all_tcp_clients(struct evdns_server_port *port)
/* Create new tcp connection structure for DNS client. */
static struct tcp_connection *
new_tcp_connecton(struct bufferevent *bev)
new_tcp_connection(struct bufferevent *bev)
{
struct tcp_connection *conn;
if (!bev)
@ -1158,7 +1158,7 @@ reply_handle(struct request *const req, u16 flags, u32 ttl, struct reply *reply)
}
if (retransmit_via_tcp) {
log(EVDNS_LOG_DEBUG, "Recieved truncated reply(flags 0x%x, transanc ID: %d). Retransmiting via TCP.",
log(EVDNS_LOG_DEBUG, "Received truncated reply(flags 0x%x, transac ID: %d). Retransmitting via TCP.",
req->handle->tcp_flags, req->trans_id);
req->handle->tcp_flags |= DNS_QUERY_USEVC;
client_retransmit_through_tcp(req->handle);
@ -1982,9 +1982,9 @@ dnsname_to_labels(u8 *const buf, size_t buf_len, off_t j,
static size_t
evdns_request_len(const struct evdns_base *base, const size_t name_len)
{
int addional_section_len = 0;
int additional_section_len = 0;
if (EDNS_ENABLED(base)) {
addional_section_len = 1 + /* length of domain name string, always 0 */
additional_section_len = 1 + /* length of domain name string, always 0 */
2 + /* space for resource type */
2 + /* space for UDP payload size */
4 + /* space for extended RCODE flags */
@ -1993,7 +1993,7 @@ evdns_request_len(const struct evdns_base *base, const size_t name_len)
return 96 + /* length of the DNS standard header */
name_len + 2 +
4 /* space for the resource type */ +
addional_section_len;
additional_section_len;
}
/* build a dns request packet into buf. buf should be at least as long */
@ -2188,7 +2188,7 @@ server_tcp_read_packet_cb(struct bufferevent *bev, void *ctx)
return;
}
/* Only part of the message was recieved. */
/* Only part of the message was received. */
if (!msg)
break;
@ -2813,7 +2813,7 @@ evdns_tcp_connect_if_disconnected(struct nameserver *server)
return 0;
disconnect_and_free_connection(conn);
conn = new_tcp_connecton(bufferevent_socket_new(server->base->event_base, -1, BEV_OPT_CLOSE_ON_FREE));
conn = new_tcp_connection(bufferevent_socket_new(server->base->event_base, -1, BEV_OPT_CLOSE_ON_FREE));
if (!conn)
return 2;
server->connection = conn;
@ -2852,7 +2852,7 @@ client_tcp_read_packet_cb(struct bufferevent *bev, void *ctx)
return;
}
/* Only part of the message was recieved. */
/* Only part of the message was received. */
if (!msg)
break;

View File

@ -504,7 +504,7 @@
#define EVENT__SIZEOF_TIME_T @EVENT__SIZEOF_TIME_T@
/* Define to `__inline__' or `__inline' if that's what the C compiler
calls it, or to nothing if 'inline' is not supported under any name. */
calls it, or do nothing if 'inline' is not supported under any name. */
#ifndef __cplusplus
/* why not c++?
*

View File

@ -78,7 +78,7 @@ ev_arc4random_buf(void *buf, size_t n)
unsigned char *b = buf;
#if defined(EVENT__HAVE_ARC4RANDOM_BUF)
/* OSX 10.7 introducd arc4random_buf, so if you build your program
/* OSX 10.7 introduced arc4random_buf, so if you build your program
* there, you'll get surprised when older versions of OSX fail to run.
* To solve this, we can check whether the function pointer is set,
* and fall back otherwise. (OSX does this using some linker

View File

@ -576,7 +576,7 @@ evutil_gettime_monotonic_(struct evutil_monotonic_timer *base,
/* It appears that the QueryPerformanceCounter()
* result is more than 1 second away from
* GetTickCount() result. Let's adjust it to be as
* accurate as we can; adjust_monotnonic_time() below
* accurate as we can; adjust_monotonic_time() below
* will keep it monotonic. */
counter_usec_elapsed = ticks_elapsed * 1000;
base->first_counter = (ev_uint64_t) (counter.QuadPart - counter_usec_elapsed / base->usec_per_count);

2
http.c
View File

@ -3001,7 +3001,7 @@ evhttp_start_read_(struct evhttp_connection *evcon)
evcon);
/* If there's still data pending, process it next time through the
* loop. Don't do it now; that could get recusive. */
* loop. Don't do it now; that could get recursive. */
if (evbuffer_get_length(bufferevent_get_input(evcon->bufev))) {
event_deferred_cb_schedule_(get_deferred_queue(evcon),
&evcon->read_more_deferred_cb);

View File

@ -105,7 +105,7 @@ struct evbuffer
Used when repeatedly searching through a buffer. Calling any function
that modifies or re-packs the buffer contents may invalidate all
evbuffer_ptrs for that buffer. Do not modify or contruct these values
evbuffer_ptrs for that buffer. Do not modify or construct these values
except with evbuffer_ptr_set.
An evbuffer_ptr can represent any position from the start of a buffer up

View File

@ -188,7 +188,7 @@ extern "C" {
#define DNS_QUERY_NO_SEARCH 0x01
/** Use TCP connections ("virtual circuits") for queries rather than UDP datagrams. */
#define DNS_QUERY_USEVC 0x02
/** Ignore trancation flag in responses (don't fallback to TCP connections). */
/** Ignore truncation flag in responses (don't fallback to TCP connections). */
#define DNS_QUERY_IGNTC 0x04
/** Make a separate callback for CNAME in answer */
#define DNS_CNAME_CALLBACK 0x80

View File

@ -642,7 +642,7 @@ enum evhttp_cmd_type {
#define EVHTTP_REQ_MAX EVHTTP_REQ_MOVE
/**
* @brief stucture that is passed to (and modified by) the
* @brief structure that is passed to (and modified by) the
* extended method callback function
*
* @see evhttp_set_ext_method_cmp

View File

@ -117,7 +117,7 @@ typedef void (*evconnlistener_errorcb)(struct evconnlistener *, void *);
/** Flag: Indicates that the listener wants to work only in both IPv4 and
* IPv6 socket.
*
* This flag exists as copmlement to LEV_OPT_BIND_IPV6ONLY to account for
* This flag exists as complement to LEV_OPT_BIND_IPV6ONLY to account for
* the different default behaviour on Windows so that the code can
* explicitly request the socket to support both modes without having
* to rely on the default option.

View File

@ -107,7 +107,7 @@ struct evthread_lock_callbacks {
/** Function to allocate and initialize new lock of type 'locktype'.
* Returns NULL on failure. */
void *(*alloc)(unsigned locktype);
/** Funtion to release all storage held in 'lock', which was created
/** Function to release all storage held in 'lock', which was created
* with type 'locktype'. */
void (*free)(void *lock, unsigned locktype);
/** Acquire an already-allocated lock at 'lock' with mode 'mode'.

View File

@ -368,7 +368,7 @@ int evutil_configure_monotonic_time(struct evutil_monotonic_timer *timer,
* measurements of elapsed time between events even when the system time
* may be changed.
*
* It is not safe to use this funtion on the same timer from multiple
* It is not safe to use this function on the same timer from multiple
* threads.
*/
EVENT2_EXPORT_SYMBOL

View File

@ -28,7 +28,7 @@
* Mon 03/10/2003 - Modified by Davide Libenzi <davidel@xmailserver.org>
*
* Added chain event propagation to improve the sensitivity of
* the measure respect to the event loop efficency.
* the measure respect to the event loop efficiency.
*
*
*/

View File

@ -2332,7 +2332,7 @@ dbg_leak_resume(void *env_, int cancel, int send_err_shutdown)
event_base_loop(env->base, EVLOOP_NONBLOCK);
/**
* Because we don't cancel request, and want our callback to recieve
* Because we don't cancel request, and want our callback to receive
* DNS_ERR_SHUTDOWN, we use deferred callback, and there was:
* - one extra malloc(),
* @see reply_schedule_callback()

View File

@ -59,7 +59,7 @@
/* Provide storage for the address, both for the server & the clients */
static struct sockaddr_in saddr;
/* Number of sucessful requests so far */
/* Number of successful requests so far */
static int num_requests;
static void start_client(struct event_base *base);

View File

@ -476,7 +476,7 @@ WEPOLL_INTERNAL ts_tree_node_t* port_state_to_handle_tree_node(
* "destroy" returns, the calling thread may assume that no other threads have
* a reference to the lock.
*
* Attemmpting to lock or destroy a lock after reflock_unref_and_destroy() has
* Attempting to lock or destroy a lock after reflock_unref_and_destroy() has
* been called is invalid and results in undefined behavior. Therefore the user
* should use another lock to guarantee that this can't happen.
*/

View File

@ -590,7 +590,7 @@
3.1. Linux-specific improvements
The logic for deciding which arguements to use with epoll_ctl() is now
The logic for deciding which arguments to use with epoll_ctl() is now
a table-driven lookup, rather than the previous pile of cascading
branches. This should minimize epoll_ctl() calls and make the epoll
code run a little faster on change-heavy loads.

View File

@ -337,7 +337,7 @@
10.1. autotools is deprecated, use cmake
Building with autotools/automake is considiered as deprecated, instead, cmake
Building with autotools/automake is considered as deprecated, instead, cmake
is recommended.
CMake is crossplatform so you don't need to support multiple files for
@ -396,7 +396,7 @@
The space after the initial '"' is significant.
11. Continious Integration
11. Continuous Integration
Now Libevent uses github actions for CI, previously we had travis-ci for
linux/macos and appveyor for win32 (removed in #951), and also I used testing
@ -408,7 +408,7 @@
- windows
- osx
- openbsd
- and also tests under Thread/Address/Undefind sanitizers
- and also tests under Thread/Address/Undefined sanitizers
So no need to test something locally before releases.