openbsd
20 months agoChange fatal() to fatalx() since the errno has no meaning here.
claudio [Wed, 1 Mar 2023 08:17:53 +0000 (08:17 +0000)]
Change fatal() to fatalx() since the errno has no meaning here.
OK tb@

20 months agoKNF, no functional change.
claudio [Wed, 1 Mar 2023 08:15:58 +0000 (08:15 +0000)]
KNF, no functional change.

20 months agofatal out if allocating banner string fails to avoid potential null
dtucker [Tue, 28 Feb 2023 21:31:50 +0000 (21:31 +0000)]
fatal out if allocating banner string fails to avoid potential null
deref later in sscanf.  Spotted by Coverity, ok deraadt@

20 months ago+sync
sthen [Tue, 28 Feb 2023 16:58:36 +0000 (16:58 +0000)]
+sync

20 months agoadd 7.4 fw key
sthen [Tue, 28 Feb 2023 16:12:13 +0000 (16:12 +0000)]
add 7.4 fw key

20 months agoRewrite/simplify BN_from_montgomery_word() and BN_from_montgomery().
jsing [Tue, 28 Feb 2023 12:29:57 +0000 (12:29 +0000)]
Rewrite/simplify BN_from_montgomery_word() and BN_from_montgomery().

Rename BN_from_montgomery_word() to bn_montgomery_reduce() and rewrite it
to be simpler and clearer, moving further towards constant time in the
process. Clean up BN_from_montgomery() in the process.

ok tb@

20 months agoExplicitly skip the json_web* tests now.
tb [Tue, 28 Feb 2023 10:46:27 +0000 (10:46 +0000)]
Explicitly skip the json_web* tests now.

20 months agoAdd a few missing NIDs for new Wycheproof tests.
tb [Tue, 28 Feb 2023 10:45:46 +0000 (10:45 +0000)]
Add a few missing NIDs for new Wycheproof tests.

20 months agoSkip FRP256v1 curve in ECDH tests. We do not support it.
tb [Tue, 28 Feb 2023 10:43:21 +0000 (10:43 +0000)]
Skip FRP256v1 curve in ECDH tests. We do not support it.

20 months agoAdjust default_print() to not run over snapend.
claudio [Tue, 28 Feb 2023 10:04:50 +0000 (10:04 +0000)]
Adjust default_print() to not run over snapend.

Kill default_print_unaligned() and adjust default_print() to also work
with unaligned buffers. There is no need for two functions doing the
same thing.

Pass the right length in nsh_print to default_print(). Fixes on place
that makes tcpdump crash.
Reported by Peter J. Philipp (pjp at delphinusdns dot org)
OK mbuhl@

20 months agoExplicitly ignore return from fchmod similar to other calls to
dtucker [Tue, 28 Feb 2023 08:45:24 +0000 (08:45 +0000)]
Explicitly ignore return from fchmod similar to other calls to
prevent warning.

20 months agoPlug mem leak on globbed ls error path. Spotted by Coverity, ok deraadt@
dtucker [Mon, 27 Feb 2023 22:12:40 +0000 (22:12 +0000)]
Plug mem leak on globbed ls error path. Spotted by Coverity, ok deraadt@

20 months agouse the correct size of the execve syscall stub
deraadt [Mon, 27 Feb 2023 15:00:17 +0000 (15:00 +0000)]
use the correct size of the execve syscall stub

20 months agoCalculate the size of the static (and profiled static) execve syscall stub
deraadt [Mon, 27 Feb 2023 14:59:33 +0000 (14:59 +0000)]
Calculate the size of the static (and profiled static) execve syscall stub
and store it in a const variable for use by crt0.
help from kettenis and miod

20 months agosort VEB and add "rules"; ok stsp
jmc [Mon, 27 Feb 2023 14:53:38 +0000 (14:53 +0000)]
sort VEB and add "rules"; ok stsp

20 months agoAdd missing documentation of veb(4) ioctls to the ifconfig(8) VEB section.
stsp [Mon, 27 Feb 2023 13:30:59 +0000 (13:30 +0000)]
Add missing documentation of veb(4) ioctls to the ifconfig(8) VEB section.

These ifconfig commands are supported by veb(4) but were undocumented:
deladdr flushrule maxaddr rule rulefile static timeout up

As was done before, copy relevant prose from the BRIDGE section.

ok jmc@

20 months agoPass MII flags depending on the phy mode specified in the device tree.
jmatthew [Mon, 27 Feb 2023 09:59:46 +0000 (09:59 +0000)]
Pass MII flags depending on the phy mode specified in the device tree.
With this, the WAN port on the Turris Omnia works.

tested on Turris MOX by kettenis@
ok patrick@

20 months agoTurn off TSO if interface is added to layer 2 devices.
jan [Mon, 27 Feb 2023 09:35:32 +0000 (09:35 +0000)]
Turn off TSO if interface is added to layer 2 devices.

ok bluhm@, claudio@

20 months agoThere is no reason to-be-cleared chunks cannot participate in delayed
otto [Mon, 27 Feb 2023 06:47:54 +0000 (06:47 +0000)]
There is no reason to-be-cleared chunks cannot participate in delayed
freeing; ok tb@

20 months agodrm/i915: Remove __maybe_unused from mtl_info
jsg [Mon, 27 Feb 2023 02:04:12 +0000 (02:04 +0000)]
drm/i915: Remove __maybe_unused from mtl_info

From Lucas De Marchi
44610f4c3093bbce3061b77d37bdf1bed8e379da in linux-6.1.y/6.1.14
fff758698842fb6722be37498d8773e0fb47f000 in mainline linux

20 months agodrm/edid: Fix minimum bpc supported with DSC1.2 for HDMI sink
jsg [Mon, 27 Feb 2023 02:01:38 +0000 (02:01 +0000)]
drm/edid: Fix minimum bpc supported with DSC1.2 for HDMI sink

From Ankit Nautiyal
0deb50618944aed143269214daea0ba2ddf2222d in linux-6.1.y/6.1.14
18feaf6d0784dcba888859109676adf1e0260dfd in mainline linux

20 months agosync
deraadt [Mon, 27 Feb 2023 00:58:38 +0000 (00:58 +0000)]
sync

20 months agoInclude varags types in sys/syscalls.h comment
afresh1 [Mon, 27 Feb 2023 00:18:00 +0000 (00:18 +0000)]
Include varags types in sys/syscalls.h comment

Separated with the existing "..." requested by deraadt@
OK gnezdo@

20 months agoclockintr: add a kernel-facing API
cheloha [Sun, 26 Feb 2023 23:00:42 +0000 (23:00 +0000)]
clockintr: add a kernel-facing API

We need an API for creating, scheduling, and rescheduling clock
interrupts.

- Add struct clockintr, a schedulable clock interrupt callback.

- Add clockintr_establish().  Allocates a new struct clockintr and
  binds it to the given clockintr_queue.

- Add clockintr_expiration().  Returns the clockintr's absolute
  expiration uptime.

- Add clockintr_nsecuptime().  Returns the clockintr's parent queue's
  cached uptime.  Using a cached timestamp is cheaper than calling
  nsecuptime(9) repeatedly when we don't absolutely need to.

- Add clockintr_schedule().  Schedules the clock interrupt to run at
  or after the given absolute uptime.

- Add clockintr_advance().  Reschedules the clock interrupt in the
  future on the given period relative to the parent queue's cached
  uptime.

With the above pieces in place we can push most of the scheduling
code for hardclock()/statclock()/schedclock() from clockintr_dispatch()
into the wrapper functions clockintr_hardclock(), clockintr_statclock(),
and clockintr_schedclock().  These wrappers are temporary.  I don't
want to muck up the wrapped functions while things are still moving
around.

For the moment these interfaces are internal to kern_clockintr.c.  In
a later patch we will move the prototypes into <sys/clockintr.h> so
anyone can use them.  We first need to add a data structure for
sorting the clockintr structs.  We also need to add a mutex to
clockintr_queue to allow arbitrary threads to safely manipulate clock
interrupts established on other CPUs.

Shown on hackers@.  Tweaked by mlarkin@.

ok mlarkin@, "no objections" kettenis@

20 months agoAdd a few missing bounds checks when processing terminal escape sequences.
miod [Sun, 26 Feb 2023 15:09:53 +0000 (15:09 +0000)]
Add a few missing bounds checks when processing terminal escape sequences.
Without them, the kernel could be made to crash or reboot after receiving some
specially crafted terminal escape sequences.

Reported by David Leadbeater (dgl, dgl dot cx)

20 months agoDefragment mbufs in the tx path to work around a (not fully understood)
kettenis [Sun, 26 Feb 2023 13:28:12 +0000 (13:28 +0000)]
Defragment mbufs in the tx path to work around a (not fully understood)
issue on the StarFive JH7100 SoC where packets spanning multiple mbufs
are corrupted.  Makes ethernet work reliably on the StarFive VisionFive 1
board.

ok patrick@

20 months agoRK3588 support.
kettenis [Sun, 26 Feb 2023 12:39:48 +0000 (12:39 +0000)]
RK3588 support.

ok patrick@

20 months agoRK3588 support.
kettenis [Sun, 26 Feb 2023 12:39:07 +0000 (12:39 +0000)]
RK3588 support.

ok patrick@

20 months agoModern Rockchip SoCs, such as the RK356x and RK3588, use a different
kettenis [Sun, 26 Feb 2023 12:37:58 +0000 (12:37 +0000)]
Modern Rockchip SoCs, such as the RK356x and RK3588, use a different
register layout where the upper 16 bits decide which of the lower 16 bits
apply when writing to a register.  Handle this new variant.

ok patrick@

20 months agoUse separate lines instead of semicolons.
bcook [Sat, 25 Feb 2023 15:39:40 +0000 (15:39 +0000)]
Use separate lines instead of semicolons.

macOS aarch64 assembly dialect treats ; as comment instead of a newline

ok tb@, jsing@

20 months agoregen
mvs [Sat, 25 Feb 2023 09:56:17 +0000 (09:56 +0000)]
regen

20 months agoUnlock select(2), pselect(2), poll(2) and ppoll(2).
mvs [Sat, 25 Feb 2023 09:55:46 +0000 (09:55 +0000)]
Unlock select(2), pselect(2), poll(2) and ppoll(2).

The assertion within tsleep(9) was relaxed to allow calls on special
`nowake' channel without kernel lock held. So the sisguspend(2) like
cases "select(0, NULL, NULL, NULL, NULL)" and "poll(NULL, 0, INFTIM)"
should not trigger it. Commit reverted diff back.

ok claudio@

20 months agoChange to use the default bsd.prog.mk "install" target.
aoyama [Fri, 24 Feb 2023 23:36:10 +0000 (23:36 +0000)]
Change to use the default bsd.prog.mk "install" target.

This also brings to install boot.8 man page correctly.

ok miod@

20 months agoTry to warn about syscall() possibly being deleted from libc in the
deraadt [Fri, 24 Feb 2023 16:30:19 +0000 (16:30 +0000)]
Try to warn about syscall() possibly being deleted from libc in the
future.  The ports team is already running around with axes and mops,
but don't worry such an action won't happen quickly.
with tb

20 months agoswitch mips64 ld.lld to execute-only, in case someone uses it
deraadt [Fri, 24 Feb 2023 16:28:26 +0000 (16:28 +0000)]
switch mips64 ld.lld to execute-only, in case someone uses it
(the mips64 default is still ld.bfd)

20 months agodisable jump tables by default on sparc64, in prep for xonly by default
deraadt [Fri, 24 Feb 2023 16:27:17 +0000 (16:27 +0000)]
disable jump tables by default on sparc64, in prep for xonly by default
ok miod

20 months agoDo not held the vm_map lock while flushing pages in msync(2) and madvise(2).
mpi [Fri, 24 Feb 2023 15:17:48 +0000 (15:17 +0000)]
Do not held the vm_map lock while flushing pages in msync(2) and madvise(2).

Mark the VM map as busy instead to prevent any sibling thread to request an
exclusive version of the vm_map.  This is necessary to let any PG_BUSY page,
found in the UVM vnode object, to be released by a sibling in the middle of
a page-fault.

Note: the page-fault handler releases & re-grab a shared version of the
vm_map lock and expect it to be available to make progress.

Prevent a 3-Threads deadlock between msync(2), page-fault and mmap(2).  The
deadlock reported on bugs@ by many occured as follow:

..ThreadA faults & grabs the shared `vmmaplk' then release it before calling
..uvn_get() which might sleep to allocate pages and mark them as PG_BUSY.

..Once the lock is released, threadB calls uvn_flush().  It sees at least a
..PG_BUSY page and sleeps on the `vmmaplk' waiting for threadA to un-busy
..the page.

..At the same time threadC asked for an exclusive version of the lock and
..sleeps until all reader are done with it.  This prevents threadA to
..acquire a shared-version of the lock and finish the page fault.

This issue is similar to NetBSD's PR #56952 and the fix is from Chuck Silvers.

Tested by many on bugs@, thanks!

ok kettenis@

20 months agoRemove dangerous user-settable "addr" variable from MI boot loader, and
miod [Thu, 23 Feb 2023 19:48:21 +0000 (19:48 +0000)]
Remove dangerous user-settable "addr" variable from MI boot loader, and
only compile tty-related code (stty command, tty variable) on platforms
where it makes sense for the boot loader to control it, rather than the
PROM/firmware/whatever.

20 months agoIntroduce X509_get0_uids() accessor function
job [Thu, 23 Feb 2023 18:12:32 +0000 (18:12 +0000)]
Introduce X509_get0_uids() accessor function

By introducing X509_get0_uids(), one can add RPKI profile compliance
checks to conform the absence of the issuerUID and subjectUID.

OK tb@ jsing@

20 months agoopenssl speed: avoid bad plural
tb [Thu, 23 Feb 2023 14:55:54 +0000 (14:55 +0000)]
openssl speed: avoid bad plural

Remedy a case of twitching eyes caused by seeing "Doing ... rsa's for 10s".
If this breaks someone's script, so be it.

ok jsing sthen

20 months agoMake bootloader 'time' command work correctly on luna88k.
aoyama [Thu, 23 Feb 2023 13:28:38 +0000 (13:28 +0000)]
Make bootloader 'time' command work correctly on luna88k.

Now the correct date is displayed instead of January 1, 1970.

Tested on LUNA-88K2 and nono emulator by me.

"make sense" miod@

20 months agorpki-client: simplify parse_load_crl_from_mft()
tb [Thu, 23 Feb 2023 13:06:42 +0000 (13:06 +0000)]
rpki-client: simplify parse_load_crl_from_mft()

Now that we always inspect both locations if necessary, we can do away
with the loop and simply have the only caller call twice. Removes a
bunch of clever complexity and streamlines the code quite a bit.

ok claudio job

20 months agoWhen parsing MFT the CRL referenced by the MFT is loaded and verified at
claudio [Thu, 23 Feb 2023 09:50:40 +0000 (09:50 +0000)]
When parsing MFT the CRL referenced by the MFT is loaded and verified at
the same time. So in case of a valid crl pass the CRL filename as entity
message to the parent process together with the MFT. This way the MFT and
CRL end up both in the valid cache even if some files in the MFT are missing.
On severe errors (like X.509 verify errors) the CRL is not moved since it
is not considered valid.
With and OK job@, tb@

20 months agoUse explicit .text instead of .previous to please Windows/MinGW on amd64
tb [Thu, 23 Feb 2023 08:55:44 +0000 (08:55 +0000)]
Use explicit .text instead of .previous to please Windows/MinGW on amd64

ok miod

20 months agoFix up the .rodata segment's name for Windows as well.
tb [Thu, 23 Feb 2023 08:49:02 +0000 (08:49 +0000)]
Fix up the .rodata segment's name for Windows as well.

Here we need .rdata with some alignment goo. Fortunately, this was already
present for .pdata and .xdata, so the change is easy. Also, this is a code
path that doesn't affect OpenBSD at all.

ok jsing miod

20 months agoFix ethertype for NSH. RFC 8300 states ethertype 0x894F has been
mbuhl [Thu, 23 Feb 2023 08:37:03 +0000 (08:37 +0000)]
Fix ethertype for NSH. RFC 8300 states ethertype 0x894F has been
allocated for NSH.
Found by bluhm.
ok dlg.

20 months agodrm/i915/gen11: Wa_1408615072/Wa_1407596294 should be on GT list
jsg [Thu, 23 Feb 2023 02:29:39 +0000 (02:29 +0000)]
drm/i915/gen11: Wa_1408615072/Wa_1407596294 should be on GT list

From Matt Roper
2fc3ff76e96f48e5e4dd705f6794b8483f7c1624 in linux-6.1.y/6.1.13
d5a1224aa68c8b124a4c5c390186e571815ed390 in mainline linux

20 months agodrm/amd/display: Fail atomic_check early on normalize_zpos error
jsg [Thu, 23 Feb 2023 02:27:50 +0000 (02:27 +0000)]
drm/amd/display: Fail atomic_check early on normalize_zpos error

From Leo Li
020eccac747e30a35f1fdd4dc6f18425ff1a5870 in linux-6.1.y/6.1.13
2a00299e7447395d0898e7c6214817c06a61a8e8 in mainline linux

20 months agodrm/amd/amdgpu: fix warning during suspend
jsg [Thu, 23 Feb 2023 02:25:43 +0000 (02:25 +0000)]
drm/amd/amdgpu: fix warning during suspend

From Jack Xiao
dbe3529e816ee77a19fb6636e762b1dadbd02d10 in linux-6.1.y/6.1.13
8f32378986218812083b127da5ba42d48297d7c4 in mainline linux

20 months agodrm/amd/display: Properly handle additional cases where DCN is not supported
jsg [Thu, 23 Feb 2023 02:24:10 +0000 (02:24 +0000)]
drm/amd/display: Properly handle additional cases where DCN is not supported

From Alex Deucher
b4e79d0c7f9bb938525716b3e05cfca6418e2bae in linux-6.1.y/6.1.13
6fc547a5a2ef5ce05b16924106663ab92f8f87a7 in mainline linux

20 months agodrm/amdgpu: Enable vclk dclk node for gc11.0.3
jsg [Thu, 23 Feb 2023 02:21:15 +0000 (02:21 +0000)]
drm/amdgpu: Enable vclk dclk node for gc11.0.3

From Yiqing Yao
fc64b04297a0674f4e5aff50622efdce46715fe1 in linux-6.1.y/6.1.13
ac7170082c0e140663f0853d3de733a5341ce7b0 in mainline linux

20 months agodrm/amdgpu: enable HDP SD for gfx 11.0.3
jsg [Thu, 23 Feb 2023 02:19:13 +0000 (02:19 +0000)]
drm/amdgpu: enable HDP SD for gfx 11.0.3

From Evan Quan
e9cbb2b0d9f679d7e25b9415cf9d7345441a95c5 in linux-6.1.y/6.1.13
bb25849c0fa550b26cecc9c476c519a927c66898 in mainline linux

20 months agodrm/amd/display: Reset DMUB mailbox SW state after HW reset
jsg [Thu, 23 Feb 2023 02:17:38 +0000 (02:17 +0000)]
drm/amd/display: Reset DMUB mailbox SW state after HW reset

From Nicholas Kazlauskas
488770cbddd8a873fb3bb8866e8a46211570c367 in linux-6.1.y/6.1.13
154711aa5759ef9b45903124fa813c4c29ee681c in mainline linux

20 months agodrm/amd/display: Unassign does_plane_fit_in_mall function from dcn3.2
jsg [Thu, 23 Feb 2023 02:16:09 +0000 (02:16 +0000)]
drm/amd/display: Unassign does_plane_fit_in_mall function from dcn3.2

From George Shen
383e32fa274a330dbf2d2db538b6bf2f9ef390aa in linux-6.1.y/6.1.13
275d8a1db261a1272a818d40ebc61b3b865b60e5 in mainline linux

20 months agodrm/amd/display: Adjust downscaling limits for dcn314
jsg [Thu, 23 Feb 2023 02:13:24 +0000 (02:13 +0000)]
drm/amd/display: Adjust downscaling limits for dcn314

From Daniel Miess
7dbd205349f1fb098057c28a9a2af244aa868f72 in linux-6.1.y/6.1.13
dd2db2dc4bd298f33dea50c80c3c11bee4e3b0a4 in mainline linux

20 months agodrm/amd/display: Add missing brackets in calculation
jsg [Thu, 23 Feb 2023 02:11:58 +0000 (02:11 +0000)]
drm/amd/display: Add missing brackets in calculation

From Daniel Miess
0c42622a573b716d79c57ff61c52fea46c0a5c94 in linux-6.1.y/6.1.13
ea062fd28f922cb118bfb33229f405b81aff7781 in mainline linux

20 months agoadjust documentation for ktrace.h changes. utrace() is now easier to use
deraadt [Thu, 23 Feb 2023 01:34:27 +0000 (01:34 +0000)]
adjust documentation for ktrace.h changes.  utrace() is now easier to use
ok guenther

20 months agoinclude two required header files, because we want people to use utrace()
deraadt [Thu, 23 Feb 2023 01:33:20 +0000 (01:33 +0000)]
include two required header files, because we want people to use utrace()
easier
ok guenther

20 months agoExplicitly initialize vmd_vm pointer with NULL before calling vm_register.
mbuhl [Wed, 22 Feb 2023 10:04:45 +0000 (10:04 +0000)]
Explicitly initialize vmd_vm pointer with NULL before calling vm_register.
Found by codechecker.
ok dv@

20 months agoremove .Pp before .Sh;
jmc [Wed, 22 Feb 2023 07:04:50 +0000 (07:04 +0000)]
remove .Pp before .Sh;

20 months agoPoint to <signal.h> and not <sys/signal.h>: the latter is
guenther [Wed, 22 Feb 2023 06:54:13 +0000 (06:54 +0000)]
Point to <signal.h> and not <sys/signal.h>: the latter is
an implementation detail for the kernel, libc, and libkvm,
and should not be a concern for others.

20 months agoDon't mention <sys/signal.h>: <pthread_np.h> pulls in everything that's
guenther [Wed, 22 Feb 2023 06:43:45 +0000 (06:43 +0000)]
Don't mention <sys/signal.h>: <pthread_np.h> pulls in everything that's
needed.

20 months agoPrefer 'argument' over 'parameter' when refering to the value
guenther [Wed, 22 Feb 2023 06:39:39 +0000 (06:39 +0000)]
Prefer 'argument' over 'parameter' when refering to the value
passed in a specific call.

From discussion with schwarze@ and jmc@
ok jmc@

20 months agoPrefer "get or set" over "get/set" or "get and set".
guenther [Wed, 22 Feb 2023 06:31:51 +0000 (06:31 +0000)]
Prefer "get or set" over "get/set" or "get and set".

From discussion with schwarze@ and jmc@
ok jmc@

20 months agoAdjust parentheses in mont->ri assignment.
jsing [Wed, 22 Feb 2023 06:00:24 +0000 (06:00 +0000)]
Adjust parentheses in mont->ri assignment.

Requested by tb@

20 months agoReplace bn_sub_part_words() with bn_sub().
jsing [Wed, 22 Feb 2023 05:57:19 +0000 (05:57 +0000)]
Replace bn_sub_part_words() with bn_sub().

Now that bn_sub() handles word arrays with potentially different lengths,
we no longer need bn_sub_part_words() - call bn_sub() instead. This allows
us to entirely remove the unnecessarily complex bn_sub_part_words() code.

ok tb@

20 months agoRework bn_add()/bn_sub() to operate on word arrays.
jsing [Wed, 22 Feb 2023 05:46:37 +0000 (05:46 +0000)]
Rework bn_add()/bn_sub() to operate on word arrays.

Rather than working on BIGNUMs, change bn_add()/bn_sub() to operate on word
arrays that potentially differ in length. This matches the behaviour of
s2n-bignum's bignum_add() and bignum_sub().

ok tb@

20 months agoRewrite and simplify BN_MONT_CTX_set()
jsing [Wed, 22 Feb 2023 05:25:47 +0000 (05:25 +0000)]
Rewrite and simplify BN_MONT_CTX_set()

OpenSSL commit 4d524040bc8 changed BN_MONT_CTX_set() so that it computed
a 64 bit N^-1 on both BN_BITS2 == 32 and BN_BITS2 == 64 platforms. However,
the way in which this was done was to duplicate half the code and wrap it
in #ifdef.

Rewrite this code to use a single code path on all platforms, with #ifdef
being limited to setting an additional word in the temporary N and storing
the result on BN_BITS2 == 32 platforms. Also remove stack based BIGNUM in
favour of using the already present BN_CTX.

ok tb@

20 months agofix progressmeter corruption on wide displays; bz3534
djm [Wed, 22 Feb 2023 03:56:43 +0000 (03:56 +0000)]
fix progressmeter corruption on wide displays; bz3534
feedback/ok dtucker@

20 months agoadress -> address;
jmc [Tue, 21 Feb 2023 19:49:50 +0000 (19:49 +0000)]
adress -> address;

20 months agorpki-client: refactor manifest/crl parsing a bit
tb [Tue, 21 Feb 2023 17:06:52 +0000 (17:06 +0000)]
rpki-client: refactor manifest/crl parsing a bit

Now that we always try to load the CRL from both locations, we can deal
with loading the DER directly in proc_parser_mft_pre(), so shuffle the
code around to accomplish that. This should make an upcoming diff by
claudio a bit simpler.

ok claudio

20 months agohppa does some weird callgate stuff, so the pinsyscall() provides the
deraadt [Tue, 21 Feb 2023 16:26:57 +0000 (16:26 +0000)]
hppa does some weird callgate stuff, so the pinsyscall() provides the
wrong address to the kernel.  disable for now.

20 months agodlfcn/init.c
deraadt [Tue, 21 Feb 2023 16:21:40 +0000 (16:21 +0000)]
dlfcn/init.c

20 months agospelling.
mbuhl [Tue, 21 Feb 2023 15:45:40 +0000 (15:45 +0000)]
spelling.
ok jmc

20 months agoDo pinsyscall() after static libc is configured for errno storage.
deraadt [Tue, 21 Feb 2023 14:46:41 +0000 (14:46 +0000)]
Do pinsyscall() after static libc is configured for errno storage.

20 months agopinsyscall(2) is not just for dynamic binaries anymore, so make the
deraadt [Tue, 21 Feb 2023 14:42:25 +0000 (14:42 +0000)]
pinsyscall(2) is not just for dynamic binaries anymore, so make the
text more generic

20 months agoIn static binaries, if WEAK execve can be found, use pinsyscall(2) to
deraadt [Tue, 21 Feb 2023 14:41:51 +0000 (14:41 +0000)]
In static binaries, if WEAK execve can be found, use pinsyscall(2) to
tell the kernel where the execve stub is found.  With this mechanism
we cannot tell the size, so use 128 as an estimate for the most we expect
from any architecture.
discussed with kettenis, ok guenther

20 months agocreate a stub for pinsyscall(2)
deraadt [Tue, 21 Feb 2023 14:39:35 +0000 (14:39 +0000)]
create a stub for pinsyscall(2)
ok guenther

20 months agofor process kills due to execve from non-pinned syscall address, export
deraadt [Tue, 21 Feb 2023 14:31:07 +0000 (14:31 +0000)]
for process kills due to execve from non-pinned syscall address, export
a new AEXECVE bit to acct(4), and print it in lastcomm(8)
ok bluhm

20 months agoAttach Apollo Lake HD Audio device, enabling audio on machines with it.
bcallah [Tue, 21 Feb 2023 13:42:59 +0000 (13:42 +0000)]
Attach Apollo Lake HD Audio device, enabling audio on machines with it.
ok jsg@ phessler@

20 months agoHave disk and string list helpers print trailing newlins consistently
kn [Tue, 21 Feb 2023 12:56:50 +0000 (12:56 +0000)]
Have disk and string list helpers print trailing newlins consistently

In practise, omitting \n is pointless in get_*devs*(), addel() and rmel()
as they are all all used in such a way that the shell always ensures a
trailing \n anyway.
(This might have been needed with the old recursive bsort(), but not now.)

The one exception being the case of a ramdisk with no disks, which revealed
\n mishandling in the root disk question where it ought to print "none"
instead of an empty list of available disks (since inception in r1.1114):
Available disks are: .
Which disk is the root disk? ('?' for details) ?

OK afresh1

20 months agoperlasm: properly spell .rodata for macOS on intel
tb [Tue, 21 Feb 2023 12:24:39 +0000 (12:24 +0000)]
perlasm: properly spell .rodata for macOS on intel

ok jsing

20 months agoremove extra argument
bcook [Tue, 21 Feb 2023 12:20:22 +0000 (12:20 +0000)]
remove extra argument

ok tb@

20 months agoCheck all possible storage areas for a matching CRL
job [Tue, 21 Feb 2023 11:13:05 +0000 (11:13 +0000)]
Check all possible storage areas for a matching CRL

This change makes proc_parser_mft_pre() -> parse_load_crl_from_mft()
search in both DIR_TEMP and DIR_VALID for a CRL with a matching SHA256
hash, increasing our chances of constructing a full publication point.

With and OK tb@ claudio@

20 months agorpki-client: ensure there is no trailing garbage in signed objects
tb [Tue, 21 Feb 2023 10:18:47 +0000 (10:18 +0000)]
rpki-client: ensure there is no trailing garbage in signed objects

The d2i functions are designed in such a way that the caller is responsible
to check if the entire buffer was consumed. Add checks on deserializing a
signed object to ensure the entire file has been consumed. Reject the file
if it has trailing garbage.

found by & ok job, ok claudio

20 months agosome nameserver proposal bits:
jmc [Tue, 21 Feb 2023 07:47:24 +0000 (07:47 +0000)]
some nameserver proposal bits:

unwind.8: point to resolvd(8) for autoconf sources
unwind.conf.5: order preferred list by order of preference
resolvd.8: reformat to read better
route.8: no need to discuss unwind in the nameserver command
umb.4 + sppp.4: note the sending of nameserver proposals

the umb/sppp text is from claudio
tobhe confirmed iked sending proposals when configured to do so

much assistance and ok: florian claudio

20 months agofseek to end of known_hosts before writing to it. POSIX and ANSI C
dtucker [Tue, 21 Feb 2023 06:48:18 +0000 (06:48 +0000)]
fseek to end of known_hosts before writing to it.  POSIX and ANSI C
require that applications call fseek or similar between read and writing
to a RW file.  OpenBSD doesn't enforce this, but some (System V derived)
platforms need this to prevent it from writing a spurious extra byte (in
this case, a newline).  ok djm@ deraadt@

20 months agoUnifdef MONT_WORD.
jsing [Tue, 21 Feb 2023 05:58:08 +0000 (05:58 +0000)]
Unifdef MONT_WORD.

It does not make sense to use code that is slower, currently broken and
prevents the use of assembly Montgomery implementations.

This is the result of `unifdef -m -DMONT_WORD`, followed by some manual
clean up and the removal of the Ni bignum from BN_MONT_CTX (which was only
used in the non-MONT_WORD case).

ok miod@ tb@

20 months agosync
deraadt [Tue, 21 Feb 2023 05:06:51 +0000 (05:06 +0000)]
sync

20 months agoSet the current pmap in macppc's pmap_activate
gkoehler [Tue, 21 Feb 2023 04:49:43 +0000 (04:49 +0000)]
Set the current pmap in macppc's pmap_activate

This fixes a possible freeze in execve(2).  It sometimes froze when a
dual-cpu macppc started daemons during boot.  There is a chance that
uvm_map.c uvmspace_exec sees ovm->vm_refcnt != 1 and switches curproc
to a new pmap.  If this happened, then execve froze by trying to
copyout to the wrong pmap; curpcb->pcb_pm was old.  Fix by setting
pointers when uvmspace_exec calls pmap_activate.

ok miod@

20 months agosync
deraadt [Tue, 21 Feb 2023 04:08:50 +0000 (04:08 +0000)]
sync

20 months agoRemove conflict markers from perl tests
afresh1 [Tue, 21 Feb 2023 02:20:35 +0000 (02:20 +0000)]
Remove conflict markers from perl tests

This is upstream PR 28103 https://github.com/Perl/perl5/pull/20813

Requested by stsp@ for quality of life improvments for Game of Trees users.

20 months agocorrect parameter type
deraadt [Tue, 21 Feb 2023 02:13:27 +0000 (02:13 +0000)]
correct parameter type

20 months agoDon't install DebugWrap.1 manpage
afresh1 [Tue, 21 Feb 2023 02:11:03 +0000 (02:11 +0000)]
Don't install DebugWrap.1 manpage

It's from a test file and should never have been installed.

Noticed by xse in #openbsd on libera.chat

20 months agosndiod(8) is the audio daemon now; from david demelier
jmc [Mon, 20 Feb 2023 16:08:37 +0000 (16:08 +0000)]
sndiod(8) is the audio daemon now; from david demelier

20 months agoRework/modernize verbiage in the "AUTOMATIC DISK ALLOCATION" and
krw [Mon, 20 Feb 2023 14:16:59 +0000 (14:16 +0000)]
Rework/modernize verbiage in the "AUTOMATIC DISK ALLOCATION" and
"EXAMPLES" sections. Build tables with 'Bd -column' instead of
tabs inside 'Bl -literal'.  Columns now line up (more or less) in
text, .pdf and .html versions.

Prompted by kn@, feedback & suggestions from jmc@ and schwarze@.

20 months agoRewrite the ROM walk logic to correctly iterate over non-STI ROMs (and skip
miod [Mon, 20 Feb 2023 11:31:16 +0000 (11:31 +0000)]
Rewrite the ROM walk logic to correctly iterate over non-STI ROMs (and skip
them), such as x86 bios ROMs.

20 months agoWrap all printf calls in sti_check_rom() in order to automagically cope with
miod [Mon, 20 Feb 2023 09:08:47 +0000 (09:08 +0000)]
Wrap all printf calls in sti_check_rom() in order to automagically cope with
ROM enable/disable; makes addition of debug code more fool-proof. NFC (yet)

20 months agoDisable strict bourne shell mode to get ksh behaviour in (S)hell
kn [Mon, 20 Feb 2023 01:55:41 +0000 (01:55 +0000)]
Disable strict bourne shell mode to get ksh behaviour in (S)hell

Enable features like arithmatic expression and thus make the debug aid
`FUNCS_ONLY=1 . /install.sub' work in those prompts.

'!' answers spawn their own ksh process, but (S)hell drops into /.profile
sourced by /bin/sh executed by init(8), i.e. a korn shell defaulting to
strict bourne shell mode.

Shell options in this interactive parent shell do not effect install.sub
aka. /install, /autoinstall and /upgrade as it is executed in a child.

OK afresh1

20 months agoAdjust inline !libc check to match the intent in ld.so
gnezdo [Mon, 20 Feb 2023 00:51:57 +0000 (00:51 +0000)]
Adjust inline !libc check to match the intent in ld.so

right, deraadt@