deraadt [Thu, 21 Jul 2022 03:07:53 +0000 (03:07 +0000)]
7.3 base key
kn [Wed, 20 Jul 2022 21:03:10 +0000 (21:03 +0000)]
Add size to free(9) call
Without any later realloactions, size is taken from vnet_dring_alloc().
OK kettenis
espie [Wed, 20 Jul 2022 16:37:49 +0000 (16:37 +0000)]
be a bit more forceful explaining that 'make update' is best effort
and not guaranteed to work (yet useful for porters!)
okay jca@
tb [Wed, 20 Jul 2022 15:16:06 +0000 (15:16 +0000)]
Simplify tlsext_supported_groups_server_parse
Add an early return in the s->internal->hit case so that we can unindent
a lot of this code. In the HRR case, we do not need to check that the list
of supported groups is unmodified from the first CH. The CH extension
hashing already does that for us.
ok jsing
deraadt [Wed, 20 Jul 2022 15:13:44 +0000 (15:13 +0000)]
move to 7.2-beta. this gets done very early, to avoid finding out
version number issues close to release
deraadt [Wed, 20 Jul 2022 15:12:38 +0000 (15:12 +0000)]
move to 7.2-beta. this gets done very early, to avoid finding out
version number issues close to release
tb [Wed, 20 Jul 2022 14:50:31 +0000 (14:50 +0000)]
link ssl_set_alpn_protos to regress
tb [Wed, 20 Jul 2022 14:50:03 +0000 (14:50 +0000)]
Add a quick and dirty regress for SSL{_CTX,}_set_alpn_protos()
claudio [Wed, 20 Jul 2022 14:23:13 +0000 (14:23 +0000)]
This no longer needs the inet pledge. sysconf(3) was modified to report
_POSIX_IPV6 without opening a socket using a method that is allowed by
the vminfo plegde.
OK sthen@ deraadt@
tb [Wed, 20 Jul 2022 14:15:50 +0000 (14:15 +0000)]
Drop some unnecessary parentheses.
ok jsing
tb [Wed, 20 Jul 2022 14:14:34 +0000 (14:14 +0000)]
Copy alpn_selected using CBS
ok jsing
tb [Wed, 20 Jul 2022 14:13:13 +0000 (14:13 +0000)]
Copy alpn_client_proto_list using CBS in SSL_new()
This makes the code both shorter and safer since freeing, allocation,
and copying are handled by CBS_stow() internally.
ok jsing
tb [Wed, 20 Jul 2022 14:08:49 +0000 (14:08 +0000)]
Validate protocols in SSL{_CTX,}_set_alpn_protos()
This wonderful API requires users to pass the protocol list in wire
format. This list is then sent as part of the ClientHello. Validate
it to be of the correct form. This reuses tlsext_alpn_check_format()
that was split out of tlsext_alpn_server_parse().
Similar checks were introduced in OpenSSL
86a90dc7
ok jsing
tb [Wed, 20 Jul 2022 13:57:49 +0000 (13:57 +0000)]
Rewrite SSL{_CTX,}_set_alpn_protos() using CBS
This simplifies the freeing, assigning and copying of the passed
protocols by replacing all that code with a pair of CBS_init() and
CBS_stow(). In addition, this aligns the behavior with OpenSSL,
which no longer errors on NULL proto or 0 proto_len since
86a90dc7.
ok jsing
tb [Wed, 20 Jul 2022 13:43:33 +0000 (13:43 +0000)]
Change various ALPN related internal struct members
Change alpn_client_proto_list and alpn_selected from unsigned char *
to uint8_t and change alpn_client_proto_list_len to be a size_t instead
of an unsigned int.
ok jsing
tb [Wed, 20 Jul 2022 13:35:05 +0000 (13:35 +0000)]
Factor out ALPN extension format check
The ALPN extension must contain a non-empty list of protocol names.
Split a check of this out of tlsext_alpn_server_parse() so that it
can be reused elsewhere in the library.
ok jsing
claudio [Wed, 20 Jul 2022 12:43:27 +0000 (12:43 +0000)]
Cleanup and fix the network code.
- introduce network_free() to properly free a network struct including
the possible rtlabel reference.
- change expand_networks() and the reload code to not only expand the
main network config but also the network configs inside L3VPN sections.
- adjust reload logic to properly match any kind of network struct.
Up until now rtlabel and priority network statememnts were not correctly
reloaded.
OK tb@
tb [Wed, 20 Jul 2022 11:36:53 +0000 (11:36 +0000)]
sync
tb [Wed, 20 Jul 2022 11:36:15 +0000 (11:36 +0000)]
bump major due to struct size change on ILP32 architectures
tb [Wed, 20 Jul 2022 11:35:36 +0000 (11:35 +0000)]
Revert zlib.h r1.7
The change from uLong to z_off_t was made due to a bug in gzip(1) which
was fixed by gkoehler in gzopen.c r1.35. The trouble with the z_off_t
change is that it is an ABI break and that it does not play well with
various ffi interfaces. For example, Perl and Rust break on ILP32 arches
with the system zlib.
Run through an i386 bulk by sthen and an i386 regress by bluhm, thanks.
ok bluhm
mbuhl [Wed, 20 Jul 2022 09:33:11 +0000 (09:33 +0000)]
Add a pool for the allocation of the pf_anchor struct.
It was possible to exhaust kernel memory by repeatedly calling
pfioctl DIOCXBEGIN with different anchor names.
OK bluhm@
Reported-by: syzbot+9dd98cbce69e26f0fc11@syzkaller.appspotmail.com
jsing [Wed, 20 Jul 2022 06:32:24 +0000 (06:32 +0000)]
Remove tls_buffer_set_data() and remove/revise callers.
There is no way that tls_buffer_set_data() can currently work in
conjunction with tls_buffer_expand(). This fact is currently hidden by the
way that PHH works, which reads the same data from the record layer (which
it needs to do anyway, since we may not have all of the handshake message
in a single record).
Since this is broken, mop it up and change the PHH callback to not provide
the record data.
ok beck@ tb@
jsing [Wed, 20 Jul 2022 06:20:44 +0000 (06:20 +0000)]
Correct server-side handling of TLSv1.3 key updates.
The existing code updates the correct secret, however then sets it for the
wrong direction. Fix this, while untangling the code and consistenly using
'read' and 'write' rather than 'local' and 'peer'.
ok beck@ tb@
deraadt [Wed, 20 Jul 2022 05:56:34 +0000 (05:56 +0000)]
the _pad_ system calls from 2021/12/23 can go away
ok guenther
deraadt [Wed, 20 Jul 2022 05:55:38 +0000 (05:55 +0000)]
sync
deraadt [Wed, 20 Jul 2022 05:55:08 +0000 (05:55 +0000)]
the _pad_ system calls from 2021/12/23 can go away
ok guenther
djm [Wed, 20 Jul 2022 03:33:22 +0000 (03:33 +0000)]
ssh-keygen: fix touch prompt, pin retries;
part of GHPR329 from Pedro Martelletto
djm [Wed, 20 Jul 2022 03:31:42 +0000 (03:31 +0000)]
sk-usbhid: preserve error code returned by key_lookup()
it conveys useful information, such as the supplied pin being wrong.
Part of GHPR329 from Pedro Martelletto
djm [Wed, 20 Jul 2022 03:29:43 +0000 (03:29 +0000)]
crank SSH_SK_VERSION_MAJOR to match
djm [Wed, 20 Jul 2022 03:29:14 +0000 (03:29 +0000)]
when enrolling a resident key on a security token, check if a
credential with matching application and user ID strings already
exists. if so, prompt the user for confirmation before overwriting
the credential.
patch from Pedro Martelletto via GHPR329
NB. cranks SSH_SK_VERSION_MAJOR, so any third-party FIDO middleware
implementations will need to adjust
djm [Wed, 20 Jul 2022 03:13:04 +0000 (03:13 +0000)]
pull passphrase reading and confirmation into a separate function
so it can be used for FIDO2 PINs; no functional change
jmatthew [Tue, 19 Jul 2022 21:49:22 +0000 (21:49 +0000)]
Fix up tx ring slot calculations so we store the mbuf and dma map with
the last slot of the packet rather than the first slot of the next.
ok dlg@
tb [Tue, 19 Jul 2022 20:16:50 +0000 (20:16 +0000)]
zap trailing spaces
tb [Tue, 19 Jul 2022 20:15:19 +0000 (20:15 +0000)]
fix indent
martijn [Tue, 19 Jul 2022 19:25:42 +0000 (19:25 +0000)]
Objects are only set to ready if both their parent region and their
(optional) indices are ready. However, indices in another region than the
object can be made ready at a later time. These indices should then trigger
the ready state in their related objects.
This didn't happen for dynamic indices.
OK sthen@
tb [Tue, 19 Jul 2022 18:56:12 +0000 (18:56 +0000)]
Regenerate golden numbers due to RC4-MD5 now being disabled by default.
tb [Tue, 19 Jul 2022 18:55:12 +0000 (18:55 +0000)]
Disallow MD5 and SHA-1 HMACs depending on the security level
Ciphers using an MD5 HMAC are not allowed on security levels >= 1 and
using a SHA-1 HMAC is disallowed on security levels >= 4. This disables
RC4-MD5 by default.
ok jsing
claudio [Tue, 19 Jul 2022 16:27:59 +0000 (16:27 +0000)]
Add log_debug() and pt_getaddr() dummy functions because prefix_set_dmetric()
depends on them. Not ideal but I hope to fix the real issue in the near future.
Noticed by anton@
tb [Tue, 19 Jul 2022 16:19:19 +0000 (16:19 +0000)]
Avoid unnecessary loops in BN_generate_prime_ex()
Since there is nothing randomized in bn_is_prime_bpsw(), the concept
of rounds makes no sense. Apply a minimal change for now that avoids
expensive loops that won't change the outcome in case we found a
probable prime.
ok jsing
tb [Tue, 19 Jul 2022 16:08:09 +0000 (16:08 +0000)]
Document -tls1_{1,2,3} in openssl ciphers
ok jsing
tb [Tue, 19 Jul 2022 16:07:35 +0000 (16:07 +0000)]
Allow displaying ciphers according to protocol version
Instead of only using the default client method, allow selecting a
specific protocol version and display the supported ciphers accordingly.
This removes the noop status of -tls1 and adds -tls1_{1,2,3} as in
other commands.
ok jsing
claudio [Tue, 19 Jul 2022 13:03:09 +0000 (13:03 +0000)]
Do a minimal check that the passed in option is inside the ASPATH segment.
Check both for negative pos and for pos bigger or equal to the segment length
With and OK tb@
claudio [Tue, 19 Jul 2022 10:26:19 +0000 (10:26 +0000)]
Use kf for all struct kroute_full variables. Makes code more consistent.
OK tb@
claudio [Tue, 19 Jul 2022 09:25:44 +0000 (09:25 +0000)]
Use sysctl CTL_NET.PF_INET6 to check if IPv6 is available or not.
With this sysconf(3) no longer needs the inet pledge.
The kernel has been updated for this for a while now.
OK sthen@ deraadt@
nicm [Tue, 19 Jul 2022 07:10:13 +0000 (07:10 +0000)]
Do not ignore the "off" flag when checking if a pane should be stopped,
GitHub issue 3250.
nicm [Tue, 19 Jul 2022 06:51:31 +0000 (06:51 +0000)]
Process modifiers as bits rather than using a switch, from Koichi Murase.
nicm [Tue, 19 Jul 2022 06:46:57 +0000 (06:46 +0000)]
Fix memory leak, from Gabriel Souza Franco.
deraadt [Mon, 18 Jul 2022 23:09:44 +0000 (23:09 +0000)]
use syntax which more acceptable to older compilers
discussed with tb
tobhe [Mon, 18 Jul 2022 19:32:16 +0000 (19:32 +0000)]
Check if there is a locally cached nameserver to send before responding
to RTP_PROPOSAL_SOLICIT. Fixes a crash when resolvd is restarted but
no name server is set.
jca [Mon, 18 Jul 2022 18:02:27 +0000 (18:02 +0000)]
Restrict pledge("vminfo") callers to read-only swapctl(2) operations.
Those are the read-only operations allowed for non-root users:
SWAP_NSWAP and SWAP_STATS. Users of pledge("vminfo") in base which also
call swapctl(2) with said commands: top(1) and pstat(8).
No regression spotted with top(1) and pstat(8) -s/-T.
ok deraadt@
deraadt [Mon, 18 Jul 2022 17:45:46 +0000 (17:45 +0000)]
Delete the YPACTIVE toggling code when "getpw" code access/open are done to
/var/run/ypbind.lock. "getpw" is now only allows ypconnect(2) and the minimum
unveil bypasses.
Still allow open/acesss to file for a little while, because getpwent/getgrent/etc
were opening it unconditionally to hint for YPACTIVE.
That code should be deleted before 7.2
krw [Mon, 18 Jul 2022 15:06:22 +0000 (15:06 +0000)]
Synch 'help' command descriptions with man page descriptions.
Put 'setpid' description in correct place in COMMAND MODE
command list. i.e. in same order as ask_cmd() will parse
it.
Simplify ask_cmd() by displaying prompt in edit loop
rather than passing editlevel to ask_cmd().
No intentional functional change.
claudio [Mon, 18 Jul 2022 13:56:41 +0000 (13:56 +0000)]
Remove warning messages that add nothing in the situation they occure.
If the RDE dies this is logged before but the error messages from
imsg_rde() may be called a couple of times before the SE has a chance
to exit.
OK tb@
krw [Mon, 18 Jul 2022 13:46:19 +0000 (13:46 +0000)]
'quit' and 'exit' descriptions were reversed.
Tweak 'abort' description to emphasize discarding
of changes.
visa [Mon, 18 Jul 2022 12:48:35 +0000 (12:48 +0000)]
Compile octeon kernels with -march=mips64r2
Even though -march=octeon seems to work, avoid it for now. It is
not entirely certain that the compiler will not use cnMIPS special
registers accidentally in normal kernel code.
Discussed with and OK miod@
mvs [Mon, 18 Jul 2022 10:55:20 +0000 (10:55 +0000)]
Remove locks description duplicate. No functional changes.
claudio [Mon, 18 Jul 2022 09:42:46 +0000 (09:42 +0000)]
Do not fatalx() when calculating the dmetric and the result is negative.
The list of invalid prefixes is not properly sorted and when those prefixes
all become valid the list is not properly sorted until the nexthop update
pass is done. Found the hard way by myself.
OK tb@ benno@
tb [Mon, 18 Jul 2022 09:17:44 +0000 (09:17 +0000)]
Revert accidental commit
tb [Mon, 18 Jul 2022 09:15:08 +0000 (09:15 +0000)]
Add comments to explain the magic numbers 57 and 58
tb [Mon, 18 Jul 2022 08:36:47 +0000 (08:36 +0000)]
Avoid sending the QUIC transport parameters extension now that we
send an unsupported extension alert.
Noted by anton
deraadt [Mon, 18 Jul 2022 04:42:37 +0000 (04:42 +0000)]
the domainname is under root control, but because we are producing a path
inside ypconnect(), it is best if we prevent "../" problems. so reject
domainnames containing '/.
discussed with jca
deraadt [Mon, 18 Jul 2022 03:02:05 +0000 (03:02 +0000)]
For opening up the bindings file in ypconnect(2), bail out early
if chrooted
issue pointed out by semarie
deraadt [Mon, 18 Jul 2022 02:32:11 +0000 (02:32 +0000)]
ypbinding should not be intrude to application namespace.
spotted by guenther
deraadt [Mon, 18 Jul 2022 02:31:19 +0000 (02:31 +0000)]
use same way of reporting error as yp_bind.c
Though really, should we be splatting to stdout/stderr? The mysteries
of ancient code...
kn [Sun, 17 Jul 2022 19:40:38 +0000 (19:40 +0000)]
Handle X509_check_purpose(3) and EVP_get_digestbyobj(3)
OK tb
kettenis [Sun, 17 Jul 2022 17:59:35 +0000 (17:59 +0000)]
Revert the changes made in rev 1.82. It is important to use pmap_enter(9)
and pmap_remove(9) here since we're dealing with managed pages here. Found
out the hard way by deraadt@ on landisk where we're running into issues
with virtual cache aliases because multiple mappings exist for the
pages we're dealing with here. The pmap_enter(9) and pmap_remove(9)
functions handle conflicting cache aliases, whereas pmap_map_direct(9) and
pmap_kenter_pa(9) assume that the pages is exclusively mapped in the kernel
pmap.
ok deraadt@
kn [Sun, 17 Jul 2022 17:00:44 +0000 (17:00 +0000)]
Add initial support for ESSCertIDv2 verification
Based on OpenSSL commit
f0ef20bf386b5c37ba5a4ce5c1de9a819bbeffb2
"Added support for ESSCertIDv2".
This makes TS validation work in the new security/libdigidocpp port.
Input OK tb
jsing [Sun, 17 Jul 2022 15:51:06 +0000 (15:51 +0000)]
Disable TLSv1.3 middlebox compatibility mode for QUIC connections.
This is required by RFC 9001.
ok tb@
jsing [Sun, 17 Jul 2022 15:49:20 +0000 (15:49 +0000)]
Pass SSL pointer to tls13_ctx_new().
struct tls13_ctx already knows about SSL's and this way tls13_ctx_new() can
set up various pointers, rather than duplicating this in
tls13_legacy_accept() and tls13_legacy_connect().
ok tb@
jsing [Sun, 17 Jul 2022 14:57:05 +0000 (14:57 +0000)]
Revise regress for QUIC transport parameters TLS extension.
jsing [Sun, 17 Jul 2022 14:54:10 +0000 (14:54 +0000)]
Correct handling of QUIC transport parameters extension.
Remove duplicate U16 length prefix, since tlsext_build() already adds this
for us. Condition on SSL_is_quic() rather than TLS version - RFC 9001 is
clear that this extension is only permitted on QUIC transport and an
fatal unsupported extension alert is required if used elsewhere.
Additionally, at the point where extensions are parsed, we do not
necessarily know what TLS version has been negotiated.
ok beck@ tb@
jsing [Sun, 17 Jul 2022 14:49:01 +0000 (14:49 +0000)]
Provide SSL_is_quic()
This function will allow code to know if the SSL connection is configured
for use with QUIC or not. Also move existing SSL_.*quic.* functions under
LIBRESSL_HAS_QUIC to prevent exposing them prematurely.
ok beck@ tb@
jsing [Sun, 17 Jul 2022 14:41:27 +0000 (14:41 +0000)]
Correct TLSEXT_TYPE_quic_transport_parameters message types.
Per RFC 9001, TLSEXT_TYPE_quic_transport_parameters may only appear in
ClientHello and EncryptedExtensions (not ServerHello).
ok beck@ tb@
jsing [Sun, 17 Jul 2022 14:39:09 +0000 (14:39 +0000)]
Correct value for TLSEXT_TYPE_quic_transport_parameters
Use the correct value for TLSEXT_TYPE_quic_transport_parameters according
to RFC 9001 section 8.2. Also move the define under LIBRESSL_HAS_QUIC to
avoid things finding it prematurely.
ok beck@ tb@
krw [Sun, 17 Jul 2022 12:53:19 +0000 (12:53 +0000)]
Modernize and cleanse fdisk.8, making it more concise and
aligned with the code. Tweak usage() to stay in step.
Usual cogent feedback, tweaks and ok jmc@
jsg [Sun, 17 Jul 2022 10:32:45 +0000 (10:32 +0000)]
infromation -> information
jsg [Sun, 17 Jul 2022 09:53:40 +0000 (09:53 +0000)]
add section to mmap Xr
jsg [Sun, 17 Jul 2022 09:14:26 +0000 (09:14 +0000)]
sync with arm64.html
jsg [Sun, 17 Jul 2022 08:51:07 +0000 (08:51 +0000)]
AESCGM -> AESGCM
jsg [Sun, 17 Jul 2022 08:33:01 +0000 (08:33 +0000)]
order sysctl(2) Xr by section
missed when sysctl(3) references were changed to sysctl(2)
jsg [Sun, 17 Jul 2022 07:08:03 +0000 (07:08 +0000)]
ampiic -> apliic
jmc [Sun, 17 Jul 2022 05:48:26 +0000 (05:48 +0000)]
fix a macro, and "new sentence, new line";
deraadt [Sun, 17 Jul 2022 04:29:37 +0000 (04:29 +0000)]
backout last step: the path checks are too strong until everyone has a
new libc..
deraadt [Sun, 17 Jul 2022 03:17:54 +0000 (03:17 +0000)]
sync
deraadt [Sun, 17 Jul 2022 03:17:37 +0000 (03:17 +0000)]
/var/run/ypbind.lock doesn't need to be forcefully removed
ok aja
deraadt [Sun, 17 Jul 2022 03:17:00 +0000 (03:17 +0000)]
the PLEDGE_YPACTIVE "hack" bit related to "getpw" pledge goes away. libc
no longer does accesses /var/run/ypbind.lock to trigger extra permissions
for userland-opening of files & sockets to engage with ypserver for YP/LDAP
lookups. libc now uses the super secret special ypconnect() system call
to perform socket-setup.
Delete some other things which are no longer reached via libc/rpc
ok jmatthew, miod
deraadt [Sun, 17 Jul 2022 03:12:55 +0000 (03:12 +0000)]
Delete mention of the old /var/run/ypbind.lock hack.
deraadt [Sun, 17 Jul 2022 03:12:20 +0000 (03:12 +0000)]
/var/run/ypbind.lock doesn't need to be created with an advisory lock anymore,
because libc & pledge() doesn't care.
libc now calls ypconnect(), which still cares about the advisory lock on
/var/yp/bindings/$domain.2, so that code remains.
ok jmatthew miod
deraadt [Sun, 17 Jul 2022 03:10:47 +0000 (03:10 +0000)]
since yp_bind() and yp_all() don't use open, fstat, read, socket, and other
rich system calls to perform YP/LDAP lookups, there is no need to access()
/var/run/ypbind.lock to "hint" to pledge that it should open up those system
calls.
ok jmatthew, miod
deraadt [Sun, 17 Jul 2022 03:08:58 +0000 (03:08 +0000)]
Rather than opening the binding file, checking for advisory lock, reading a
piece of it for the address, opening a socket, and providing the address to
the RPC clnt layer.. do all these steps with the magic system call ypconnect(2)
which performs these steps without other system calls, and provides a socket
which is not readily abuseable for other purposes.
ok jmatthew, miod
deraadt [Sun, 17 Jul 2022 03:04:27 +0000 (03:04 +0000)]
Add ypconnect(2) stub inside libc so that libc functions can use it,
but do not export it.
deraadt [Sun, 17 Jul 2022 03:01:22 +0000 (03:01 +0000)]
add ypconnect(2) manual page
kn [Sat, 16 Jul 2022 19:11:51 +0000 (19:11 +0000)]
Add ESSCertIDv2 stack macros
Copy existing ESSCertID macros and s/_ID/&_V2/g.
Guard the new code under LIBRESSL_INTERNAL to defer visibility.
OK tb
kn [Sat, 16 Jul 2022 18:36:36 +0000 (18:36 +0000)]
Add ESSCertIDv2 ASN.1 boilerplate
Guard the new code under LIBRESSL_INTERNAL to defer symbol addition and
minor library bump (thanks tb).
ts/ts.h bits from
RFC 5035 Enhanced Security Services (ESS) Update:
Adding CertID Algorithm Agility
ts/ts_asn1.c bits expanded from
ASN1_SEQUENCE(ESS_CERT_ID_V2) = {
ASN1_OPT(ESS_CERT_ID_V2, hash_alg, X509_ALGOR),
ASN1_SIMPLE(ESS_CERT_ID_V2, hash, ASN1_OCTET_STRING),
ASN1_OPT(ESS_CERT_ID_V2, issuer_serial, ESS_ISSUER_SERIAL)
} static_ASN1_SEQUENCE_END(ESS_CERT_ID_V2)
IMPLEMENT_ASN1_FUNCTIONS_const(ESS_CERT_ID_V2)
IMPLEMENT_ASN1_DUP_FUNCTION(ESS_CERT_ID_V2)
ASN1_SEQUENCE(ESS_SIGNING_CERT_V2) = {
ASN1_SEQUENCE_OF(ESS_SIGNING_CERT_V2, cert_ids, ESS_CERT_ID_V2),
ASN1_SEQUENCE_OF_OPT(ESS_SIGNING_CERT_V2, policy_info, POLICYINFO)
} static_ASN1_SEQUENCE_END(ESS_SIGNING_CERT_V2)
IMPLEMENT_ASN1_FUNCTIONS_const(ESS_SIGNING_CERT_V2)
IMPLEMENT_ASN1_DUP_FUNCTION(ESS_SIGNING_CERT_V2)
Feedback OK tb
kn [Sat, 16 Jul 2022 17:30:33 +0000 (17:30 +0000)]
Add NID for signingCertificateV2
https://oidref.com/1.2.840.113549.1.9.16.2.47
OK tb
kn [Sat, 16 Jul 2022 16:42:58 +0000 (16:42 +0000)]
Avoid direct X509 structure access
Cherry-picked from OpenSSL commit
a8d8e06b0ac06c421fd11cc1772126dcb98f79ae.
This reduces upcoming TS changes.
OK jsing tb
bluhm [Sat, 16 Jul 2022 15:25:30 +0000 (15:25 +0000)]
To fix an KASSERT(la != NULL) panic in ARP, protect the rt_llinfo
field of the route with a mutex. Keep rt_llinfo not NULL consistent
with RTF_LLINFO flag is set. Also do not put the mutex in the fast
path.
OK mpi@
kn [Sat, 16 Jul 2022 15:02:29 +0000 (15:02 +0000)]
Zap duplicate ERR_load_TS_strings() prototype
It's defined again (more appropiately) further down above the error codes.
OK jsing tb
kettenis [Sat, 16 Jul 2022 12:07:55 +0000 (12:07 +0000)]
Fix IPIs on systems with multiple clusters where the CPU interface
numbers don't necessarily match the CPU numbers used by our kernel.
Seen on an Amlogic S922X SoC where cluster 0 consists of two Cortex-A53
cores and cluster 1 consists of four Cortes-A73 cores.
ok anton@
kettenis [Sat, 16 Jul 2022 12:02:28 +0000 (12:02 +0000)]
Fix previous commit. We need to enable the new "halt" IPI on all the CPUs
like we do for the other ones. If we don't, the IPI won't arrive and we'll
hang for ever when we try to suspend.
ok patrick@