sthen [Thu, 1 Apr 2021 09:56:11 +0000 (09:56 +0000)]
merge NSD 4.3.6rc1
sthen [Thu, 1 Apr 2021 09:55:16 +0000 (09:55 +0000)]
import NSD 4.3.6rc1, tested by me and florian@
mvs [Thu, 1 Apr 2021 08:39:52 +0000 (08:39 +0000)]
Push kernel lock down to umb_rtrequest().
We are going to unlock PF_ROUTE sockets. This means `if_rtrequest'
handler will be performed without kernel lock.
umb_rtrequest() calls umb_send_inet_proposal() which touches kernel lock
protected `ipv{4,6}dns' array. Also umb_rtrequest() is the only handler
which requires kernel lock to be held. So push the lock down to
umb_rtrequest() instead of grab it around `if_rtrequest' call.
This hunk was commited separately for decreases PF_ROUTE sockets
unlocking diff.
ok gerhard@ deraadt@
claudio [Thu, 1 Apr 2021 08:29:10 +0000 (08:29 +0000)]
Make build_crls() behave like build_chain(). If there is not auth data
just NULL the STACK_OF() pointer since libcrypto calls can handle that.
Update comments to be more accurate.
With and OK tb@
claudio [Thu, 1 Apr 2021 06:53:49 +0000 (06:53 +0000)]
Do a better job at cleaning up. Remove empty directories, scan not only the
known repositories but also clean up no longer known repositories.
With this rpki-client keeps its cache nice and shiny.
With and OK job@
claudio [Thu, 1 Apr 2021 06:47:18 +0000 (06:47 +0000)]
Add encoding.c to the various build targets
nicm [Thu, 1 Apr 2021 06:46:12 +0000 (06:46 +0000)]
Change search-again with vi keys to work like actual vi(1), also some
other fixes. From Aaron Jensen with help from Anindya Mukherjee.
claudio [Thu, 1 Apr 2021 06:43:23 +0000 (06:43 +0000)]
Move base64 and hex encoding functions into their own place.
OK tb@
nicm [Thu, 1 Apr 2021 06:37:46 +0000 (06:37 +0000)]
Missing commas, from Vipul Kumar.
djm [Wed, 31 Mar 2021 22:16:34 +0000 (22:16 +0000)]
Use new limits@openssh.com protocol extension to let the client select
good limits based on what the server supports. Split the download and
upload buffer sizes to allow them to be chosen independently.
In practice (and assuming upgraded sftp/sftp-server at each end), this
increases the download buffer 32->64KiB and the upload buffer
32->255KiB.
Patches from Mike Frysinger; ok dtucker@
djm [Wed, 31 Mar 2021 21:59:26 +0000 (21:59 +0000)]
cannot effectively test posix-rename extension after changes in
feature advertisment.
djm [Wed, 31 Mar 2021 21:58:07 +0000 (21:58 +0000)]
do not advertise protocol extensions that have been disallowed by
the command-line options (e.g. -p/-P/-R); ok dtucker@
krw [Wed, 31 Mar 2021 21:17:46 +0000 (21:17 +0000)]
Set 'select_timeout' to 'now' when an OFFER is received for the IP address
requested in the DISCOVER.
i.e. immediately accept the OFFER rather than waiting for select_timeout to
expire before accepting the same OFFER.
A corner case since select-timeout is 0 by default.
krw [Wed, 31 Mar 2021 20:52:09 +0000 (20:52 +0000)]
Add two missing checks for strdup() returning NULL.
jmc [Wed, 31 Mar 2021 20:41:35 +0000 (20:41 +0000)]
one of the examples needs an -N (and explanation);
diff from robert scheck
discussed with and tweaked by sthen
jmc [Wed, 31 Mar 2021 20:36:05 +0000 (20:36 +0000)]
add --no-motd to SYNOPSIS;
job [Wed, 31 Mar 2021 19:45:16 +0000 (19:45 +0000)]
Add option to suppress the Message of the Day
Fine deraadt@
schwarze [Wed, 31 Mar 2021 19:31:35 +0000 (19:31 +0000)]
tweak column widths of a .Bl -column table
and avoid an over-long source line while here;
OK martijn@ jmc@
eric [Wed, 31 Mar 2021 19:09:19 +0000 (19:09 +0000)]
turn log_trace() into a macro to prevent evaluating the format string
parameters when tracing is not enabled.
ok millert@
tb [Wed, 31 Mar 2021 18:03:13 +0000 (18:03 +0000)]
Update for DTLSv1.2 support.
eric [Wed, 31 Mar 2021 17:47:16 +0000 (17:47 +0000)]
allow to specify tls protocols and ciphers on relay actions
ok espie@ sthen@ tb@
eric [Wed, 31 Mar 2021 17:42:24 +0000 (17:42 +0000)]
change the barrier so that fd's are always passed and received with
the first byte of the imsg they belong to.
idea, tweaks and ok claudio@
tb [Wed, 31 Mar 2021 17:13:54 +0000 (17:13 +0000)]
Remove workarounds for SSL_is_dtls()
Reminded by inoguchi jsing
tb [Wed, 31 Mar 2021 17:10:13 +0000 (17:10 +0000)]
Remove workaround for missing d2i_DSAPrivateKey_fp prototype
tb [Wed, 31 Mar 2021 17:04:18 +0000 (17:04 +0000)]
sync
tb [Wed, 31 Mar 2021 17:02:18 +0000 (17:02 +0000)]
Bump minors after symbol addition
tb [Wed, 31 Mar 2021 16:59:32 +0000 (16:59 +0000)]
Expose various DTLSv1.2 specific functions and defines
ok bcook inoguchi jsing
tb [Wed, 31 Mar 2021 16:56:46 +0000 (16:56 +0000)]
Document SSL_set_hostflags(3) and SSL_get0_peername(3)
ok bcook inoguchi jsing
tb [Wed, 31 Mar 2021 16:55:04 +0000 (16:55 +0000)]
Expose SSL_set_hostflags(3) and SSL_get0_peername(3)
ok bcook inoguchi jsing
tb [Wed, 31 Mar 2021 16:53:30 +0000 (16:53 +0000)]
Document SSL_use_certificate_chain_file(3)
ok bcook inoguchi jsing
tb [Wed, 31 Mar 2021 16:52:15 +0000 (16:52 +0000)]
Expose SSL_use_certificate_chain_file(3)
ok bcook inoguchi jsing
tb [Wed, 31 Mar 2021 16:51:06 +0000 (16:51 +0000)]
Provide missing prototype for d2i_DSAPrivateKey_fp(3)
ok bcook inoguchi jsing
tb [Wed, 31 Mar 2021 16:48:43 +0000 (16:48 +0000)]
Document EVP_PKEY_new_CMAC_key(3)
ok bcook inoguchi jsing
tb [Wed, 31 Mar 2021 16:47:00 +0000 (16:47 +0000)]
Provide EVP_PKEY_new_CMAC_key(3)
ok bcook inoguchi jsing
claudio [Wed, 31 Mar 2021 16:11:02 +0000 (16:11 +0000)]
Set the process title for the rpki-client subprocesses so they can be
identified more easily.
OK deraadt@
krw [Wed, 31 Mar 2021 15:32:11 +0000 (15:32 +0000)]
Fix some debug output when running in foreground.
Call tick_msg() at startup so it knows if the link
is up. Don't emit 'link timeout expired' messages
after the link has been up.
visa [Wed, 31 Mar 2021 12:59:50 +0000 (12:59 +0000)]
Make ddb's dependency on libz explicit.
OK deraadt@ mpi@
sthen [Wed, 31 Mar 2021 09:59:32 +0000 (09:59 +0000)]
sync
sthen [Wed, 31 Mar 2021 09:59:21 +0000 (09:59 +0000)]
Remove redundant "HUAWEI Mobile" in usbdevs strings, mention radio
technology where known. ok deraadt
mpi [Wed, 31 Mar 2021 08:53:39 +0000 (08:53 +0000)]
Introduce UAO_USES_SWHASH() and use tabs instead of spaces in #defines.
No functionnal change, reduce the difference with NetBSD.
ok jmatthew@
nicm [Wed, 31 Mar 2021 08:37:48 +0000 (08:37 +0000)]
Do not exit if cannot write to normal log file, GitHub issue 2630.
espie [Wed, 31 Mar 2021 08:00:57 +0000 (08:00 +0000)]
document trusted_snapshot
sthen [Tue, 30 Mar 2021 20:58:19 +0000 (20:58 +0000)]
fix typos in comments
schwarze [Tue, 30 Mar 2021 19:23:50 +0000 (19:23 +0000)]
In HTML output, correctly render .Bd -unfilled in proportionally-spaced
font, rather than with the monospace font appropriate for .Bd -literal.
This fixes a minibug reported by anton@.
Implemented by no longer relying on the typical browser default of
"pre { font-family: monospace }" but instead letting <pre> elements
inherit the font family from their parent, then adding an explicit CSS .Li
class only for those displays where the manual page author requested it
by using the -literal option on the .Bd macro.
kettenis [Tue, 30 Mar 2021 16:49:58 +0000 (16:49 +0000)]
Handle systems, such as the Dell Precision 3640, that access
GenericSerialBus operating regions witout checking whether they're really
available. This needs to work on RAMDISK kernels as well. Since we
don't want to pull in the i2c subsystem on those, provide a separate
and much simpler dummy implementation of the GenericSerialBus access code
when SMALL_KERNEL is defined.
ok tb@
kettenis [Tue, 30 Mar 2021 16:46:36 +0000 (16:46 +0000)]
Register the PCI variant of dwiic(4) with acpi(4).
ok tb@
claudio [Tue, 30 Mar 2021 16:05:56 +0000 (16:05 +0000)]
Make http_new() take care of all the error handling. By closing the
outfd and sending back the failure report via http_fail(). This was
partially done in the failure case of http_resolv() and resulted in
double failure reports in that case.
With and OK tb@, previous version OK deraadt@
patrick [Tue, 30 Mar 2021 15:59:04 +0000 (15:59 +0000)]
Some cards announce support for the NTB16 format, but that support does not
work. Hence, add support for NTB32 in the transmit path. We already have
support for NTB32 in the receive path. We detect the supported format on
boot and can then decide on transmit which format to use.
From ehrhardt@ with gerhard@
Tested by jan@
ok sthen@
patrick [Tue, 30 Mar 2021 15:48:36 +0000 (15:48 +0000)]
Some umb(4) devices require the NDP pointer behind the NDP datagram.
From gerhard@
"broadly OK" sthen@
sashan [Tue, 30 Mar 2021 08:37:10 +0000 (08:37 +0000)]
[ICMP] IP options lead to malformed reply
icmp_send() must update IP header length if IP optaions are appended.
Such packet also has to be dispatched with IP_RAWOUTPUT flags.
Bug reported and fix co-designed by Dominik Schreilechner _at_ siemens _dot_ com
OK bluhm@
kevlo [Tue, 30 Mar 2021 00:55:08 +0000 (00:55 +0000)]
Move tx/rx descriptors into their own structs.
This is a first step toward making rge work with multiple queues and interrupts.
Only one queue is currently used.
While here, update the RTL8125B microcode.
ok jmatthew@
dv [Mon, 29 Mar 2021 23:37:01 +0000 (23:37 +0000)]
Propagate host-side tap(4) lladdr to guest vm process to allow unicast dhcp
and bootp renewals with vmd(8)'s built-in dhcp server. Previous behavior
ignored did not intercept these packets and instead transmitted them.
This should make vmd(8)'s dhcp behave more as a true dhcp server should and
allows it to work properly with the new dhcpleased(8) attempting a renewal.
OK mlarkin@
kn [Mon, 29 Mar 2021 20:10:30 +0000 (20:10 +0000)]
Install apm(8) and and apmd(8) under MI MANPATH
powerpc64 was lacking manual pages; instead of shipping yet another
identical MD manual, merge them under MI MANPATH as usual.
Input OK deraadt
tb [Mon, 29 Mar 2021 18:24:04 +0000 (18:24 +0000)]
whitespace nits
tb [Mon, 29 Mar 2021 17:58:29 +0000 (17:58 +0000)]
Prepare documenting EVP_PKEY_new_CMAC_key(3)
Based on some text in OpenSSL 1.1.1's EVP_PKEY_new.pod.
kettenis [Mon, 29 Mar 2021 17:04:00 +0000 (17:04 +0000)]
Turns out the PCIe DARTs support a full 32-bit device virtual address space.
Adjust the region managed by the extend accordingly but avoid the first
and last page. The last page collides with the MSI address used by the
PCIe controller and not using the first page helps finding bugs.
ok patrick@
jsing [Mon, 29 Mar 2021 16:57:38 +0000 (16:57 +0000)]
Remove pointless assignment in SSL_get0_alpn_selected().
ok tb@
jsing [Mon, 29 Mar 2021 16:56:20 +0000 (16:56 +0000)]
Avoid transcript initialisation when sending a TLS HelloRequest.
When server side renegotiation is triggered, the TLSv1.2 state machine
sends a HelloRequest before going to ST_SW_FLUSH and ST_OK. In this case
we do not need the transcript and currently hit the sanity check in ST_OK
that ensures the transcript has been freed, breaking server initiated
renegotiation. We do however need the transcript in the DTLS case.
ok tb@
jsing [Mon, 29 Mar 2021 16:46:09 +0000 (16:46 +0000)]
Move finished and peer finished to the handshake struct.
This moves the finish_md and peer_finish_md from the 'tmp' struct to the
handshake struct, renaming to finished and peer_finished in the process.
This also allows the remaining S3I(s) references to be removed from the
TLSv1.3 client and server.
ok inoguchi@ tb@
jsing [Mon, 29 Mar 2021 16:22:02 +0000 (16:22 +0000)]
Add regress coverage for TLSv1.2 record number increment.
jsing [Mon, 29 Mar 2021 16:19:15 +0000 (16:19 +0000)]
Move the TLSv1.2 record number increment into the new record layer.
This adds checks (based on the TLSv1.3 implementation) to ensure that the
TLS/DTLS sequence numbers do not wrap, as required by the respective RFCs.
ok inoguchi@ tb@
tb [Mon, 29 Mar 2021 15:57:23 +0000 (15:57 +0000)]
Prepare to provide EVP_PKEY_new_CMAC_key()
sebastia ran into this when attempting to update security/hcxtools.
This will be tested via wycheproof.go once the symbol is public.
ok jsing, tested by sebastia
claudio [Mon, 29 Mar 2021 15:47:34 +0000 (15:47 +0000)]
Add a pretty_key_id() which reinserts colons into the hex string.
This way the AKI and SKI printed in the tests tools look the same as before.
Requested by job@, OK job@ tb@
claudio [Mon, 29 Mar 2021 15:37:04 +0000 (15:37 +0000)]
Fix my email address in copyright line
deraadt [Mon, 29 Mar 2021 15:04:28 +0000 (15:04 +0000)]
-B option not updated about bird1v4 & bird1v6 files; ok job
sthen [Mon, 29 Mar 2021 13:38:01 +0000 (13:38 +0000)]
combine umb_products and umb_fccauth_devs into one umb_quirks table
ok gerhard@
dv [Mon, 29 Mar 2021 13:09:41 +0000 (13:09 +0000)]
Cleanly teardown and restore emulated device state on vm send/receive.
This cleans up events on a pause or resume, but also fixes an issue
where the vm_pipe event channels are not properly reinitialized on a
received guest leading to broken serial console.
OK pd@, mlarkin@
claudio [Mon, 29 Mar 2021 12:41:34 +0000 (12:41 +0000)]
Introduce hex_encode() to transform the aki/ski values to a string.
OK tb@
dv [Mon, 29 Mar 2021 12:39:02 +0000 (12:39 +0000)]
Fix IA32_EPT_VPID_CAP_XO_TRANSLATIONS specification
Per Intel SDM (Vol 3D, App. A.10) bit 0 should be read as a 1 if enabled.
From Adam Steen. ok mlarkin@
tb [Mon, 29 Mar 2021 06:50:44 +0000 (06:50 +0000)]
Inline x509_get_extensions() and remove it
Since aia, aki and ski are all represented by char *, this is an
error-prone interface - as found by job. The function doesn't do
much anyway.
ok claudio
tb [Mon, 29 Mar 2021 06:38:35 +0000 (06:38 +0000)]
Pull up freeing cms in gbr_parse() after its last use to avoid a leak
on x509_get_extensions() failure.
Fix suggested by claudio
deraadt [Mon, 29 Mar 2021 06:15:29 +0000 (06:15 +0000)]
Check all inet_ntop() calls, in case we screw up the parameters somehow we
prefer a failure rather than some sort of weird truncation
ok claudio
tb [Mon, 29 Mar 2021 04:01:17 +0000 (04:01 +0000)]
sort includes
tb [Mon, 29 Mar 2021 04:00:38 +0000 (04:00 +0000)]
Remove accidental but justified annotation
yasuoka [Mon, 29 Mar 2021 03:54:39 +0000 (03:54 +0000)]
spellings
suggested by jsg
deraadt [Mon, 29 Mar 2021 03:45:35 +0000 (03:45 +0000)]
minor KNF and consistancy
(rpki-client is pretty good code, couple hours of audit and I can only find
a few minor things)
deraadt [Mon, 29 Mar 2021 03:39:14 +0000 (03:39 +0000)]
improve the naming of some intermediate buffers
deraadt [Mon, 29 Mar 2021 03:35:32 +0000 (03:35 +0000)]
3 additional snprintf() range checks (inconceivable these would ever
truncate, but if they do, we prefer to know)
ok job claudio
deraadt [Mon, 29 Mar 2021 03:34:52 +0000 (03:34 +0000)]
in unsafe_char(), handle %NN with array-index inspection rather than weird
ptr++
ok claudio
tb [Sun, 28 Mar 2021 18:12:09 +0000 (18:12 +0000)]
The failure mode of test-tls13-version-negotiation.py has changed.
Update comment.
stsp [Sun, 28 Mar 2021 18:02:32 +0000 (18:02 +0000)]
Since ipw(4) doesn't call into net80211_newstate() the interface link state
must be updated by the driver in order to get packets to flow.
In case of WPA the link state was updated as a side-effect of a successful
WPA handshake. This commit fixes the WEP and plaintext cases.
Problem reported and fix tested by Riccardo Mottola.
krw [Sun, 28 Mar 2021 17:25:21 +0000 (17:25 +0000)]
Now that the real time and monotonic time streams don't
cross flip CLOCK_REALTIME to CLOCK_MONOTONIC.
Suggested by cheloha@, millert@, otto@ at various
stages in the time_t -> timespec conversion.
krw [Sun, 28 Mar 2021 16:23:05 +0000 (16:23 +0000)]
Convert remaining timers (lease renew, rebind, expiry) to
timespec values. Translate from the epoch values in leases
to timespec values in one place.
Final step to allow CLOCK_REALTIME -> CLOCK_MONOTONIC time
accounting for the active lease.
job [Sun, 28 Mar 2021 16:22:17 +0000 (16:22 +0000)]
Add some restrictions to manifest object profile
OK tb@, feedback from claudio@
inoguchi [Sun, 28 Mar 2021 12:38:52 +0000 (12:38 +0000)]
Fix duplicate SSL_is_dtls in libssl and apps.c
Currently, SSL_is_dtls exists in both libssl and apps.c,
and one in libssl is guarded by LIBRESSL_INTERNAL and not exposed yet.
This causes portable build broke with openssl(1) and optionstest.
To solve this temporarily, rename SSL_is_dtls by apps.h.
This temporary renaming will be removed when the SSL_is_dtls() is exposed.
ok jsing@
sthen [Sun, 28 Mar 2021 12:10:05 +0000 (12:10 +0000)]
list Dell DW5821e as supported for umb(4)
sthen [Sun, 28 Mar 2021 12:08:58 +0000 (12:08 +0000)]
Add vid/pid table to umb(4) allowing matching to alternate config
Some devices present multiple configurations and the one chosen by default
is not always usable - for example, some have an CDC ECM config that does
not work with our cdce(4) - allow overriding to a specific config in those
cases.
From gerhard@ with tweaks to comments by me, ok patrick@
sthen [Sun, 28 Mar 2021 12:06:46 +0000 (12:06 +0000)]
sync
sthen [Sun, 28 Mar 2021 12:06:35 +0000 (12:06 +0000)]
add pid for Dell DW5821e and HUAWEI ME906s LTE, ok patrick@
kettenis [Sat, 27 Mar 2021 20:03:15 +0000 (20:03 +0000)]
Make sure that all CPUs end up with the same bits set in SCTLR_EL1.
Do this by clearing all the bits marked RES0 and set all the bits
marked RES1 for the ARMv8.0.
Any optional features introduced in later revisions of the architecture
(such as PAN) will be enabled after SCTLR_EL1 is initialized.
ok patrick@
kettenis [Sat, 27 Mar 2021 19:57:19 +0000 (19:57 +0000)]
Add ARMv8.5 instruction set related CPU features.
ok patrick@
job [Sat, 27 Mar 2021 18:12:15 +0000 (18:12 +0000)]
Send arguments in alphabetical order
OK tb@
tb [Sat, 27 Mar 2021 18:11:53 +0000 (18:11 +0000)]
Enable test-sig-algs-renegotiation-resumption.py.
This test covers various scenarios with renegotiation and session
resumption. In particular it crashes the OpenSSL 1.1.1j server due
to the sigalg NULL deref fixed this week. We need --sig-algs-drop-ok
since we do not currently implement signature_algorithms_cert.
florian [Sat, 27 Mar 2021 18:10:38 +0000 (18:10 +0000)]
If we want to configure default routes over multiple interfaces we
need to provide the address of the interface behind which the default
router is in case they are on the same subnet otherwise the kernel
can't figure out which route we are talking about
This happens for example when your wifi and wired networks are bridged.
Pointed out by claudio some time ago.
tb [Sat, 27 Mar 2021 17:56:28 +0000 (17:56 +0000)]
Garbage collect s->internal->type
This variable is used in the legacy stack to decide whether we are
a server or a client. That's what s->server is for...
The new TLSv1.3 stack failed to set s->internal->type, which resulted
in hilarious mishandling of previous_{client,server}_finished. Indeed,
both client and server would first store the client's verify_data in
previous_server_finished and later overwrite it with the server's
verify_data. Consequently, renegotiation has been completely broken
for more than a year. In fact, server side renegotiation was broken
during the 6.5 release cycle. Clearly, no-one uses this.
This commit fixes client side renegotiation and restores the previous
behavior of SSL_get_client_CA_list(). Server side renegotiation will
be fixed in a later commit.
ok jsing
kn [Sat, 27 Mar 2021 14:36:28 +0000 (14:36 +0000)]
Fix SDMMC_DEBUG build
- Replace undefined SDMMCDEVNAME macro with usual DEVNAME from sdmmcvar.h
- typofix struct member name
bcook [Sat, 27 Mar 2021 11:17:58 +0000 (11:17 +0000)]
Handle dynamic definition of SIGSTKSZ as of glibc 2.34 on Linux.
ok bluhm@, inoguchi@, tb@, deraadt@
remi [Sat, 27 Mar 2021 10:23:25 +0000 (10:23 +0000)]
The ospf6d manpage states that the daemon laks support for multi area
configurations. Fix the example config to only use one area instead of
two.
Issue brought up and OK danj@
claudio@ doesn't mind
dlg [Sat, 27 Mar 2021 01:12:01 +0000 (01:12 +0000)]
trim the FCS off Ethernet packets before sending them up the stack.
Jurjen Oskam on tech@ found that ure in a veb caused these extra
fcs bytes to be transmitted by other veb members. the extra bytes
aren't a problem usually because our network stack ignores them if
they're present, eg, the ip stack reads an ip packet length and
trims bytes in an mbuf if there's more. bridge(4) masked this problem
because it always parses IP packets going over the bridge and trims
them like the IP stack before pushing them out another port.
veb(4) generally just moves packets around based on the Ethernet
header, by default it doesn't look too deeply into packets, which
is why this issue popped out.
it is more correct for ure to just not pass the fcs bytes up.
ok jmatthew@ kevlo@
kn [Fri, 26 Mar 2021 23:34:50 +0000 (23:34 +0000)]
Return EOPNOTSUPP for unsupported ioctls
Match what apm(4/macppc) says and make apmd(8) log an approiate warning when
unsupported power actions are requested.
Merge identical cases while here.
This syncs with the apm ioctl handlers on loongson and arm64.