Log

Author Commit Date CI Message
Azat Khuzhin e1ecc6fa 2021-12-02T10:27:16 Switch coverage to ubuntu 18.04 It seems that there is no 16.04 image anymore, since github actions was not able to find it for 24 hours [1]. [1]: https://github.com/libevent/libevent/actions/runs/1522612189
fanquake 9aa4eb09 2021-11-24T08:44:03 build: use modern ax_pthread macro acx_pthread became ax_pthread in 2009 and the macro has seen lots of updates since then. This change switches to using the latest version.
Azat Khuzhin d076d2df 2021-11-30T22:41:05 Revert "evdns: do not check server_req twice" That was wrong assumption. This reverts commit 991f0ed3d86ffca0c017ab83cd239289912bdaad. Fixes: #1231
Azat Khuzhin 3b9c7dd6 2021-11-30T22:37:32 ci: remove deprecated windows-2016 image Refs: https://github.blog/changelog/2021-10-19-github-actions-the-windows-2016-runner-image-will-be-removed-from-github-hosted-runners-on-march-15-2022
Theo Buehler 883630f7 2021-11-21T21:38:20 Don't define BIO_get_init() for LibreSSL 3.5+ BIO_get_init() is available in LibreSSL 3.5 and later. The BIO type will become opaque, so the existing macro will break the build.
Azat Khuzhin f64f60a2 2021-11-30T22:22:43 Merge #1230 -- build: remove inconsistently used x-prefix comparisons * upstream/pr/1230: build: fix typos in ax_check_funcs_ex.m4 build: remove inconsistently used x-prefix comparisons
fanquake 80f3ab01 2021-11-24T14:44:48 build: fix typos in ax_check_funcs_ex.m4
fanquake 082941ed 2021-11-24T14:41:33 build: remove inconsistently used x-prefix comparisons Given that these are already used inconsistently with `test` checks, it makes sense to consolidate to not use the x-prefix comparisons at all. In any case, it would be nice to think we no longer have to work around a problem that existed in shells many, many years ago. More info: https://github.com/koalaman/shellcheck/wiki/SC2268 https://www.vidarholen.net/contents/blog/?p=1035
Azat Khuzhin 0c217f4f 2021-11-22T00:05:27 Fix comment for evdns_base_new()
Christopher Chavez 89505f85 2021-11-11T20:12:14 CheckWorkingKqueue.cmake: fix missing headers Avoid implicitly declaring functions memset() and exit() as it is considered an error by some compilers (e.g. Xcode clang 12 and later)
Tomas Gonzalez 9a38bc5f 2021-11-01T10:01:06 evutil: Fix evutil_freeaddrinfo During testing on win32, util/getaddrinfo failed with NULL hint info r = evutil_getaddrinfo("www.google.com", NULL, NULL, &ai); throwing a critical heap exception when evutil_freeaddrinfo is called. This is because of improper use of freeaddrinfo when nodes within the ai structure are allocated using mm_malloc or mm_calloc (EVUTIL_AI_LIBEVENT_ALLOCATED) This adds the flag in apply_socktype_protocol_hack and walks the linked list in evutil_freeaddrinfo removing linked list nodes that are custom allocated before calling freeaddrinfo.
Thomas Perrot 3daebf30 2021-09-29T13:50:35 test: retriable tests are marked failed only when all attempts have failed Signed-off-by: Thomas Perrot <thomas.perrot@bootlin.com>
Azat Khuzhin 048907a5 2021-09-19T15:52:02 github/workflows/macos.yml: fix test step name
Azat Khuzhin 357dca4f 2021-09-19T15:59:57 Merge branch 'skip-tests' -- fix/skip some tests to avoid complete check failures * skip-tests: test: add --retries-delay (and set to 1 second by default) test: add --retries argument Add -Wno-void-pointer-to-enum-cast (we use this hack in tests) test/regress_http: mark data_length_constraints as retriable github/workflows/mingw: use ctest --output-on-failure test/dns: mark TCP tests as retriable test/regress: retry some signal rlated tests in darwin test/regress_util: mark monotonic_prc as retriable test/regress_http: fix unix_socket test test/regress_http: disable max_connections/data_length_constraints under windows Add EV_WINDOWS macro
Azat Khuzhin 90846c30 2021-09-19T13:18:40 test: add --retries-delay (and set to 1 second by default) In attemp to address failures of dns/tcp_* tests under windows [1]. [1]: https://github.com/azat/libevent/runs/3644218468?check_suite_focus=true
Azat Khuzhin d7d6af75 2021-09-19T13:15:02 test: add --retries argument
Azat Khuzhin 7179cedd 2021-09-19T13:36:15 Add -Wno-void-pointer-to-enum-cast (we use this hack in tests) Refs: https://reviews.llvm.org/D75758
Azat Khuzhin 29492364 2021-09-19T12:56:24 test/regress_http: mark data_length_constraints as retriable CI: https://github.com/libevent/libevent/runs/3643914024?check_suite_focus=true
Azat Khuzhin 12e6d6eb 2021-09-19T12:33:44 github/workflows/mingw: use ctest --output-on-failure Otherwise it is hard to understand the problem [1]. [1]: https://github.com/azat/libevent/runs/3643912284
Azat Khuzhin 7855900c 2021-09-19T12:24:50 test/dns: mark TCP tests as retriable CI: https://github.com/azat/libevent/runs/3643912296 # tcp_resolve_many_clients CI: https://github.com/azat/libevent/runs/3643912192 # tcp_timeout CI: https://github.com/azat/libevent/runs/3643912336 # tcp_resolve CI: https://github.com/azat/libevent/runs/3643912174 # tcp_resolve_pipeline
Azat Khuzhin 6ad6afb6 2021-09-19T12:23:48 test/regress: retry some signal rlated tests in darwin CI: https://github.com/azat/libevent/runs/3643912290 # simplestsignal CI: https://github.com/azat/libevent/runs/3643912296 # simplesignal CI: https://github.com/azat/libevent/runs/3643912228 # multiplesignal
Azat Khuzhin 58606a62 2021-09-19T12:21:39 test/regress_util: mark monotonic_prc as retriable CI: https://github.com/azat/libevent/runs/3643966877
Azat Khuzhin de53da2e 2021-09-19T11:07:55 test/regress_http: fix unix_socket test
Azat Khuzhin 95eadf04 2021-09-19T10:54:27 test/regress_http: disable max_connections/data_length_constraints under windows CI: https://github.com/libevent/libevent/runs/3643554394
Azat Khuzhin a35d2d01 2021-09-19T10:54:08 Add EV_WINDOWS macro
Azat Khuzhin 39dcd52b 2021-08-10T22:04:43 ci: split build and test into separate jobs
Azat Khuzhin f1e9e4da 2021-09-19T01:47:42 test: cleanup stalled socket after running http/unix_sock Otherwise it breaks upload-artifacts: Run actions/upload-artifact@v1 Uploading artifact 'ubuntu-18.04-cmake-NONE-build' from '/home/runner/work/libevent/libevent/build' for run #346 Uploading 1095 files File error 'No such device or address' when uploading file '/home/runner/work/libevent/libevent/build/foo'. ... Error: No such device or address Error: Exit code 1 returned from process: file name '/home/runner/runners/2.282.1/bin/Runner.PluginHost', arguments 'action "GitHub.Runner.Plugins.Artifact.PublishArtifact, Runner.Plugins"'.
Azat Khuzhin f89e8612 2021-09-19T01:23:07 test: check return value of write()/send() in bufferevent_read_failed This will also suppress: ../test/regress_bufferevent.c: In function ‘test_bufferevent_read_failed’: 1102 ../test/regress_bufferevent.c:1395:2: warning: ignoring return value of ‘write’, declared with attribute warn_unused_result [-Wunused-result] 1103 write(data->pair[0], buf, strlen(buf));
Azat Khuzhin 04fcd7c6 2021-09-19T00:57:31 test: mark util/monotonic_prc_fallback as retriable Refs: #1193
Azat Khuzhin 41b5ab0f 2021-09-19T00:39:30 bufferevent_ssl: check return value of the evbuffer_drain() Refs: #1163
Azat Khuzhin b926af26 2021-09-19T00:27:53 Merge remote-tracking branch 'upstream/pr/1203' @ploxiln: "It seems like a bit of refactoring might be able to clean this code up a bit, but it's a bit tricky because of the varied tricky usage of chain structs, so this initial version has minimal changes ... " * upstream/pr/1203: buffer: do not round up allocation for reference-type chain objects
Azat Khuzhin 74af13d5 2021-09-19T00:23:10 Merge !1204 -- tests: fix macOS CI runs * upstream/pr/1204: test: http_unix_socket_test: fix url could be freed uninitialized test: regress_http: skip unix socket parsing tests in windows test: fix regress_http evhttp_bind_unixsocket() on macOS ci: fix macOS mbedtls version/search
Pierce Lopez 5303feff 2021-09-17T04:47:34 test: http_unix_socket_test: fix url could be freed uninitialized > regress_http.c:2279:2: warning: variable 'uri' is used uninitialized > whenever 'if' condition is true
Pierce Lopez 4f73bf3a 2021-09-17T01:56:56 test: regress_http: skip unix socket parsing tests in windows windows doesn't do unix sockets
Pierce Lopez 58d4e50d 2021-09-17T01:39:46 test: fix regress_http evhttp_bind_unixsocket() on macOS needs to use evutil socket helper for SOCK_NONBLOCK / SOCK_CLOEXEC
Pierce Lopez bceab045 2021-09-17T01:37:19 ci: fix macOS mbedtls version/search mbedtls just updated to version 3.0, install mbedtls@2 variant, which needs more help being located since it's no longer the default and no longer linked into the typical /usr/local dirs also gitignore mbedtls sample program binaries
Pierce Lopez fd0ce993 2021-09-16T23:21:26 buffer: do not round up allocation for reference-type chain objects Skip rounding up memory allocations for: * evbuffer_add_reference() * evbuffer_add_buffer_reference() * evbuffer_add_file_segment() These chain objects only store small structs with references to other things, and these small structs do not themselves grow, so bumping up the allocation to MIN_BUFFER_SIZE (512 bytes) is wasteful.
Pierce Lopez fabbf3b3 2021-09-14T01:19:36 test: skip dns_initialize_nameservers if missing /etc/resolv.conf some build systems run tests in minimal containers with no resolv.conf, and the primary thing this test does is load the default /etc/resolv.conf
Yong Wu 68675d5f 2021-09-12T18:03:03 doc: adjust flags notice on event_base_loop()
Yong Wu 990bcfc2 2021-09-06T08:06:10 ev_io_timeout consistency
Yong Wu 74594077 2021-09-05T22:42:04 modify typo - timeeouts
Azat Khuzhin 2b92b830 2021-08-12T01:40:27 http: fix building under windows (guard with _WIN32 for unixsocket free) Reported-by: @kaend
Azat Khuzhin 86292628 2021-08-10T23:14:01 test: fix checking test args for http_parse_uri_test
Sean Young f446229b 2016-01-31T11:31:00 http: support unix domain sockets There are no standard for encoding a unix socket in an url. nginx uses: http://unix:/path/to/unix/socket:/httppath The second colon is needed to delimit where the unix path ends and where the rest of the url continues. Signed-off-by: Sean Young <sean@mess.org>
Azat Khuzhin 6f139b87 2021-08-01T11:53:17 buffer: fix CreateFileMapping() leak from evbuffer_add_file() evbuffer_file_segment_materialize() is called twice from evbuffer_add_file(), and so win32 mapping will leak. Fixes: #1186
moonlightsh c29f1dbe 2021-07-16T10:21:06 fix evthread_use_pthreads_with_flags dead lock when first return
fanquake c5642697 2021-07-13T15:08:44 build: fail with a useful error message if pkg-config isn't available
Tobias Heider 5c0e75c3 2021-07-06T17:40:58 Properly initialize sockaddr length on systems with sin_len.
Azat Khuzhin 6d800fd6 2021-07-10T00:12:21 Merge remote-tracking branch 'upstream/pr/1171' * upstream/pr/1171: ci: install pkg-config in mingw-w64 CI build: test ac_cv_header_sys_time_h once, reformat timer* macro checks build: remove call to AC_C_CONST() build: replace ntp_pkg_config macro with a call to PKG_PROG_PKG_CONFIG() build: remove NTP_PKG_CONFIG call from libevent_mbedtls.m4 build: stop using the deprecated form of AC_OUTPUT() build: quote args in AC_ARG_ENABLE & AS_HELP_STRING build: remove call to AC_HEADER_TIME build: call AC_PREREQ() first & quote argument build: remove call to AC_PREFIX_DEFAULT build: remove call to AC_PROG_GCC_TRADITIONAL
fanquake 196a36af 2021-07-09T12:34:37 ci: install pkg-config in mingw-w64 CI
fanquake 7ab3a06a 2021-06-16T15:29:30 build: test ac_cv_header_sys_time_h once, reformat timer* macro checks
fanquake 041d6f09 2021-06-15T16:00:48 build: remove call to AC_C_CONST() > This macro is obsolescent, as current C compilers support const. > New programs need not use this macro. See: https://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.67/autoconf.html#index-AC_005fC_005fCONST-877.
fanquake 12996ba9 2021-06-15T15:49:38 build: replace ntp_pkg_config macro with a call to PKG_PROG_PKG_CONFIG() Note that 0.15.0 is quite an old version to be testing for, however I've left this as-is for now.
fanquake 4ed37096 2021-06-15T15:37:30 build: remove NTP_PKG_CONFIG call from libevent_mbedtls.m4 I'm guessing this was just copied from libevent_openssl.m4, however there aren't actually any pkg-config calls / macros used here.
fanquake 7708f6ce 2021-06-15T15:22:20 build: stop using the deprecated form of AC_OUTPUT() > The use of AC_OUTPUT with arguments is deprecated. See: https://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.67/autoconf.html#AC_005fOUTPUT.
fanquake 5f11857f 2021-06-15T14:34:46 build: quote args in AC_ARG_ENABLE & AS_HELP_STRING Previously, some were, some weren't. Consolidate on quoting.
fanquake 67f808ec 2021-06-15T14:10:29 build: remove call to AC_HEADER_TIME Besides the fact that the *_TIME_WITH_SYS_TIME define doesn't seem to be used anywhere in the libevent source, this macro is also obselescent. > This macro is obsolescent, as current systems can include both files when they exist. > New programs need not use this macro. See: https://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.67/autoconf.html#index-AC_005fHEADER_005fTIME-640.
fanquake eb59d84d 2021-06-15T13:41:05 build: call AC_PREREQ() first & quote argument > This macro may be used before AC_INIT. Calling this first means establishing that the required version of autoconf is actually available, before bothering with AC_INIT(). See: https://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.67/autoconf.html#Versioning.
fanquake dfae9557 2021-06-15T13:35:58 build: remove call to AC_PREFIX_DEFAULT > By default, configure sets the prefix for files it installs to /usr/local. A call to AC_PREFIX_DEFAULT, just to set the value the same as the default, would seem unnecessary. Note that the "initialize prefix" comment dates back to aa6567fe6475d3230c7c745a7ca208735af0c331, prior to when an autoconf macro was actually being used. See: https://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.67/autoconf.html#Default-Prefix.
fanquake 710ccb7e 2021-06-15T13:31:44 build: remove call to AC_PROG_GCC_TRADITIONAL libevent requires Autoconf 2.67+, and from atleast this version onwards, if not earlier, this macro is obsolescent. > This macro is obsolescent, since current versions of the GNU > C compiler fix the header files automatically when installed. See: https://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.67/autoconf.html#AC_005fPROG_005fGCC_005fTRADITIONAL.
Azat Khuzhin 3d48c756 2021-06-27T18:37:20 Merge #1176 - make evthread_use_pthreads() a MT-Safe function * upstream/pr/1176: remove emty line for code formating make evthread_use_pthreads a MT-Safe function
moonlightsh bb669d93 2021-06-25T08:33:30 remove emty line for code formating
moonlightsh 608876d2 2021-06-25T08:27:27 make evthread_use_pthreads a MT-Safe function
Michael Davidsaver 73ca1801 2019-10-21T11:41:19 RTEMS has no SA_RESTART as RTEMS has no syscalls to restart.
Azat Khuzhin aba6548c 2021-03-23T09:50:03 Switch to lukka/run-vcpkg@v7 and update vcpkgGitCommitId Let's see if it uses set-env or not [1]: Run lukka/run-vcpkg@v2 Restore vcpkg and its artifacts from cache Set output env vars Error: Unable to process command '::set-env name=RUNVCPKG_VCPKG_ROOT::D:\a\libevent\vcpkg' successfully. Error: The `set-env` command is disabled. Please upgrade to using Environment Files or opt into unsecure command execution by setting the `ACTIONS_ALLOW_UNSECURE_COMMANDS` environment variable to `true`. For more information see: https://github.blog/changelog/2020-10-01-github-actions-deprecating-set-env-and-add-path-commands/ [1]: https://github.com/libevent/libevent/runs/2172680596?check_suite_focus=true#step:4:24 And this one [2]: error: could not open file /var/cache/pacman/pkg/libzstd-1.5.0-1-x86_64.pkg.tar.zst: Child process exited with status 127 error: could not open file /var/cache/pacman/pkg/zstd-1.5.0-1-x86_64.pkg.tar.zst: Child process exited with status 127 error: could not open file /var/cache/pacman/pkg/pacman-5.2.2-23-x86_64.pkg.tar.zst: Child process exited with status 127 error: failed to commit transaction (cannot open package file) [2]: https://github.com/libevent/libevent/pull/1168/checks?check_run_id=2706159518#step:4:367
Alex Budovski 8f74b30c 2021-05-30T13:05:25 Replace gettimeofday with the portable wrapper Otherwise the Win32 build fails.
Azat Khuzhin c2b45248 2021-05-24T21:03:58 Fix -Warray-parameter for evutil_ersatz_socketpair_()
Azat Khuzhin 862b83f9 2021-05-24T21:03:58 dns-example: add CNAME support
Sergey Matveychuk 19b3fd0b 2021-04-07T20:39:18 evdns: add ability to get CNAME Add new flag (DNS_CNAME_CALLBACK) for evdns_base_resolve_ipv4()/evdns_base_resolve_ipv6(). If set, you will get one more callback with type == DNS_CNAME and CNAME in addrs argument.
Paweł Wegner 087bbc57 2021-05-13T17:32:11 cmake: don't override CMAKE_CONFIGURATION_TYPES. Surprisingly this overrides configuration types for projects which embed libevent using cmake's add_subdirectory.
Biswapriyo Nath 1fe8b3d6 2021-05-05T01:26:17 cmake: Fix generted pkgconfig files. Use lowercase 'L' option for library names because uppercase 'L' is used with library search directory.
Azat Khuzhin f02fa339 2021-04-30T10:15:45 Support disabled renegotiation in mbedTLS Patch from: @Kurruk007 Fixes: #1161
Azat Khuzhin 72138063 2021-04-27T21:15:03 Do not wrap lines in AC_CHECK_HEADERS/AC_CHECK_FUNCS (fixes detection in mingw) Fixes: d433f847 ("Revert "build: use literals for AC_CHECK_HEADERS/AC_CHECK_FUNCS"") Fixes: 28f0fe6f ("build: use literals for AC_CHECK_HEADERS/AC_CHECK_FUNCS") Fixes: ce028cef ("build: fix autotools build under mingw")
Azat Khuzhin 86ae44ce 2021-04-27T09:03:42 Fix O_RDONLY (_O_RDONLY) under mingw O_RDONLY is defined only if [1]: !defined(NO_OLDNAMES) || defined(_POSIX) [1]: https://github.com/Alexpux/mingw-w64/blob/d0d7f784833bbb0b2d279310ddc6afb52fe47a46/mingw-w64-headers/crt/fcntl.h#L35
Mike Sharov 4f8a6144 2021-04-25T09:12:29 Retry write on EINTR in signal handler The signal handler writes the received signal number as a byte value into the notification pipe. If two signals are received in quick succession, one of the writes may fail with EINTR without writing the byte. This commit will check for EINTR and retry the write. If the error is other than EINTR, a warning will be logged. Note, that: - on systems with sigaction libevent uses sigaction with SA_RESTART - on linux writing to pipe is restartable and firstly it will try to write that byte so linux should not be affected in any form [1]. [1]: https://elixir.bootlin.com/linux/latest/source/fs/pipe.c#L545
Yi Fan Yu dff8fd27 2021-04-22T22:35:59 test/regress.h: Increase default timeval tolerance 50 ms -> 100 ms The default timeout tolerance is 50 ms, which causes intermittent failure in many the related tests in arm64 QEMU. See: https://bugzilla.yoctoproject.org/show_bug.cgi?id=14163 (The root cause seems to be a heavy load) Signed-off-by: Yi Fan Yu <yifan.yu@windriver.com>
Azat Khuzhin 8e03f495 2021-04-03T12:50:53 Merge #1152 -- remove no op evdns functions * upstream/pr/1152: dns: remove evdns_set_transaction_id_fn dns: remove evdns_set_random_bytes_fn
Emil Engler e77f1872 2021-04-02T21:02:12 sample: use unsigned short instead of int for port The C standard gurantees that an unsigned short is at least up to 65535 huge. Enough to store every TCP port. Also the parameter PORT is overgiven to the `htons()` function which assumes that the parameter is of type `uint16_t` which unsigned short is on most platforms.
fanquake 01beec2f 2021-04-03T12:55:32 dns: remove evdns_set_transaction_id_fn
fanquake 39d68053 2021-04-03T12:55:11 dns: remove evdns_set_random_bytes_fn
Emil Engler 0ef0d947 2021-04-02T20:59:55 doc: adjust edge-trigger notice on event_new() This makes it easier to read and to understand it in my opinon. It also fixes a missing "-" character.
Azat Khuzhin d433f847 2021-04-02T09:19:55 Revert "build: use literals for AC_CHECK_HEADERS/AC_CHECK_FUNCS" That commit was wrong, it breaks syntax for autoconf <2.71, since AC_CHECK_*S() requires sh-like list. This reverts commit 28f0fe6fd1e2b1e9fb24a5c7a5b078790890e44f. Fixes: #1149
Azat Khuzhin 28f0fe6f 2021-03-28T17:16:54 build: use literals for AC_CHECK_HEADERS/AC_CHECK_FUNCS autoconf 2.72 reports: configure.ac:188: warning: AC_CHECK_HEADERS(\ ): you should use literals ../autoconf-2.71/lib/autoconf/headers.m4:217: AC_CHECK_HEADERS is expanded from... configure.ac:188: the top level configure.ac:188: warning: AC_CHECK_HEADERS(afunix.h ): you should use literals And also it fails to find fcntl.h and other headers because of this: configure:14725: checking for fcntl.h configure:14725: gcc -c -I/mingw64/include conftest.c >&5 conftest.c:77:10: fatal error: fcntl.h: No such file or directory 77 | #include < fcntl.h> Refs: https://github.com/libevent/libevent/pull/1146/checks?check_run_id=2211752215
Azat Khuzhin ce028cef 2021-03-28T09:01:58 build: fix autotools build under mingw autotools that is shipped with mingw (autoconf 2.71-1, automake 1.6-1.16, automake wrapper 11-1), does not allow trailing backslashes for AC_CHECK_HEADERS() and AC_CHECK_FUNCS(), otherwise it generates incorrect for loop, and reports: ../configure: line 14724: syntax error near unexpected token `as_ac_Header=`printf "%s\n" "ac_cv_header_$ac_header" | $as_tr_sh`' ../configure: line 14724: ` as_ac_Header=`printf "%s\n" "ac_cv_header_$ac_header" | $as_tr_sh`' Error: Process completed with exit code 1. Here is a simple analog: for VAR in <CR> foo \ <CR> bar \ do : echo $VAR done Trailing slash is not allowed. Refs: - https://github.com/libevent/libevent/runs/2171607687 - https://github.com/libevent/libevent/runs/2211365885?check_suite_focus=true
fanquake 78e8541a 2021-03-28T10:35:22 build: remove no-longer used checks for vasprintf From what I can tell the last usage was removed in 8d1317d71c46e27c5073d3429a64af69de0351a6.
fanquake 4c29b01c 2021-03-28T10:57:11 build: remove splice implementation fragments Looks like a `splice` implementation was planned, but has clearly never eventuated (the TODO comment is from ~12 years ago, in 8b5bd77415fb6634fadf08357676926fecf5f032). For now, it's probably better to remove the unused code/correct the docs.
Azat Khuzhin 8e5e7bb8 2021-03-23T09:40:30 ci: fix upload-artifacts for linux dist build Fixes [1]: Run actions/upload-artifact@v1 Error: Path does not exist /home/runner/work/libevent/libevent/build Error: Exit code 1 returned from process: file name '/home/runner/runners/2.277.1/bin/Runner.PluginHost', arguments 'action "GitHub.Runner.Plugins.Artifact.PublishArtifact, Runner.Plugins"'. [1]: https://github.com/libevent/libevent/runs/2172680722?check_suite_focus=true
Azat Khuzhin 3b9b655d 2021-03-23T09:10:00 Merge branch 'http-fix-fd-leak' * http-fix-fd-leak: http: fix fd leak on fd reset (by using bufferevent_replacefd()) bufferevent: introduce bufferevent_replacefd() (like setfd() but also close fd) Fixes: #1143
Azat Khuzhin 2385638e 2021-03-23T09:02:39 http: fix fd leak on fd reset (by using bufferevent_replacefd()) Fixes: afa66ea4 ("http: eliminate redundant bev fd manipulating and caching [WIP]")
Azat Khuzhin aea752b6 2021-03-23T09:00:24 bufferevent: introduce bufferevent_replacefd() (like setfd() but also close fd)
fanquake 8e6090d0 2021-03-23T09:52:14 build: use AC_CHECK_LIB over AC_HAVE_LIBRARY AC_HAVE_LIBRARY is deprecated, see https://www.gnu.org/software/autoconf/manual/autoconf-2.70/html_node/Obsolete-Macros.html, and has been prior to Autoconf 2.67, which is the minimum required by the project. It's usage also causes warnings with newer versions of autoconf: ```bash configure.ac:319: warning: The macro `AC_HAVE_LIBRARY' is obsolete. configure.ac:319: You should run autoupdate. ``` `AC_HAVE_LIBRARY` was introduced in #969, although it's not clear why it was decided to revert to using an obselete macro.
MKCKR 00b92f42 2021-02-16T13:26:44 fix compile error in VS2012 in evutil_gettimeofday() Move static variable definition before other statement, to prevent compile error in VS2012. Fixes: #1135
ihsinme d13b7bbf 2021-02-05T18:54:30 http: fix invalid unsigned arithmetic
lilei bc25889f 2021-02-03T14:19:57 Check return value of evbuffer_remove() in bufferevent_read() The conflict cast convertion between the return value of bufferevent_read() and evbuffer_remove(), int(-1)->size_t(An undefined maximum) Add test case of bufferevent_read() should return 0 in case of evbuffer_remove() returns -1 Fixes: #1132
Azat Khuzhin f17eb6f5 2021-01-18T23:23:42 test/regress_http: cover reading of chunked payload by server This is an example with transfer-encoding by client via bufferevent for the #1131
chux0519 617ba838 2021-01-09T17:19:27 evdns: add max-probe-timeout/probe-backoff-factor settings I recently found that when the network status changed when calling bufferevent_socket_connect_hostname (e.g. switching between several WIFIs), all DNS servers would fail, and the timeout of probe would be very long if there were many DNS requests. I want libevent to support manual setting of MAX_PROBE_TIMEOUT and TIMEOUT_BACKOFF_FACTOR So move hardcoded MAX_PROBE_TIMEOUT and TIMEOUT_BACKOFF_FACTOR into struct, and allow changing them.
Emil Engler c5e4391b 2020-12-26T09:07:07 doc: remove dead link The link is dead and an archived page cannot be found in the web.archive.org.
Loïc Yhuel 657e1806 2020-11-23T17:24:36 cmake: do not link libevent with libevent_core When add_event_library macro was called without the INNER_LIBRARIES parameter, it reused the value set by a previous call, since the INNER_LIBRARIES variable was not reset.
Azat Khuzhin 59e31c96 2020-11-05T00:57:39 Do not try to do SSL handshake if the connect() fails This will avoid this icky error: $ https-client -4 -url https://127.1 some request failed - no idea which one though! error:00000005:lib(0):func(0):DH lib And instead will report only: $ https-client -4 -url https://127.1 some request failed - no idea which one though! socket error = Connection refused (111) Refs: #1115
Azat Khuzhin 4f8a6320 2020-11-02T10:01:41 Merge branch 'macos-brew-openssl-v2' By Azat Khuzhin (2) and fanquake (1) * macos-brew-openssl-v2: Add autodetection of openssl via brew into build matrix cmake: find openssl prefix via brew autotools: attempt to find OpenSSL via homebrew on macOS Closes: #1050 (cherry picked one patch from it)