kn [Mon, 22 May 2023 09:29:54 +0000 (09:29 +0000)]
fix usage, name arg is optional
jmatthew [Mon, 22 May 2023 05:59:05 +0000 (05:59 +0000)]
Keep trying LDAP servers until we get full results from one, rather than
just until one accepts the TCP connection. In multi server environments,
this makes ypldap more resilient when some servers are misbehaving.
While here, add the server address to log messages relating to connection
errors to make it easier to identify which server is failing.
ok tb@
guenther [Mon, 22 May 2023 00:39:57 +0000 (00:39 +0000)]
The fp_ex_[st]w struct savefpu members were inherited from NetBSD where
they're used in the 32bit-compat support, which we dropped years ago.
Bye bye!
ok deraadt@
guenther [Mon, 22 May 2023 00:37:19 +0000 (00:37 +0000)]
NENTRY() doesn't provide an endbr64, so give memmove one in
case it ever gets called through a function pointer (with retpoline
disabled)
ok deraadt@
krw [Sun, 21 May 2023 17:29:33 +0000 (17:29 +0000)]
If an MBR partition start or end can be represented by CHS, set
both CHS and LBA values in the MBR partition.
Restores pre-7.0 initialization of MBR partition start/end, using
slightly less opaque code that retains the slightly different
initialization required by GPT protective MBR's.
Fixes booting from disks >8G on systems where the BIOS uses CHS.
Encountered by Paul de Weerd on his Alix.2 using BIOS 0.99.
Much diagnosis and testing by Paul of various iterations. Thanks!
krw [Sun, 21 May 2023 17:04:22 +0000 (17:04 +0000)]
Typo in comment. 'parititon' -> 'partition'.
espie [Sun, 21 May 2023 16:50:50 +0000 (16:50 +0000)]
missed one
espie [Sun, 21 May 2023 16:07:35 +0000 (16:07 +0000)]
move the interface to SharedLibs to be somewhat object oriented
accordingly, load it "just in time" in State.
Most calls get simplified, and we can save more state for later.
espie [Sun, 21 May 2023 13:44:56 +0000 (13:44 +0000)]
document how this is used... There's nothing that actually uses the
export part, and be explicit about how we call code refs.
espie [Sun, 21 May 2023 13:44:21 +0000 (13:44 +0000)]
"fix" for 5.36: pass the possible option value as an extra param
instead of defined/undefined, so that the code sub is called with
the right number of parameters.
claudio [Sun, 21 May 2023 12:47:54 +0000 (12:47 +0000)]
In sysctl_hwchargestop() check that hw_battery_setchargestop is set
and not hw_battery_setchargestart.
OK kettenis@
espie [Sun, 21 May 2023 08:06:03 +0000 (08:06 +0000)]
v5.36, trivial move
jmc [Sun, 21 May 2023 05:11:38 +0000 (05:11 +0000)]
zap extra word and some hyphens; ok guenther
kn [Sat, 20 May 2023 20:00:28 +0000 (20:00 +0000)]
typofix message in previous
kn [Sat, 20 May 2023 19:10:25 +0000 (19:10 +0000)]
Ask for disk crypto after root disk question
Encrypt the root disk? (disk, no or '?' for details) [no]
Which disk is the root disk? ('?' for details) [sdN]
becomes
Which disk is the root disk? ('?' for details) [sd0]
Encrypt the root disk? (yes, no or '?' for details) [no]
so that answering 'sd0' at this point during installation behaves the same
as before the new question: specifying the root disk.
Users no longer deal with two (softraid chunk sd0, root disk sd1), but just
one disk as before, while sdN are dealt with transparently.
Code also gets simpler and should enable more improvements soon.
Feedback OK afresh1
tb [Sat, 20 May 2023 16:00:22 +0000 (16:00 +0000)]
ecdhtest: Fix indent
tb [Sat, 20 May 2023 15:57:40 +0000 (15:57 +0000)]
Remove a space that I thought I had already deleted.
Makes mandoc -Tlint happier
krw [Sat, 20 May 2023 15:16:47 +0000 (15:16 +0000)]
p_fragblock = DISKLABELV1_FFS_FRAGBLOCK(0, 0) sets p_fragblock to
0. Just use p_fragblock = 0 as in all other initializations of
p_fragblock.
No functional change.
mpi [Sat, 20 May 2023 12:48:36 +0000 (12:48 +0000)]
Do not grab the `vmmaplk' recursively, prevent a self-deadlock.
Change the semantic of vm_map_busy() to be able to completely unlock the
`vmmaplk' instead of downgrading it to a read lock in mlock(2). This is
necessary because uvm_fault_wire() tries to re-grab the same lock.
We now keep track of the thread currently holding the vmmap busy to ensure
it can relock & unbusy the vmmap. The new pattern becomes:
....vm_map_lock(map);
....vm_map_busy(map); /* prevent other threads to grab an exclusive lock */
....vm_map_unlock(map);
....
..../*
.... * Do some stuff generally requiring a tsleep(9).
.... */
....
....vm_map_lock(map);
....vm_map_unbusy(map); /* allow other threads to make progress after unlock */
....vm_map_unlock(map);
Fix adapted from NetBSD's r1.249 of uvm/uvm_map.c. Issue reported by
Jacqueline Jolicoeur exposed by a "wallet refresh" of the Monero App.
Panic hand-copied below:
sleep_finish()
rw_enter()
uvmfault_lookup()
uvm_fault_check()
uvm_fault()
uvm_fault_wire()
uvm_map_pageable_wire()
sys_mlock()
This version skips bumping the map's timestamp if the lock is acquired by the
thread marked the VM map busy. This prevents a KASSERT() reported by bluhm@
triggered by regress/misc/posixtestsuite conformance/interfaces/mmap/18-1
ok kettenis@
tb [Sat, 20 May 2023 12:07:21 +0000 (12:07 +0000)]
Add a slow regress target that runs openssl speed with proper alignment
and with an unaligned offset. Let's see if all ciphers on our strict
alignment arches can deal with this.
tb [Sat, 20 May 2023 12:03:02 +0000 (12:03 +0000)]
openssl speed: add an '-unaligned n' option
All hashes and ciphers covered by speed should be able to handle unaligned
input and output. The buffers used in openssl speed are well aligned since
they are large, so will never exercise the more problematic unaligned case.
I wished something like this was available on various occasions. It would
have been useful to point more easily at OpenSSL's broken T4 assembly.
Yesterday there were two independent reasons for wanting it, so I sat down
and did it. It's trivial: make the allocations a bit larger and use buffers
starting at an offset inside these allocations. Despite the trivality, I
managed to have a stupid bug. Thanks miod.
discussed with jsing
ok miod
kettenis [Sat, 20 May 2023 12:02:46 +0000 (12:02 +0000)]
Implement battery charge control.
ok patrick@
tb [Sat, 20 May 2023 11:44:15 +0000 (11:44 +0000)]
openssl speed: minor style nits
This drops a bunch of unnecessary parentheses, makes the strcmp()
checks consistent and moves some "}\n\telse" to "} else".
Makes an upcoming commit smaller
espie [Sat, 20 May 2023 09:30:57 +0000 (09:30 +0000)]
Don't bother setting the effective group, it doesn't affect file creation
on a BSD system anyhow (duh moment, thx semarie@)
tb [Sat, 20 May 2023 05:42:57 +0000 (05:42 +0000)]
openssl speed: remove binary curve remnants
This wasn't properly hidden under OPENSSL_NO_EC2M, and all it does now
is producing ugly errors and useless "statistics". While looking at this,
I found that much of speed "has been pilfered from [Eric A. Young's]
libdes speed.c program". Apparently this was an precursor and ingredient
of SSLeay. Unfortunately, it seems that this piece of the history is lost.
ok miod
PS: If anyone is bored, a rewrite from scratch of the speed 'app' would
be a welcome contribution and may be an instructive rainy day project.
The current code was written in about the most stupid way possible so as
to maximize fragility and unmaintainability.
patrick [Fri, 19 May 2023 21:26:09 +0000 (21:26 +0000)]
Add qcsmptp(4), a driver to share 32-bit values between (co-)processors.
The inbound path is typically used as interrupt controller, e.g. to handle
handover and ready interrupts when a remoteproc boots. The outbound path
seems to be used to stop cores, but we don't do that yet.
ok kettenis@
patrick [Fri, 19 May 2023 21:15:16 +0000 (21:15 +0000)]
Have mainbus attach nodes under /reserved-memory, so that qcsmem(4) shows
up.
ok kettenis@ drahn@
patrick [Fri, 19 May 2023 21:13:49 +0000 (21:13 +0000)]
Add qcsmem(4), a driver for the shared memory table on Qualcomm SoCs
used to establish data communication channels with co-processors.
ok kettenis@ drahn@
patrick [Fri, 19 May 2023 20:54:55 +0000 (20:54 +0000)]
Clear interrupt before executing the interrupt handler as we otherwise
risk losing an interrupt for the same pin. This can happen when a second
interrupt occurs between the interrupt handler's execution and us clearing
the interrupt.
ok kettenis@
guenther [Fri, 19 May 2023 18:43:16 +0000 (18:43 +0000)]
uvm_coredump(9) was removed in 2015 (commitid dNPv28CJI5BxtRGW) as
real processes have been dumped using uvm_coredump_walkmap(9) since
2009-03-05Z19:52:24. Document the current API.
tb [Fri, 19 May 2023 17:31:20 +0000 (17:31 +0000)]
Add missing rsa_security_bit() handler to the RSA-PSS ASN1_METHOD
Prompted by a report by Steffen Ullrich on libressl@openbsd.org
ok jsing
op [Fri, 19 May 2023 15:18:06 +0000 (15:18 +0000)]
fix markup for `maildir' in smtpd.conf(5)
pathname and junk are both optional, but indipendently so.
ok aisha, millert
nicm [Fri, 19 May 2023 07:46:34 +0000 (07:46 +0000)]
Add format for server_sessions, from Magnus Gross.
espie [Fri, 19 May 2023 07:37:11 +0000 (07:37 +0000)]
make Paths fully OO, as it makes some things simpler
espie [Fri, 19 May 2023 07:30:40 +0000 (07:30 +0000)]
this parameter does not exist
espie [Fri, 19 May 2023 07:25:16 +0000 (07:25 +0000)]
remove indirect calls
guenther [Fri, 19 May 2023 01:12:23 +0000 (01:12 +0000)]
Since waitid(2) shares code with wait4(2) and doesn't expose any
non-trivial new information or code-paths over wait4(), include
it in pledge("stdio")
discussed with deraadt@
guenther [Fri, 19 May 2023 01:04:39 +0000 (01:04 +0000)]
Move tcp_info structure to be under '#if __BSD_VISIBLE' to repair
compliance with POSIX/SUS restrictions on <netinet/tcp.h>
ok bluhm@
ports testing and ok sthen@
deraadt [Fri, 19 May 2023 00:54:27 +0000 (00:54 +0000)]
backout alignment changes (breaking at least two architectures)
millert [Thu, 18 May 2023 18:29:28 +0000 (18:29 +0000)]
user: handle paths with whitespace / metacharacters
Use execv(3) instead of system(3) to run external commands.
This avoids problems with whitespace and shell metacharacters
in path names. OK op@
guenther [Thu, 18 May 2023 16:33:39 +0000 (16:33 +0000)]
If you disable retpolineplt then _dl_bind_start is called with an
indirect branch, so include an endbr64 Just In Case.
ok deraadt@
espie [Thu, 18 May 2023 16:30:01 +0000 (16:30 +0000)]
adjust style to post v5.36 world
guenther [Thu, 18 May 2023 16:14:05 +0000 (16:14 +0000)]
memmove() entry point is declared with NENTRY() and isn't consecutive
with an ENTRY(), so it needs its own endbr64 for IBT
ok deraadt@
guenther [Thu, 18 May 2023 16:11:09 +0000 (16:11 +0000)]
Add PROTO_NORMAL() declarations for the remaining syscalls, to avoid
future, inadvertant PLT entries. Move the __getcwd and __realpath
declarations to hidden/{stdlib,unistd}.h to consolidate and remove
duplication.
ok tb@ otto@ deraadt@
guenther [Thu, 18 May 2023 16:07:12 +0000 (16:07 +0000)]
Add PROTO_NORMAL() declarations for utrace (and ktrace) syscalls
so that the internal call can't be interposed over by the app.
ok tb@ otto@ deraadt@
kn [Thu, 18 May 2023 14:11:18 +0000 (14:11 +0000)]
Assert pf lock on interface handling
Make sure that all hooks into pf's internal list of interfaces do happen
with the pf lock held, i.e. nothing relies on the net lock alone, so that
later unlocking can then rely on it.
Full i386 regress (thanks bluhm) and daily usage are fine
OK sashan
sashan [Thu, 18 May 2023 12:10:04 +0000 (12:10 +0000)]
sc_st_mtx is not sufficient protection to move state around
pfsync(4) queues. We also need to grab pf_state::mtx to put/remove
state instance safely from pfsync(4) queue. The issue has been
pointed out by bluhm@. Patch survived testing done by hrvoje@
OK dlg@
mvs [Thu, 18 May 2023 10:24:28 +0000 (10:24 +0000)]
regen
mvs [Thu, 18 May 2023 10:23:19 +0000 (10:23 +0000)]
Backout sysctl(2) unlocking. Lock order issue was triggered in UVM
layer.
mvs [Thu, 18 May 2023 09:59:43 +0000 (09:59 +0000)]
Revert ip_sysctl() unlocking. Lock order issue was triggered in UVM
layer.
jan [Thu, 18 May 2023 08:22:37 +0000 (08:22 +0000)]
Use TSO offloading in ix(4).
With a lot of tweaks, improvements and testing from bluhm.
Thanks to Hrvoje Popovski from the University of Zagreb for
his great testing effort to make this happen.
ok bluhm
guenther [Thu, 18 May 2023 04:26:06 +0000 (04:26 +0000)]
Make two corrections to the vfork(2) stub:
* with IBT, it can't return via an indirect jump as that would
require the *caller* to have an endbr64
* to support a potential vmspace-sharing implementation, keep the
retguard value in an arg register across the underlying syscall
ok kettenis@ deraadt@
patrick [Wed, 17 May 2023 23:30:58 +0000 (23:30 +0000)]
Add qcmtx(4), a driver for the hardware spinlock on Qualcomm SoCs that
is used to synchronize access to the shared memory table between the
application cores we run on and the co-processors next to us.
ok kettenis@ drahn@
patrick [Wed, 17 May 2023 23:25:45 +0000 (23:25 +0000)]
Add a framework for hardware locks.
ok kettenis@ drahn@
patrick [Wed, 17 May 2023 23:18:59 +0000 (23:18 +0000)]
Add qcipcc(4), a driver for the inter-processor mailbox interface used
to inform (and get informed) of changes to shared memory state.
ok kettenis@
patrick [Wed, 17 May 2023 23:12:04 +0000 (23:12 +0000)]
Add support for the Peripheral Authentication Service SMC interface.
These are used to authenticate and boot firmware images on the many
coprocessors embedded in Qualcomm SoCs.
ok kettenis@
kettenis [Wed, 17 May 2023 22:12:51 +0000 (22:12 +0000)]
Implement battery management sysctl. This will provide a set of sysctls
to control the charging of laptop batteries:
* hw.battery.chargemode (int)
-1: force discharge
0: inhibit charge
1: auto
In auto mode charging may be controlled by:
* hw.battery.chargestop (int)
Percentage (0-100) of last full capacity at which the battery should
stop charging.
* hw.battery.chargestart (int)
Percentage (0-100) of last full capacity at which the battery should
start charging.
The idea is that with
hw.battery.chargemode=1
hw.battery.chargestop=80
hw.battery.chargestart=75
the battery would be kept charged within the range between 75% and 80%.
Allowable settings and some details of the behavior may differ between
hardware implementations.
Committing this early to easy testing of further diffs that implement this
functionality in acpithinkpad(4) and aplsmc(4).
ok kn@
kettenis [Wed, 17 May 2023 21:45:41 +0000 (21:45 +0000)]
Tolerate difference in some of the features advertised by the
ID_AA64PFR0_EL1 register across cores. The CSV2/CSV3 features are handled
on a per-core basis so it is fine if they are different. And we only
support 64-bit userland so it is fine if the EL0/EL1/EL2/EL3 fields are
different too.
This prevents us from printing a warning on the Rockchip RK3588 SoC which
combines Cortex-A55 with Cortex-A76 that implement a sightly different
feature set.
ok deraadt@, mlarkin@
espie [Wed, 17 May 2023 21:15:03 +0000 (21:15 +0000)]
fix -n
patrick [Wed, 17 May 2023 20:23:14 +0000 (20:23 +0000)]
Lenovo x13s requires a Qualcomm firmware file which is 13.7MB, so increase
the limit from 5MB to 15MB.
What does it contain? A full copy of Windows VM framework? For now, we
need it to read the battery status...
"go for it" deraadt@
espie [Wed, 17 May 2023 15:51:58 +0000 (15:51 +0000)]
stop using old-style prototypes except where strictly necessary
(for try/catch)
signatures will be much more powerful once I move to 5.36
espie [Wed, 17 May 2023 15:45:36 +0000 (15:45 +0000)]
actually fix caching for release/stable
$r2 computation was wrong, led to an undef, which autovivification promptly
masked
krw [Wed, 17 May 2023 12:59:37 +0000 (12:59 +0000)]
Make function and symmetry obvious by renaming PRT_make() to
PRT_prt_to_dp() and PRT_parse() to PRT_dp_to_prt().
No functional change.
dlg [Wed, 17 May 2023 10:22:17 +0000 (10:22 +0000)]
fix stoeplitz_hash_h32.
discussed with and ok tb@
tb [Wed, 17 May 2023 07:42:38 +0000 (07:42 +0000)]
Use crypto_internal.h's CTASSERT()
Now that this macro is available in a header, let's use that version
rather than copies in several .c files.
discussed with jsing
jsing [Wed, 17 May 2023 06:37:14 +0000 (06:37 +0000)]
Clean up alignment handling for SHA-512.
All assembly implementations are required to perform their own alignment
handling. In the case of the C implementation, on strict alignment
platforms, unaligned data will be copied into an aligned buffer. However,
most platforms then perform byte-by-byte reads (via the PULL64 macros).
Instead, remove SHA512_BLOCK_CAN_MANAGE_UNALIGNED_DATA and alignment
handling to sha512_block_data_order() - if the data is aligned then simply
perform 64 bit loads and then do endian conversion via be64toh(). If the
data is unaligned then use memcpy() and be64toh() (in the form of
crypto_load_be64toh()). Overall this reduces complexity and can improve
performance (on aarch64 we get a ~10% performance gain with aligned input
and about ~1-2% gain on armv7), while the same movq/bswapq is generated
for amd64 and movl/bswapl for i386.
ok tb@
djm [Wed, 17 May 2023 05:52:01 +0000 (05:52 +0000)]
add LTESTS_FROM variable to allow skipping of tests up to a specific
point. e.g. "make LTESTS_FROM=t-sftp" will only run the sftp.sh test
and subsequent ones. ok dtucker@
guenther [Wed, 17 May 2023 01:57:15 +0000 (01:57 +0000)]
Add support for disassembling CET (including endbr64), XSS, OSPKE,
clflushopt, clwb, ptwrite, rdpid, serialize, WAITPKG, and vmfunc
extensions, as well as part of TSX. tpause and umonitor addr size
handling isn't 100% correct, but good enough to get the instruction
boundary.
Correct decoding of rex64 {fxsave,fxrstor,xsave,xrstor,xsaveopt}
to instead use a '64' suffix, ala "fxsave64".
"good enough" ok kettenis@ deraadt@ mlarkin@
millert [Tue, 16 May 2023 21:28:46 +0000 (21:28 +0000)]
useradd: use "cp" instead of "pax" to copy dot files
There are some minor semantic differences but nothing that should
affect files in /etc/skel. OK op@
jmc [Tue, 16 May 2023 21:13:19 +0000 (21:13 +0000)]
add net.inet.tcp.tso;
ok jan bluhm
mvs [Tue, 16 May 2023 20:09:27 +0000 (20:09 +0000)]
Always set maximum queue length to passed in the IFQCTL_MAXLEN case.
This is not the fast path, so dropping mq->mq_maxlen check doesn't
introduce any performance impact, but makes code MP consistent.
Discussed with and ok from bluhm@
mvs [Tue, 16 May 2023 19:44:55 +0000 (19:44 +0000)]
Replace tab by space after #define in PR_* definitions.
ok bluhm@
mvs [Tue, 16 May 2023 19:36:00 +0000 (19:36 +0000)]
Introduce temporary PR_MPSYSCTL flag to mark (*pr_sysctl)() handler MP
safe. We have may of them, so use flag instead of pushing kernel lock
within.
Unlock ip_sysctl(). Still take kernel lock within IPCTL_MRTSTATS case.
It looks like `mrtstat' protection is inconsistent, so keep locking as
it was. Since `mrtstat' are counters, it make sense to rework them into
per CPU counters with separate diffs.
Feedback and ok from bluhm@
tb [Tue, 16 May 2023 18:41:18 +0000 (18:41 +0000)]
ecdhtest: check malloc() return values
From Ilya Chipitsine
op [Tue, 16 May 2023 17:48:52 +0000 (17:48 +0000)]
some fatal -> fatalx to improved logging
errno doesn't generally contains anything useful after libtls functions,
and in most cases it's explicitly cleared to avoid misuse, so change a
few fatal() calls to fatalx() when logging libtls failures. Also, add
the real error string, via tls_error() or tls_config_error(), that was
missing before.
ok millert@
claudio [Tue, 16 May 2023 17:01:31 +0000 (17:01 +0000)]
RRDP snapshots should encode publish elements only once. If encountered
fail the transfer and fall back to rsync.
When more than one publish element for the same file exist the RP does
not know which one to choose. Lets fail the RRDP transfer in this case
and fall back to rsync. CA that publish a file more than once are buggy
and need to be fixed.
OK job@ tb@
espie [Tue, 16 May 2023 16:55:32 +0000 (16:55 +0000)]
explicitly rename internal methods with an _
espie [Tue, 16 May 2023 16:45:04 +0000 (16:45 +0000)]
clean visible interface a bit: Ustar does not use errsay (but ArcCheck does)
and having a forwarder for system for ONE use is a bit much !
espie [Tue, 16 May 2023 14:33:04 +0000 (14:33 +0000)]
cleaner documentation of what's going on
jan [Tue, 16 May 2023 14:32:54 +0000 (14:32 +0000)]
Use separate IFCAPs for LRO and TSO.
This diff introduces separate capabilities for TCP offloading. We split this
into LRO (large receive offloading) and TSO (TCP segmentation offloading).
LRO can be turned on/off via tcprecvoffload option of ifconfig and is not
inherited to sub interfaces.
TSO is inherited by sub interfaces to signal this hardware offloading capability
to the network stack.
With tweaks from bluhm, claudio and dlg
ok bluhm, claudio
espie [Tue, 16 May 2023 14:31:54 +0000 (14:31 +0000)]
start un-exposing some internal methods
espie [Tue, 16 May 2023 14:31:26 +0000 (14:31 +0000)]
ditch subclasses for PackingList: I ended up never using this anywhere
espie [Tue, 16 May 2023 14:30:55 +0000 (14:30 +0000)]
use the new set_destdir interface
espie [Tue, 16 May 2023 14:30:12 +0000 (14:30 +0000)]
avoid the "indirect object" call, as it won't work with v5.36
document a few useful details
introduce a less confusing set_destdir inteface for later
espie [Tue, 16 May 2023 14:29:20 +0000 (14:29 +0000)]
explain why there is a hierarchy with one single subclass, because
we never know when we may need to change crypto-hashes!
espie [Tue, 16 May 2023 14:28:39 +0000 (14:28 +0000)]
document a few small details, some of them non-obvious like
the inheritance hierarchy or the exact interface for ->add
jcs [Tue, 16 May 2023 14:10:43 +0000 (14:10 +0000)]
add missing pointer invalidation
ok tb
espie [Tue, 16 May 2023 14:04:16 +0000 (14:04 +0000)]
document extra parameter that's used by pkg_check
espie [Tue, 16 May 2023 11:53:01 +0000 (11:53 +0000)]
typo
espie [Tue, 16 May 2023 11:20:00 +0000 (11:20 +0000)]
the old "indirect method call" was deprecated recently (apart from
mimicing perl base syntax on fh objects and the likes), so use the
more consistent class->method calling method in examples (and in code)
espie [Tue, 16 May 2023 10:52:58 +0000 (10:52 +0000)]
State -> BaseState, for lightweight requirements
espie [Tue, 16 May 2023 10:51:36 +0000 (10:51 +0000)]
reflect reality better: document set_description and friends
espie [Tue, 16 May 2023 09:02:50 +0000 (09:02 +0000)]
since apparently, the "example" conf is not free-form (adding comments
would break scripts, go figure), highlight the staging servers so that
people with non-standard configurations (challenge/response) get a chance
at figuring things out.
okay tb@
jsing [Tue, 16 May 2023 07:04:57 +0000 (07:04 +0000)]
Clean up SHA-512 input handling and round macros.
Avoid reach around and initialisation outside of the macro, cleaning up
the call sites to remove the initialisation. Use a T2 variable to more
closely follow the documented algorithm and remove the gorgeous compound
statement X = Y += A + B + C.
There is no change to the clang generated assembly on aarch64.
ok tb@
millert [Mon, 15 May 2023 17:00:24 +0000 (17:00 +0000)]
user: simplify memsave() to strsave()
All callers of memsave() pass strlen(s) as the size argument.
We can eliminate the size argument and just use strdup(3) instead.
OK tb@
bluhm [Mon, 15 May 2023 16:34:56 +0000 (16:34 +0000)]
Implement the TCP/IP layer for hardware TCP segmentation offload.
If the driver of a network interface claims to support TSO, do not
chop the packet in software, but pass it down to the interface
layer.
Precalculate parts of the pseudo header checksum, but without the
packet length. The length of all generated smaller packets is not
known yet. Driver and hardware will use the mbuf packet header
field ph_mss to calculate it and update checksum.
Introduce separate flags IFCAP_TSOv4 and IFCAP_TSOv6 as hardware
might support ony one protocol family. The old flag IFXF_TSO is
only relevant for large receive offload. It is missnamed, but keep
that for now.
Note that drivers do not set TSO capabilites yet. Also the ifconfig
flags and pseudo interfaces capabilities will be done separately.
So this commit should not change behavior.
heavily based on the work from jan@; OK sashan@
jmc [Mon, 15 May 2023 16:22:07 +0000 (16:22 +0000)]
calendar.canada: sync the entry for victoria day with that of calendar.holiday.
as seen this morning, Mon-Third* does not always work. Mon-2 works for now...
calendar.uk: victoria day is obscure enough in scotland that i don;t think it
warrants worth an entry
kettenis [Mon, 15 May 2023 15:02:06 +0000 (15:02 +0000)]
Pass the ESR as the trapno value; this might help in determining the detailed
cause of a signal.
ok bluhm@, guenther@, deraadt@
kettenis [Mon, 15 May 2023 13:15:17 +0000 (13:15 +0000)]
Enable BTI PLT entries by default.
ok jsg@
op [Mon, 15 May 2023 12:03:04 +0000 (12:03 +0000)]
cast to '(long long)' instead of '(long long int)'
while here adjust the spacing in some of the touched lines.
requested by deraadt@, ok tb@