Make sure to build kernel files with -fno-pie; this had been forgotten while
switching the m88k toolchain to PIE by default, and I am quite impressed
kernels built with PIE objects run without problems.
Remove replaying of the 88100 data pipeline in sigreturn().
This had been added during the r1.18->r1.22 changes to let the testcases from
the devel/libsigsegv run.
Contrary to what I wrote then, the pipeline gets replayed when returning to
userland to invoke the signal handler, so there is no need to do this once more
in sigreturn.
The real fix needed for these testcases to run reliably, was to make sure that
the address used to spill the sigcontext on the process stack would not get
modified while running data_access_emulation(); this logic was eventually
fixed in r1.21, and nothing more is needed.
Thanks to Andrew Griffiths for pointing to my attention that the data fed to
sigreturn() was partially user-controllable, and that carefully crafted
signal handlers could use this behaviour as unprivileged kernel memory read
and write operations.
import upstream pkgconf regress
The Makefile is adapted to bsd.regress.mk from upstream's Makefile.lite
(also imported) in such a way that the diff is as small as possible, so
that it should be reasonably easy for me to keep it in sync with upstream
releases.
Use unveil(2) to restrict write access to mandoc.db(5) and /tmp/
and read access to the selected manpath directory or directories,
but leave global read access open in -t mode.
Tweaks from and looks correct to deraadt@.
Update to pkgconf 3.0.6
This mostly adds OS/2 support. The only change relevant for OpenBSD is
- --variable accepts multiple modules and prints the requested
variable's value for each module, in argument order. --path and
--print-variables remain limited to a single module.
Which is the diff in cli/core.c. Apart from that little to nothing
changes for us (some #ifdefs cause line numbers to change).
ok djm
pkgconf: remove stale file
This somewhat outdated file snuck in by mistake in the last update.
It was not compiled into the binary because libpkgconf precedes cli
in .PATH, so the up-to-date libpkgconf/tuple.c file was used.
Found while working on hooking up upstream pkgconf regress where the
.PATH order was inverted in my WIP.