drahn [Wed, 19 May 2021 23:18:40 +0000 (23:18 +0000)]
Revert hack to build clang with -static on riscv64.
This 'requirement' was due to a bug in dtors which has been corrected.
reminded by jsg@
drahn [Wed, 19 May 2021 23:15:21 +0000 (23:15 +0000)]
Correct the library path for native build of ramdisks.
krw [Wed, 19 May 2021 21:49:07 +0000 (21:49 +0000)]
No need to pass the location of the partition table to
GPT_get_partition_table() since the global 'gh' knows where it is.
Fixes a couple of missing letoh64() calls by eliminating the need for
them.
kettenis [Wed, 19 May 2021 21:23:20 +0000 (21:23 +0000)]
Get rid of the do-nothing cache setup code. The RISC-V architecture has
no architecturally defined caches (yet) so there is nothing to set up here.
Gets rid of some more useless XXX.
deraadt [Wed, 19 May 2021 20:37:16 +0000 (20:37 +0000)]
delete useless XXX
deraadt [Wed, 19 May 2021 20:35:02 +0000 (20:35 +0000)]
delete useless XXX
kettenis [Wed, 19 May 2021 20:10:38 +0000 (20:10 +0000)]
Only advertise MSI support if there is an MSI controller of some sort.
ok patrick@
florian [Wed, 19 May 2021 19:42:53 +0000 (19:42 +0000)]
When we disable "Transfer-Encoding: chunked" in the fastcgi backend
because we are going to send an empty body we have to provide
"Content-Length: 0" otherwise some browsers (Firefox, Safari) just
hang until httpd(8) closes the connection.
Problem reported by Matthias Pressfreund, debugged with weerd@ who
pointed out that the problem is browser dependent.
OK tracey
kettenis [Wed, 19 May 2021 19:32:25 +0000 (19:32 +0000)]
Add PCI support.
ok deraadt@
bluhm [Wed, 19 May 2021 18:42:59 +0000 (18:42 +0000)]
Double the maximum data size limit on powerpc64. Now it is 32 GB
and the same as amd64. The machines have large amounts of memory.
discussed with kettenis@
kettenis [Wed, 19 May 2021 18:10:45 +0000 (18:10 +0000)]
In ttyinfo() check that ps_vmspace isn't NULL before calculating the
resident set size. This replicates what the sysctl code does and fixes
a kernel crash reported by robert@
ok deraadt@
patrick [Wed, 19 May 2021 17:46:36 +0000 (17:46 +0000)]
Disable global mappings when using PCID.
Page table mappings are frequently created and destroyed in the kernel
address space. Traditionally, these mappings have been marked as
"global" mappings which means that a TLB flush via %cr3 load does not
invalidate them. This is ok as these mappings are the same for all
processes.
With the advent of MELTDOWN, global mappings were disabled for CPUs
that are affected by rogue data cache load (RDCL aka MELTDOWN). To
compensate for this we started using PCID and the kernel got its own
process context identifier. Thus the hardware is allowed to cache
kernel mappings again.
However, a CPU that supports PCID but is _not_ affected by MELTDOWN
(i.e. ARCH_CAPABILTIES.RDCL_NO=1) will now use both: global PTE
mappings and PCID.
This is a problem if range based TLB invalidations are used to update/
flush cached TLBs after a change to the kernel page tables. The reason
is that the invpcid instruction (function 0) that is used to remove the
cached TLBs will not remove global mappings. In the non-PCID case invlpg
is used instead which does remove global mappings. In the MELTDOWN case,
global mappings are not used at all.
The solution is to not use global mappings if PCID is active, as the
latter should already by enough to let the hardware cache kernel address
translations across address space switches and the global flag is not
required.
From Christian Ehrhardt
ok bluhm@ guenther@ mlarkin@
kettenis [Wed, 19 May 2021 17:39:49 +0000 (17:39 +0000)]
Bring riscv64 intr.c code in sync with arm64. This brings us:
- MSI support
- Interfaces to route interrupts to specific CPUs
- Proper interrupt barriers
- s/riscv_intr_handler/machine_intr_handler/
ok mlarkin@
deraadt [Wed, 19 May 2021 17:25:10 +0000 (17:25 +0000)]
enter new dirs
deraadt [Wed, 19 May 2021 17:22:57 +0000 (17:22 +0000)]
correct .PATH
deraadt [Wed, 19 May 2021 17:16:51 +0000 (17:16 +0000)]
resolvd and dhcpleased if ramdisks need them
deraadt [Wed, 19 May 2021 16:57:02 +0000 (16:57 +0000)]
Please sir, I want some more (ramdisk miniroot space)
inoguchi [Wed, 19 May 2021 10:12:55 +0000 (10:12 +0000)]
Adjust libcrypto obj_xref.txt to obj_xref.h
To generate current obj_xref.h, third item of lines
id_tc26_signwithdigest_gost3410_2012_256/512 should be id_GostR3410_2001.
obj_xref.txt r1.2 and obj_xref.h r1.3 were committed at the same time,
and these third item were coded different value each other.
This adjusts obj_xref.txt to current obj_xref.h.
ok tb@
jsg [Wed, 19 May 2021 05:28:09 +0000 (05:28 +0000)]
match on Intel 500 Series PCH ids
jsg [Wed, 19 May 2021 05:21:24 +0000 (05:21 +0000)]
regen
jsg [Wed, 19 May 2021 05:20:48 +0000 (05:20 +0000)]
add Intel 500 Series PCH ids
jsg [Wed, 19 May 2021 02:14:52 +0000 (02:14 +0000)]
regen
jsg [Wed, 19 May 2021 02:14:11 +0000 (02:14 +0000)]
add more inteldrm and amdgpu ids
djm [Wed, 19 May 2021 01:24:05 +0000 (01:24 +0000)]
restore blocking status on stdio fds before close
ssh(1) needs to set file descriptors to non-blocking mode to operate
but it was not restoring the original state on exit. This could cause
problems with fds shared with other programs via the shell, e.g.
> $ cat > test.sh << _EOF
> #!/bin/sh
> {
> ssh -Fnone -oLogLevel=verbose ::1 hostname
> cat /usr/share/dict/words
> } | sleep 10
> _EOF
> $ ./test.sh
> Authenticated to ::1 ([::1]:22).
> Transferred: sent 2352, received 2928 bytes, in 0.1 seconds
> Bytes per second: sent 44338.9, received 55197.4
> cat: stdout: Resource temporarily unavailable
This restores the blocking status for fds 0,1,2 (stdio) before ssh(1)
abandons/closes them.
This was reported as bz3280 and GHPR246; ok dtucker@
kevlo [Tue, 18 May 2021 14:25:59 +0000 (14:25 +0000)]
Enable umb(4).
kevlo [Tue, 18 May 2021 14:23:53 +0000 (14:23 +0000)]
regen
kevlo [Tue, 18 May 2021 14:23:03 +0000 (14:23 +0000)]
Add support for Quectel EC25.
To issue an AT command (AT+QCFG="usbnet",2) to change to MBIM mode.
Tested by Shawn Chiou on rpi4; "of course" deraadt@
schwarze [Tue, 18 May 2021 13:22:37 +0000 (13:22 +0000)]
When looking for column separators on tbl(7) data lines, properly skip
escape sequences; do not misinterpret bytes from the middle of escape
sequence names or arguments as column separators.
Bug reported and patch tested by Oliver dot Corff at email dot de.
benno [Tue, 18 May 2021 13:20:55 +0000 (13:20 +0000)]
bump rpki-client version
deraadt [Tue, 18 May 2021 12:26:31 +0000 (12:26 +0000)]
panic does not require a \n at the end. When one is provided, it looks wrong.
jsg [Tue, 18 May 2021 12:24:12 +0000 (12:24 +0000)]
use ctfstrip instead of strip to add .SUNW_ctf
ok deraadt@ mpi@
kettenis [Tue, 18 May 2021 11:39:37 +0000 (11:39 +0000)]
Move the pciecam stanza back into files.arm64 since armv7 has its own
pciecam(4) implementation hidden away in arch/armv7/vexpress.
Unbreaks armv7 kernel builds.
mvs [Tue, 18 May 2021 11:15:14 +0000 (11:15 +0000)]
Move potential sleeping m_getclr(9) out of `unp_lock' within unp_bind().
ok mpi@
dv [Tue, 18 May 2021 11:06:43 +0000 (11:06 +0000)]
vmd(8): guest virtio drivers can cause stack & buffer overflows
A vmd guest can craft invalid virtio descriptor lengths resulting
in reading and writing beyond stack-allocated buffer lengths providing
an escape vector to the host.
Instead of allowing the guest to dictate read/write lengths, this
commit has vmd just use compile-time lengths based on the source
or destination object sizes. For instances where vmd's virtio
implementation can't use this method, such as reading packets from
the vionet device, cap each read with a pre-computed max chunk size.
Reported by Maxime Villard.
Tested with help from Mischa Peters, OK mlarkin@
ratchov [Tue, 18 May 2021 10:02:00 +0000 (10:02 +0000)]
Add pre-DMA-write barrier after data is stored to memory
There's already such a barrier in usbd_transfer() code-path, but this
one is called when the frames are queued to the HC ring. The audio
samples are stored in memory by userland later, *after* the frames are
scheduled (but before they are sent on the wire) so a barrier is
needed there. Without this change, the data produced by userland may
stay in the CPU caches and is not "seen" by the HC's DMA engine, in
turn the device plays noise on certain arm64 machines (RPI4, for
instance).
Fix mostly from Luca Castagnini with few tweaks from me. OK patrick@
kettenis [Tue, 18 May 2021 09:14:49 +0000 (09:14 +0000)]
Remove the no-op instruction cache flush/wb/inv operations and replace them
with a FENCE.I instruction which does exactly what we need to synchronize
the I-Cache with the D-Cache.
ok mlarkin@, jsg@
kettenis [Tue, 18 May 2021 08:16:50 +0000 (08:16 +0000)]
regen
kettenis [Tue, 18 May 2021 08:16:11 +0000 (08:16 +0000)]
Add Quectel EM120R-GL and Samsung PM9A1.
ok deraadt@, jsg@
stsp [Tue, 18 May 2021 08:10:45 +0000 (08:10 +0000)]
Drop fragmented 802.11 frames.
Fragmented frames were never of any practical use to us anyway, given that
our net80211 stack does not (yet?) re-assemble them.
Counter-measure against attacks where an arbitrary packet is injected in a
fragment with attacker-controlled content (via an AP which supports fragments).
See https://papers.mathyvanhoef.com/usenix2021.pdf
Section 6.8 "Treating fragments as full frames"
ok mpi@
claudio [Tue, 18 May 2021 05:26:26 +0000 (05:26 +0000)]
Document new net.unix sysctls.
OK mvs@
claudio [Tue, 18 May 2021 05:25:40 +0000 (05:25 +0000)]
Add support for the new net.unix sysctl nodes.
OK mvs@
dv [Tue, 18 May 2021 00:05:20 +0000 (00:05 +0000)]
vmm(4): add more specific error messages for vm-entry failures
To aid vmx debugging, specify if the error was related to vmresume
or vmlaunch. For vm-entry failures due to failed checks, decode the
errors per the SDM Vol. 3C 26.8.
dv [Mon, 17 May 2021 23:36:40 +0000 (23:36 +0000)]
vmm(4): fix race condition related to incorrect physical cpu tracking
The race condition results in vmread errors when disabling interrupt
window exiting. The vmd(8) guest gets an EINVAL response to it's
VMM_IOC_RUN ioctl and aborts, sending the guest to an abrupt end.
Similarly to the recent SVM commit, this changes the vcpu run loop
logic to check for resuming on a different cpu. If so, the VMCS is
loaded onto the new cpu.
Instead of using just a "resume" flag, the real reason (other than cpu
switch) that would require reloading the VMCS is vmm may have cleared
the VMCS before yielding to the scheduler. The "resume" flag is still
used in vmx_enter_guest to toggle between vmlaunch/vmresume calls, but
is no longer the arbiter of if vmm reloads the VMCS or not.
A more subtle race condition still exists related to clearing the VMCS
on the previous cpu, but that's for a future commit.
OK mlarkin@
sashan [Mon, 17 May 2021 23:01:26 +0000 (23:01 +0000)]
fix state key reference underflow, when sk == skrev
the bug has been reported by Sebastien and Olivier Cherrier.
it has turned out the pf_state_key_link_reverse() does not
grab enough references when both state keys (sk and skrev)
are identical. This makes pf to trip assert later, when
references are being dropped:
panic(
ffffffff81dfbc8e) at panic+0x11d
__assert(
ffffffff81e64b54,
ffffffff81e0a6ee,33a,
ffffffff81e03b7f)
refcnt_rele(
fffffd810bf02458) at refcnt_rele+0x6f
pf_state_key_unref(
fffffd810bf023f0) at pf_state_key_unref+0x21
pf_remove_state(
fffffd810c0c4578) at pf_remove_state+0x1fa
pf_purge_expired_states(2) at pf_purge_expired_states+0x232
pf_purge(
ffffffff82236a30) at pf_purge+0x33
taskq_thread(
ffff800000032080) at taskq_thread+0x81
fixed tested by Olivier Cherrier and semarie@
OK semarie@
aoyama [Mon, 17 May 2021 22:11:35 +0000 (22:11 +0000)]
Make more free inodes on luna88k bsd.rd.
Free inodes of luna88k bsd.rd are insufficient when we want to install
sets from another disk of the root disk. Make more inodes by specifying
density=4096.
Spotted by Anders Gavare, the author of GXemul. Thanks!
ok deraadt@
kettenis [Mon, 17 May 2021 19:43:37 +0000 (19:43 +0000)]
Move pciecam.c to dev/fdt/.
ok deraadt@
claudio [Mon, 17 May 2021 17:58:35 +0000 (17:58 +0000)]
Revert. Last change should not have been committed.
claudio [Mon, 17 May 2021 17:54:31 +0000 (17:54 +0000)]
Forgot this directory in last commit for the UNIX-domain socket buffer
change.
kettenis [Mon, 17 May 2021 17:25:13 +0000 (17:25 +0000)]
Rename some MD structs by giving them an architecture-neutral name in
preparation for sharing PCIe host bridge drivers between arm64 and riscv64.
ok mpi@, mlarkin@, patrick@
claudio [Mon, 17 May 2021 17:06:51 +0000 (17:06 +0000)]
Increase the default buffer space using on PF_UNIX sockets to 8k.
Additionally make the values tuneable via sysctl.
OK deraadt@ mvs@
deraadt [Mon, 17 May 2021 15:31:13 +0000 (15:31 +0000)]
copy riscv support from regress/sys/kern/stackpivot/pivot.h
deraadt [Mon, 17 May 2021 15:28:24 +0000 (15:28 +0000)]
add riscv support
deraadt [Mon, 17 May 2021 15:06:09 +0000 (15:06 +0000)]
delete useless blank lines
bluhm [Mon, 17 May 2021 13:54:42 +0000 (13:54 +0000)]
Link fenv.S test program statically to avoid calling the dynamic
linker.
bluhm [Mon, 17 May 2021 13:13:27 +0000 (13:13 +0000)]
Skip sosplice loop test if Perl packages are not installed.
claudio [Mon, 17 May 2021 12:15:48 +0000 (12:15 +0000)]
Reshuffle if conditions to check for error first after the fstat() calls.
OK benno@
claudio [Mon, 17 May 2021 12:11:05 +0000 (12:11 +0000)]
Do not leak blk.blks in error condition.
Noticed by and OK benno@
claudio [Mon, 17 May 2021 12:04:38 +0000 (12:04 +0000)]
Adjust exit codes in the main program to follow the ones from
OK benno@
claudio [Mon, 17 May 2021 12:02:58 +0000 (12:02 +0000)]
Error out on memory failures in fargs_cmdline() and addargs() in both
cases it was impossible to start the remote rsync anyway. Also now
fargs_cmdline() can no longer fail. Add missing err(ERR_IPC, "pldege")
for the cases in socket.c
OK benno@
visa [Mon, 17 May 2021 11:59:53 +0000 (11:59 +0000)]
Fix mbuf leaks after reception error in re_rxeof().
Also, increment the error counter when an unexpected fragment is seen.
OK claudio@
claudio [Mon, 17 May 2021 11:59:09 +0000 (11:59 +0000)]
If pledge() or unveil() fails error out with ERR_IPC. Also error out in
the receiver when intial setup fails because of filesystem errors (unable
to open or create the base directory) or on memory failures.
OK benno@
claudio [Mon, 17 May 2021 11:54:14 +0000 (11:54 +0000)]
Introduce some error exit codes which are in sync with the ones from
proper rsync. This should help to make the tool behave more like the
real thing.
OK benno@
claudio [Mon, 17 May 2021 11:52:10 +0000 (11:52 +0000)]
Sync code with the original from mkdir(1).
OK benno@
claudio [Mon, 17 May 2021 11:49:01 +0000 (11:49 +0000)]
The openat() then fstat() pattern only works if one is sure the file being
opened is a regular file. In other cases this may block in openat() (since
the O_NONBLOCK flag removed). Switch to fstatat() and then openat() to
protect from involuntary side-effects (like opening a device node) and
possible hangs.
OK benno@
stsp [Mon, 17 May 2021 11:44:22 +0000 (11:44 +0000)]
put unused 802.11 fragmentation support code under #ifdef notyet
djm [Mon, 17 May 2021 11:43:16 +0000 (11:43 +0000)]
fix breakage of -W forwaring introduced in 1.554; reported by
naddy@ and sthen@, ok sthen@
claudio [Mon, 17 May 2021 10:47:07 +0000 (10:47 +0000)]
Limit the number of concurrent RTR connects to 32.
If the limit is hit the request will be dropped and the rtr process will
retry the connect after the retry timeout. Hopefully by then the number of
connections is down again.
OK deraadt@ benno@
claudio [Mon, 17 May 2021 10:09:53 +0000 (10:09 +0000)]
Stop setting IPV6_MINMTU in ip6_send() which is used by the ICMP code.
Because of this large ping packets where fragmented even if the MTU did
not indicate the need for it. This causes some trouble when system do
not expect to receive a fragmented answer from a system. One such case
is the automated link test from google routers before allowing to establish
a BGP peering session with them. In general PMTU problems should be an
issue from the past and if not it may be better to also break on ping
packets and not only for UDP and TCP. ICMP ping is normaly the first
tool in the admins toolbox to figure out network issues.
OK phessler@ florian@ bluhm@
florian [Mon, 17 May 2021 09:26:52 +0000 (09:26 +0000)]
Do not try to chunk encode an empty http body coming from an fcgi
upstream.
Found the hard way by Chris Narkiewicz who tracked failing uploads in
the nextcloud mobile app down to httpd(8) trying to chunk encode a
"204 No Content" resonse.
Testing by Steve Williams
Testing & OK stsp
tobhe [Mon, 17 May 2021 08:14:37 +0000 (08:14 +0000)]
Avoid calling ibuf_add() with NULL and zero length.
ok patrick@
stsp [Mon, 17 May 2021 08:02:20 +0000 (08:02 +0000)]
Prevent frame injection via forged 802.11n A-MSDUs.
This mitigates an attack where a single 802.11 frame is interpreted as an
A-MSDU because of a forged AMSDU-present bit in the 802.11 QoS frame header.
See https://papers.mathyvanhoef.com/usenix2021.pdf section 3.2.
MAC address validation is added as an additional measure to prevent hostap
clients from sending A-MSDU subframes with a spoofed source address.
An earlier version of this patch was reviewed by Mathy Vanhoef, who spotted
a bug in my original attempt at preventing spoofed addresses.
ok mpi@
dtucker [Mon, 17 May 2021 07:22:45 +0000 (07:22 +0000)]
Regenerate moduli.
jsg [Mon, 17 May 2021 02:18:07 +0000 (02:18 +0000)]
drm/radeon: fix copy of uninitialized variable back to userspace
From Colin Ian King
8dbc2ccac5a65c5b57e3070e36a3dc97c7970d96 in mainline linux
jsg [Mon, 17 May 2021 00:17:26 +0000 (00:17 +0000)]
return early if work is cancelled before being scheduled
cheloha@ noticed that task_del(9) was being called with a NULL taskq
from inteldrm(4), which was not noticed as the function returns early
from testing a flag in the task. This situation occurs when work is
cancelled before it is scheduled.
ok kettenis@ cheloha@
schwarze [Sun, 16 May 2021 23:16:22 +0000 (23:16 +0000)]
Implement the layout specification "a" (left justify with 1em indentation)
in HTML output mode; before this patch, the indentation was missing.
Terminal output already supported the "a" specifier since 2010.
Issue reported and patch tested by Oliver dot Corff at email dot de.
afresh1 [Sun, 16 May 2021 22:48:05 +0000 (22:48 +0000)]
Make all unicode Private Use areas SWIDTH1
Noticed by naddy@ due to a commit in nano.
There's no current mechanism to allow people who put codepoints in
these private use areas to specify their width, we can however guess
that people who put things there are most likely adding SWIDTH1
glyphs and making that the default will be most likely to do what
they want. In addition, that's apparently what other systems do
already.
Much feedback and OK schwarze@
afresh1 [Sun, 16 May 2021 22:38:31 +0000 (22:38 +0000)]
Update en_US.UTF-8.src to Unicode 13.0
This is what ships with the perl 5.32.1
OK schwarze@
schwarze [Sun, 16 May 2021 22:23:57 +0000 (22:23 +0000)]
test font modifiers in the layout; related to tbl_html.c rev. 1.29
schwarze [Sun, 16 May 2021 18:08:37 +0000 (18:08 +0000)]
implement the tbl(7) layout modifiers "b" (bold) and "i" (italic)
in HTML output mode, similar to tbl_term.c, function tbl_word();
issue reported by Oliver dot Corff at email dot de
kettenis [Sun, 16 May 2021 17:41:30 +0000 (17:41 +0000)]
Drop PTE check in pmap_fault_fixup(). Since pmap_enter() doesn't
add PTE's for pages that haven't been accessed yet, the check would
skip the fixup on such pages and force us to go through uvm_fault()
just for the sake of MOD/REF bit emulation. Since we already check
the PTE descriptor, dropping the check should be safe. Doing so
gives us a nice 10% performance gain when building a kernel.
ok patrick@, drahn@
drahn [Sun, 16 May 2021 16:00:50 +0000 (16:00 +0000)]
Correct problem in riscv64 dtors execution load the function pointer
correctly and do not overwrite it in csu.
allows most ld.so regressions to pass
confirmed by jsg@, ok kettenis
jsing [Sun, 16 May 2021 15:49:01 +0000 (15:49 +0000)]
Absorb SSL_AEAD_CTX into struct tls12_record_protection.
The information contained in SSL_AEAD_CTX really belongs in the
tls12_record_protection struct. Absorb SSL_AEAD_CTX, using more appropriate
types in the process.
ok tb@
jsing [Sun, 16 May 2021 15:21:10 +0000 (15:21 +0000)]
Zero the tls12_record_protection struct instead of individual fields.
In tls12_record_protection_clear(), rather than zeroing or NULLing
individual fields once a pointer has been freed, zero the entire struct once
the pointers have been dealt with.
ok tb@
deraadt [Sun, 16 May 2021 15:12:37 +0000 (15:12 +0000)]
panic does not require a \n at the end. When one is provided, it looks wrong.
deraadt [Sun, 16 May 2021 15:11:08 +0000 (15:11 +0000)]
hint that the panicstr should not contain \n, by saying one is printed.
deraadt [Sun, 16 May 2021 15:10:19 +0000 (15:10 +0000)]
panic does not require a \n at the end. When one is provided, it looks wrong.
jsing [Sun, 16 May 2021 14:20:29 +0000 (14:20 +0000)]
Avoid including tls13_internal.h in tls13_record.h.
While the implementation needs tls13_internal.h, consumers of
tls13_record.h should not.
jsing [Sun, 16 May 2021 14:19:04 +0000 (14:19 +0000)]
Avoid pulling ssl_locl.h into self-contained code.
jsing [Sun, 16 May 2021 14:10:43 +0000 (14:10 +0000)]
Make local header inclusion consistent.
Consistently include local headers in the same location, using the same
grouping/sorting across all files.
jsing [Sun, 16 May 2021 13:56:30 +0000 (13:56 +0000)]
Move DTLS structs/definitions/prototypes to dtls_locl.h.
Now that the DTLS structs are opaque, add a dtls_locl.h header and move
internal-only structs from dtls1.h, along with prototypes from ssl_locl.h.
Only pull this header in where DTLS code actually exists.
ok inoguchi@ tb@
jsing [Sun, 16 May 2021 13:39:07 +0000 (13:39 +0000)]
Add a missing space.
mvs [Sun, 16 May 2021 13:09:39 +0000 (13:09 +0000)]
In route detach we delete `rop_timeout' while `rop' is still linked to
`rtp_list' so it could be re-added by concurrent thread. Also
timeout_del(9) doesn't wait timeout proc to be finished and
timeout_del_barrier(9) should be used for that.
So use timeout_del_barrier(9) instead of timeout_del(9) and moved it
just after refcnt_finalize(9). This fixes potential use-after-free
issue in route_detach().
ok mpi@
jsing [Sun, 16 May 2021 10:58:27 +0000 (10:58 +0000)]
Fix formatting of multi-line license comment per style(9).
jsing [Sun, 16 May 2021 10:55:17 +0000 (10:55 +0000)]
Avoid pulling ssl_sigalgs.h in via ssl_locl.h.
Forward declare struct sigalg in ssl_locl.h and avoid including
ssl_sigalgs.h. Explicitly include ssl_sigalgs.h where it is needed.
jsg [Sun, 16 May 2021 10:40:24 +0000 (10:40 +0000)]
remove unneeded includes
jsg [Sun, 16 May 2021 10:39:22 +0000 (10:39 +0000)]
remove unneeded includes
kettenis [Sun, 16 May 2021 10:38:53 +0000 (10:38 +0000)]
Sync memreg_add() implementation with arm64 and powerpc64.
claudio [Sun, 16 May 2021 09:09:11 +0000 (09:09 +0000)]
Capabilities are only supported on a session when both sides announce
that capability. Change capa_neg_calc() to check always both the
ann(ounce) and peer capa struct to figure out what was negotiated.
This change affects route refersh and graceful restart (where before
setting the capability in the config to 'no' would not fully disable
the feature).
Also ignore and warn about unexpected route refresh messages.
OK benno@
jsg [Sun, 16 May 2021 08:50:59 +0000 (08:50 +0000)]
correct prototype of acpi gpio intr_establish functions
ok kettenis@
jsing [Sun, 16 May 2021 08:32:49 +0000 (08:32 +0000)]
Remove unnecessary includes from the bytestring APIs.
The bytestring APIs are self contained, hence including openssl headers
here is unnecessary.