martijn [Mon, 20 Nov 2023 10:34:21 +0000 (10:34 +0000)]
Add a couple of tests for handling of tcp connections.
martijn [Mon, 20 Nov 2023 10:32:45 +0000 (10:32 +0000)]
In snmpe_writecb, don't call snmpe_prepare_read() when there's still
data left inside sm_data. If there's an incomplete packet left in the
buffer it will be called from snmpe_tryparse, if there's a complete
packet left we can end up with new events from the tcp socket, which the
tcp subsystem isn't prepared to handle.
OK tb@
kettenis [Mon, 20 Nov 2023 10:11:03 +0000 (10:11 +0000)]
Code changes between llvm 13 and 16 mean that we have to drop the final dot
for the .openbsd.randomdata and .openbsd.mutable section merging code.
ok jca@
jca [Mon, 20 Nov 2023 04:53:11 +0000 (04:53 +0000)]
Restore lost patch: downgrade RISCV ABI mismatch error to a warning
This lets lld link code with object files created with ld -b binary,
as used by several ports (mupdf, postgresql-pllua, various games).
Upstream report with an unfinished diff: https://reviews.llvm.org/
D106378
ok gkoehler@ kettenis@
djm [Mon, 20 Nov 2023 02:50:00 +0000 (02:50 +0000)]
set errno=EAFNOSUPPORT when filtering addresses that don't match
AddressFamily; yields slightly better error message if no address
matches. bz#3526
jsg [Mon, 20 Nov 2023 01:35:21 +0000 (01:35 +0000)]
only enable bti and pac by default on arm64
before this change, clang on armv7 defined __ARM_FEATURE_BTI_DEFAULT and
__ARM_FEATURE_PAC_DEFAULT which broke the build of llvm libunwind
ok kettenis@ deraadt@
tb [Mon, 20 Nov 2023 01:20:19 +0000 (01:20 +0000)]
Still need engine.h for ENGINE_free()
But do away with the OPENSSL_NO_ENGINE dance.
tb [Sun, 19 Nov 2023 21:13:47 +0000 (21:13 +0000)]
Mark up an occurrence of ENGINE
tb [Sun, 19 Nov 2023 21:08:04 +0000 (21:08 +0000)]
ENGINE can no longer have ex_data attached to it
tb [Sun, 19 Nov 2023 21:06:15 +0000 (21:06 +0000)]
Remove musings how ENGINE may or may not screw everything up.
tb [Sun, 19 Nov 2023 21:03:22 +0000 (21:03 +0000)]
Remove ENGINE mention in RSA_new()
tb [Sun, 19 Nov 2023 21:01:27 +0000 (21:01 +0000)]
OPENSSL_config() no longer calls ENGINE_load_builtin_engines()
tb [Sun, 19 Nov 2023 20:59:00 +0000 (20:59 +0000)]
ENGINE_add_conf_module() no longer exists
tb [Sun, 19 Nov 2023 20:58:07 +0000 (20:58 +0000)]
Remove ENGINE Xr that I left behind
tb [Sun, 19 Nov 2023 20:54:14 +0000 (20:54 +0000)]
zap stray comma
kettenis [Sun, 19 Nov 2023 16:42:05 +0000 (16:42 +0000)]
Disable LOAD_STACK_GUARD on OpenBSD/armv7. It seems the implementation
is incomplete resulting in SIGSEGV with the OpenBSD default options.
ok deraadt@, jsg@
tb [Sun, 19 Nov 2023 15:51:49 +0000 (15:51 +0000)]
Unifdef OPENSSL_NO_ENGINE in libssl
As usual, a few manual fixes to avoid duplicate lines.
ok jsing
tb [Sun, 19 Nov 2023 15:50:29 +0000 (15:50 +0000)]
Manually unifdef OPENSSL_NO_ENGINE in ssl_clnt.c
This allows us to simplify ssl_do_client_cert_cb() a bit.
ok jsing
tb [Sun, 19 Nov 2023 15:47:40 +0000 (15:47 +0000)]
Rename an ENGINE from e to engine for consistency
tb [Sun, 19 Nov 2023 15:46:09 +0000 (15:46 +0000)]
Unifdef OPENSSL_NO_ENGINE in libcrypto
This is mechanical apart from a few manual edits to avoid doubled empty
lines.
ok jsing
tb [Sun, 19 Nov 2023 15:43:52 +0000 (15:43 +0000)]
Unifdef OPENSSL_NO_ENGINE in pmeth_lib.c
This includes a manual intervention for the call to EVP_PKEY_meth_find()
which ended up in the middle of nowhere.
ok jsing
tb [Sun, 19 Nov 2023 15:41:46 +0000 (15:41 +0000)]
Unifdef OPENSSL_NO_ENGINE in engine.h
Also rip out all the gross, useless comments. There's still too much
garbage in here...
ok jsing
tb [Sun, 19 Nov 2023 15:40:12 +0000 (15:40 +0000)]
Also mention ENGINE_{cleanup,{ctrl_cmd{,_string}()
tb [Sun, 19 Nov 2023 13:12:06 +0000 (13:12 +0000)]
Remove last OPENSSL_NO_ENGINE from libssl regress
tb [Sun, 19 Nov 2023 13:11:05 +0000 (13:11 +0000)]
Unifdef OPENSSL_NO_ENGINE in libcrypto regress
tb [Sun, 19 Nov 2023 11:50:02 +0000 (11:50 +0000)]
Missing period
tb [Sun, 19 Nov 2023 11:47:25 +0000 (11:47 +0000)]
fix grammar
claudio [Sun, 19 Nov 2023 10:41:25 +0000 (10:41 +0000)]
util.c requires stdint.h for UINT32_MAX and friends.
OK tb@
tb [Sun, 19 Nov 2023 10:37:35 +0000 (10:37 +0000)]
sync
tb [Sun, 19 Nov 2023 10:36:14 +0000 (10:36 +0000)]
Remove remaining ENGINE manuals
They document functionality that no longer exists.
tb [Sun, 19 Nov 2023 10:34:26 +0000 (10:34 +0000)]
Strip mention of ENGINE out of *_set_method.3
tb [Sun, 19 Nov 2023 10:27:49 +0000 (10:27 +0000)]
Strip out mentions of ENGINE_load_builtin_engines()
There's probably more that needs to be updated here, but that can be done
another day.
tb [Sun, 19 Nov 2023 10:26:36 +0000 (10:26 +0000)]
ex data for ENGINEs is no longer a thing
tb [Sun, 19 Nov 2023 10:25:28 +0000 (10:25 +0000)]
Remove section explaining how great and flexible ENGINE is and
remove two Xr to ENGINE manuals.
tb [Sun, 19 Nov 2023 10:23:53 +0000 (10:23 +0000)]
Remove obsolete engine configuration section
tb [Sun, 19 Nov 2023 10:19:54 +0000 (10:19 +0000)]
Document the remaining ENGINE stubs in a single manual
tb [Sun, 19 Nov 2023 10:09:27 +0000 (10:09 +0000)]
EVP_PKEY_encrypt() simplify example
In particular, do not use an uninitialized engine, simply pass NULL.
tb [Sun, 19 Nov 2023 09:29:11 +0000 (09:29 +0000)]
openssl pkcs12: rewrite without reaching into X509_ALGOR
We can call ASN1_item_unpack() which will end up stuffing the same
arguments into ASN1_item_d2i() as d2i_PBEPARAM(). This eliminates
the last struct access into X509_ALGOR outside libcrypto in the base
tree.
ok jsing
tb [Sun, 19 Nov 2023 09:19:54 +0000 (09:19 +0000)]
openssl ts: convert to X509_ALGOR_set0()
ok jsing
gkoehler [Sun, 19 Nov 2023 01:14:07 +0000 (01:14 +0000)]
Fix cc -ftrapping-math on macppc
Handle CALL_RM like CALL for 32-bit ELF. If a function call has the
strictfp attribute, its opcode changes from CALL to CALL_RM. If a
call uses the secure PLT, then it must getGlobalBaseReg() to set r30.
After I rebuilt xenocara/lib/pixman with this change, Xorg stopped
crashing on my macppc. pixman uses cc -ftrapping-math which puts
strictfp on each function call.
https://github.com/llvm/llvm-project/pull/72758
ok jca@ tobhe@ deraadt@
deraadt [Sun, 19 Nov 2023 00:46:54 +0000 (00:46 +0000)]
need to use a slightly different asm syntax..
tb [Sat, 18 Nov 2023 22:43:56 +0000 (22:43 +0000)]
sync zlib with userland
tb [Sat, 18 Nov 2023 22:43:25 +0000 (22:43 +0000)]
libz sync with develop branch, discussed with deraadt
Apart from cosmetics, this includes the following commits:
Add LIT_MEM define to use more memory for a small deflate speedup.
A bug fix in zlib 1.2.12 resulted in a slight slowdown (1-2%) of
deflate. This commit provides the option to #define LIT_MEM, which
uses more memory to reverse most of that slowdown. The memory for
the pending buffer and symbol buffers is increased by 25%, which
increases the total memory usage with the default parameters by
about 6%.
https://github.com/madler/zlib/commit/
ac8f12c97d1afd9bafa9c710f827d40a407d3266
Fix bug in inflateSync() for data held in bit buffer.
https://github.com/madler/zlib/commit/
5af7cef45eeef86ddf6ab00b4e363c1eecaf47b6
tb [Sat, 18 Nov 2023 22:40:14 +0000 (22:40 +0000)]
Sync example.c and minigzip.c with upstream.
This silences lots of K&R warning noise.
deraadt [Sat, 18 Nov 2023 18:02:47 +0000 (18:02 +0000)]
oops another copy of the prototype
deraadt [Sat, 18 Nov 2023 16:26:15 +0000 (16:26 +0000)]
crt0 uses a helper function in a MD src/libexec/ld.so .h file (rather than
reproducing the relevant defines and code in a different place) to perform
minor relocations. If things go very wrong, it would call _dl_exit() --
a locally defined crt0 function which is syscall exit(2). We don't need
to call exit(2) for this obscure case which doesn't happen and provides no
debugging information. An 'abort' is going to provide better information.
So let's change the function name to _dso_abort() and make it a single
illegal instruction.
ok guenther
krw [Sat, 18 Nov 2023 15:42:09 +0000 (15:42 +0000)]
Scan past whitespace before checking if flag string starts
with "0x".
Pointed out by Philippe Meunier.
tb [Sat, 18 Nov 2023 10:51:09 +0000 (10:51 +0000)]
Check for negative EVP_CIPHER_CTX_iv_length() return in libssl
ok beck
tb [Sat, 18 Nov 2023 10:46:58 +0000 (10:46 +0000)]
Forgot to fix one unsigned int vs int confusion
CID 468015
tb [Sat, 18 Nov 2023 09:37:15 +0000 (09:37 +0000)]
Check for negative IV length
A recent change in EVP_CIPHER_CTX_iv_length() made it possible in principle
that this function returns -1. This can only happen for an incorrectly set
up EVP_CIPHER. Still it is better form to check for negative lengths before
stuffing it into a memcpy().
It would probably be desirable to cap the iv_length to something large
enough. This can be done another time.
ok beck
sthen [Sat, 18 Nov 2023 09:15:05 +0000 (09:15 +0000)]
sync
anton [Sat, 18 Nov 2023 07:18:07 +0000 (07:18 +0000)]
Fix make other_two target by coping with leapseconds being placed in
objdir by now.
claudio [Sat, 18 Nov 2023 07:14:13 +0000 (07:14 +0000)]
Rename internal function imsg_get_fd() to imsg_dequeue_fd().
OK tb@
dlg [Sat, 18 Nov 2023 00:23:38 +0000 (00:23 +0000)]
ports specified on tunnel destination addresses are invalid.
millert [Fri, 17 Nov 2023 21:54:20 +0000 (21:54 +0000)]
Use "mv -f" when moving the output file into place in the obj dir.
millert [Fri, 17 Nov 2023 21:51:37 +0000 (21:51 +0000)]
zoneinfo: install tzdata.zi and leap-seconds.list
Build and install the tzdata.zi file and build the leapseconds file
from leap-seconds.list (installing both versions). Third-party
software now expects these files to be installed. OK sthen@ deraadt@
visa [Fri, 17 Nov 2023 15:46:58 +0000 (15:46 +0000)]
Use -mxgot to avoid GOT overflow during build on mips64.
Tested by deraadt@
claudio [Fri, 17 Nov 2023 15:35:15 +0000 (15:35 +0000)]
The term peerid originated from bgpd. It is time to generalize this and
just call it id. This only targets the function arguments but not the
struct imsg_hdr field since that is a major API break.
OK tb@
tobhe [Fri, 17 Nov 2023 14:43:36 +0000 (14:43 +0000)]
Set "unique_subject = no" to allow renewing expired certificates.
Without this, openssl throws an error when creating a second req for
the same subject which leads to ikectl deleting the old cert without
creating a new one.
Reported by Ryan Kavanagh in openiked-portable here:
https://github.com/openiked/openiked-portable/issues/125
discussed with tb@
ok patrick@
claudio [Fri, 17 Nov 2023 13:43:32 +0000 (13:43 +0000)]
rename struct imsgbuf *ibuf to *imsgbuf since ibuf is too close to
struct ibuf and just causes confusion for little gain.
OK tb@ stsp@
claudio [Fri, 17 Nov 2023 12:10:23 +0000 (12:10 +0000)]
Do not log errors form pcap_dispatch() caused by signals.
pcap_dispatch() returns -1 (PCAP_ERROR) or -2 (PCAP_ERROR_BREAK) the
latter is used when a signal is received and is not an error. So limit
the code to log errors to np == -1.
OK semarie@ sashan@
schwarze [Thu, 16 Nov 2023 20:27:43 +0000 (20:27 +0000)]
Mention which functions are implemented as macros in the few cases
where that information was missing.
schwarze [Thu, 16 Nov 2023 20:19:23 +0000 (20:19 +0000)]
drop some duplicate statements about macros
schwarze [Thu, 16 Nov 2023 20:17:04 +0000 (20:17 +0000)]
fix wrong macro
robert [Thu, 16 Nov 2023 19:38:44 +0000 (19:38 +0000)]
downgrade -Wint-conversion to a warning
autoconf might misinterpet this so we need to do a full sweep
before it can be upgraded to an error again
bluhm [Thu, 16 Nov 2023 18:27:48 +0000 (18:27 +0000)]
Run TCP SYN cache timer logik without net lock.
Introduce global TCP SYN cache mutex. Devide timer function in
parts protected by mutex and sending with netlock. Split the flags
field in dynamic flags protected by mutex and fixed flags set during
initialization. Document whether fields of struct syn_cache are
protected by net lock or mutex.
input and OK sashan@
schwarze [Thu, 16 Nov 2023 18:10:19 +0000 (18:10 +0000)]
delete lots of stuff that no longer exists
millert [Thu, 16 Nov 2023 16:05:13 +0000 (16:05 +0000)]
Use tset -I for all terminals, not just xterm.
Terminal initialization is usually only needed for hardware terminals,
which are rare these days, and the initialization strings result
in a bunch of extra newlines on pseudo-terminals. OK nicm@
millert [Thu, 16 Nov 2023 16:03:51 +0000 (16:03 +0000)]
Use tset -I for all terminals, not just xterm.
Terminal initialization is usually only needed for hardware terminals,
which are rare these days, and the initialization strings result
in a bunch of extra newlines on pseudo-terminals. OK nicm@
schwarze [Thu, 16 Nov 2023 15:39:32 +0000 (15:39 +0000)]
fix typo: exdata -> ex_data
robert [Thu, 16 Nov 2023 15:05:44 +0000 (15:05 +0000)]
set .NOTPARALLEL for AMDGPU tblgen files to tame memory usage on i386
ok deraadt@
martijn [Thu, 16 Nov 2023 14:35:25 +0000 (14:35 +0000)]
In appl_processpdu() no need to set avi_next, and only set av_next up
to varbindlen, since its only use is to print the varbindlist via
appl_pdu_log() and both are further properly initialized in
appl_request_upstream_resolve().
This fixes a cosmetic off by one for getbulk requests.
OK tb@
tb [Thu, 16 Nov 2023 14:20:49 +0000 (14:20 +0000)]
Minimal fix to unbreak OPENSSL_{gmtime,timegm}(3)
I was told not to look since it will magically get fixed. Fine. I'd still
have expected a minimal amount of care so that the manpage isn't totally
dysfunctional and missing text in the right places. Sigh.
deraadt [Thu, 16 Nov 2023 13:47:42 +0000 (13:47 +0000)]
crank some limits because clang is a piggy
deraadt [Thu, 16 Nov 2023 13:47:22 +0000 (13:47 +0000)]
crank MAXTSIZ because clang is a piggy
martijn [Thu, 16 Nov 2023 13:26:45 +0000 (13:26 +0000)]
Add 3 tests for when getbulk reaches EOMV.
martijn [Thu, 16 Nov 2023 13:25:07 +0000 (13:25 +0000)]
avi_origid must also be set when transitioning out of the
APPL_VBSTATE_MUSTFILL state, else snmpd won't like use once we reach
EOMV of our view of the world.
OK tb@
tb [Thu, 16 Nov 2023 11:18:47 +0000 (11:18 +0000)]
Simplify CRL printing
ok claudio
tb [Thu, 16 Nov 2023 11:17:52 +0000 (11:17 +0000)]
Improve CRL extension checking
RFC 6487 section 5 requires AKI and CRL Number and no other numbers to be
present in a CRL. We only checked for AKI and ignored other extensions.
Pointed out by Haya Schulmann et al
ok claudio
tb [Thu, 16 Nov 2023 11:10:59 +0000 (11:10 +0000)]
Add a helper to extrct the CRL Number from a crl
ok claudio
op [Thu, 16 Nov 2023 10:23:21 +0000 (10:23 +0000)]
consider an MX of "localhost" as it were a "Null MX"
diff from Philipp (philipp+openbsd [at] bureaucracy [dot] de), thanks!
ok sthen@
anton [Thu, 16 Nov 2023 06:27:12 +0000 (06:27 +0000)]
Add expected output files, missed in previous commit. I hope our grep is
producing the wanted output at this point.
dlg [Thu, 16 Nov 2023 03:17:34 +0000 (03:17 +0000)]
avoid reading data when enumerating kstats.
this means we can reliably read the provider/instance/name/unit
tuple, which should avoid "duplicate kstat entry" when multiple
kstat read handlers have issues.
found on a box with multiple rge interfaces, which have hardware
backed kstats that can only be read when the interface is up.
dlg [Thu, 16 Nov 2023 02:45:54 +0000 (02:45 +0000)]
handle printing cpu freq and volt kstat_kv types
dlg [Thu, 16 Nov 2023 02:45:20 +0000 (02:45 +0000)]
cpu frequency and volt types for kstat_kvs
dlg [Wed, 15 Nov 2023 23:57:45 +0000 (23:57 +0000)]
use a random number as the cookie in bio ioctls.
ok kn@ krw@
djm [Wed, 15 Nov 2023 23:03:38 +0000 (23:03 +0000)]
when connecting via socket (the default case), filter addresses by
AddressFamily if one was specified. Fixes the case where, if
CanonicalizeHostname is enabled, ssh may ignore AddressFamily.
bz5326; ok dtucker
djm [Wed, 15 Nov 2023 22:51:49 +0000 (22:51 +0000)]
when deciding whether to enable keystroke timing obfuscation,
only consider enabling it when a channel with a tty is open.
Avoids turning on the obfucation when X11 forwarding only is in use,
which slows it right down. Reported by Roger Marsh
kn [Wed, 15 Nov 2023 20:23:19 +0000 (20:23 +0000)]
Constify disk_map()'s path argument
The disklabel UID passed in is not modified, reflect that and allow callers
using 'const char *'.
OK miod
millert [Wed, 15 Nov 2023 18:56:53 +0000 (18:56 +0000)]
fnematch: fix a bug that could result in extra chars being pushed back.
From Arnold Robbins. https://github.com/onetrueawk/awk/pull/213
millert [Wed, 15 Nov 2023 18:48:13 +0000 (18:48 +0000)]
fnematch: fix out-of-bounds access on EOF
fnematch() expects to store a NUL byte when EOF is encountered.
However, the rewrite broke this assumption because r.len from getrune()
is zero on EOF. This results in j becoming negative on EOF, causing an
out-of-bounds access. It is simplest to just force r.len to 1 on EOF
to copy a single NUL byte--the rune is initialized to zero even for EOF.
This also fixes the call to adjbuf(). We cannot use 'k' to determine
when we need to expand the buffer now that we are potentially reading
more than a single byte at a time.
https://github.com/onetrueawk/awk/pull/211
otto [Wed, 15 Nov 2023 15:52:09 +0000 (15:52 +0000)]
Correct denominators when converting NTP fixed point values to double
and vice-versa; ok tb@
martijn [Wed, 15 Nov 2023 13:36:11 +0000 (13:36 +0000)]
Make sure we allocate the correct size for an appl_agentcap.
OK claudio@ miod@
afresh1 [Wed, 15 Nov 2023 02:07:43 +0000 (02:07 +0000)]
Don't let signify mess up our status line
While not verbose the status line is built as we go, so save errors from
signify until after we've finished the status line. This should exit and print
the error immediately, since this happens when fetching the SHA256.sig and
fw_update exits early in that case.
afresh1 [Wed, 15 Nov 2023 02:03:49 +0000 (02:03 +0000)]
Improve output after waiting for package db lock
OpenBSD::PackageInfo::lock_db will send messages to STDERR if we ended up
waiting for a lock, if that happens, it stomped over the "fw_update:" prefix on
the status line so tidy up and print it out again.
afresh1 [Wed, 15 Nov 2023 02:00:02 +0000 (02:00 +0000)]
Better handle ftp errors in fw_update
Trap STDERR to post-process it looking for 404 errors to handle them differently.
The fetch method now also returns different error codes for errors that can
continue on. Currently only 404 is special and everything else should cause
fw_update to exit early without trying all the files.
Exit early if the SHA256.sig gets a 404 because that is required to figure out
what valid firmware are.
afresh1 [Wed, 15 Nov 2023 01:54:01 +0000 (01:54 +0000)]
Improve fw_update output on errors
Mostly some setup for the future, by separating out the filehandles we use for
the status and errors more specifically, we can trap the things we know about
without hiding surprises.
tb [Wed, 15 Nov 2023 00:55:43 +0000 (00:55 +0000)]
Drop some unnecessary parentheses
tb [Wed, 15 Nov 2023 00:52:44 +0000 (00:52 +0000)]
Shuffle getters and adders down a bit
These use static helper functions which don't need prototypes this way.
millert [Wed, 15 Nov 2023 00:52:42 +0000 (00:52 +0000)]
Add regress test for "grep -m" behavior. From Crystal Kolipe.