openbsd
3 years agoadd stoeplitz_eaddr, for getting a hash value from an ethernet address.
dlg [Sun, 21 Feb 2021 02:37:38 +0000 (02:37 +0000)]
add stoeplitz_eaddr, for getting a hash value from an ethernet address.

3 years agoFail on invalid address family.
tobhe [Sat, 20 Feb 2021 22:00:32 +0000 (22:00 +0000)]
Fail on invalid address family.

3 years agoremove warning about amdgpu userptr ioctl being unimplemented
jsg [Sat, 20 Feb 2021 21:50:04 +0000 (21:50 +0000)]
remove warning about amdgpu userptr ioctl being unimplemented

matches radeon and i915
reported by Benjamin Baier

3 years agoEnable threads test
otto [Sat, 20 Feb 2021 19:06:38 +0000 (19:06 +0000)]
Enable threads test

3 years agoA regress test to test concurrent exception handling in threads
otto [Sat, 20 Feb 2021 19:05:28 +0000 (19:05 +0000)]
A regress test to test concurrent exception handling in threads

3 years agoMake the unwind cache tread-safe by declaring it thread_local. Solves
otto [Sat, 20 Feb 2021 19:03:28 +0000 (19:03 +0000)]
Make the unwind cache tread-safe by declaring it thread_local. Solves
segfaults seen on exception handling.  ok kettenis@

3 years agotick_msg("lease", TICK_SUCCESS) in bind_lease() should *not* be
krw [Sat, 20 Feb 2021 14:56:59 +0000 (14:56 +0000)]
tick_msg("lease", TICK_SUCCESS) in bind_lease() should *not* be
invoked when log_getverbose() returns 0.

3 years agoFix disestablishing of PCI interrupt handlers.
visa [Sat, 20 Feb 2021 14:42:51 +0000 (14:42 +0000)]
Fix disestablishing of PCI interrupt handlers.

3 years agougly whitespace
tb [Sat, 20 Feb 2021 14:16:56 +0000 (14:16 +0000)]
ugly whitespace

3 years agoRename f_err into fatal_err.
tb [Sat, 20 Feb 2021 14:14:16 +0000 (14:14 +0000)]
Rename f_err into fatal_err.

discussed with jsing

3 years agoRename the truncated label into decode_err. This describes its purpose
tb [Sat, 20 Feb 2021 14:03:50 +0000 (14:03 +0000)]
Rename the truncated label into decode_err. This describes its purpose
better and doesn't look odd if there's trailing data for exapmle.
Indent a few labels in the neighborhood while there.

ok jsing

3 years agozap unneccessary .Pp;
jmc [Sat, 20 Feb 2021 12:37:59 +0000 (12:37 +0000)]
zap unneccessary .Pp;

3 years agoRevise regress to match change in SSL{_CTX,}_get_{min,max}_proto_version().
jsing [Sat, 20 Feb 2021 09:45:14 +0000 (09:45 +0000)]
Revise regress to match change in SSL{_CTX,}_get_{min,max}_proto_version().

3 years agoReturn a min/max version of zero if set to zero.
jsing [Sat, 20 Feb 2021 09:43:29 +0000 (09:43 +0000)]
Return a min/max version of zero if set to zero.

OpenSSL's SSL{_CTX,}_get_{min,max}_proto_version() return a version of zero
if the minimum or maximum has been set to zero (which means the minimum or
maximum version supported by the method). Previously we returned the
minimum or maximum version supported by the method, instead of zero. Match
OpenSSL's behaviour by using shadow variables.

Discussed with tb@

3 years agoAdd DTLSv1.2 methods.
jsing [Sat, 20 Feb 2021 08:33:17 +0000 (08:33 +0000)]
Add DTLSv1.2 methods.

These are currently guarded by LIBRESSL_HAS_DTLS1_2 and LIBRESSL_INTERNAL.

ok tb@

3 years agoHandle DTLS1_2_VERSION in various places.
jsing [Sat, 20 Feb 2021 08:30:52 +0000 (08:30 +0000)]
Handle DTLS1_2_VERSION in various places.

ok tb@

3 years agoRevise HelloVerifyRequest handling for DTLSv1.2.
jsing [Sat, 20 Feb 2021 08:22:55 +0000 (08:22 +0000)]
Revise HelloVerifyRequest handling for DTLSv1.2.

Per RFC 6347 section 4.2.1, the HelloVerifyRequest should always contain
DTLSv1.0 - ensure this is the case on the server side, allow both DTLSv1.0
and DTLSv1.2 on the client.

ok tb@

3 years agoGroup HelloVerifyRequest decoding and add missing check for trailing data.
jsing [Sat, 20 Feb 2021 08:19:01 +0000 (08:19 +0000)]
Group HelloVerifyRequest decoding and add missing check for trailing data.

ok tb@

3 years agoAdd various public DTLS related defines.
jsing [Sat, 20 Feb 2021 08:11:57 +0000 (08:11 +0000)]
Add various public DTLS related defines.

These are currently guarded by LIBRESSL_HAS_DTLS1_2 and LIBRESSL_INTERNAL.

ok tb@

3 years agoClean up/simplify dtls1_get_cipher().
jsing [Sat, 20 Feb 2021 07:29:07 +0000 (07:29 +0000)]
Clean up/simplify dtls1_get_cipher().

ok tb@

3 years agomove from calling l3 protocol input handlers to using if_vinput.
dlg [Sat, 20 Feb 2021 05:03:37 +0000 (05:03 +0000)]
move from calling l3 protocol input handlers to using if_vinput.

if_vinput requires mpsafe interface counters, so add those in. this
factors out some more code between drivers. monitor mode will work
on these interfaces now too.

3 years agomove gre and mgre from calling l3 input handlers to using if_vinput.
dlg [Sat, 20 Feb 2021 05:01:33 +0000 (05:01 +0000)]
move gre and mgre from calling l3 input handlers to using if_vinput.

using if_vinput factors out a lot of repeated code between tunnel
drivers, and it means monitor mode works on gre and mgre now too.

make the l2 gre interfaces do some things in the same order while
here.

3 years agomove gif from calling l3 protocol input handlers to using if_vinput.
dlg [Sat, 20 Feb 2021 04:58:29 +0000 (04:58 +0000)]
move gif from calling l3 protocol input handlers to using if_vinput.

if_vinput requires mpsafe interface counters, so gif is a bit more
mpsafe now than it was before. using if_vinput means monitor mode
works on gif now too.

3 years agoadd p2p_input, like ether_input but for l3 tunnel interfaces.
dlg [Sat, 20 Feb 2021 04:55:52 +0000 (04:55 +0000)]
add p2p_input, like ether_input but for l3 tunnel interfaces.

the l3 protocol input to push the packet is based on a value in
m->m_pkthdr.ph_family, which tunnel drivers should set before calling
if_vinput.

add p2p_bpf_mtap to call bpf_mtap_af also using m->m_pkthdr.ph_family.

3 years agolet tun use bpf_mtap for handling input packets.
dlg [Sat, 20 Feb 2021 04:39:16 +0000 (04:39 +0000)]
let tun use bpf_mtap for handling input packets.

tun (not tap) input packets are written from userland in the same
format that it's bpf dlt is expecting, so we can push the packet
straight into bpf with bpf_mtap. this is more correct that using
bpf_mtap_ether for tun.

3 years agodefault interfaces to bpf_mtap_ether for their if_bpf_mtap handler.
dlg [Sat, 20 Feb 2021 04:37:26 +0000 (04:37 +0000)]
default interfaces to bpf_mtap_ether for their if_bpf_mtap handler.

call (*ifp->if_bpf_mtap) instead of bpf_mtap_ether in ifiq_input
and if_vinput.

3 years agogive interfaces an if_bpf_mtap handler.
dlg [Sat, 20 Feb 2021 04:35:41 +0000 (04:35 +0000)]
give interfaces an if_bpf_mtap handler.

the network stack is now responsible for calling bpf for packets
that the interface receives, and we so far got away with using
bpf_mtap_ether for everything. this doesn't work if layer 3 input
goes through the same functions, so letting drivers specify the
appropriate bpf mtap function means they will be able to cope.

3 years agosync
sthen [Sat, 20 Feb 2021 02:21:52 +0000 (02:21 +0000)]
sync

3 years agoRecommit upstream alignment fix plus libperl version bump
afresh1 [Sat, 20 Feb 2021 01:50:55 +0000 (01:50 +0000)]
Recommit upstream alignment fix plus libperl version bump

This reapplies commit e0lLUzj1XNW7pJMh and moves libperl to 21.0
The ABI change appears to be fine after XS modules are rebuilt.

OK sthen@

3 years agodocument the monitor flag.
dlg [Sat, 20 Feb 2021 01:21:04 +0000 (01:21 +0000)]
document the monitor flag.

reminded by benno@

3 years agoadd support for handling the interface monitor flag
dlg [Sat, 20 Feb 2021 01:17:45 +0000 (01:17 +0000)]
add support for handling the interface monitor flag

ok benno@

3 years agoadd a MONITOR flag to ifaces to say they're only used for watching packets.
dlg [Sat, 20 Feb 2021 01:11:43 +0000 (01:11 +0000)]
add a MONITOR flag to ifaces to say they're only used for watching packets.

an example use of this is when you have a span port on a switch and
you want to be able to see the packets coming out of it with tcpdump,
but do not want these packets to enter the network stack for
processing. this is particularly important if the span port is
pushing a copy of any packets related to the machine doing the
monitoring as it will confuse pf states and the stack.

ok benno@

3 years agoFail on duplicate nonce payload.
tobhe [Fri, 19 Feb 2021 21:52:53 +0000 (21:52 +0000)]
Fail on duplicate nonce payload.

ok patrick@

3 years agoAdd 't' to options in man page. ok jmc@ kn@
lum [Fri, 19 Feb 2021 19:59:36 +0000 (19:59 +0000)]
Add 't' to options in man page. ok jmc@ kn@

3 years agoAppend .html suffix to temporary files enabling browsers to recognise it
kn [Fri, 19 Feb 2021 19:49:49 +0000 (19:49 +0000)]
Append .html suffix to temporary files enabling browsers to recognise it

Occasionally one might read a manual page in a webbrowser, e.g.
"MANPAGER=firefox man -T html jq", however temporary files created for
pagers lack file extensions and most web browsers are unable to detect a
file's content without it.

Special case mandoc(1)'s HTML output format by appending the ".html" suffix
to file names such that browsers will actually render HTML as such instead
of showing it as plain text.

Input schwarze

3 years agoPut duplicated code calculating backoff interval and packet 'secs'
krw [Fri, 19 Feb 2021 13:46:59 +0000 (13:46 +0000)]
Put duplicated code calculating backoff interval and packet 'secs'
into new set_interval()/set_secs() functions. send_request() and
send_discover() become much easier to understand.

No intentional functional change.

3 years agoMissed poll -> ppoll in log_warn() verbiage.
krw [Fri, 19 Feb 2021 13:33:37 +0000 (13:33 +0000)]
Missed poll -> ppoll in log_warn() verbiage.

3 years agoConvert reallocarray + memset to recallocarray.
tb [Fri, 19 Feb 2021 12:18:23 +0000 (12:18 +0000)]
Convert reallocarray + memset to recallocarray.

ok claudio

3 years agoAdd the same ASCII check to the URI in TAL files as we do for URI in .cer files
claudio [Fri, 19 Feb 2021 10:23:50 +0000 (10:23 +0000)]
Add the same ASCII check to the URI in TAL files as we do for URI in .cer files
OK tb@

3 years agoCheck return value of chdir() to stop a silly warning with some
nicm [Fri, 19 Feb 2021 09:09:16 +0000 (09:09 +0000)]
Check return value of chdir() to stop a silly warning with some
compilers, GitHub issue 2573.

3 years agoMove the mkpath() call from the rsync path to the main process. This allows
claudio [Fri, 19 Feb 2021 08:14:49 +0000 (08:14 +0000)]
Move the mkpath() call from the rsync path to the main process. This allows
to drop cpath from the rsync proc pledge (down to "stdio proc exec").
This will also make work easier with the upcoming http fetcher.
OK tb@

3 years agoAdd an EXAMPLES section
solene [Fri, 19 Feb 2021 07:56:56 +0000 (07:56 +0000)]
Add an EXAMPLES section

rewording by jmc@
ok jmc@

3 years agowe dont need to wrap some short lines.
dlg [Fri, 19 Feb 2021 06:14:07 +0000 (06:14 +0000)]
we dont need to wrap some short lines.

3 years agocheck the state for PF_ROUTE when undeferring a packet, not the rule.
dlg [Fri, 19 Feb 2021 06:12:44 +0000 (06:12 +0000)]
check the state for PF_ROUTE when undeferring a packet, not the rule.

3 years agoSave one allocation by passing msg_nonce ownership instead of using
tobhe [Thu, 18 Feb 2021 22:00:31 +0000 (22:00 +0000)]
Save one allocation by passing msg_nonce ownership instead of using
ibuf_dup().

ok patrick@

3 years agoRemove redundant ibuf_release. msg_ke is always NULL because of the
tobhe [Thu, 18 Feb 2021 21:39:36 +0000 (21:39 +0000)]
Remove redundant ibuf_release. msg_ke is always NULL because of the
duplicate check above.

3 years agoPass ownership instead of duplicating ibuf msg_ke.
tobhe [Thu, 18 Feb 2021 21:30:52 +0000 (21:30 +0000)]
Pass ownership instead of duplicating ibuf msg_ke.

ok patrick@

3 years agoPull in fix for EVP_CipherUpdate() overflow from OpenSSL.
tb [Thu, 18 Feb 2021 19:12:29 +0000 (19:12 +0000)]
Pull in fix for EVP_CipherUpdate() overflow from OpenSSL.

ok inoguchi

commit 6a51b9e1d0cf0bf8515f7201b68fb0a3482b3dc1
Author: Matt Caswell <matt@openssl.org>
Date:   Tue Feb 2 17:17:23 2021 +0000

    Don't overflow the output length in EVP_CipherUpdate calls

    CVE-2021-23840

Reviewed-by: Paul Dale <pauli@openssl.org>
3 years agoMake kernel ld.script similar to octeon's on loongson and sgi.
visa [Thu, 18 Feb 2021 16:27:07 +0000 (16:27 +0000)]
Make kernel ld.script similar to octeon's on loongson and sgi.

3 years agoUse X509_get_ext_d2i() also for x509_get_aki() and x509_get_ski().
claudio [Thu, 18 Feb 2021 16:23:17 +0000 (16:23 +0000)]
Use X509_get_ext_d2i() also for x509_get_aki() and x509_get_ski().
Now x509_get_extensions() is no longer required to loop over all
extensions and the code becomes a lot simpler.
While there cleanup x509_get_crl(), as explained by tb@ X509_get_ext_d2i()
allocates memory so one needs to free the pointer at the end.
For x509_crl_get_aki() use X509_CRL_get_ext_d2i() and more or less
copy the rest over from x509_get_aki().
Warn if extensions are missing or present when not expected and also
check the the extensions are marked non-critical as required.
OK job@ tb@

3 years agoMention that U-Boot serial speed should be 115200.
visa [Thu, 18 Feb 2021 16:18:04 +0000 (16:18 +0000)]
Mention that U-Boot serial speed should be 115200.

Initial diff from Janne Johansson

3 years agoReduce len when moving past spaces in OSC 11 parameter.
nicm [Thu, 18 Feb 2021 13:30:24 +0000 (13:30 +0000)]
Reduce len when moving past spaces in OSC 11 parameter.

3 years agoRelease mbuf(9) chain with a simple m_freem(9) loop in sorflush().
mvs [Thu, 18 Feb 2021 11:40:19 +0000 (11:40 +0000)]
Release mbuf(9) chain with a simple m_freem(9) loop in sorflush().
Passing local copy of socket to sbrelease() is too complicated to just
free receive buffer. We don't allocate large object on the stack. Also
we don't pass unlocked socket to soassertlocked() within sbdrop(). This
was not triggered because we lock the whole layer with one lock.

Also sorflush() is now private to kern/uipc_socket.c, so it's definition
was made to be in accordance.

ok claudio@ mpi@

3 years agoAll the code for output handling was moved to output.c some time ago.
claudio [Thu, 18 Feb 2021 10:10:20 +0000 (10:10 +0000)]
All the code for output handling was moved to output.c some time ago.
Also move the license that came along with it to output.c.

3 years agoOnly pick up files matching alphanumeric and underscore characters under
ajacoutot [Thu, 18 Feb 2021 06:17:35 +0000 (06:17 +0000)]
Only pick up files matching alphanumeric and underscore characters under
/etc/rc.d. This prevents issues with editor backup files (foo~) or other bogus
files.

ok sthen@

3 years agoFix the hostkeys rotation extension documentation
djm [Thu, 18 Feb 2021 02:49:35 +0000 (02:49 +0000)]
Fix the hostkeys rotation extension documentation

The documentation was lacking the needed want-reply field in the initial
global request.

https://github.com/openssh/openssh-portable/pull/218 by dbussink

3 years agoadd rpki-rtr port 323; ok job
deraadt [Thu, 18 Feb 2021 02:30:29 +0000 (02:30 +0000)]
add rpki-rtr port 323; ok job

3 years agomake names in function prototypes match those in definition
djm [Thu, 18 Feb 2021 02:15:07 +0000 (02:15 +0000)]
make names in function prototypes match those in definition
from https://github.com/openssh/openssh-portable/pull/225
by ZenithalHourlyRate

3 years agounbreak SK_DEBUG builds
djm [Thu, 18 Feb 2021 02:13:58 +0000 (02:13 +0000)]
unbreak SK_DEBUG builds

from https://github.com/openssh/openssh-portable/pull/225 by
ZenithalHourlyRate

3 years agomark test-inlabel-wildcard-cert-no-CA-client as an expected failure
tb [Thu, 18 Feb 2021 00:34:14 +0000 (00:34 +0000)]
mark test-inlabel-wildcard-cert-no-CA-client as an expected failure

3 years agosftp-server: implement limits@openssh.com extension
djm [Thu, 18 Feb 2021 00:30:17 +0000 (00:30 +0000)]
sftp-server: implement limits@openssh.com extension

This is a simple extension that allows the server to clearly
communicate transfer limits it is imposing so the client doesn't
have to guess, or force the user to manually tune.  This is
particularly useful when an attempt to use too large of a value
causes the server to abort the connection.

Patch from Mike Frysinger; ok dtucker@

3 years agohandle "simple-pm-bus" in simplebus
jsg [Thu, 18 Feb 2021 00:04:13 +0000 (00:04 +0000)]
handle "simple-pm-bus" in simplebus

Enables a clock and/or power domain for a group of devices.
Required to use linux 5.11 dtbs on am335x and omap4.

ok kettenis@

3 years agoUnify unit initialization.
mglocker [Wed, 17 Feb 2021 17:21:58 +0000 (17:21 +0000)]
Unify unit initialization.

3 years agoIf the device driver open call fails, don't set sc_open since in that case
mglocker [Wed, 17 Feb 2021 17:09:12 +0000 (17:09 +0000)]
If the device driver open call fails, don't set sc_open since in that case
we don't get a file handle back which could be closed again, and therefore
we couldn't toggle sc_open back to zero.

Spotted and ok anton@

3 years agoSkip gp initialization in loongson bootblocks
visa [Wed, 17 Feb 2021 14:42:20 +0000 (14:42 +0000)]
Skip gp initialization in loongson bootblocks

The loongson bootblocks are compiled with -mno-abicalls and do not use
gp-relative addressing.

A similar change has been made to the mips64 kernels recently.

3 years agoDo not reprogram address filter after MII status change
visa [Wed, 17 Feb 2021 14:12:29 +0000 (14:12 +0000)]
Do not reprogram address filter after MII status change

The address filter is not affected by link parameter changes,
so its reprogramming can be skipped.

3 years agoAdd support for FIQs. We need these to support agtimer(4) on Apple M1 SoCs
kettenis [Wed, 17 Feb 2021 12:11:44 +0000 (12:11 +0000)]
Add support for FIQs.  We need these to support agtimer(4) on Apple M1 SoCs
since its interrupts seem to be hardwared to trigger an FIQ instead of an
IRQ.  This means we need to manipulate both the F and the I bit in the
DAIF register when enabling and disabling interrupts.

ok patrick@

3 years agoCall 'struct process' parameters 'pr' to distinguish from 'struct proc'
mglocker [Wed, 17 Feb 2021 08:51:40 +0000 (08:51 +0000)]
Call 'struct process' parameters 'pr' to distinguish from 'struct proc'
parameters which are usually called 'p'.

Spotted and ok anton@

3 years agoMove the call to setupterm() into the client and have it pass the
nicm [Wed, 17 Feb 2021 07:18:36 +0000 (07:18 +0000)]
Move the call to setupterm() into the client and have it pass the
results to the server over imsg, means the server does not need to enter
ncurses or read terminfo db. Old clients will not work with a new
server.

3 years agoCollect return code of video_stop() for ioctls calls.
mglocker [Wed, 17 Feb 2021 07:08:15 +0000 (07:08 +0000)]
Collect return code of video_stop() for ioctls calls.

Spotted and ok anton@

3 years agoMake sure puttygen is new enough to successfully run the PuTTY interop
dtucker [Wed, 17 Feb 2021 03:59:00 +0000 (03:59 +0000)]
Make sure puttygen is new enough to successfully run the PuTTY interop
tests, otherwise skip them.

3 years agoAdd support for the UART found on the Apple M1 SoC.
kettenis [Tue, 16 Feb 2021 21:58:14 +0000 (21:58 +0000)]
Add support for the UART found on the Apple M1 SoC.

ok patrick@

3 years agoAdd x509 certificate validation regression tests
jan [Tue, 16 Feb 2021 21:39:17 +0000 (21:39 +0000)]
Add x509 certificate validation regression tests

The validation tests are originaly createtd by Steffen Ullrich.

OK tb@
No objection jsing@

3 years agoFail on duplicate KE payload.
tobhe [Tue, 16 Feb 2021 21:07:43 +0000 (21:07 +0000)]
Fail on duplicate KE payload.

ok patrick@

3 years agoIntroduce debug levels since the current debug output is too noisy by
mglocker [Tue, 16 Feb 2021 19:36:03 +0000 (19:36 +0000)]
Introduce debug levels since the current debug output is too noisy by
default.

3 years agoPoll battery sensors less frequently. The previous period was quite
anton [Tue, 16 Feb 2021 18:36:43 +0000 (18:36 +0000)]
Poll battery sensors less frequently. The previous period was quite
arbitrary and inspired by other USB drivers.

3 years agoTrim uhidpp_device_features() by extracting two pure protocol functions.
anton [Tue, 16 Feb 2021 18:35:26 +0000 (18:35 +0000)]
Trim uhidpp_device_features() by extracting two pure protocol functions.

3 years agoPrevent double free by copying the URI string from struct tal to the repo.
claudio [Tue, 16 Feb 2021 16:50:41 +0000 (16:50 +0000)]
Prevent double free by copying the URI string from struct tal to the repo.

3 years agomake use of getline(3) in ftp(1)
naddy [Tue, 16 Feb 2021 16:27:34 +0000 (16:27 +0000)]
make use of getline(3) in ftp(1)

Replace fparseln(3) with getline(3).  This removes the only use of
libutil.a(fparseln.o) from the ramdisk.
Replace a complicated fgetln(3) idiom with the much simpler getline(3).

ok jca@

3 years agoRevery previous hash alignment fix
afresh1 [Tue, 16 Feb 2021 15:13:15 +0000 (15:13 +0000)]
Revery previous hash alignment fix

Unintentionally changes ABI and breaks perl ports

3 years agosync
deraadt [Tue, 16 Feb 2021 14:21:53 +0000 (14:21 +0000)]
sync

3 years agoEnable multiple opens of a video(4) device as described in the V4L2
mglocker [Tue, 16 Feb 2021 13:50:46 +0000 (13:50 +0000)]
Enable multiple opens of a video(4) device as described in the V4L2
specification:

https://www.kernel.org/doc/html/v5.10/userspace-api/media/v4l/open.html#f1

The discussion has been started by jca@, who has implemented this
behavior recently, but limited to the same process.  This diff extends
this behavior to any process.  The first process which opens a stream
will become the device owner.  Other processes are still allowed to call
certain ioctls, but none which are related to the start/stop of a
stream, or manipulation of the streaming buffers.  At the moment only
VIDIOC_G_CTRL and VIDIOC_S_CTRL are supported to be called by non-
device owner processes, which should be extended further in the future.

There is no additional kernel locking implemented at the moment, since
video(4) already runs under the KERNEL_LOCK(), which we expect to be
sufficient for now (as discussed with claudio@).

A lot of improvement input received from anton@.

ok anton@

3 years agoIntroduce BUS_SPACE_MAP_POSTED such that we can distinguish between
kettenis [Tue, 16 Feb 2021 12:33:22 +0000 (12:33 +0000)]
Introduce BUS_SPACE_MAP_POSTED such that we can distinguish between
posted and non-posted device memory mappings and set the right memory
attributes for them.  Needed because on the Apple M1 using the wrong
mapping will fault.

ok patrick@, dlg@

3 years agoComments & style cleanup, no functional change intended.
mpi [Tue, 16 Feb 2021 09:10:17 +0000 (09:10 +0000)]
Comments & style cleanup, no functional change intended.

- Sync comments with NetBSD including locking details.
- Remove superfluous parenthesis and spaces.
- Add brackets, even if questionable, to reduce diff with NetBSD
- Use for (;;) instead of while(1)
- Rename a variable from 'result' into 'error'.
- Move uvm_fault() and uvm_fault_upper_lookup()
- Add an locking assert in uvm_fault_upper_lookup()

ok tb@, mlarkin@

3 years agoPrint AIA in rpki-client test utility
job [Tue, 16 Feb 2021 08:53:53 +0000 (08:53 +0000)]
Print AIA in rpki-client test utility

3 years agoRework the repository handling. Split the handling of trust anchors into
claudio [Tue, 16 Feb 2021 08:52:00 +0000 (08:52 +0000)]
Rework the repository handling. Split the handling of trust anchors into
ta_lookup() while regular repositories (to fetch .mft files) are handled
by repo_lookup(). Also the cache directory layout changed; moving the
trust anchors to ./ta/{tal basename}/ the other repositories end up in
./rsync/
OK tb@

3 years agoAdd `bgpctl show rtr` to display basic information about RTR sessions.
claudio [Tue, 16 Feb 2021 08:30:21 +0000 (08:30 +0000)]
Add `bgpctl show rtr` to display basic information about RTR sessions.
OK job@

3 years agoAdd RTR support to OpenBGPD. Add basic support for the protocol.
claudio [Tue, 16 Feb 2021 08:29:16 +0000 (08:29 +0000)]
Add RTR support to OpenBGPD. Add basic support for the protocol.
The RTR client runs in a new process where the protocol handling is done
and when new data is available all sources are merged into one ROA set
which is then loaded into the RDE. The roa-set from the config is also
handled by the new RTR engine.
Tested by and ok job@

3 years agoget Authority Information Access (AIA) from CA & EE certs
job [Tue, 16 Feb 2021 07:58:30 +0000 (07:58 +0000)]
get Authority Information Access (AIA) from CA & EE certs

In the context of the RPKI, the AIA extension identifies the publication
point of the certificate of the issuer of the certificate in which the
extension appears. A single reference to the publication point of the
immediate superior certificate MUST be present, except for a
"self-signed" certificate.

Thanks tb@ for review

OK claudio@

3 years agouse rtalloc_mpath in pf_route and pf_route6.
dlg [Tue, 16 Feb 2021 03:12:32 +0000 (03:12 +0000)]
use rtalloc_mpath in pf_route and pf_route6.

if you have multiple links to the same destination, this will let
you use them with route-to/reply-to/dup-to.

ok claudio@

3 years agoBackport upstream perl 64bit hash alignment fixes
afresh1 [Tue, 16 Feb 2021 02:12:52 +0000 (02:12 +0000)]
Backport upstream perl 64bit hash alignment fixes

Different flags triggering new compiler optimizations means that
luck has run out on this working by chance with the strict alignment
of octeon.

Upstream issue:
https://github.com/Perl/perl5/issues/18555

This is a combination of three commits from upstream.
https://github.com/Perl/perl5/commit/d18575f18c6ee61ce80492e82cae7361358d570a
https://github.com/Perl/perl5/commit/6027b190154088fbbcbde08a80c49531e4e4c012
https://github.com/Perl/perl5/commit/f43079cb514e3d0be0036424695438ae3fb58451

works on all arch deraadt@

3 years agosome phy are not needed anymore since the ethernet drivers went away
deraadt [Tue, 16 Feb 2021 00:03:54 +0000 (00:03 +0000)]
some phy are not needed anymore since the ethernet drivers went away

3 years agoFix invalid config error in run-psk-fail.
tobhe [Mon, 15 Feb 2021 20:53:24 +0000 (20:53 +0000)]
Fix invalid config error in run-psk-fail.

3 years agoWhile it should be possible to use "normal uncachable" mappings for
kettenis [Mon, 15 Feb 2021 20:44:08 +0000 (20:44 +0000)]
While it should be possible to use "normal uncachable" mappings for
write-combining on arm64 as Linux does, this doesn't seem to work on
NXP's LX2160A SoC.  So switch to using "device" mappings for now to
make amdgpu(4) work better.

ok patrick@

3 years agossh: add PermitRemoteOpen for remote dynamic forwarding with SOCKS
markus [Mon, 15 Feb 2021 20:43:15 +0000 (20:43 +0000)]
ssh: add PermitRemoteOpen for remote dynamic forwarding with SOCKS
ok djm@, dtucker@

3 years agofactor out opt_array_append; ok djm@
markus [Mon, 15 Feb 2021 20:36:35 +0000 (20:36 +0000)]
factor out opt_array_append; ok djm@

3 years agoExtraneous blank line.
krw [Mon, 15 Feb 2021 19:33:21 +0000 (19:33 +0000)]
Extraneous blank line.

3 years agoSimplify error path in in route_attach(). We always call it in thread
mvs [Mon, 15 Feb 2021 19:01:30 +0000 (19:01 +0000)]
Simplify error path in in route_attach(). We always call it in thread
context so we always have `curproc' Also protocol control block is not
required for soreserve() so we can do it before `rop' allocation.

ok bluhm@

3 years agoOnly print the certificate file once on verifification failure.
jsing [Mon, 15 Feb 2021 17:57:58 +0000 (17:57 +0000)]
Only print the certificate file once on verifification failure.

Noted by Steffen Ullrich.

ok tb@

3 years agoMake SGR 6 (rapid blink) the same as SGR 5 (blink) and make SGR 21 to
nicm [Mon, 15 Feb 2021 14:22:35 +0000 (14:22 +0000)]
Make SGR 6 (rapid blink) the same as SGR 5 (blink) and make SGR 21 to
the same as SGR 4:2, it is an old alternative. GitHub issue 2567.