krw [Wed, 18 Jan 2023 12:59:16 +0000 (12:59 +0000)]
Use ROUNDDOWN() to round down to cylinder boundary.
nicm [Wed, 18 Jan 2023 11:08:49 +0000 (11:08 +0000)]
Instead of mapping WSEMUL_UNDERLINE to a different bit in rasops, use
the same bit and the define. rom Crystal Kolipe kolipe.c at
exoticsilicon dot com.
ok miod
kn [Wed, 18 Jan 2023 10:30:20 +0000 (10:30 +0000)]
Typofix array length syntax, spotted by afresh1
claudio [Wed, 18 Jan 2023 10:27:05 +0000 (10:27 +0000)]
Adjust how gcc4 handles the "missing braces around initializer" warning.
In c99 any value can be initalised using a { 0 } constructor independent
of the type. Now if a struct's first member is another struct then gcc4
issues the above warning but it should not do that.
Move the warning check from push_init_level() to pop_init_level() and
check if either { 0 } or { } was used. If additional implicit braces
were added surpress the warning.
Inspired by gcc PR#64709
OK deraadt@ miod@
claudio [Wed, 18 Jan 2023 10:13:46 +0000 (10:13 +0000)]
The default output format is -o (openbgpd) but it now includes both
roa-set and aspa-set by default. So make the man page less specific.
OK tb@ job@ kn@
jmc [Wed, 18 Jan 2023 06:55:32 +0000 (06:55 +0000)]
tweak previous; ok djm
jsing [Wed, 18 Jan 2023 05:29:48 +0000 (05:29 +0000)]
Bring in a description of bn_words_3_div().
This comes from OpenSSL commit
3da2e9c4ee45989a426ff513dc6c6250d1e460de.
ok tb@
jsing [Wed, 18 Jan 2023 05:27:30 +0000 (05:27 +0000)]
Start cleaning up BN_div_internal().
Always provide a bn_div_3_words() function, rather than having deeply
nested compiler conditionals. Use readable variable names, clean up
formatting and use a single exit path.
Tested on various platforms by miod@
ok tb@
deraadt [Wed, 18 Jan 2023 05:06:44 +0000 (05:06 +0000)]
Do on i386 as we do on amd64. This is done on variable cpu_pae, which
indicates the "PAE" pmap is being used, which only happens if the cpu
has both PAE and NX.
On i386 machines without the NX feature enabled, we can't distinguish
between page faults as a result of instruction fetches or normal data
access. Handle this in the same way as we do on landisk: if handling
the fault with access type PROT_READ fails, retry with PROT_EXEC.
Fortunately we know whether NX is enabled or nor so only do this when
it isn't.
ok kettenis, jsg
djm [Wed, 18 Jan 2023 02:00:10 +0000 (02:00 +0000)]
when restoring non-blocking mode to stdio fds, restore exactly
the flags that ssh started with and don't just clobber them with
zero, as this could also remove the append flag from the set;
bz3523; ok dtucker@
millert [Wed, 18 Jan 2023 01:50:21 +0000 (01:50 +0000)]
Add a -V (version) option to sshd like the ssh client has.
OK markus@ deraadt@
krw [Wed, 18 Jan 2023 00:48:14 +0000 (00:48 +0000)]
Use ROUNDUP() to round up to cylinder boundary.
tb [Wed, 18 Jan 2023 00:27:10 +0000 (00:27 +0000)]
rpki-client: explicitly enable policy checks
In x509_verify.c r1.62, beck disabled policy checks by default in the new
X.509 verifier to match the behavior of the legacy validator and OpenSSL.
In order to keep policy checks as mandated by RFC 7318, we need to opt
into them explicitly.
ok beck
krw [Tue, 17 Jan 2023 23:56:51 +0000 (23:56 +0000)]
Nuke unused MAXIMUM(). Add ROUNDUP() and ROUNDDOWN().
beck [Tue, 17 Jan 2023 23:49:28 +0000 (23:49 +0000)]
Don't do policy checking unless we were asked to do so.
ok tb@
jsg [Tue, 17 Jan 2023 23:39:30 +0000 (23:39 +0000)]
include isadma.h not isa.h
missed in rev 1.5 when #if NISA became #if NISADMA
not a problem in practice as isavar.h includes isadma.h
ok miod@ deraadt@ millert@
jsg [Tue, 17 Jan 2023 23:12:37 +0000 (23:12 +0000)]
test NSDMMC not SDMMC
ok miod@ deraadt@
deraadt [Tue, 17 Jan 2023 19:51:37 +0000 (19:51 +0000)]
sync
kettenis [Tue, 17 Jan 2023 19:29:09 +0000 (19:29 +0000)]
Simplify and clarify the implementation of the pmap_page_protect(9) API.
This function is only ever called with PROT_NONE or PROT_READ where
PROT_NONE removes the mapping from the page tables and PROT_READ takes
away write permission. Add a KASSERT to make sure no other values are
passed. This KASSERT should be optimized away by any decent compiler.
ok deraadt@, mpi@, guenther@
millert [Tue, 17 Jan 2023 18:52:44 +0000 (18:52 +0000)]
For "ssh -V" always exit 0, there is no need to check opt again.
This was missed when the fallthrough in the switch case above it
was removed. OK deraadt@
kn [Tue, 17 Jan 2023 16:22:56 +0000 (16:22 +0000)]
Add debug FUNCS_ONLY knob
Hacking on the installer while running it is a lot easier when you can
inspect or run functions directly without paging the whole script or
poking around in it with ed.
install.sub is already structured so that all functions come first,
then MD code, then actual commands.
Copy FUNCS_ONLY from rc.subr(8) so you can drop out any time and hack around
more conveniently:
Available disks are: sd0 sd1.
Which disk is the root disk? ('?' for details) [sd0] !
Type 'exit' to return to install.
test# FUNCS_ONLY=1 . /install.sub
test# typeset -f get_dkdevs
get_dkdevs() {
echo $(scan_disknames "${MDDKDEVS:-/^[sw]d[0-9][0-9]* /s/ .*//p}")
}
test# get_dkdevs
sd0 sd1
test#
This requires the sourcing shell to be ksh(1) or sh(1) with 'strict Bourne
shell mode' disabled. '!' is ksh now, but the initial (S)hell answer still
lands in a strict (default) sh(1) -- that can/should be fixed separately.
OK deraadt
tb [Tue, 17 Jan 2023 16:20:28 +0000 (16:20 +0000)]
pax: Switch a function definition from K&R to ANSI.
kn [Tue, 17 Jan 2023 16:14:23 +0000 (16:14 +0000)]
Skip all interface config questions when there are none
Even without any interfaces the installer still asks for one and only
continues when the only possible answer 'done' is provided.
That means one mandatory but useless answer during installations like
# vmctl start -c -d ./install72.img -d ./disk.img test
...
System hostname? (short form, e.g. 'foo') test
Available network interfaces are: .
Network interface to configure? (name, lladdr, '?', or 'done')
A response is required.
Network interface to configure? (name, lladdr, '?', or 'done') ?
Available network interfaces are: .
Network interface to configure? (name, lladdr, '?', or 'done') done
DNS domain name? (e.g. 'example.com') [my.domain]
...
Skip it when there is no viable answer:
# vmctl start -c -d ./install72.img -d ./disk.img test
...
System hostname? (short form, e.g. 'foo') test
DNS domain name? (e.g. 'example.com') [my.domain]
...
OK deraadt
claudio [Tue, 17 Jan 2023 16:11:52 +0000 (16:11 +0000)]
Add a dummy stub for getmonotime(). Reminded by tb@
claudio [Tue, 17 Jan 2023 16:09:34 +0000 (16:09 +0000)]
Teach bgpctl about ASPA tables.
OK tb@
claudio [Tue, 17 Jan 2023 16:09:01 +0000 (16:09 +0000)]
Add the needed logic to load the ASPA table from the rtr process into the
RDE. The actual reload logic is missing to keep the diff small.
OK tb@
miod [Tue, 17 Jan 2023 15:04:27 +0000 (15:04 +0000)]
Remove non-visible and unused OPENSSL_wipe_cpu and OPENSSL_atomic_add
interfaces, and remove empty assembly OPENSSL_cpuid_setup routines - the
default empty C fallback will work as good.
ok jsing@
kn [Tue, 17 Jan 2023 13:03:22 +0000 (13:03 +0000)]
Arguments may contain more than one variable assignment
`make FOO=1 BAR=2 ...' works as expected and lots of things wouldn't work
if make only accepted a single assignment, as currently documented.
Fix SYNOPSIS and usage to match reality and POSIX spec (thanks jmc).
OK jmc
nicm [Tue, 17 Jan 2023 10:40:51 +0000 (10:40 +0000)]
Support -1 without -N for list-keys.
djm [Tue, 17 Jan 2023 10:15:10 +0000 (10:15 +0000)]
also check that an active session inhibits UnusedConnectionTimeout
idea markus@
jsg [Tue, 17 Jan 2023 10:10:10 +0000 (10:10 +0000)]
remove elansc(4) driver for AMD Elan SC520 System Controller
AMD Elan SC520 has a Am5x86, 486-class processor. We require a
586-class processor.
feedback from jmc@ ok miod@
djm [Tue, 17 Jan 2023 10:02:34 +0000 (10:02 +0000)]
regression test for UnusedConnectionTimeout
djm [Tue, 17 Jan 2023 09:44:48 +0000 (09:44 +0000)]
Add a sshd_config UnusedConnectionTimeout option to terminate
client connections that have no open channels for some length
of time. This complements the recently-added ChannelTimeout
option that terminates inactive channels after a timeout.
ok markus@
kettenis [Tue, 17 Jan 2023 08:03:51 +0000 (08:03 +0000)]
On amd64 machines without the NX feature enabled, we can't distinguish
between page faults as a result of instruction fetches or normal data
access. Handle this in the same way as we do on landisk: if handling
the fault with access type PROT_READ fails, retry with PROT_EXEC.
Fortunately we know whether NX is enabled or nor so only do this when
it isn't. Nobody should be running an amd64 machine without NX!
ok deraadt@, miod@
nicm [Tue, 17 Jan 2023 06:50:55 +0000 (06:50 +0000)]
Update palette when moving a pane, GitHub issue 3437.
anton [Tue, 17 Jan 2023 06:33:49 +0000 (06:33 +0000)]
fix typo in package name
anton [Tue, 17 Jan 2023 06:33:25 +0000 (06:33 +0000)]
cope with ktrace "(via syscall)" changes
cheloha [Tue, 17 Jan 2023 02:58:22 +0000 (02:58 +0000)]
agtimer(4/armv7): switch to clockintr
- Strip out custom hardclock/statclock scheduling code.
- Remove debug evcount code. We can no longer differentiate between
hardclock and statclock in the driver.
- Wire up agtimer_intrclock.
With tweaks from miod@ and jca@. Tested by jca@ and kettenis@.
Link: https://marc.info/?l=openbsd-tech&m=167044965011140&w=2
ok kettenis@
cheloha [Tue, 17 Jan 2023 02:47:55 +0000 (02:47 +0000)]
amptimer(4): switch to clockintr
- Strip out custom hardclock/statclock scheduling code.
- Wire up amptimer_intrclock.
- Remove debug evcounts. All interrupts are now counted with
the evcount in the interrupt handler.
- Remove apparently dead USE_GTIMER_CMP code.
Debugged with jca@. Tested by jca@.
Link: https://marc.info/?l=openbsd-tech&m=167060127825418&w=2
ok kettenis@ jca@
cheloha [Tue, 17 Jan 2023 02:38:59 +0000 (02:38 +0000)]
sxitimer(4): switch to clockintr
- Strip out custom hardclock/statclock scheduling code.
- Stop using STATTIMER. We can multiplex TICKTIMER to handle all
clock interrupts.
- Wire up sxitimer_intrclock.
- For parity with other platforms, change stathz from 128 to hz and
change profhz from 1024 to (stathz * 10).
Tested by kettenis@.
Link: https://marc.info/?l=openbsd-tech&m=167060659329137&w=2
ok kettenis@
cheloha [Tue, 17 Jan 2023 02:32:07 +0000 (02:32 +0000)]
dmtimer(4): switch to clockintr
- Strip out custom hardclock/statclock scheduling code.
- Wire up dmtimer_intrclock.
- For convenience, add dmtimer_reset_tisr(); we do the "clear interrupt
bits" dance in multiple places, may as well put it in a function.
- For parity with other platforms, change stathz from 128 to 100 and
profhz from 1024 to 1000.
Testing by stuge@ and jsg@.
v1: https://marc.info/?l=openbsd-tech&m=
167060320326851&w=2
v2: https://marc.info/?l=openbsd-tech&m=
167340009006972&w=2
ok mlarkin@ kettenis@
cheloha [Tue, 17 Jan 2023 02:27:14 +0000 (02:27 +0000)]
arm, armv7: add clockintr support
The interrupt clock drivers need these pieces to be in place first.
ok mlarkin@ kettenis@
kn [Mon, 16 Jan 2023 23:07:47 +0000 (23:07 +0000)]
Mention riscv64 boot support
efiboot could always boot from CRYPTO and RAID 1, since version 1.5 RAID 1C
also works.
installboot was enabled just now, so only new installations work out of the
box without manual intervention.
kn [Mon, 16 Jan 2023 22:59:41 +0000 (22:59 +0000)]
Enable softraid(4) support in installboot(8)
riscv64 efiboot already supports booting from softraid volumes.
These installboot bits make sure that the boot loader will be installed on
chunk devices rather than the volume for root on softraid installations,
i.e. full boot support for riscv64, just like amd64, arm64 and sparc64.
regress is happy.
OK kettenis
jmatthew [Mon, 16 Jan 2023 22:08:50 +0000 (22:08 +0000)]
Fix transmit queue selection based on frame type. I introduced an error
here when I split up urtwn_tx() to add support for RTL8192EU devices.
from Mikhail (mp395990 at gmail)
ok stsp@
kn [Mon, 16 Jan 2023 21:32:12 +0000 (21:32 +0000)]
bump minor after RAID 1C support synced form arm64
kn [Mon, 16 Jan 2023 21:30:46 +0000 (21:30 +0000)]
Sync with original arm64 copy to get RAID 1C bits, fix include guard
OK kettenis
patrick [Mon, 16 Jan 2023 20:12:38 +0000 (20:12 +0000)]
Manage RTC offset through UEFI variables handled by a TEE application that
can be interacted with using SMC calls.
ok kettenis@
patrick [Mon, 16 Jan 2023 20:07:48 +0000 (20:07 +0000)]
Attach drivers on nodes under /firmware.
ok kettenis@
deraadt [Mon, 16 Jan 2023 18:41:53 +0000 (18:41 +0000)]
some kernel prototypes should also be made available to _STANDALONE
jsing [Mon, 16 Jan 2023 17:56:25 +0000 (17:56 +0000)]
Move BN_sqr() to the bottom of the file.
This will simplify review/upcoming changes.
No functional change.
jsing [Mon, 16 Jan 2023 16:53:19 +0000 (16:53 +0000)]
Mop up debug code that escaped previously.
This is the result of `unifdef -m -U BN_COUNT'.
krw [Mon, 16 Jan 2023 16:49:16 +0000 (16:49 +0000)]
Use size of largest chunk of free space, not total of all chunks
of free space, when checking for sufficient space to add a
partition. As a side-benefit the list of free chunks only needs
to be built once.
deraadt [Mon, 16 Jan 2023 15:34:54 +0000 (15:34 +0000)]
sync
nicm [Mon, 16 Jan 2023 11:26:14 +0000 (11:26 +0000)]
Mark keys sent by command and skip paste handling for them.
claudio [Mon, 16 Jan 2023 10:37:08 +0000 (10:37 +0000)]
Fix bad MP logic in the route refresh handling.
Found by and fix provided by Zenon Mousmoulas (@zmousm)
kettenis [Mon, 16 Jan 2023 10:11:39 +0000 (10:11 +0000)]
Don't put data in .text.
ok deraadt@, miod@
deraadt [Mon, 16 Jan 2023 07:29:32 +0000 (07:29 +0000)]
roughly cleanup terrible pre-ansi practices
ok miod
guenther [Mon, 16 Jan 2023 07:09:11 +0000 (07:09 +0000)]
Currently we disable kbind(2) for static program from libc.a's
preinit hook. Delete that and instead have the kernel disable kbind
at exec-time if the program doesn't have an ELF interpreter. For
now, permit userland calls to disable it when already disabled so
existing static programs continue to work.
prompted by deraadt@ questioning about the call in libc.a
ok deraadt@ miod@
deraadt [Mon, 16 Jan 2023 05:32:04 +0000 (05:32 +0000)]
we spent far too long debugging a weird go library problem (incorrect
arguments to mmap) because it was using syscall(2) and that callpath
is invisible in ktrace. make it visible, it will now show "(via syscall)"
and such.
ok guenther
djm [Mon, 16 Jan 2023 04:11:29 +0000 (04:11 +0000)]
unbreak test: cannot access shell positional parameters past $9 without
wrapping the position in braces (i.e. need ${10}, etc.)
deraadt [Mon, 16 Jan 2023 00:05:18 +0000 (00:05 +0000)]
export PGK_VALUE so that .S files can use it
deraadt [Mon, 16 Jan 2023 00:04:47 +0000 (00:04 +0000)]
3 new defines: he PTE protection key mask, the specific key value we use
for execute-only, and the PKU value used by userland to use that key.
djm [Sun, 15 Jan 2023 23:35:10 +0000 (23:35 +0000)]
adapt to
ed25519 changes in src/usr.bin/ssh
djm [Sun, 15 Jan 2023 23:05:32 +0000 (23:05 +0000)]
update OpenSSH's
Ed25519 code to the last version of SUPERCOP (
20221122)
and change the import approach to the same one we use for Streamlined
NTRUPrime: use a shell script to extract the bits we need from SUPERCOP,
make some minor adjustments and squish them all into a single file.
ok tb@ tobhe@
tb [Sun, 15 Jan 2023 13:58:44 +0000 (13:58 +0000)]
gost: add missing BN_CTX_{start,end}() pair
The new BN_CTX code enforces that the context be started before a BIGNUM
can be obtained from it via BN_CTX_get(), tests for ssl/interop and the
openssl app broke, implying missing test coverage in libcrypto itself.
Add the obviously missing bits.
reported by anton
ok jsing
jsg [Sun, 15 Jan 2023 13:51:59 +0000 (13:51 +0000)]
restore strscpy() paths to reduce diff to linux
jmc [Sun, 15 Jan 2023 06:55:12 +0000 (06:55 +0000)]
fix text error; from jan stary
deraadt [Sun, 15 Jan 2023 02:18:06 +0000 (02:18 +0000)]
sync
kettenis [Sat, 14 Jan 2023 23:38:23 +0000 (23:38 +0000)]
Change suspend idle loop from WFE to WFI. This avoids spurious wakeups
while other CPUs are still active. And prepares us for deeper sleep states
which require an interrupt for wakeup anyway.
ok patrick@
kettenis [Sat, 14 Jan 2023 23:35:09 +0000 (23:35 +0000)]
Assign (stereo) channel numbers based on "sound-name-prefix" properties.
ok patrick@, ratchov@
dv [Sat, 14 Jan 2023 20:55:55 +0000 (20:55 +0000)]
Only open /dev/vmm once in vmd(8).
Have the parent process open /dev/vmm and send the fd to the vmm
child process. Only the vmm process and its resulting children
(guest vms) need it for ioctl calls.
ok kn@
krw [Sat, 14 Jan 2023 18:21:46 +0000 (18:21 +0000)]
Replace comparisons/assignments to '3' with equivalent comparisons to RAW_PART
and assignment to RAW_PART + 1.
deraadt [Sat, 14 Jan 2023 18:16:24 +0000 (18:16 +0000)]
sync
kettenis [Sat, 14 Jan 2023 17:02:57 +0000 (17:02 +0000)]
Add support for "enhanced descriptor" mode found on some variants of the
Synopsys DesignWare GMAC.
ok mlarkin@
deraadt [Sat, 14 Jan 2023 16:58:55 +0000 (16:58 +0000)]
Move constants out of text segment into rodata to prepare for xonly support
on amd64. no pic handling is neccessary since amd64 has full reach.
ok kettenis
deraadt [Sat, 14 Jan 2023 16:20:32 +0000 (16:20 +0000)]
Update the list of architectures where clang will accept the
--execute-only option, and also indicate which ones have enabled by
default now (in our naming convention, that is arm64 and riscv64)
deraadt [Sat, 14 Jan 2023 16:15:43 +0000 (16:15 +0000)]
Allow people to try --execute-only on amd64 and sparc64. the default is
changed.
jsing [Sat, 14 Jan 2023 15:45:43 +0000 (15:45 +0000)]
Remove unused Elliptic Curve code.
For various reasons, the ecp_nistp* and ecp_nistz* code is unused. While
ecp_nistp* was being compiled, it is disabled due to
OPENSSL_NO_EC_NISTP_64_GCC_128 being defined. On the other hand,
ecp_nistz* was not even being built.
We will bring in new versions or alternative versions of such code, if we
end up enabling it in the future. For now it is just causing complexity
(and grep noise) while trying to improve the EC code.
Discussed with tb@
jsing [Sat, 14 Jan 2023 15:23:27 +0000 (15:23 +0000)]
Rewrite BN_CTX.
The current BN_CTX implementation is an incredibly overengineered piece of
code, which even includes its own debug system.
Rewrite BN_CTX from scratch, simplifying things things considerably by
having a "stack" of BIGNUM pointers and a matching array of group
assignments. This means that BN_CTX_start() and BN_CTX_end() effectively
do not fail. Unlike the previous implementation, if a failure occurs
nothing will work and the BN_CTX must be freed/recreated, instead of
trying to pick up at the point where the failure occurred (which does
not make sense given its intended usage).
Additionally, it has long been documented that BN_CTX_start() must be
called before BN_CTX_get() can be used, however the previous implementation
did not actually enforce this. Now that missing BN_CTX_start() and
BN_CTX_end() calls have been added to DSA and EC, we can actually make
this a hard requirement.
ok tb@
jsing [Sat, 14 Jan 2023 15:12:27 +0000 (15:12 +0000)]
Greatly simplify bn_expand_internal().
We have a function called recallocarray() - make use of it rather than
handrolling a version of it. Also have bn_expand() call bn_wexpand(),
which avoids some duplication.
ok tb@
jsing [Sat, 14 Jan 2023 15:10:45 +0000 (15:10 +0000)]
Clean up and simplify EC_KEY handling, mostly from a BN_CTX perspective.
If we have a BN_CTX available, make use of it rather than calling BN_new().
Always allocate a new priv_key and pub_key, rather than having complex
reuse dances on entry and exit. Add missing BN_CTX_start()/BN_CTX_end()
calls.
ok tb@
kettenis [Sat, 14 Jan 2023 12:19:11 +0000 (12:19 +0000)]
regen
kettenis [Sat, 14 Jan 2023 12:15:12 +0000 (12:15 +0000)]
Create /dev/efi on amd64 and arm64.
ok yasuoka@
kettenis [Sat, 14 Jan 2023 12:11:10 +0000 (12:11 +0000)]
Implement access to EFI variables and ESRT through an ioctl(2) interface
that is compatible with what FreeBSD and NetBSD have. Setting EFI
variables is only allowed at securelevel 0 and below.
Heavily based on work done by Sergii Dmytruk.
ok yasuoka@
dtucker [Sat, 14 Jan 2023 10:05:54 +0000 (10:05 +0000)]
Shell syntax fix. From ren mingshuai vi github PR#369.
dtucker [Sat, 14 Jan 2023 09:57:08 +0000 (09:57 +0000)]
Instead of skipping the all-tokens test if we don't have OpenSSL (since
we use it to compute the hash), put the hash at the end and just omit it
if we don't have it. Prompted by bz#3521.
tb [Sat, 14 Jan 2023 07:36:16 +0000 (07:36 +0000)]
Add missing void to function definition
jsg [Sat, 14 Jan 2023 03:37:13 +0000 (03:37 +0000)]
add protection-key violation error code for page-fault exceptions
ok deraadt@
jsg [Sat, 14 Jan 2023 03:28:51 +0000 (03:28 +0000)]
recognise protection keys for supervisor-mode (PKS) in cpuid
ok deraadt@
jsg [Sat, 14 Jan 2023 03:21:17 +0000 (03:21 +0000)]
sync cr4 and xcr0 bits with intel dec 2022 sdm
ok deraadt@
jsg [Sat, 14 Jan 2023 03:12:15 +0000 (03:12 +0000)]
use the notice from 4.4BSD-Lite
ok deraadt@ miod@
cheloha [Sat, 14 Jan 2023 01:04:55 +0000 (01:04 +0000)]
sysctl(2): KERN_CPUSTATS: zero struct cpustats before copyout
kettenis [Fri, 13 Jan 2023 23:02:43 +0000 (23:02 +0000)]
Since the signal trampoline is now execute-only we no longer write it
into core dumps. As a result backtraces through signal handlers no
longer work in gdb and other debuggers.
Fix this by keeping a read-only mapping of the signal trampoline in the
kernel and writing it into the core dump at the virtual address where it
is mapped in the process.
ok deraadt@, tb@
deraadt [Fri, 13 Jan 2023 18:26:29 +0000 (18:26 +0000)]
sync
miod [Fri, 13 Jan 2023 17:53:30 +0000 (17:53 +0000)]
Drop PICCY_SET() and RODATA() macros now that libc no longer needs them.
ok kettenis@
miod [Fri, 13 Jan 2023 17:52:08 +0000 (17:52 +0000)]
Move all data from .text section to .rodata, and update the code to
fetch them correctly when building PIC.
ok kettenis@
miod [Fri, 13 Jan 2023 17:27:25 +0000 (17:27 +0000)]
Move all data tables from .text section to .rodata, and update the code to
fetch them correctly when building PIC. Also drop unused data, and remove
--no-execute-only from linker flags.
ok kettenis@
miod [Fri, 13 Jan 2023 17:11:41 +0000 (17:11 +0000)]
Move all data tables from .text section to .rodata, and update the code to
fetch them correctly when building PIC. Also drop unused data, and remove
--no-execute-only from linker flags.
ok jsing@ kettenis@
deraadt [Fri, 13 Jan 2023 15:49:26 +0000 (15:49 +0000)]
put man page in the right place