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>
* 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
> 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.
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
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.
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")
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
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>
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.
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
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
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
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.
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
* 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
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.