nginx-quic/auto
Maxim Dounin 198c29e4fa Improved maximum errno detection.
Previously, systems without sys_nerr (or _sys_nerr) were handled with an
assumption that errors start at 0 and continuous.  This is, however, not
something POSIX requires, and not true on some platforms.

Notably, on Linux, where sys_nerr is no longer available for newly linked
binaries starting with glibc 2.32, there are gaps in error list, which
used to stop us from properly detecting maximum errno.  Further, on
GNU/Hurd errors start at 0x40000001.

With this change, maximum errno detection is moved to the runtime code,
now able to ignore gaps, and also detects the first error if needed.
This fixes observed "Unknown error" messages as seen on Linux with
glibc 2.32 and on GNU/Hurd.
2021-03-01 20:00:43 +03:00
..
cc Win32: defined pdb path. 2019-04-04 19:30:47 +03:00
lib Configure: fixed compiler warnings with "-Wall -Wextra". 2018-07-24 18:46:54 +03:00
os Win32: enabled both select and poll on Windows by default. 2019-01-24 22:00:13 +03:00
types Configure: stop polluting NGX_ namespace. 2016-06-27 15:00:06 -07:00
configure Core: "-e" command line option. 2020-11-19 16:59:00 +00:00
define Copyright updated. 2012-01-18 15:07:43 +00:00
endianness Configure: fix build with -Werror=old-style-definition. 2016-06-27 15:00:05 -07:00
feature Configure: fix build with -Werror=old-style-definition. 2016-06-27 15:00:05 -07:00
have Copyright updated. 2012-01-18 15:07:43 +00:00
have_headers Copyright updated. 2012-01-18 15:07:43 +00:00
headers Copyright updated. 2012-01-18 15:07:43 +00:00
include Configure: stop polluting NGX_ namespace. 2016-06-27 15:00:06 -07:00
init Configure: marked top-level make targets as phony. 2021-02-20 12:44:26 +03:00
install Configure: marked top-level make targets as phony. 2021-02-20 12:44:26 +03:00
make Configure: shared sources for addon modules. 2020-11-10 17:13:20 +03:00
module Configure: shared sources for addon modules. 2020-11-10 17:13:20 +03:00
modules Stream: set module. 2020-08-28 14:10:54 -07:00
nohave Copyright updated. 2012-01-18 15:07:43 +00:00
options Configure: shared sources for addon modules. 2020-11-10 17:13:20 +03:00
sources Win32: added WSAPoll() support. 2019-01-24 21:51:21 +03:00
stubs Copyright updated. 2012-01-18 15:07:43 +00:00
summary Internal md5 and sha1 implementations are now always used. 2016-06-30 18:57:39 +03:00
threads Configure: fixed static compilation with OpenSSL 1.1.1. 2018-03-22 15:55:57 +03:00
unix Improved maximum errno detection. 2021-03-01 20:00:43 +03:00