martijn [Tue, 13 Sep 2022 10:22:07 +0000 (10:22 +0000)]
varbind was designed to allow both a ber NULL and a NULL pointer for
value. The ber NULL case is there for when it was received via a PDU.
The NULL pointer case can happen if application.c runs into a timeout
or when a backend runs into problems.
The NULL pointer case however was overlooked in appl_varbind_valid and
results in an "missing value" error, (needlessly) terminating the
connection to the backend.
Found the hard way by Mischa Peters while stress testing agentx support
for vmd.
OK tb@, sthen@
martijn [Tue, 13 Sep 2022 10:20:22 +0000 (10:20 +0000)]
When a connection is reset while we still have an outstanding request,
the connection from the request to the rest of the structure is removed,
so we don't send any old data over the new connection.
However, the old code dereferences axc at a couple of places before
we check it for NULL.
Found the hard way by Mischa Peters while stress testing agentx support
for vmd.
OK tb@, sthen@
robert [Tue, 13 Sep 2022 09:57:09 +0000 (09:57 +0000)]
support more than one input file in llvm-ranlib by backporting
commit
aa173573198e024b065c5f6523ce26bb865781b7 from upstream
ok kettenis@
mvs [Tue, 13 Sep 2022 09:05:47 +0000 (09:05 +0000)]
Change pru_rcvd() return type to the type of void. We have no interest
on pru_rcvd() return value.
Drop "pru_rcvd != NULL" check within pru_rcvd() wrapper. We only call it
if the socket's protocol have PR_WANTRCVD flag set. Such sockets are
route domain, tcp(4) and unix(4) sockets.
ok guenther@ bluhm@
mvs [Tue, 13 Sep 2022 09:05:02 +0000 (09:05 +0000)]
Do soreceive() with shared netlock for raw sockets.
ok bluhm@
jmc [Tue, 13 Sep 2022 06:20:38 +0000 (06:20 +0000)]
document "configtest" in SYNOPSIS; from andrei
while here, sort SYNOPSIS at the behest of ajacoutot;
ok ajacoutot
jmc [Tue, 13 Sep 2022 05:49:23 +0000 (05:49 +0000)]
fix Xr;
jmc [Tue, 13 Sep 2022 05:48:54 +0000 (05:48 +0000)]
add missing quote;
jmc [Tue, 13 Sep 2022 05:46:00 +0000 (05:46 +0000)]
add arch to Dt;
jsing [Tue, 13 Sep 2022 04:59:18 +0000 (04:59 +0000)]
Stop pretending that EVP_CIPHER cleanup can fail.
Now that EVP_CIPHER is opaque, stop pretending that EVP_CIPHER cleanup can
fail.
ok tb@
jsg [Tue, 13 Sep 2022 01:38:31 +0000 (01:38 +0000)]
SIOCDIFPARENT removes configuration not SIOCGIFPARENT
spotted by kn@
kettenis [Mon, 12 Sep 2022 20:31:53 +0000 (20:31 +0000)]
Enable acpiac(4) and acpibat(4).
ok deraadt@
miod [Mon, 12 Sep 2022 19:35:20 +0000 (19:35 +0000)]
Store mod/ref flags using md pg_flags values rather than a specific field in
vm_page_md, which allows this struct to shrink a bit.
miod [Mon, 12 Sep 2022 19:33:34 +0000 (19:33 +0000)]
Store mod/ref flags using md pg_flags values rather than a specific field in
vm_page_md, which allows this struct to shrink a bit.
miod [Mon, 12 Sep 2022 19:28:19 +0000 (19:28 +0000)]
Drop orphaned pv_flags values.
kettenis [Mon, 12 Sep 2022 17:42:31 +0000 (17:42 +0000)]
Add support for level-triggered GPIO events.
ok mlarkin@
kettenis [Mon, 12 Sep 2022 17:30:32 +0000 (17:30 +0000)]
sxirintc(4)
kettenis [Mon, 12 Sep 2022 15:59:16 +0000 (15:59 +0000)]
qcgpio(4) and qciic(4)
kettenis [Mon, 12 Sep 2022 15:49:36 +0000 (15:49 +0000)]
qcgpio(4) and qciic(4)
tb [Mon, 12 Sep 2022 14:36:09 +0000 (14:36 +0000)]
zap extra .Pp
tb [Mon, 12 Sep 2022 14:33:47 +0000 (14:33 +0000)]
Stop documenting i2c_ASN1_INTEGER.
This is no longer public API. Also remove some comments about i2c and c2i
functions being intentionally undocumented since they are no longer public.
jsg [Mon, 12 Sep 2022 14:18:17 +0000 (14:18 +0000)]
disable Panel Self Refresh (PSR) by default in inteldrm
After i915_drv.c 1.144 PSR changed to being on by default.
On a TUXEDO InfinityBook Pro 14 Gen6 (Tiger Lake) this introduced screen
flicker. Reported and tested by Matthias Schmidt.
Should also avoid flicker problem on Dell XPS 13 7390 (Comet Lake)
reported by James Cook.
tb [Mon, 12 Sep 2022 13:11:36 +0000 (13:11 +0000)]
Add CBC, CFB64 and OFB64 test coverage for RC2
From Joshua Sing
kn [Mon, 12 Sep 2022 13:10:03 +0000 (13:10 +0000)]
Hook up installboot(8) tests on all covered archs
Those that still fail (softraid+keydisk or explicit-stage-files) have fixes on tech@.
tb [Mon, 12 Sep 2022 13:09:01 +0000 (13:09 +0000)]
whitespace nits
claudio [Mon, 12 Sep 2022 12:04:55 +0000 (12:04 +0000)]
Bump version for upcoming -portable release
nicm [Mon, 12 Sep 2022 12:02:17 +0000 (12:02 +0000)]
Don't use options from pane if pane is NULL.
cheloha [Mon, 12 Sep 2022 10:58:05 +0000 (10:58 +0000)]
acpihpet(4): acpihpet_delay: only use lower 32 bits of counter
We can't use acpihpet_r() to implement acpihpet_delay(). Even if we
made acpihpet_r() atomic on amd64, i386 would still be incapable of
doing atomic 8-byte reads. As-is, the code does a split read on all
platforms, which may or may not already be causing problems with TSC
calibration:
https://marc.info/?l=openbsd-tech&m=
166220561709496&w=2
Switch from acpihpet_r() to bus_space_read_4() and only use the lower
32 bits of the counter. This makes acpihpet_delay() slightly larger,
but unless we want two acpihpet_delay() implementations we have no
choice.
Link: https://marc.info/?l=openbsd-tech&m=166165347220077&w=2
ok jsg@
jsg [Mon, 12 Sep 2022 10:16:09 +0000 (10:16 +0000)]
spelling
claudio [Mon, 12 Sep 2022 10:03:17 +0000 (10:03 +0000)]
Introduce tree walkers that only walk a subtree of the RIB.
In some cases only a "small" part of the RIB needs to be looked at. Like
bgpctl show rib 10/8 or-longer that only needs to travers nodes under
10/8 all other RIB entries do not matter. By setting the start node to
the RB_NFIND(10/8) the all nodes below this point can be skipped.
Using prefix_compare() while walking the tree with RB_NEXT() the walker
know when it steps outside of the 10/8 subtree and stops.
With this the or-longer commands become a lot faster.
Looks good to tb@
jsg [Mon, 12 Sep 2022 09:18:30 +0000 (09:18 +0000)]
SIOCGIFPARENT uses struct if_parent not ireq
ok jmc@
jsg [Mon, 12 Sep 2022 09:15:29 +0000 (09:15 +0000)]
SIOCGVNETID uses struct ifreq not if_parent
ok jmc@
tb [Mon, 12 Sep 2022 04:26:38 +0000 (04:26 +0000)]
Move division by two out of sizeof()
tb [Mon, 12 Sep 2022 04:20:59 +0000 (04:20 +0000)]
Error checks for EVP_*
CID 356777
tb [Mon, 12 Sep 2022 04:12:39 +0000 (04:12 +0000)]
Move division by two out of sizeof()
CID 356778
mbuhl [Sun, 11 Sep 2022 20:51:44 +0000 (20:51 +0000)]
Add regression tests for the sendmmsg and recvmmsg system calls.
miod [Sun, 11 Sep 2022 19:34:40 +0000 (19:34 +0000)]
Remove the DKF_LABELVALID flag from struct disk. Instead, trust disk drivers
to always be able to provide a duid, and keep ignoring whole zero duids.
This fixes a race in vnd setup where the disk_attach callback could run
before any I/O occurs on the vnd, thus not having a label available yet.
noticed by otto@ and kn@; ok kn@
dv [Sun, 11 Sep 2022 19:05:44 +0000 (19:05 +0000)]
Add the new inout vmm(4) tracepoint to dt(4).
Forgot to put it in the list of static tracepoints when I committed
the tracepoint at g2k22. Woops.
jsing [Sun, 11 Sep 2022 18:13:30 +0000 (18:13 +0000)]
Enforce the minimum TLS version requirement for QUIC.
ok tb@
tb [Sun, 11 Sep 2022 18:08:17 +0000 (18:08 +0000)]
Adjust for opaque structs in ts.h
ok jsing
tb [Sun, 11 Sep 2022 18:07:46 +0000 (18:07 +0000)]
Adjust for opaque structs in pkcs12.h
ok jsing
kettenis [Sun, 11 Sep 2022 18:07:26 +0000 (18:07 +0000)]
Register the I2C controller with ACPI. Skip this on the SC8280XP SoC for
now as the AML on the Lenovo X13S tries to do I2C transactions to a device
that doesn't respond leading to the ACPI thread spinning until the
transaction times out.
ok mlarkin@, deraadt@
tb [Sun, 11 Sep 2022 17:45:14 +0000 (17:45 +0000)]
sync
tb [Sun, 11 Sep 2022 17:43:27 +0000 (17:43 +0000)]
bump major after libcrypto and libssl major bump
tb [Sun, 11 Sep 2022 17:42:55 +0000 (17:42 +0000)]
Crank major after symbol addition and libcrypto major bump
tb [Sun, 11 Sep 2022 17:42:09 +0000 (17:42 +0000)]
Update Symbols.list
ok jsing
tb [Sun, 11 Sep 2022 17:39:46 +0000 (17:39 +0000)]
Expose SSL_get_share_{group,curve}() and related #defines
ok jsing
tb [Sun, 11 Sep 2022 17:38:58 +0000 (17:38 +0000)]
Expose some error codes needed for QUIC support
ok jsing
tb [Sun, 11 Sep 2022 17:36:34 +0000 (17:36 +0000)]
Define LIBRESSL_HAS_QUIC
ok jsing
tb [Sun, 11 Sep 2022 17:34:41 +0000 (17:34 +0000)]
Bump major after symbol addition and removal and struct visibility changes
tb [Sun, 11 Sep 2022 17:32:01 +0000 (17:32 +0000)]
Update Symbols.list
ok jsing
tb [Sun, 11 Sep 2022 17:31:19 +0000 (17:31 +0000)]
Make structs in ts.h opaque
ok jsing
tb [Sun, 11 Sep 2022 17:30:13 +0000 (17:30 +0000)]
Make structs in pkcs12.h opaque
ok jsing
tb [Sun, 11 Sep 2022 17:29:24 +0000 (17:29 +0000)]
Expose EVP_chacha20_poly1305()
ok jsing
tb [Sun, 11 Sep 2022 17:28:33 +0000 (17:28 +0000)]
Expose various EVP AEAD constants for EVP ChaCha and QUIC
ok jsing
tb [Sun, 11 Sep 2022 17:26:51 +0000 (17:26 +0000)]
Expose OPENSL_cleanup()
ok jsing
tb [Sun, 11 Sep 2022 17:26:03 +0000 (17:26 +0000)]
Make BIO_info_cb() identical to bio_info_cb()
Various projects use bio_info_cb and BIO_info_cb interchangeably, for
example mupdf and freerdp. This is because this was changed in OpenSSL
commit
fce78bd4 (2017), triggered by new warnings in gcc 8.
https://github.com/openssl/openssl/pull/4493
This results in some scary compiler warnings and useless patches in ports.
Nobody seems to be using the old bio_info_cb() version.
ok jsing
tb [Sun, 11 Sep 2022 17:22:52 +0000 (17:22 +0000)]
Remove c2i_* and i2c_* from public visibility
This removes c2i_ASN1_OBJECT(), {c2i,i2c}_ASN1_BIT_STRING() and
{c2i,i2c}_ASN1_INTEGER(). These are not part of the OpenSSL 1.1
API and should never have been exposed in the first place.
ok jsing
tb [Sun, 11 Sep 2022 15:24:53 +0000 (15:24 +0000)]
link asn1object test statically in preparation for upcoming bump
krw [Sun, 11 Sep 2022 15:05:27 +0000 (15:05 +0000)]
Replace "echo 'w\ny\nq\n' | disklabel -E" with equivalent
'disklabel -dw'.
Tested & ok visa@
jsing [Sun, 11 Sep 2022 14:39:44 +0000 (14:39 +0000)]
Be stricter with middlebox compatibility mode in the TLSv1.3 server.
Only allow a TLSv1.3 client to request middlebox compatibility mode if
this is permitted. Ensure that the legacy session identifier is either
zero length or 32 bytes in length. Additionally, only allow CCS messages
on the server side if the client actually requested middlebox compatibility
mode.
ok tb@
jsing [Sun, 11 Sep 2022 14:33:07 +0000 (14:33 +0000)]
Only permit CCS messages if requesting middlebox compatibility mode.
Currently the TLSv1.3 client always permits the server to send CCS
messages. Be more strict and only permit this if the client is actually
requesitng middlebox compatibility mode.
ok tb@
deraadt [Sun, 11 Sep 2022 14:27:09 +0000 (14:27 +0000)]
drop the -beta
jsing [Sun, 11 Sep 2022 13:51:25 +0000 (13:51 +0000)]
Use CBS when procesing a CCS message in the legacy stack.
ok tb@
jsing [Sun, 11 Sep 2022 13:50:41 +0000 (13:50 +0000)]
Ensure there is no trailing data for a CCS received by the TLSv1.3 stack.
ok tb@
jmc [Sun, 11 Sep 2022 11:56:28 +0000 (11:56 +0000)]
.Li in previous didn;t make sense;
krw [Sun, 11 Sep 2022 11:47:55 +0000 (11:47 +0000)]
Add #define's for GPT partition attribute bits REQUIRED, IGNORE
and BOOTABLE, set BOOTABLE attribute bit instead of using the
incorrect GPTDOSACTIVE value, have 'fdisk -v' print out GPT
partition attributes if any of the 64 bits are set, don't spoof
any partition with REQUIRED bit set.
Prompted by kettenis@ stumbling across a machine with 40+ (!!)
REQUIRED GPT partitions.
Tested & ok kettenis@
jsg [Sun, 11 Sep 2022 11:41:04 +0000 (11:41 +0000)]
correct argument to VMM_IOC_READVMPARAMS
krw [Sun, 11 Sep 2022 11:12:39 +0000 (11:12 +0000)]
Replace "echo 'w\ny\nq\n' | disklabel -E" with equivalent
'disklabel -dw'.
Tested & ok miod@
kettenis [Sun, 11 Sep 2022 10:40:35 +0000 (10:40 +0000)]
When looking up a symble using kvm_nlist(3), we need to prepend an
underscore. This fixes acpidump on arm64. How this ever worked before
is unclear, but part of the puzzle is that we didn't properly check the
return value of the kvm_nlist(3) calls. So fix that too.
ok deraadt@, mglocker@
kettenis [Sun, 11 Sep 2022 10:37:54 +0000 (10:37 +0000)]
Add wsmux(4) such that systems with multiple keyboards work in bsd.rd.
ok deraadt@, mpi@
patrick [Sun, 11 Sep 2022 10:28:56 +0000 (10:28 +0000)]
On smmu(4) instances without coherent page table walk we need to make sure
changes to the page tables are made visible, as needed on the Lenovo x13s.
patrick [Sun, 11 Sep 2022 10:18:54 +0000 (10:18 +0000)]
Make an attempt at taking over existing streams on Qualcomm machines. Some
of the stream mappings on the Lenovo x13s match on a single stream id, and
others use a mask to match on multiple stream ids. For now we only care
about the single ones, which is enough to capture e.g. the xhci(4) nodes.
schwarze [Sun, 11 Sep 2022 09:58:06 +0000 (09:58 +0000)]
Replace archaic \*(Lt and \*(Gt by plain < and >, respectively,
because these inspire devotion to cargo cult in developers.
Cleanup suggested by kn@.
schwarze [Sun, 11 Sep 2022 09:12:47 +0000 (09:12 +0000)]
Finally expand and delete the macro SCALE_VS_INIT().
It's nothing but obfuscation and only used at three places in a single file.
Removing it also makes the code three lines shorter.
The ugliness was already pointed out six years ago by mmcc@.
espie [Sun, 11 Sep 2022 08:51:51 +0000 (08:51 +0000)]
document actual MACHINE_ARCH/ARCH values since I always get these mixed up
(and I'm not the only one!)
yasuoka [Sun, 11 Sep 2022 08:38:39 +0000 (08:38 +0000)]
Handle if pci_intr_establish() failed. This actually happens if many
VMXNET3 are configured. from IIJ.
ok jmatthew
kettenis [Sun, 11 Sep 2022 08:33:03 +0000 (08:33 +0000)]
Change OF_getnodebyname() such that lokking up a node using just the name
without a unit number (so without the @1234 bit) works as well.
ok patrick@, gkoehler@
miod [Sun, 11 Sep 2022 07:38:33 +0000 (07:38 +0000)]
Fix build after previous
jmc [Sun, 11 Sep 2022 06:41:36 +0000 (06:41 +0000)]
- put sections in a more standard order
(moved FILES and DIAGNOSTICS nearer page end)
- BUGS AND LIMITATIONS -> BUGS
ok sthen espie
jmc [Sun, 11 Sep 2022 06:38:10 +0000 (06:38 +0000)]
.Li -> .Vt where appropriate;
from josiah frentsos, tweaked by schwarze
ok schwarze
jsg [Sun, 11 Sep 2022 04:39:46 +0000 (04:39 +0000)]
fix repeated words
gkoehler [Sun, 11 Sep 2022 04:38:28 +0000 (04:38 +0000)]
Use installboot -p in install.md for macppc, powerpc64
ok kn@
miod [Sat, 10 Sep 2022 20:35:28 +0000 (20:35 +0000)]
Remove pmap_collect() when a no-op, define __HAVE_PMAP_COLLECT otherwise.
Use that define to shunt uvm_swapout_threads(), which is a noop when
pmap_collect() does nothing.
ok mpi@
jsing [Sat, 10 Sep 2022 17:45:10 +0000 (17:45 +0000)]
Increment the input and output position for EVP AES CFB1.
The length is decremented, however the input is repeatedly read from and
output written to the same position. Correct this by actually incrementing
the input and output pointers.
Found via OpenSSL
604e591ed7,
ok tb@
jsing [Sat, 10 Sep 2022 17:39:47 +0000 (17:39 +0000)]
Use correct length for EVP CFB mode ciphers.
The BLOCK_CIPHER_* macros contained a bug where the total length is passed
to the underlying cipher implementation, rather than the length of the
current chunk. Correct this and use the chunk length instead.
Should address the remaining issues reported by Coverity.
ok tb@
nicm [Sat, 10 Sep 2022 17:01:33 +0000 (17:01 +0000)]
Use correct option name.
cheloha [Sat, 10 Sep 2022 16:58:51 +0000 (16:58 +0000)]
top(1): remove last vestiges of "last pid" support
millert@ removed most of the "last pid" support from top(1) in 1997.
See, e.g. top/machine.c,v1.7:
http://cvsweb.openbsd.org/src/usr.bin/top/machine.c?rev=1.7&content-type=text/x-cvsweb-markup
Let's remove the rest of it:
- Eliminate system_info.last_pid.
- Remove mpid parameter and "last pid" printing code from i_loadave().
Link: https://marc.info/?l=openbsd-tech&m=166277253606823&w=2
ok millert@
mpi [Sat, 10 Sep 2022 16:14:36 +0000 (16:14 +0000)]
Get rid of the extra vnode reference known as UVM_VNODE_CANPERSIST.
Back in the 4.4BSD days the VM subystem had a OBJ_CANPERSIST flag to
enter objects in a global cached list. Some of this logic seem to have
been copied to UVM but without the global list.
Unfortunately keeping UVM vnode objects alive after munmap(2)ing the
corresponding region without incrementing the reference count of the
related vnode led to many bugs when the vnode was recycled and/or when
it data where written back to disk (via the page daemon).
The problem is that VM pages might have a non-accounted reference to a
vnode via `pg->uobject'.
Fix "vref used where vget required" panic reported by bluhm@, gkoehler@
and Andrew Krasavinseen on bugs@.
Thanks a lot to semarie@ for co-debugging this issue!
Tested by bluhm@, tb@, miod@.
ok kettenis@, semarie@
jsing [Sat, 10 Sep 2022 15:37:13 +0000 (15:37 +0000)]
Use CBS to parse TLS alerts in the legacy stack.
ok tb@
jsing [Sat, 10 Sep 2022 15:29:33 +0000 (15:29 +0000)]
Provide a version of ssl_msg_callback() that takes a CBS.
Use this from the TLSv1.3 code.
ok tb@
kettenis [Sat, 10 Sep 2022 14:32:53 +0000 (14:32 +0000)]
Add another pin to the SC7180 map function.
kettenis [Sat, 10 Sep 2022 13:18:31 +0000 (13:18 +0000)]
Don't restrict GPIO events to pin numbers below 256. With the _EVT()
method events corresponding to larger numbers are possible.
Fixes lid state detection on the x13s.
ok patrick@
kettenis [Sat, 10 Sep 2022 13:14:39 +0000 (13:14 +0000)]
Generalize the code such that it works on SC7180 SoCs as well.
ok mglocker@, patrick@
kettenis [Sat, 10 Sep 2022 13:05:41 +0000 (13:05 +0000)]
Add _HID for SC7180 SoCs.
ok mglocker@
jsg [Sat, 10 Sep 2022 12:36:18 +0000 (12:36 +0000)]
carrier return character -> carriage return character
ok jmc@ miod@
jsg [Sat, 10 Sep 2022 10:22:46 +0000 (10:22 +0000)]
fix repeated words
ok ok miod@ ack ack jmc@
jsg [Sat, 10 Sep 2022 10:10:29 +0000 (10:10 +0000)]
Thinkpad -> ThinkPad
sdk [Sat, 10 Sep 2022 10:10:09 +0000 (10:10 +0000)]
apm(1): Display unknown recharge time estimate instead of -1
OK miod@
jsg [Sat, 10 Sep 2022 10:07:44 +0000 (10:07 +0000)]
Socs -> SoCs