mirror of
https://github.com/sudo-project/sudo.git
synced 2025-08-28 21:07:55 +00:00
sudo 1.9.13
Document the changes to AIX plugins in docs/UPGRADE.md and regenerate configure using the latest autoconf from git.
This commit is contained in:
parent
702f21f7f6
commit
f6e0e87ba9
11
INSTALL.md
11
INSTALL.md
@ -332,6 +332,17 @@ Defaults are listed in brackets after the description.
|
|||||||
via the user's PATH) and the default libtool that comes
|
via the user's PATH) and the default libtool that comes
|
||||||
with sudo.
|
with sudo.
|
||||||
|
|
||||||
|
--with-aix-soname=svr4
|
||||||
|
Starting with version 1.9.13, sudo will build AIX-style
|
||||||
|
shared libraries and dynamic shared objects by default
|
||||||
|
instead of svr4-style.. This means that the default sudo
|
||||||
|
plugins are now .a (archive) files that contain a .so shared
|
||||||
|
object file instead of bare .so files. This was done to
|
||||||
|
improve compatibility with the AIX Freeware ecosystem,
|
||||||
|
specifically, the AIX Freeware build of OpenSSL. To restore
|
||||||
|
the old, pre-1.9.13 behavior, run configure using the
|
||||||
|
--with-aix-soname=svr4 option.
|
||||||
|
|
||||||
### Optional features:
|
### Optional features:
|
||||||
|
|
||||||
--disable-root-mailer
|
--disable-root-mailer
|
||||||
|
76
NEWS
76
NEWS
@ -1,3 +1,79 @@
|
|||||||
|
What's new in Sudo 1.9.13
|
||||||
|
|
||||||
|
* Fixed a bug running relative commands via sudo when "log_subcmds"
|
||||||
|
is enabled. GitHub issue #194.
|
||||||
|
|
||||||
|
* Fixed a signal handling bug when running sudo commands in a shell
|
||||||
|
script. Signals were not being forwarded to the command when
|
||||||
|
the sudo process was not run in its own process group.
|
||||||
|
|
||||||
|
* Fixed a bug in cvtsudoers' LDIF parsing when the file ends without
|
||||||
|
a newline and a backslash is the last character of the file.
|
||||||
|
|
||||||
|
* Fixed a compilation error on Linux/aarch64. GitHub issue #197.
|
||||||
|
|
||||||
|
* Fixed a potential use-after-free bug with cvtsudoers filtering.
|
||||||
|
GitHub issue #198.
|
||||||
|
|
||||||
|
* Added a reminder to the default lecture that the password will
|
||||||
|
not echo. This line is only displayed when the pwfeedback option
|
||||||
|
is disabled. GitHub issue #195.
|
||||||
|
|
||||||
|
* Fixed potential memory leaks in error paths. GitHub issues #199,
|
||||||
|
#202.
|
||||||
|
|
||||||
|
* Fixed potential NULL dereferences on memory allocation failure.
|
||||||
|
GitHub issues #204, #211.
|
||||||
|
|
||||||
|
* Sudo now uses C23-style attributes in function prototypes instead
|
||||||
|
of gcc-style attributes if supported.
|
||||||
|
|
||||||
|
* Fixed a potential crash introduced in the fix for GitHub issue #134.
|
||||||
|
If a user's sudoers entry did not have any RunAs user's set,
|
||||||
|
running "sudo -U otheruser -l" would dereference a NULL pointer.
|
||||||
|
|
||||||
|
* Added a new "list" pseudo-command in sudoers to allow a user to
|
||||||
|
list another user's privileges. Previously, only root or a user
|
||||||
|
with the ability to run any command as either root or the target
|
||||||
|
user on the current host could use the -U option. This also
|
||||||
|
includes a fix to the log entry when a user lacks permission to
|
||||||
|
run "sudo -U otheruser -l command". Previously, the logs would
|
||||||
|
indicate that the user tried to run the actual command, now the
|
||||||
|
log entry includes the list operation.
|
||||||
|
|
||||||
|
* JSON logging now escapes control characters if they happen to
|
||||||
|
appear in the command or environment.
|
||||||
|
|
||||||
|
* New Albanian translation from translationproject.org.
|
||||||
|
|
||||||
|
* Regular expressions in sudoers or logsrvd.conf may no longer
|
||||||
|
contain consecutive repetition operators. This is implementation-
|
||||||
|
specific behavior according to POSIX, but some implementations
|
||||||
|
will allocate excessive amounts of memory. This mainly affects
|
||||||
|
the fuzzers.
|
||||||
|
|
||||||
|
* Sudo now builds AIX-style shared libraries and dynamic shared
|
||||||
|
objects by default instead of svr4-style. This means that the
|
||||||
|
default sudo plugins are now .a (archive) files that contain a
|
||||||
|
.so shared object file instead of bare .so files. This was done
|
||||||
|
to improve compatibility with the AIX Freeware ecosystem,
|
||||||
|
specifically, the AIX Freeware build of OpenSSL. Sudo will still
|
||||||
|
load svr4-style .so plugins and if a .so file is requested,
|
||||||
|
either via sudo.conf or the sudoers file, and only the .a file
|
||||||
|
is present, sudo will convert the path from plugin.so to
|
||||||
|
plugin.a(plugin.so) when loading it. This ensures compatibility
|
||||||
|
with existing configurations. To restore the old, pre-1.9.13
|
||||||
|
behavior, run configure using the --with-aix-soname=svr4 option.
|
||||||
|
|
||||||
|
* Sudo no longer checks the ownership and mode of the plugins that
|
||||||
|
it loads. Plugins are configured via either the sudo.conf or
|
||||||
|
sudoers file which are trusted configuration files. These checks
|
||||||
|
suffered from time-of-check vs. time-of-use race conditions and
|
||||||
|
complicate loading plugins that are not simple paths. Ownership
|
||||||
|
and mode checks are still performed when loading the sudo.conf
|
||||||
|
and sudoers files, which do not suffer from race conditions.
|
||||||
|
The sudo.conf "developer_mode" setting is no longer used.
|
||||||
|
|
||||||
What's new in Sudo 1.9.12p1
|
What's new in Sudo 1.9.12p1
|
||||||
|
|
||||||
* Sudo's configure script now does a better job of detecting when
|
* Sudo's configure script now does a better job of detecting when
|
||||||
|
19
config.h.in
19
config.h.in
@ -319,7 +319,7 @@
|
|||||||
/* Define to 1 if you have the 'freezero' function. */
|
/* Define to 1 if you have the 'freezero' function. */
|
||||||
#undef HAVE_FREEZERO
|
#undef HAVE_FREEZERO
|
||||||
|
|
||||||
/* Define to 1 if fseeko (and presumably ftello) exists and is declared. */
|
/* Define to 1 if fseeko (and ftello) are declared in stdio.h. */
|
||||||
#undef HAVE_FSEEKO
|
#undef HAVE_FSEEKO
|
||||||
|
|
||||||
/* Define to 1 if you have the 'fstatat' function. */
|
/* Define to 1 if you have the 'fstatat' function. */
|
||||||
@ -1350,11 +1350,15 @@
|
|||||||
#ifndef __STDC_WANT_IEC_60559_DFP_EXT__
|
#ifndef __STDC_WANT_IEC_60559_DFP_EXT__
|
||||||
# undef __STDC_WANT_IEC_60559_DFP_EXT__
|
# undef __STDC_WANT_IEC_60559_DFP_EXT__
|
||||||
#endif
|
#endif
|
||||||
|
/* Enable extensions specified by C23 Annex F. */
|
||||||
|
#ifndef __STDC_WANT_IEC_60559_EXT__
|
||||||
|
# undef __STDC_WANT_IEC_60559_EXT__
|
||||||
|
#endif
|
||||||
/* Enable extensions specified by ISO/IEC TS 18661-4:2015. */
|
/* Enable extensions specified by ISO/IEC TS 18661-4:2015. */
|
||||||
#ifndef __STDC_WANT_IEC_60559_FUNCS_EXT__
|
#ifndef __STDC_WANT_IEC_60559_FUNCS_EXT__
|
||||||
# undef __STDC_WANT_IEC_60559_FUNCS_EXT__
|
# undef __STDC_WANT_IEC_60559_FUNCS_EXT__
|
||||||
#endif
|
#endif
|
||||||
/* Enable extensions specified by ISO/IEC TS 18661-3:2015. */
|
/* Enable extensions specified by C23 Annex H and ISO/IEC TS 18661-3:2015. */
|
||||||
#ifndef __STDC_WANT_IEC_60559_TYPES_EXT__
|
#ifndef __STDC_WANT_IEC_60559_TYPES_EXT__
|
||||||
# undef __STDC_WANT_IEC_60559_TYPES_EXT__
|
# undef __STDC_WANT_IEC_60559_TYPES_EXT__
|
||||||
#endif
|
#endif
|
||||||
@ -1383,18 +1387,17 @@
|
|||||||
/* Number of bits in a file offset, on hosts where this is settable. */
|
/* Number of bits in a file offset, on hosts where this is settable. */
|
||||||
#undef _FILE_OFFSET_BITS
|
#undef _FILE_OFFSET_BITS
|
||||||
|
|
||||||
/* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */
|
/* Define to 1 if necessary to make fseeko visible. */
|
||||||
#undef _LARGEFILE_SOURCE
|
#undef _LARGEFILE_SOURCE
|
||||||
|
|
||||||
/* Define for large files, on AIX-style hosts. */
|
/* Define to 1 on platforms where this makes off_t a 64-bit type. */
|
||||||
#undef _LARGE_FILES
|
#undef _LARGE_FILES
|
||||||
|
|
||||||
/* Number of bits in a timestamp, on hosts where this is settable. */
|
/* Number of bits in time_t, on hosts where this is settable. */
|
||||||
#undef _TIME_BITS
|
#undef _TIME_BITS
|
||||||
|
|
||||||
#if !defined __MINGW_USE_VC2005_COMPAT && defined __MINGW32__
|
/* Define to 1 on platforms where this makes time_t a 64-bit type. */
|
||||||
# define __MINGW_USE_VC2005_COMPAT 1 /* For 64-bit time_t. */
|
#undef __MINGW_USE_VC2005_COMPAT
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Define to __FUNCTION__ if your compiler supports __FUNCTION__ but not
|
/* Define to __FUNCTION__ if your compiler supports __FUNCTION__ but not
|
||||||
__func__ */
|
__func__ */
|
||||||
|
@ -18,7 +18,7 @@ dnl ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|||||||
dnl OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
dnl OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||||
dnl
|
dnl
|
||||||
AC_PREREQ([2.70])
|
AC_PREREQ([2.70])
|
||||||
AC_INIT([sudo], [1.9.12p1], [https://bugzilla.sudo.ws/], [sudo])
|
AC_INIT([sudo], [1.9.13], [https://bugzilla.sudo.ws/], [sudo])
|
||||||
AC_CONFIG_HEADERS([config.h pathnames.h])
|
AC_CONFIG_HEADERS([config.h pathnames.h])
|
||||||
AC_CONFIG_SRCDIR([src/sudo.c])
|
AC_CONFIG_SRCDIR([src/sudo.c])
|
||||||
AC_CONFIG_AUX_DIR([scripts])
|
AC_CONFIG_AUX_DIR([scripts])
|
||||||
|
@ -1,6 +1,25 @@
|
|||||||
Notes on upgrading from an older release
|
Notes on upgrading from an older release
|
||||||
========================================
|
========================================
|
||||||
|
|
||||||
|
* Upgrading from a version prior to 1.9.13:
|
||||||
|
|
||||||
|
Sudo now builds AIX-style shared libraries and dynamic shared
|
||||||
|
objects by default instead of svr4-style. This means that the
|
||||||
|
default sudo plugins are now .a (archive) files that contain a
|
||||||
|
.so shared object file instead of bare .so files. This was done
|
||||||
|
to improve compatibility with the AIX Freeware ecosystem,
|
||||||
|
specifically, the AIX Freeware build of OpenSSL. When loading
|
||||||
|
a .a file as a plugin the name of the included .so file must
|
||||||
|
also be specified, for example /usr/libexec/sudo/sudoers.a(sudoers.so).
|
||||||
|
|
||||||
|
Sudo is still capable of loading svr4-style .so plugins and if
|
||||||
|
a .so file is requested, either via sudo.conf or the sudoers
|
||||||
|
file, and only the .a file is present, sudo will convert the
|
||||||
|
path from plugin.so to plugin.a(plugin.so). This ensures
|
||||||
|
compatibility with existing configurations. To restore the old,
|
||||||
|
pre-1.9.13 behavior, run configure using the --with-aix-soname=svr4
|
||||||
|
option.
|
||||||
|
|
||||||
* Upgrading from a version prior to 1.9.10:
|
* Upgrading from a version prior to 1.9.10:
|
||||||
|
|
||||||
Sudo now interprets a command line argument in sudoers that
|
Sudo now interprets a command line argument in sudoers that
|
||||||
|
48
scripts/config.guess
vendored
48
scripts/config.guess
vendored
@ -1,14 +1,14 @@
|
|||||||
#! /bin/sh
|
#! /bin/sh
|
||||||
# Attempt to guess a canonical system name.
|
# Attempt to guess a canonical system name.
|
||||||
# Copyright 1992-2021 Free Software Foundation, Inc.
|
# Copyright 1992-2022 Free Software Foundation, Inc.
|
||||||
|
|
||||||
# shellcheck disable=SC2006,SC2268 # see below for rationale
|
# shellcheck disable=SC2006,SC2268 # see below for rationale
|
||||||
|
|
||||||
timestamp='2021-06-03'
|
timestamp='2022-05-25'
|
||||||
|
|
||||||
# This file is free software; you can redistribute it and/or modify it
|
# This file is free software; you can redistribute it and/or modify it
|
||||||
# under the terms of the GNU General Public License as published by
|
# under the terms of the GNU General Public License as published by
|
||||||
# the Free Software Foundation; either version 3 of the License, or
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
# (at your option) any later version.
|
# (at your option) any later version.
|
||||||
#
|
#
|
||||||
# This program is distributed in the hope that it will be useful, but
|
# This program is distributed in the hope that it will be useful, but
|
||||||
@ -60,7 +60,7 @@ version="\
|
|||||||
GNU config.guess ($timestamp)
|
GNU config.guess ($timestamp)
|
||||||
|
|
||||||
Originally written by Per Bothner.
|
Originally written by Per Bothner.
|
||||||
Copyright 1992-2021 Free Software Foundation, Inc.
|
Copyright 1992-2022 Free Software Foundation, Inc.
|
||||||
|
|
||||||
This is free software; see the source for copying conditions. There is NO
|
This is free software; see the source for copying conditions. There is NO
|
||||||
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
|
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
|
||||||
@ -437,7 +437,7 @@ case $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in
|
|||||||
# This test works for both compilers.
|
# This test works for both compilers.
|
||||||
if test "$CC_FOR_BUILD" != no_compiler_found; then
|
if test "$CC_FOR_BUILD" != no_compiler_found; then
|
||||||
if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
|
if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
|
||||||
(CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
|
(CCOPTS="" $CC_FOR_BUILD -m64 -E - 2>/dev/null) | \
|
||||||
grep IS_64BIT_ARCH >/dev/null
|
grep IS_64BIT_ARCH >/dev/null
|
||||||
then
|
then
|
||||||
SUN_ARCH=x86_64
|
SUN_ARCH=x86_64
|
||||||
@ -929,6 +929,9 @@ EOF
|
|||||||
i*:PW*:*)
|
i*:PW*:*)
|
||||||
GUESS=$UNAME_MACHINE-pc-pw32
|
GUESS=$UNAME_MACHINE-pc-pw32
|
||||||
;;
|
;;
|
||||||
|
*:SerenityOS:*:*)
|
||||||
|
GUESS=$UNAME_MACHINE-pc-serenity
|
||||||
|
;;
|
||||||
*:Interix*:*)
|
*:Interix*:*)
|
||||||
case $UNAME_MACHINE in
|
case $UNAME_MACHINE in
|
||||||
x86)
|
x86)
|
||||||
@ -1148,16 +1151,27 @@ EOF
|
|||||||
;;
|
;;
|
||||||
x86_64:Linux:*:*)
|
x86_64:Linux:*:*)
|
||||||
set_cc_for_build
|
set_cc_for_build
|
||||||
|
CPU=$UNAME_MACHINE
|
||||||
LIBCABI=$LIBC
|
LIBCABI=$LIBC
|
||||||
if test "$CC_FOR_BUILD" != no_compiler_found; then
|
if test "$CC_FOR_BUILD" != no_compiler_found; then
|
||||||
if (echo '#ifdef __ILP32__'; echo IS_X32; echo '#endif') | \
|
ABI=64
|
||||||
(CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
|
sed 's/^ //' << EOF > "$dummy.c"
|
||||||
grep IS_X32 >/dev/null
|
#ifdef __i386__
|
||||||
then
|
ABI=x86
|
||||||
LIBCABI=${LIBC}x32
|
#else
|
||||||
fi
|
#ifdef __ILP32__
|
||||||
|
ABI=x32
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
EOF
|
||||||
|
cc_set_abi=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^ABI' | sed 's, ,,g'`
|
||||||
|
eval "$cc_set_abi"
|
||||||
|
case $ABI in
|
||||||
|
x86) CPU=i686 ;;
|
||||||
|
x32) LIBCABI=${LIBC}x32 ;;
|
||||||
|
esac
|
||||||
fi
|
fi
|
||||||
GUESS=$UNAME_MACHINE-pc-linux-$LIBCABI
|
GUESS=$CPU-pc-linux-$LIBCABI
|
||||||
;;
|
;;
|
||||||
xtensa*:Linux:*:*)
|
xtensa*:Linux:*:*)
|
||||||
GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
|
GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
|
||||||
@ -1364,8 +1378,11 @@ EOF
|
|||||||
BePC:Haiku:*:*) # Haiku running on Intel PC compatible.
|
BePC:Haiku:*:*) # Haiku running on Intel PC compatible.
|
||||||
GUESS=i586-pc-haiku
|
GUESS=i586-pc-haiku
|
||||||
;;
|
;;
|
||||||
x86_64:Haiku:*:*)
|
ppc:Haiku:*:*) # Haiku running on Apple PowerPC
|
||||||
GUESS=x86_64-unknown-haiku
|
GUESS=powerpc-apple-haiku
|
||||||
|
;;
|
||||||
|
*:Haiku:*:*) # Haiku modern gcc (not bound by BeOS compat)
|
||||||
|
GUESS=$UNAME_MACHINE-unknown-haiku
|
||||||
;;
|
;;
|
||||||
SX-4:SUPER-UX:*:*)
|
SX-4:SUPER-UX:*:*)
|
||||||
GUESS=sx4-nec-superux$UNAME_RELEASE
|
GUESS=sx4-nec-superux$UNAME_RELEASE
|
||||||
@ -1522,6 +1539,9 @@ EOF
|
|||||||
i*86:rdos:*:*)
|
i*86:rdos:*:*)
|
||||||
GUESS=$UNAME_MACHINE-pc-rdos
|
GUESS=$UNAME_MACHINE-pc-rdos
|
||||||
;;
|
;;
|
||||||
|
i*86:Fiwix:*:*)
|
||||||
|
GUESS=$UNAME_MACHINE-pc-fiwix
|
||||||
|
;;
|
||||||
*:AROS:*:*)
|
*:AROS:*:*)
|
||||||
GUESS=$UNAME_MACHINE-unknown-aros
|
GUESS=$UNAME_MACHINE-unknown-aros
|
||||||
;;
|
;;
|
||||||
|
20
scripts/config.sub
vendored
20
scripts/config.sub
vendored
@ -1,14 +1,14 @@
|
|||||||
#! /bin/sh
|
#! /bin/sh
|
||||||
# Configuration validation subroutine script.
|
# Configuration validation subroutine script.
|
||||||
# Copyright 1992-2021 Free Software Foundation, Inc.
|
# Copyright 1992-2022 Free Software Foundation, Inc.
|
||||||
|
|
||||||
# shellcheck disable=SC2006,SC2268 # see below for rationale
|
# shellcheck disable=SC2006,SC2268 # see below for rationale
|
||||||
|
|
||||||
timestamp='2021-08-14'
|
timestamp='2022-01-03'
|
||||||
|
|
||||||
# This file is free software; you can redistribute it and/or modify it
|
# This file is free software; you can redistribute it and/or modify it
|
||||||
# under the terms of the GNU General Public License as published by
|
# under the terms of the GNU General Public License as published by
|
||||||
# the Free Software Foundation; either version 3 of the License, or
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
# (at your option) any later version.
|
# (at your option) any later version.
|
||||||
#
|
#
|
||||||
# This program is distributed in the hope that it will be useful, but
|
# This program is distributed in the hope that it will be useful, but
|
||||||
@ -76,7 +76,7 @@ Report bugs and patches to <config-patches@gnu.org>."
|
|||||||
version="\
|
version="\
|
||||||
GNU config.sub ($timestamp)
|
GNU config.sub ($timestamp)
|
||||||
|
|
||||||
Copyright 1992-2021 Free Software Foundation, Inc.
|
Copyright 1992-2022 Free Software Foundation, Inc.
|
||||||
|
|
||||||
This is free software; see the source for copying conditions. There is NO
|
This is free software; see the source for copying conditions. There is NO
|
||||||
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
|
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
|
||||||
@ -1020,6 +1020,11 @@ case $cpu-$vendor in
|
|||||||
;;
|
;;
|
||||||
|
|
||||||
# Here we normalize CPU types with a missing or matching vendor
|
# Here we normalize CPU types with a missing or matching vendor
|
||||||
|
armh-unknown | armh-alt)
|
||||||
|
cpu=armv7l
|
||||||
|
vendor=alt
|
||||||
|
basic_os=${basic_os:-linux-gnueabihf}
|
||||||
|
;;
|
||||||
dpx20-unknown | dpx20-bull)
|
dpx20-unknown | dpx20-bull)
|
||||||
cpu=rs6000
|
cpu=rs6000
|
||||||
vendor=bull
|
vendor=bull
|
||||||
@ -1121,7 +1126,7 @@ case $cpu-$vendor in
|
|||||||
xscale-* | xscalee[bl]-*)
|
xscale-* | xscalee[bl]-*)
|
||||||
cpu=`echo "$cpu" | sed 's/^xscale/arm/'`
|
cpu=`echo "$cpu" | sed 's/^xscale/arm/'`
|
||||||
;;
|
;;
|
||||||
arm64-*)
|
arm64-* | aarch64le-*)
|
||||||
cpu=aarch64
|
cpu=aarch64
|
||||||
;;
|
;;
|
||||||
|
|
||||||
@ -1304,7 +1309,7 @@ esac
|
|||||||
if test x$basic_os != x
|
if test x$basic_os != x
|
||||||
then
|
then
|
||||||
|
|
||||||
# First recognize some ad-hoc caes, or perhaps split kernel-os, or else just
|
# First recognize some ad-hoc cases, or perhaps split kernel-os, or else just
|
||||||
# set os.
|
# set os.
|
||||||
case $basic_os in
|
case $basic_os in
|
||||||
gnu/linux*)
|
gnu/linux*)
|
||||||
@ -1748,7 +1753,8 @@ case $os in
|
|||||||
| skyos* | haiku* | rdos* | toppers* | drops* | es* \
|
| skyos* | haiku* | rdos* | toppers* | drops* | es* \
|
||||||
| onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \
|
| onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \
|
||||||
| midnightbsd* | amdhsa* | unleashed* | emscripten* | wasi* \
|
| midnightbsd* | amdhsa* | unleashed* | emscripten* | wasi* \
|
||||||
| nsk* | powerunix* | genode* | zvmoe* | qnx* | emx* | zephyr*)
|
| nsk* | powerunix* | genode* | zvmoe* | qnx* | emx* | zephyr* \
|
||||||
|
| fiwix* )
|
||||||
;;
|
;;
|
||||||
# This one is extra strict with allowed versions
|
# This one is extra strict with allowed versions
|
||||||
sco3.2v2 | sco3.2v[4-9]* | sco5v6*)
|
sco3.2v2 | sco3.2v[4-9]* | sco5v6*)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user