kettenis [Tue, 26 Dec 2023 09:25:15 +0000 (09:25 +0000)]
Apple machines with multiple speakers typically have the shutdown pin of
the digital amplifier codecs wired up to a single GPIO. This is apparently
problematic for Linux and Asahi Linux changed their device trees to use a
regulator instead to such that reference counting makes sure that shutdown
isn't asserted until all codecs are ready for it. Follow suit, even though
our regulator code doesn't do the proper reference counting yet.
ok patrick@
kettenis [Tue, 26 Dec 2023 09:19:15 +0000 (09:19 +0000)]
Improve handling of SError interrupts. Print some useful information and
allow additional information to be printed for specific CPU types. Use
this to print the L2C registers on Apple CPUs which can be very useful
in tracking down the source of certain SError interrupts.
ok miod@, dlg@
tb [Tue, 26 Dec 2023 09:04:30 +0000 (09:04 +0000)]
EVP_CipherInit(): remove cleanup call
There is a bizarre EVP_CIPHER_CTX_cleanup() call in EVP_CipherInit()
leading to a subtle behavior difference with EVP_CipherInit_ex().
The history is that before EVP_CIPHER_CTX was made opaque, a context would
often live on the stack (hello, MariaDB) and the EVP_CIPHER_CTX_cleanup()
call was in fact an EVP_CIPHER_CTX_init() which just zeroes out the struct.
The problem with doing this is that on context reuse there could be data
hanging off it, causing leaks. Attempts were made to clean up things in
EVP_CipherFinal*(), but that broke applications reaching into the context
afterward, so they were removed again. Later on, opacity allowed changing
the _init() to a _cleanup() since EVP_CIPHER_CTX could no longer live on
the stack, so it would no longer contain garbage. I have to correct myself:
it would no longer contain stack garbage.
Now: EVP_CipherInit_ex() does some extra dances to preserve the AES key
wrap flag, which is cleared unconditionally in EVP_CipherInit(). That's
annoying to document and very likely never going to be an issue in the
wild: you'd need to do key wrap and then use the same context for use
with a cipher that does not allow key wrap for this to make a difference.
This way, all our EVP_{Cipher,Decrypt,Encrypt}*_ex() functions are now
trivially wrapped by their non-_ex() versions.
ok jsing
tb [Tue, 26 Dec 2023 08:39:28 +0000 (08:39 +0000)]
EVP_CipherInit_ex() merge two code paths
Clean up the cipher context unconditionally if the cipher is being set.
This allows doing the dance to retain the key wrap flag only once and
makes it more obvious that allocating the cipher data doesn't leak.
suggested by/ok jsing
tb [Mon, 25 Dec 2023 22:41:50 +0000 (22:41 +0000)]
Move EVP_PKEY_assign() a bit up and tweak it slightly
ok jsing
tb [Mon, 25 Dec 2023 22:14:23 +0000 (22:14 +0000)]
Remove unused X509_LOOKUP_METHODs
None of these function pointers were ever set. Now that the structure is
opaque they won't ever be, so time for them to hit the bitbucket. Infinite
extensibility of the toolkit results in complications, bugs, and dead code.
ok jsing
tb [Mon, 25 Dec 2023 22:02:59 +0000 (22:02 +0000)]
Avoid out-of-bounds accesses in ASN1_BIT_STRING_{get,set}()
If a negative n is passed, these functions would underrun the bitstring's
data array. So add checks for that and drop spades of unnecessary parens.
These functions are quite broken anyway. The setter attempts to zap the
unnecessary trailing zero octets, but fails to do so if the bit being
cleared isn't already set. Worse is the getter where you can't tell an
error (like attempting an out-of-bounds read) from the bit being unset.
ok joshua
tb [Mon, 25 Dec 2023 21:55:31 +0000 (21:55 +0000)]
Rename a few ret into pkey
tb [Mon, 25 Dec 2023 21:51:57 +0000 (21:51 +0000)]
Rework EVP_PKEY_set_type{,_str}()
These two functions previously wrapped a pkey_set_type() helper, which
was an utter mess because of ENGINE. With the long awaited departure of
ENGINE, this function became a lot simpler. A further simplification is
obtained by not doing the optimization to avoid an ameth lookup: this
requires walking a list of 11 ameths. We should consider bsearch()...
With this gone and a saner implementation of EVP_PKEY_free_it(), we can
implement these functions with a dozen lines of code each.
ok jsing
tb [Mon, 25 Dec 2023 21:41:19 +0000 (21:41 +0000)]
Rework EVP_PKEY_free()
Use pkey instead of x, remove the pointless variable i, no need to check
for NULL before sk_X509_ATTRIBUTE_pop_free(), switch to freezero() to
leave fewer invalid pointers around.
ok jsing
tb [Mon, 25 Dec 2023 21:37:26 +0000 (21:37 +0000)]
Move EVP_PKEY_free() up next to evp_pkey_free_pkey_ptr()
ok jsing
tb [Mon, 25 Dec 2023 21:36:05 +0000 (21:36 +0000)]
Fix EVP_PKEY_up_ref() - must have hit ^X somehow
tb [Mon, 25 Dec 2023 21:33:50 +0000 (21:33 +0000)]
Rework evp_pkey_free_pkey_ptr()
Rename the variable from x into pkey, make it NULL safe and unindent.
ok jsing
tb [Mon, 25 Dec 2023 21:31:58 +0000 (21:31 +0000)]
Rename EVP_PKEY_free_it() into evp_pkey_free_pkey_ptr()
ok jsing
tb [Mon, 25 Dec 2023 21:30:53 +0000 (21:30 +0000)]
Move the confusingly named EVP_PKEY_free_it() a bit up
ok jsing
tb [Mon, 25 Dec 2023 21:27:03 +0000 (21:27 +0000)]
Simplify EVP_PKEY_up_ref()
There is no need for a local variable and a ternary operator here.
ok jsing
tb [Mon, 25 Dec 2023 21:25:24 +0000 (21:25 +0000)]
Switch EVP_PKEY_new() from malloc() to calloc()
ok jsing
schwarze [Mon, 25 Dec 2023 15:52:18 +0000 (15:52 +0000)]
Clarify that the ENGINE argument is ignored; OK tb@.
While here, also switch the argument placeholder from *impl to *engine
as suggested by tb@.
jca [Mon, 25 Dec 2023 10:01:18 +0000 (10:01 +0000)]
Install media contain no packages anymore so move packages build last
This may the first items all speak about base and xenocara material, and
the mention of ports/packages feels less out of place. Input and ok tb@
jca [Mon, 25 Dec 2023 09:58:15 +0000 (09:58 +0000)]
Zap HISTORY
Knowing for which release this documentation was introduced seems
superfluous. ok tb@
tb [Sun, 24 Dec 2023 22:17:05 +0000 (22:17 +0000)]
Move EVP_Digest() next to the functions it wraps
It really makes no sense to have the mess that is EVP_MD_CTX_copy{,_ex}()
live between EVP_Digest{Init{,_ex},Update,Final{,_ex}}() and EVP_Digest(),
the latter being a relatively simple wrapper of Init_ex/Update/Final_ex.
jsg [Sun, 24 Dec 2023 11:12:34 +0000 (11:12 +0000)]
rename bus_type enum to sparc_bus_type to not conflict with bus_type in drm
build error reported by deraadt@ ok kettenis@
job [Sun, 24 Dec 2023 10:48:58 +0000 (10:48 +0000)]
Zal dead code
OK tb@
gnezdo [Sun, 24 Dec 2023 06:35:05 +0000 (06:35 +0000)]
Rewrite dev_mkdb with FTS
This adds support for the devices in nested directories.
Pointers, review, and OK by semarie@
kn [Sat, 23 Dec 2023 23:03:00 +0000 (23:03 +0000)]
Relax -C pledge to unbreak shelling out in interactive mode
r1.69 introduced -C in 2008 "to continue multiple transfers";
'ftp -C ftp://ftp.eu.openbsd.org/' lands in "ftp> " and turns "mget"
into "reget" by default.
r1.139 -C/resume without "proc exec" thusly was too strict.
Instead, now after recent cleanups/tweaks, prevent execution with -o.
OK millert
kettenis [Sat, 23 Dec 2023 22:40:42 +0000 (22:40 +0000)]
Remove unused variables.
afresh1 [Sat, 23 Dec 2023 21:03:01 +0000 (21:03 +0000)]
Sync for perl 5.36.3
afresh1 [Sat, 23 Dec 2023 21:02:20 +0000 (21:02 +0000)]
Update to perl 5.36.3
No changes to perl, as those were already committed for the earlier errata.
This just brings documentation and such in line with upstream.
ok bluhm@
kettenis [Sat, 23 Dec 2023 18:28:38 +0000 (18:28 +0000)]
Add support for "locked" DARTs. These have the page table registers
locked down and we need to retain the existing mappings.
ok patrick@
millert [Sat, 23 Dec 2023 15:58:58 +0000 (15:58 +0000)]
Suppress a spurious empty arg at EOF w/ "find -0" caused by the last commit.
kettenis [Sat, 23 Dec 2023 14:18:27 +0000 (14:18 +0000)]
Provide more complete implementations of some of the Linux compat
interfaces that are needed for the upcoming apple kms driver.
ok jsg@
kettenis [Sat, 23 Dec 2023 13:44:57 +0000 (13:44 +0000)]
Change the type of dma_addr_t to uint64_t. It is a 64-bit type on most
Linux architectures (including the most popular 32-bit ones) and a new
driver I'm working on tries to print a dma_addr_t variable using %llx.
ok jsg@
tb [Sat, 23 Dec 2023 13:05:06 +0000 (13:05 +0000)]
Use more consistent order for Init/Update/Final
Consistently implement the _ex() version after the non-extended versions,
First Cipher Init/Update/Final, then Encrypt, then Decrypt. This only
switches the order of CipherFinal{,_ex} and move the DecryptInit* down,
so they are no longer somewhere in the middle of the Encrypt* functions.
bluhm [Sat, 23 Dec 2023 10:52:54 +0000 (10:52 +0000)]
Backout always allocate per-CPU statistics counters for network
interface descriptor. It panics during attach of em(4) device at
boot.
op [Sat, 23 Dec 2023 10:29:05 +0000 (10:29 +0000)]
remove trailing whitespaces
jsg [Sat, 23 Dec 2023 02:42:51 +0000 (02:42 +0000)]
ketttenis -> kettenis
tb [Sat, 23 Dec 2023 00:52:13 +0000 (00:52 +0000)]
Prefix get_trusted_issuer() with x509_vfy_
mvs [Fri, 22 Dec 2023 23:01:50 +0000 (23:01 +0000)]
Always allocate per-CPU statistics counters for network interface
descriptor.
We have the mess in network interface statistics. Only pseudo drivers
do per-CPU counters allocation, all other network devices use the old
`if_data'. The network stack partially uses per-CPU counters and
partially use `if_data', but the protection is inconsistent: some times
counters accessed with exclusive netlock, some times with shared
netlock, some times with kernel lock, but without netlock, some times
with another locks.
To make network interfaces statistics more consistent, always allocate
per-CPU counters at interface attachment time and use it instead of
`if_data'. At this step only move counters allocation to the if_attach()
internals. The `if_data' removal will be performed with the following
diffs to make review and tests easier.
ok bluhm
jca [Fri, 22 Dec 2023 20:32:29 +0000 (20:32 +0000)]
Zap useless newline added in previous
jca [Fri, 22 Dec 2023 20:29:27 +0000 (20:29 +0000)]
'pax' format support for files over 8GB
ok millert@
tb [Fri, 22 Dec 2023 17:37:14 +0000 (17:37 +0000)]
Remove two no longer necessary reminders
I guess I'm getting old. Next time I'll have to add a reminder not to
forget to remove the reminder.
tb [Fri, 22 Dec 2023 17:25:47 +0000 (17:25 +0000)]
Remove extra whitespace on two lines
millert [Fri, 22 Dec 2023 17:12:13 +0000 (17:12 +0000)]
xargs: fix parsing of empty fields when "xargs -0" is used.
Previously, these fields would be skipped. From Hiltjo Posthuma.
tb [Fri, 22 Dec 2023 14:58:05 +0000 (14:58 +0000)]
Add length checks for partial_len
These remove a few more potential out-of-bounds accesses and ensure in
particular that the padding is between 1 and block_size (inclusive).
ok joshua jsing
deraadt [Fri, 22 Dec 2023 13:48:04 +0000 (13:48 +0000)]
sync
tb [Fri, 22 Dec 2023 13:46:37 +0000 (13:46 +0000)]
Rename check_hosts()
tb [Fri, 22 Dec 2023 13:45:28 +0000 (13:45 +0000)]
Replace check_trust() with its x509_vfy_ prefixed wrapper
tb [Fri, 22 Dec 2023 13:42:18 +0000 (13:42 +0000)]
Replace check_chain_extensions() with its x509_vfy_ wrapper
tb [Fri, 22 Dec 2023 13:36:20 +0000 (13:36 +0000)]
Replace check_id() with its x509_vfy_check_id() wrapper
tb [Fri, 22 Dec 2023 13:31:35 +0000 (13:31 +0000)]
Remove a bunch of function pointers from X509_STORE_CTX
These are only ever set to one particular function which is either local
to this file or part of the public API and we never added the public API
to set them to something else. Prefix the local functions touched in this
commit with x509_vfy_. More cleanup to follow.
ok joshua jsing
martijn [Fri, 22 Dec 2023 13:04:30 +0000 (13:04 +0000)]
Call log_setverbosity() directly after getopt() so that debugging
information during config-parsing can be displayed.
OK tb@
martijn [Fri, 22 Dec 2023 13:03:16 +0000 (13:03 +0000)]
Remove a log_debug from usm_checkuser(). It would only display what is in
the config and was never actually displayed because of insufficient
verbosity level during config-parsing and would display the wrong auth
algorithm for SHA2.
OK tb@
sthen [Fri, 22 Dec 2023 12:51:53 +0000 (12:51 +0000)]
handle MODPY_PYBUILD=jupyter_packaging
tb [Fri, 22 Dec 2023 12:35:22 +0000 (12:35 +0000)]
Simplify some logic in EVP_EncryptInit_ex()
Pull up the EVP_R_NO_CIPHER_SET check that was hidden somewhere down in the
middle of the function. Handle the reuse case outside of the big non-NULL
cipher case for now. This looks a bit odd but relies on the invariant that
cipher_data is only set if the cipher is set. It will be reworked in a
subsequent commit.
ok jsing
tb [Fri, 22 Dec 2023 10:23:11 +0000 (10:23 +0000)]
Clean up includes in cms_smime.c
tb [Fri, 22 Dec 2023 10:20:33 +0000 (10:20 +0000)]
evp_enc: make some flag checks explicit
ok joshua jsing
tb [Fri, 22 Dec 2023 09:40:14 +0000 (09:40 +0000)]
Remove cleanup() and get_crl() from X509_STORE_CTX
ok jsing
tb [Fri, 22 Dec 2023 07:35:09 +0000 (07:35 +0000)]
Remove unused function pointers from X509_STORE
The struct underlying the X509_STORE type is opaque ars and nothing uses
the accessors that OpenSSL added blindly for these. Therefore we didn't
add them in the first place. So this rips out several dozens of lines of
dead code.
ok beck joshua jsing
kevlo [Fri, 22 Dec 2023 05:28:14 +0000 (05:28 +0000)]
Update microcode, initialization and reset behavior.
Remove two chip versions (identified by MAC_CFG2 and MAC_CFG4) support that
may not be available in the market, and also raise rxring lwm to 32.
Tested by Nick Owens.
tb [Thu, 21 Dec 2023 21:32:01 +0000 (21:32 +0000)]
Remove EVP_PKEY_asn1_add{0,_alias}() documentation
This API was recently neutered and will be removed in the next major bump.
Mark it as intentionally undocumented in EVP_PKEY_asn1_new.3 and remove it
from all other manuals.
tb [Thu, 21 Dec 2023 21:23:37 +0000 (21:23 +0000)]
Mark some API-to-be-removed as intentionally undocumented
tb [Thu, 21 Dec 2023 20:50:43 +0000 (20:50 +0000)]
Remove some superfluous parentheses
miod [Thu, 21 Dec 2023 19:40:47 +0000 (19:40 +0000)]
New TEMPerGold sensor; reported by Mikolaj Kucharski on bugs@
miod [Thu, 21 Dec 2023 19:34:07 +0000 (19:34 +0000)]
Remove logic and comments related to INDIR now that they aren't supported
anymore.
ok tb@ deraadt@, no need to regen anything
martijn [Thu, 21 Dec 2023 13:54:05 +0000 (13:54 +0000)]
mib_init() and MIB() disappeared with mib.c, remove their declarations.
MIBDECL() and MIBEND are only used inside mib.h, so move their definition
in there.
OK tb@
martijn [Thu, 21 Dec 2023 12:43:30 +0000 (12:43 +0000)]
Clean up snmpd's header situation.
With the help of tb@ and include-what-you-use.
OK tb@
jca [Thu, 21 Dec 2023 11:25:38 +0000 (11:25 +0000)]
Tweak comment, the actual format is "ucom<unit#>:<usb id>"
ok krw@
otto [Thu, 21 Dec 2023 08:01:21 +0000 (08:01 +0000)]
Fix a few unchecked allocations; ok millert@ miod@
jsg [Thu, 21 Dec 2023 03:49:28 +0000 (03:49 +0000)]
drm/i915: Fix remapped stride with CCS on ADL+
From Ville Syrjala
7b0faa541f15af170607e565ceca1ae44e6daa35 in linux-6.1.y/6.1.69
0ccd963fe555451b1f84e6d14d2b3ef03dd5c947 in mainline linux
jsg [Thu, 21 Dec 2023 03:47:04 +0000 (03:47 +0000)]
drm/amd/display: Disable PSR-SU on Parade 0803 TCON again
From Mario Limonciello
20907717918f0487258424631b704c7248a72da2 in linux-6.1.y/6.1.69
e7ab758741672acb21c5d841a9f0309d30e48a06 in mainline linux
jsg [Thu, 21 Dec 2023 03:45:45 +0000 (03:45 +0000)]
drm/amdgpu: fix tear down order in amdgpu_vm_pt_free
From Christian Koenig
a9e2de19433fe0b63c080e910cce9954745cd903 in linux-6.1.y/6.1.69
ceb9a321e7639700844aa3bf234a4e0884f13b77 in mainline linux
jsg [Thu, 21 Dec 2023 03:43:28 +0000 (03:43 +0000)]
drm/amdgpu/sdma5.2: add begin/end_use ring callbacks
From Alex Deucher
78b2ba39beef21c8baebb1868569c2026ad76de0 in linux-6.1.y/6.1.69
ab4750332dbe535243def5dcebc24ca00c1f98ac in mainline linux
jsg [Thu, 21 Dec 2023 03:09:08 +0000 (03:09 +0000)]
use strnstr paths in amdgpu
jsg [Thu, 21 Dec 2023 02:57:14 +0000 (02:57 +0000)]
add strnstr(9) string search within character limit
From Mike Barcroft in FreeBSD. Added to FreeBSD in 2001, Linux in 2010.
Used in amdgpu.
ok deraadt@
jca [Thu, 21 Dec 2023 01:20:54 +0000 (01:20 +0000)]
Print the proper file name in case we fail to allocate a "path" extended header
Use name, not ln_name. Pasto introduced in previous.
tb [Wed, 20 Dec 2023 18:38:19 +0000 (18:38 +0000)]
Clean up includes in cms_pwri.c
florian [Wed, 20 Dec 2023 17:29:01 +0000 (17:29 +0000)]
update to nsd 4.8.0
OK sthen
otto [Wed, 20 Dec 2023 15:36:36 +0000 (15:36 +0000)]
introduce log_ntp_addr() and use it where applicable, avoids a null
pointer deref in constraint.c reported by bluhm@; ok millert@
deraadt [Wed, 20 Dec 2023 14:54:29 +0000 (14:54 +0000)]
create a stub for pinsyscalls(2)
deraadt [Wed, 20 Dec 2023 14:52:07 +0000 (14:52 +0000)]
there is a super-alignment between btext and text, this creates a hole.
Twice, I have seen the sigtramp mapping land inside that hole. This
causes grief for the upcoming pinsyscalls() work which operates on
address space ranges. But the micro-optimization is silly.
ok kettenis
deraadt [Wed, 20 Dec 2023 14:50:08 +0000 (14:50 +0000)]
For strange reasons which made sense at the time, the text segment was
placed head of the btext (boot.text) segment. (the boot.text segment is
"unmapped" after initization, as a self-protection mechanism). this meant
the LOAD's virtual addresses were not in sequence, which clearly isn't
what we intended.
tb [Wed, 20 Dec 2023 14:26:47 +0000 (14:26 +0000)]
Use BIO_indent() for indentation in tasn_prn.c
Using a loop to print pieces of a static buffer containing 20 spaces to
indent things is just silly. Even sillier is making this buffer const
without looking what it's actually used for... There is BIO_indent() or
BIO_printf() that can handle "%*s".
Add a length check to preserve behavior since BIO_indent() succeeds for
negattive indent.
However, peak silliness must be how BIO_dump_indent_cb() indents things.
That's for another day.
ok jsing
tb [Wed, 20 Dec 2023 14:15:19 +0000 (14:15 +0000)]
Rename impl into engine
tb [Wed, 20 Dec 2023 14:14:39 +0000 (14:14 +0000)]
Rename inl to in_len throughout the file
tb [Wed, 20 Dec 2023 14:13:07 +0000 (14:13 +0000)]
Rename outl into out_len throughout the file
tb [Wed, 20 Dec 2023 14:11:41 +0000 (14:11 +0000)]
Tweak a comment a bit
tb [Wed, 20 Dec 2023 14:10:03 +0000 (14:10 +0000)]
Remove block_mask from EVP_CIPHER_CTX
The block mask is only used in EVP_{De,En}cryptUpdate(). There's no need to
hang it off the EVP_CIPHER_CTX since it is easy to compute and validate.
ok joshua jsing
tb [Wed, 20 Dec 2023 14:05:58 +0000 (14:05 +0000)]
Add some sanity checks for EVP_CIPHER_meth_new()
Ensure that the nid and key length are non-negative and that the block
size is one of the three sizes 1, 8, or 16 supported by the EVP subsystem.
ok joshua jsing
dv [Wed, 20 Dec 2023 14:00:17 +0000 (14:00 +0000)]
btrace: add support for hex and octal values.
Changes number tokenizing and parsing to support hex & octal values.
Does not address other lexer issues (e.g. $0x1) to close gaps with
bpftrace.
OK claudio@
tb [Wed, 20 Dec 2023 13:52:17 +0000 (13:52 +0000)]
Merge p_open and p_seal into p_legacy
discussed with jsing
tb [Wed, 20 Dec 2023 13:46:05 +0000 (13:46 +0000)]
Fold p_dec.c and p_enc.c into a new p_legacy.c
discussed with jsing
krw [Wed, 20 Dec 2023 13:37:25 +0000 (13:37 +0000)]
Don't create an sd(4) larger than what the namespace will allow.
A namespace must satisfy
size (nsze) >= capacity (ncap) >= utilization (nuse)
Use ncap for the sd(4) size when THINP is set and ncap < nsze.
Tweak some variable names in passing to make code clearer.
ok dlg@
tb [Wed, 20 Dec 2023 13:34:47 +0000 (13:34 +0000)]
Less confusing variable names in EVP_PKEY_{de,en}crypt_old()
ok jsing
sthen [Wed, 20 Dec 2023 13:30:51 +0000 (13:30 +0000)]
MODPY_PYBUILD: use "bootstrap" instead of "Yes"
tb [Wed, 20 Dec 2023 11:33:52 +0000 (11:33 +0000)]
Improve local variable names
Rename the slightly awkward buf_offset into partial_len and rename
buf_avail into partial_needed to match.
suggested by jsing
tb [Wed, 20 Dec 2023 11:31:17 +0000 (11:31 +0000)]
Rename buf_len into partial_len in EVP_CIPHER_CTX
suggested by jsing
tb [Wed, 20 Dec 2023 11:01:34 +0000 (11:01 +0000)]
Clean up EVP_DecryptFinal_ex()
Rework the code to use the usual variable names, return early if we
have block size 1 and unindent the remainder of the code for block
sizes 8 and 16. Rework the padding check to be less acrobatic and
copy the remainder of the plain text into out using memcpy() rather
than a for loop.
input/ok jsing
tb [Wed, 20 Dec 2023 10:42:43 +0000 (10:42 +0000)]
Clean up EVP_EncryptFinal_ex()
This switches to the variable names used in other functions, adds a
reminder to add a missing length check and uses memset for the padding.
ok jsing
tb [Wed, 20 Dec 2023 10:35:25 +0000 (10:35 +0000)]
Simplify EVP_DecryptUpdate() a bit
This time the block size is called b and there's some awful length
fiddling with fix_len, which until recently also served as store
for the return value for do_cipher()...
If we land on a block boundary, we keep the last block decrypted and
don't count it as part of the output. So in the next call we need to
feed it back in. Feeding it back in counts as output written this time
around, so instead of remembering that we need to adjust outl, keep a
tally of the bytes written. This way we can also do some overflow and
underflow checking.
ok jsing
tb [Wed, 20 Dec 2023 10:15:30 +0000 (10:15 +0000)]
Remove commented out version of EVP_SealUpdate()