Log

Author Commit Date CI Message
Cœur 7ede5af6 2024-05-04T18:04:14 Updating deprecated GitHub actions (#1629) * Updating deprecated GitHub actions * code review: use commit hash for actions
dependabot[bot] ac96656c 2024-05-01T14:33:53 Bump github/codeql-action in the github-actions group Bumps the github-actions group with 1 update: [github/codeql-action](https://github.com/github/codeql-action). Updates `github/codeql-action` from 3.24.10 to 3.25.3 - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md) - [Commits](https://github.com/github/codeql-action/compare/4355270be187e1b672a7a1c7c7bae5afdc1ab94a...d39d31e687223d841ef683f52467bd88e9b21c14) --- updated-dependencies: - dependency-name: github/codeql-action dependency-type: direct:production update-type: version-update:semver-minor dependency-group: github-actions ... Signed-off-by: dependabot[bot] <support@github.com>
Azat Khuzhin 534da76d 2024-05-04T12:48:57 Merge pull request #1641 from Coeur/coeur/apple-cmake-job Adding apple-cmake-job for an iOS/tvOS/visionOS/watchOS build
Cœur f516e399 2024-05-04T17:42:26 Fix brew path on Apple Silicon (#1633) * Fix brew path on Apple Silicon * code review: `brew --prefix openssl` * code review: correct mbedtls path * code review: cmake does support autodetection of OPENSSL_ROOT_DIR
Cœur 3c744cee 2024-05-01T14:55:29 fix linux retrying cmake
hunterx008 0428771a 2024-05-01T23:17:54 Remove redundant condition in function:event_base_once
Cœur 71108830 2024-05-02T13:16:04 using xcode-version: latest-stable for xros support
Cœur b7fb04e8 2024-05-02T12:57:55 Adding apple-cmake-job for an iOS/tvOS/watchOS build
Cœur eec47a67 2024-04-30T15:59:58 Fix typos (#1634)
icy17 64decd48 2024-04-29T13:51:22 Fix potential Null pointer dereference in dns-example.c (#1601)
icy17 a584efaa 2024-04-22T14:47:34 Fix potential Null pointer dereference in time-test.c
Andy Pan aef201a9 2024-04-29T13:35:33 Change ident for EVFILT_USER to 0 and add a test (#1582) Conventionally, ident for EVFILT_USER is set to 0 to avoid collision of file descriptors, which is what other renowned networking frameworks like netty(java), mio(rust), gnet(go), swift-nio(swift), etc. do currently. Co-authored-by: Azat Khuzhin <azat@libevent.org>
Andy Pan cbbf209c 2024-04-29T13:31:34 Support SO_REUSEPORT on FreeBSD, DragonFly and Solaris (#1624) ## References - [The SO_REUSEPORT socket option on Linux](https://lwn.net/Articles/542629/) - [DragonFly Release 3.6](https://www.dragonflybsd.org/release36/) - [FreeBSD 12.0-RELEASE Release Notes](https://www.freebsd.org/releases/12.0R/relnotes/) - [SO_REUSEPORT on Solaris 11.4](https://docs.oracle.com/cd/E88353_01/html/E37843/setsockopt-3c.html) Co-authored-by: Azat Khuzhin <azat@libevent.org>
Cœur a9426941 2024-04-28T13:16:54 Fix CMake Deprecation Warning
Cœur 73c0349e 2024-04-29T13:16:58 Fix evutil_parse_sockaddr_port documentation (#1628) In some IDE like Xcode, the list is interpreted as markdown instead of plain text
Hennadii Stepanov 71d41cdf 2024-04-22T06:39:35 build: Add `Iphlpapi` to `Libs.private` in `*.pc` files on Windows It has been required since https://github.com/libevent/libevent/pull/923 at least for the `if_nametoindex` call.
Emil Engler 1e6c0e72 2024-04-12T21:36:38 Do not set TCP keepalive on Unix sockets This commit disables the property of TCP keepalive on Unix domain sockets, because they essentially serve no purpose here, except for causing problems on Windows and macOS systems. Fixes #1615
dockercui 147298a2 2024-04-24T11:14:47 Fix some comments Signed-off-by: dockercui <dockercui@aliyun.com>
Andy Pan 6074d558 2024-04-17T10:36:47 Avoid calling read(2) on eventfd on each event-loop wakeup Register the eventfd with EPOLLET to enable edge-triggered notification where we don't need to read the data from the eventfd for every wakeup event. When the eventfd counter reaches the maximum value of the unsigned 64-bit, we rewind the counter and retry again. This optimization saves one system call on each event-loop wakeup, which eliminates the extra latency for epoll as the EVFILT_USER filter does for the kqueue.
dependabot[bot] e0a4574b 2024-04-15T07:41:48 Bump the github-actions group with 5 updates Bumps the github-actions group with 5 updates: | Package | From | To | | --- | --- | --- | | [actions/cache](https://github.com/actions/cache) | `3` | `4` | | [nick-fields/retry](https://github.com/nick-fields/retry) | `2` | `3` | | [coverallsapp/github-action](https://github.com/coverallsapp/github-action) | `1.2.5` | `2.2.3` | | [ossf/scorecard-action](https://github.com/ossf/scorecard-action) | `2.1.2` | `2.3.1` | | [github/codeql-action](https://github.com/github/codeql-action) | `2.2.4` | `3.24.10` | Updates `actions/cache` from 3 to 4 - [Release notes](https://github.com/actions/cache/releases) - [Commits](https://github.com/actions/cache/compare/v3...v4) Updates `nick-fields/retry` from 2 to 3 - [Release notes](https://github.com/nick-fields/retry/releases) - [Changelog](https://github.com/nick-fields/retry/blob/master/.releaserc.js) - [Commits](https://github.com/nick-fields/retry/compare/v2...v3) Updates `coverallsapp/github-action` from 1.2.5 to 2.2.3 - [Release notes](https://github.com/coverallsapp/github-action/releases) - [Upgrade guide](https://github.com/coverallsapp/github-action/blob/main/UPGRADE.md) - [Commits](https://github.com/coverallsapp/github-action/compare/09b709cf6a16e30b0808ba050c7a6e8a5ef13f8d...3dfc5567390f6fa9267c0ee9c251e4c8c3f18949) Updates `ossf/scorecard-action` from 2.1.2 to 2.3.1 - [Release notes](https://github.com/ossf/scorecard-action/releases) - [Changelog](https://github.com/ossf/scorecard-action/blob/main/RELEASE.md) - [Commits](https://github.com/ossf/scorecard-action/compare/e38b1902ae4f44df626f11ba0734b14fb91f8f86...0864cf19026789058feabb7e87baa5f140aac736) Updates `github/codeql-action` from 2.2.4 to 3.24.10 - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md) - [Commits](https://github.com/github/codeql-action/compare/17573ee1cc1b9d061760f3a006fc4aac4f944fd5...4355270be187e1b672a7a1c7c7bae5afdc1ab94a) --- updated-dependencies: - dependency-name: actions/cache dependency-type: direct:production update-type: version-update:semver-major dependency-group: github-actions - dependency-name: nick-fields/retry dependency-type: direct:production update-type: version-update:semver-major dependency-group: github-actions - dependency-name: coverallsapp/github-action dependency-type: direct:production update-type: version-update:semver-major dependency-group: github-actions - dependency-name: ossf/scorecard-action dependency-type: direct:production update-type: version-update:semver-minor dependency-group: github-actions - dependency-name: github/codeql-action dependency-type: direct:production update-type: version-update:semver-major dependency-group: github-actions ... Signed-off-by: dependabot[bot] <support@github.com>
Diogo Teles Sant'Anna 80e25c02 2024-04-09T11:57:42 Enable dependabot for github actions
Diogo Teles Sant'Anna a4ec4cbe 2024-04-09T11:55:37 Hashpin workflows that use sensitive permisisons
williammuji 9de85b58 2024-04-05T20:42:37 fix WSOptions enum value and extended payload length bug
icy17 6e390911 2024-04-10T17:42:01 Fix potential Null pointer dereference in regress_buffer.c
icy17 74217832 2024-04-10T15:47:57 Fix potential Null pointer dereference in regress.c
icy17 d6e88352 2024-04-10T17:45:03 Fix potential Null pointer dereference in regress_et.c
icy17 d45dca43 2024-04-10T17:39:36 Fix potential Null pointer dereference in regress_thread.c
icy17 2bdf1737 2024-04-10T16:18:27 Fix potential Null pointer dereference in regress_finalize.c
icy17 17796a2d 2024-04-10T15:32:54 Fix potential Null pointer dereference in regress_http.c
icy17 f9526e13 2024-04-10T15:16:21 Fix potential NULL pointer dereference in regress_bufferevent.c
icy17 fc48803d 2024-04-15T15:02:27 Fix potential Null pointer dereference in regress_zlib.c (#1597) Co-authored-by: Azat Khuzhin <a3at.mail@gmail.com>
emma-coronado c6e8f175 2024-04-07T19:37:55 Edit logo path to match new website directory
Liu Dongmiao 39073df8 2024-03-30T21:44:50 evutil: don't call memset before memcpy In `evutil_parse_sockaddr_port`, it would `memset` the `out` to zero, however, the `memset` is unnecessary before `memcpy`, and may cause undefined behavior if the `outlen` is invalid. This should close #1573.
neil 4fd07f0e 2024-03-12T21:56:35 Upgrade vmactions to use linux runners (#1570) Co-authored-by: neil <neilgit@neilpang.com>
Azat Khuzhin 539f73e3 2024-02-20T09:30:22 Fix leak in evbuffer_add_file() on empty files Found by oss-fuzz, after coverage had been improved in google/oss-fuzz#11257 v2: adjust test v3: fix for windows (_get_osfhandle() crashes when called on closed fd) v4: fix for EVENT__DISABLE_MM_REPLACEMENT
Azat Khuzhin b9e1fe74 2024-03-11T21:00:18 ci: disable netbsd and freebsd due to lack of runners For example for openbsd-cmake-job (7.2, NONE) This request was automatically failed because there were no enabled runners online to process the request for more than 1 days. And maybe this will fix the macos builds.
Andy Pan 0054b9aa 2024-03-11T17:12:14 Enable the full TCP KeepAlive mechanism on Windows (#1568) #1532 implemented the full support of TCP Keep-Alives on UNIX-like OS's while leaving a `TODO` for Windows. This PR intends to resolve that `TODO`. ## References - [SIO_KEEPALIVE_VALS Control Code](https://learn.microsoft.com/en-us/windows/win32/winsock/sio-keepalive-vals) - [IPPROTO_TCP socket options](https://learn.microsoft.com/en-us/windows/win32/winsock/ipproto-tcp-socket-options) - [TCP_KEEPINVTL and TCP_KEEPIDLE - Socket Keep Alives not working](https://cygwin.com/pipermail/cygwin/2020-June/245436.html) - [Cygwin: tcp: Support TCP_KEEPIDLE, TCP_KEEPCNT, TCP_KEEPINTVL](https://sourceware.org/pipermail/cygwin-cvs/2020q3/014473.html) - [Add cross-platform support for keep-alive socket options](https://github.com/dotnet/corefx/pull/29963/files)
tgolang 9c8860ec 2024-03-11T15:50:43 chore: remove repetitive words Signed-off-by: tgolang <seekseat@aliyun.com>
Andy Pan e66df92c 2024-03-07T16:19:11 Accept SOCK_NONBLOCK/SOCK_CLOEXEC in type argument of socketpair (#1567) Setting `SOCK_NONBLOCK` and `SOCK_CLOEXEC` in the `type` argument of `socketpair()` is widely supported across UNIX-like OS: Linux, *BSD, Solaris, etc., as is the `socket()`. This will conserve several extra system calls, we should use it where available. ### References - [socketpair(2) on Linux](https://man7.org/linux/man-pages/man2/socketpair.2.html#HISTORY) - [socketpair(2) on FreeBSD](https://man.freebsd.org/cgi/man.cgi?query=socketpair&sektion=2#DESCRIPTION) - [socketpair(2) on DragonFly](https://man.dragonflybsd.org/?command=socketpair&section=2) - [socketpair(2) on NetBSD](https://man.netbsd.org/socketpair.2#DESCRIPTION) - [socketpair(2) on OpenBSD](https://man.openbsd.org/socketpair.2) - [socketpair(3C) on Solaris](https://docs.oracle.com/cd/E88353_01/html/E37843/socketpair-3c.html) Changelog: - Set SOCK_NONBLOCK and SOCK_CLOEXEC in the type argument of socketpair - Avoid EPROTOTYPE on macOS and OpenBSD - Eliminate the warnings about unused variables - Add some comments
Azat Khuzhin f2b3ce6b 2024-03-03T23:10:48 Merge pull request #1558 from azat/ratelimit-fixes Fix few issues found by oss-fuzz in bufferevent ratelimits
Azat Khuzhin e4b87327 2024-02-20T08:58:04 Fix integer-overflow in ev_token_bucket_cfg_new Found by oss-fuzz, after coverage had been improved in https://github.com/google/oss-fuzz/pull/11257 v2: better check (found by CI for windows)
Azat Khuzhin 15e643d0 2024-03-03T14:49:34 Fix pread detection for cmake builds Otherwise it will use lseek()+read() - suboptimal
Andy Pan 92109747 2024-03-02T10:45:49 Simplify TCP_KEEPALIVE_ABORT_THRESHOLD settings on Solaris
Azat Khuzhin c4fb0f76 2024-02-20T08:58:04 Fix divide-by-zero in ev_token_bucket_get_tick_ Found by oss-fuzz, after coverage had been improved in https://github.com/google/oss-fuzz/pull/11257
Azat Khuzhin ec8d7a5a 2024-02-20T08:54:14 ci: fix ABI check (#1510)
Pierce Lopez 7eddd526 2024-02-20T07:56:24 Patch abi-compliance-checker to avoid endless loop
Pierce Lopez 798547ac 2024-02-20T07:51:37 Force abi-check to use DWARF 3
Azat Khuzhin e4869625 2024-02-20T08:01:23 Fix abi_check.sh by excluding .abi-check from cp cp: cannot copy a directory, './.abi-check', into itself, '/le/src/.abi-check/work/abi-check/src/libevent/current/.abi-check'
Azat Khuzhin 5bdfab76 2024-02-18T21:36:30 Debug abi check
Azat Khuzhin f37c667c 2024-02-18T20:28:49 Add ABI check without deploy for PRs
Azat Khuzhin 551df0b2 2023-09-03T08:15:07 ci: try to fix ABI check by using newer version of ubuntu Looks like after upgrading ubuntu from 18.04 (that has 1.9 version of lvc abi tools) to 20.04 (that has 1.11) the abi-check started to timeout (works longer then 6 hours, while usually few minutes, and sometimes even faster was enough). Unlikely upgrading ubuntu will help, since 22.04 and 20.04 has the same version, but still, let's try. Refs: #1463
Azat Khuzhin 0dbd3eb3 2024-02-18T16:06:28 tests: add test for EV_SIGNAL with timeout Refs: https://github.com/libevent/libevent-book/issues/12
Azat Khuzhin 5cec3417 2024-02-19T08:21:11 Make Infer static analyzer happy (#1554)
Ramon Ortega de Voor ed35b30f 2023-10-23T16:52:19 Fix two compiler errors for unused variable and undefined function In buffer.c a variable "flags" and a label "done" are defined but never used if "EVENT__HAVEMMAP" is not defined. The code does not work on platforms which do not provide the function `socketpair()`. Introduce EVENT__HAVE_SOCKETPAIR flag which determines if `socketpair()` or `evutil_ersatz_socketpair()` is used.
Azat Khuzhin 95ed33e3 2024-02-18T22:08:54 Follow up for HTTP chunk size check (#1552)
Azat Khuzhin f9939490 2024-02-18T21:19:41 Fix leak in evconnlistener_new_async() Fixes: https://github.com/libevent/libevent/issues/414
Azat Khuzhin 317911a1 2024-02-18T20:39:12 Fix util/monotonic_prc_fallback under FreeBSD Looks like there was garbage, since evutil_configure_monotonic_time_() does not reset evutil_monotonic_timer structure, while in case of fallback it uses two fields from it: - last_time - adjust_monotonic_clock Fixes: https://github.com/libevent/libevent/issues/1495
Azat Khuzhin 3cf996f0 2024-02-18T19:53:58 evutil: add a comment why no NULL check in evutil_inet_pton_scope()
Azat Khuzhin 5412b2c3 2024-02-18T19:40:00 bufferevent_ssl: fix freeing ctx in case of error in bufferevent_ssl_new_impl
Azat Khuzhin c9793baa 2024-02-18T19:39:50 bufferevent_ssl: proper NULL checks
Azat Khuzhin 6e4ea6c3 2024-02-18T19:31:12 evthread: fix NULL dereference in evthread_setup_global_lock_()
Azat Khuzhin 2f27523e 2024-02-18T18:22:21 bufferevent_ssl: do not return NULL from upcast /src/le/libevent/bufferevent_ssl.c:863: error: Null Dereference pointer `bev_ssl` last assigned on line 855 could be null and is dereferenced at line 863, column 6. 861. r2 = start_writing(bev_ssl); 862. 863. if (bev_ssl->underlying) { ^ 864. if (events & EV_READ) 865. BEV_RESET_GENERIC_READ_TIMEOUT(bev);
Azat Khuzhin 53034936 2024-02-18T18:16:38 bufferevent_filter: do not allow upcast() to return NULL (fixes infer warning) /src/le/libevent/bufferevent_filter.c:234: error: Null Dereference pointer `bevf` last assigned on line 231 could be null and is dereferenced at line 234, column 6. 232. EVUTIL_ASSERT(bevf); 233. 234. if (bevf->bev.options & BEV_OPT_CLOSE_ON_FREE) { ^ 235. /* Yes, there is also a decref in bufferevent_decref_. 236. * That decref corresponds to the incref when we set
Azat Khuzhin d9b5fe31 2024-02-18T18:03:38 evrpc: proper NULL checks (API function return value added) Note, that in order to do this evrpc_hook_add_meta() should have return value, so this is a minor ABI change, which should not affect C ABI, but still worth to mention. Anyway this will be done in 2.2 release and unlikely RPC subsystem is popular.
Azat Khuzhin 05ed7c8c 2024-02-18T18:00:57 bufferevent_pair: fix infer warnings due to upcast() return NULL The only user that is care about this is bufferevent_pair_get_partner(), so let's move the check there.
Azat Khuzhin 8feed7f1 2024-02-18T19:26:47 http: forbid chunks size with 0X prefix Co-authored-by: Ben Kallus <49924171+kenballus@users.noreply.github.com>
Azat Khuzhin 87cdcc18 2024-02-18T15:24:58 http: change error for corrupted requests to 400 Bad Request Previously it was 413 Request Entity Too Large, which was odd.
Azat Khuzhin f1632e59 2024-02-18T15:24:33 http: check first byte of the chunk for 0x as well
Azat Khuzhin e60d039d 2024-02-18T15:02:59 tests: add a test for malformed chunks v2: fix test for win32 (and it more correct in general)
Ben Kallus 92ea8476 2024-02-18T08:56:46 Forbid 0x/+/-/whitespace prefixes on HTTP chunk sizes (#1542) Currently, libevent's HTTP parser accepts and ignores 0x, +, and whitespace prefixes on chunk sizes. It also ignores - prefixes on chunk sizes of 0. This patch fixes that. There is a potential danger in the current behavior, which is that there exist HTTP implementations that interpret chunk sizes as their longest valid prefix. For those implementations, 0xa (for example) is equivalent to 0, and this may present a request smuggling risk when those implementations are used in conjunction with libevent. However, as far I'm aware, there is no HTTP proxy that both interprets 0xa as 0 and forwards it verbatim, so I think this is a low-risk bug that is acceptable to report in public.
Azat Khuzhin da3c7b50 2024-02-18T12:07:07 Update link to the github package registry usage from github actions Ugh, old link even don't have any redirect, what is a pitty. [skip ci]
kurtliu 7870e85e 2024-01-24T13:19:23 install DESTINATION use CMAKE_INSTALL_<dir>
kurtlau b698e6c4 2024-01-23T04:29:04 Make MbedTLS and OpenSSL dependencies configurable (#1544) As acfac7a#r124469888 mentioned, LibeventConfig.cmake is looking for MBedTLS package, even if libevent is not configured to use MBedTLS. This PR makes MbedTLS and OpenSSL dependencies configurable. Fixes: #1543
Ben Kallus 665d79f1 2024-01-18T16:42:52 Fix integer overflow in HTTP version (#1541) Currently, when libevent parses requests with version `HTTP/4294967295.255`, you end up with `req->major == req->minor == (char)-1`. (At least on linux-gnu-x86_64, where `char` is signed.) This is sort of weird. This patch changes the version parser to match the grammar in RFCs 7230 and 9112. (i.e. `HTTP/[0-9].[0-9]`) EDIT: Technically, a little stronger than the RFC requires, since this patch continues to block major versions greater than 1, which was already what libevent was doing.
Andy Pan 55899c2f 2024-01-14T21:24:37 Use read/write instead of readv/writev for single buffer The `readv`/`writev` functions are designed for scattered I/O optimally, their logic in the kernel is more sophisticated, compared to read/write, which includes extra on-stack `iovec` in the kernel space, importing `iovec` array from user space to kernel space, reading/writing with `iov_iter`, etc. As a result, using `readv`/`writev` on single-segment `iovec` will fall into the special branch in the kernel where it is imported as `ITER_UBUF` differed from `ITER_IOVEC` for multiple-segments `iovec`. Thus, it is just not worth calling `readv`/`writev` for single-segment `iovec`, we should use `read`/`write` instead, to save it from going through the sophisticated yet unnecessary kernel code path, circumvent a waste of kernel on-stack memory, copying `iovec` between user space and kernel space, etc.
Andy Pan 3f508af6 2024-01-14T13:40:35 Ignore the project files from IDE or editors I sometimes browse and edit C/C++ code with VSCode, and it would generate some project files in .vscode which could easily be added and even pushed to a git repo by accident. It's sort of annoying for programmers who work with VS/VSCode, IntelliJ/Clion, or other widely-used IDE or editors to prevent themself from using git command like `git add .` in lib event project. Therefore, I propose leaving the project files generated by VS/VSCode and IntelliJ/Clion untracked for libevent project. Hopefully, this can be accepted.
Andy Pan 23cdd610 2024-01-15T12:26:58 Use evutil_set_tcp_keepalive for sample/becat.c Since #1532 introduced the util function for consolidating TPC keep-alive settings, there is no need to write other handmade functions elsewhere.
Azat Khuzhin cffb7c03 2024-01-13T15:54:49 ci: disable ABI check temporary (I hope that "temporary") Refs: https://github.com/libevent/libevent/issues/1463
Andy Pan 9d4853b3 2024-01-13T20:51:49 Optimize preprocessor directives on Solaris for evutil_set_tcp_keepalive (#1536) Changes: - Optimize preprocessor directives on Solaris for evutil_set_tcp_keepalive - Reduce the amount of code being compiled and trim trailing whitespace in passing. - Move comments for Solaris under its macro - Refactor the control flow
Azat Khuzhin 76460fbe 2024-01-06T14:29:22 Fix windows CI (#1533) But note, that there is still issues with MbedTLS and ZLIB: CMake Error at C:/Program Files/CMake/share/cmake-3.27/Modules/FindPackageHandleStandardArgs.cmake:230 (message): Error: Could NOT find MbedTLS (missing: MBEDTLS_INCLUDE_DIR MBEDTLS_LIBRARY MBEDTLS_CRYPTO_LIBRARY MBEDTLS_X509_LIBRARY MBEDTLS_LIBRARIES MBEDTLS_VERSION) Call Stack (most recent call first): C:/Program Files/CMake/share/cmake-3.27/Modules/FindPackageHandleStandardArgs.cmake:600 (_FPHSA_FAILURE_MESSAGE) D:/a/libevent/libevent/cmake/FindMbedTLS.cmake:142 (find_package_handle_standard_args) D:/a/libevent/vcpkg/scripts/buildsystems/vcpkg.cmake:859 (_find_package) C:/Program Files/CMake/share/cmake-3.27/Modules/CMakeFindDependencyMacro.cmake:76 (find_package) D:/a/libevent/libevent/build/LibeventConfig.cmake:43 (find_dependency) D:/a/libevent/vcpkg/scripts/buildsystems/vcpkg.cmake:859 (_find_package) CMakeLists.txt:11 (find_package) But by some reason it is not a fatal error on some builds: -- OpenSSL lib: optimized;C:/Program Files/OpenSSL/lib/VC/libssl64MD.lib;debug;C:/Program Files/OpenSSL/lib/VC/libssl64MDd.lib;optimized;C:/Program Files/OpenSSL/lib/VC/libcrypto64MD.lib;debug;C:/Program Files/OpenSSL/lib/VC/libcrypto64MDd.lib -- Could NOT find MbedTLS (missing: MBEDTLS_INCLUDE_DIR MBEDTLS_LIBRARY MBEDTLS_CRYPTO_LIBRARY MBEDTLS_X509_LIBRARY MBEDTLS_LIBRARIES MBEDTLS_VERSION) -- Could NOT find ZLIB (missing: ZLIB_LIBRARY) (found version "1.2.11") This will be fixed separatelly - #1534, partially worked CI better then fully broken anyway. * ci/windows: Update vcpkg to fix windows CI Switch to windows-latest (just in case)
Azat Khuzhin 3e01178b 2024-01-06T13:53:32 Update vcpkg to fix windows CI Previusly it got lots of 404 errors during downloading packages, this was due to too old repository had been used.
Azat Khuzhin 85c09bbf 2024-01-06T13:15:58 Switch to windows-latest (just in case)
Andy Pan 7658b788 2024-01-06T00:52:43 Implement full support of TCP Keep-Alives across most Unix-like OS's (#1532) Default settings of TCP keep-alive are not always feasible, take Linux for example, the duration a connection needs to be idle before sending out the first keep-alive probe is two hours, which makes detecting dead connections extremely deferred. Thus, enabling TCP keep-alive will be to little avail. This sets TCP_KEEPIDLE, TCP_KEEPINTVL, and TCP_KEEPCNT when enabling TCP keep-alive mechanism to make it practicable.
Hemanth Nandish 0c54433c 2023-11-26T14:53:23 time-test: use event_new for compatibility with future libevent (#1525)
Sam James 4c38de8c 2023-11-26T20:52:32 Fix -Walloc-size (#1526) Co-authored-by: Azat Khuzhin <azat@libevent.org>
Azat Khuzhin 4881b592 2023-11-25T19:13:35 Merge pull request #1519 from cculianu/ws_c_fixes
Faraz Vahedi 7f5b8f19 2023-11-18T15:55:14 Fix documentation inconsistency in evhttp callbacks This commit addresses a minor inconsistency identified in the documentation of multiple `evhttp` callback functions within the `event2/http.h` header file. It was observed that the word "additional" was presumably missing in the description of the `arg` parameter for several functions. This oversight led to an incorrect phrasing: "an context argument for the callback." The documentation for the following functions has been updated to rectify this issue: - `evhttp_set_gencb` - `evhttp_set_bevcb` - `evhttp_set_newreqcb` - `evhttp_set_errorcb` This commit solely improves the readability of the function descriptions without altering any functional aspects of the code.
Ramon Ortega de Voor cfb2b89a 2023-10-23T17:15:34 fix ERR macro geting redefined In evutil.c a macro ERR gets defined, this is a very generic name in case that in a included header file ERR is used too, the compiler will fail complaining about the redefinition of the macro ERR. To fix this make sure ERR is undefined, before defining it in evutil.c
Ramon Ortega de Voor a579b1d7 2023-10-20T15:36:07 Fix compile error in evbuffer_read() The variable chainp is only used if USE_IOVEC_IMPL is defined. This makes a strict compiler complain about unused variables, since chainp is declared outside of an USE_IOVEC_IMPL block.
Calin Culianu 15b9b6f0 2023-10-17T12:45:33 Apply suggestions from code review Co-authored-by: Azat Khuzhin <a3at.mail@gmail.com>
Calin Culianu b828c4ab 2023-10-16T15:25:12 Added 10MiB recv limit for WS frames, also a small nit - Added WS_MAX_RECV_FRAME_SZ, if a received frame exceeds this limit (10 MiB), error out. This is a DoS prevention measure. - Also redid the unmasking code in get_ws_frame(), to avoid assumptions about the size of an unsigned int and some casting, and avoid memcpy(), just use the mask bytes from the buffer that are already there to unmask.
Calin Culianu 7fbbe86f 2023-10-14T23:53:36 Fix unaligned access + missing frame length get_ws_frame: - had potentially unaligned access; fixed. - was not reading the full 8 bytes in the 64-bit case (was using the incorrect htons); fixed. make_ws_frame: - wasn't writing the length in the 8-byte case. Also switched both functions to use size_t rather than int where appropriate.
binarycraft007 c9af0245 2023-10-12T10:22:04 wepoll api: fix definition of EPOLLONESHOT to match Linux
Gordon Bergling 23685cfb 2023-09-28T11:18:10 Fix some typos (#1515)
Azat Khuzhin d30ad0a7 2023-09-22T10:21:15 Merge branch 'becat-fixes-v2' * becat-fixes-v2: becat: change -R to -b (since it is more of a buffer size) becat: add ability to set TCP keepalive
Azat Khuzhin 9e4693ed 2023-09-22T10:21:06 becat: change -R to -b (since it is more of a buffer size)
Azat Khuzhin 617cf5ef 2023-09-22T10:21:06 becat: add ability to set TCP keepalive
Azat Khuzhin c15ba75d 2023-09-22T09:35:42 Merge branch 'evbuffer_add_reference_with_offset' - #1513 * evbuffer_add_reference_with_offset: Add a comment for evbuffer_ref_cleanup_cb tests: simplify test_evbuffer_add_reference_with_offset Add function evbuffer_add_reference_with_offset()
Azat Khuzhin c2a935b5 2023-09-22T09:34:59 Add a comment for evbuffer_ref_cleanup_cb
Azat Khuzhin d9780cf9 2023-09-21T22:04:17 Fix -Wsingle-bit-bitfield-constant-conversion warning in clang 16 report: /src/le/libevent/sample/becat.c:304:29: warning: implicit truncation from 'int' to a one-bit wide bit-field changes value from 1 to -1 [-Wsingle-bit-bitfield-constant-conversion] case 'k': o.extra.keep = 1; break;