pledge "tmppath" goes away because it sucks. The history is kind of
sad: unveil(2) was invented by Bob Beck and myself because a couple
of us struggled and couldn't expand the "tmppath" mechanism to general use.
unveil(2) ended up being kind of "upside down" different, and so we never
deleted "tmppath" because the refactorings seemed complicated.
However over the last two weeks, we're removed all the "tmppath" in base
pretty easily, and the 18 ports using it have also been fixed.
The majority of situations now use unveil "/tmp" "rwc", unveil "/" "r" or
similar, and then pledge "rpath wpath cpath", and this is generally needed
to satisfy the mkstemp(3) family of functions in libc.
Use of "tmppath" will now cause pledge(2) to return EINVAL. There is
no backwards compatible way of mimic the behaviour correctly using
kernel-internal unveil hackery.
Prompted by a report from David Leadbeater; and extensive conversations
with beck and semarie.
Update various lifetimes.
This raises the router, dns and nat64 lifetimes from 30 minutes to 60
minutes and lowers the prefix valid lifetime from 90 minutes to 60
minutes.
This brings us in line with the values of draft-ietf-6man-slaac-renum
which is going to be published soon.
Aligning all these lifetimes to a single value (60 minutes) makes
sense because the information is transmitted in one router
advertisement packet. It does not make sense for one piece of
information to time out before another.
OK phessler
Call igmp_sendpkt() and mld6_sendpkt() with pktinfo argument.
Gather all information needed to send an IGMP or MLD6 packet in a
struct pktinfo. This allows splitting access to multicast data
structures from sending packets. Then adding locks to multicast
will be easier.
OK mvs@
Add support for scan command version 17 to iwx(4).
This will be needed to support BZ wifi-6e devices in the future.
Tested:
AX200: jmc, stsp
AX210: kettenis (MA device)
AX211: sthen (SO device), phessler
AX211: stsp (BZ device)
Pass paste buffer through vis(3) when pasting to prevent buffers
containing for example the bracket end sequence causing issues. -S flag
disables. Reported by Mason Davis.
rename a few functions and defines
also reformat some comments with ludicrously short lines. No functional
changes, except the usage of `eval' instead of `expr' in two error message,
since that's the actual macro name (expr is merely an alias for eval)
diff from espie, typo from sthen
ok sthen
Make acpidmar useful for general IOMMU use on amd64.
1. Remove panics in favor of error returns
2. Make unmap ordering clear (PTEs > invalidate IOTLB > free IOVA)
3. Add locking so concurrent mappings cannot race installing intermediate
page table levels (when marked MPSAFE)
For AMD-Vi:
1. Add cache flush for page tables and IVHD command/event data
structures (no-op on coherent IOMMUs)
2. Add per-page/range IOTLB invalidation
3. Fix device/interrupt-table invalidations to be keyed by requester device ID
4. Move batch completion variable from stack to softc
For Intel VT-d:
1. Finish queued invalidation (QI) with batching
2. Add page-selective invalidation (PSI) with address-mask coalescing
[4 lines not shown]
Use fmprintf instead of logit for challenge-response name and info to
preserve UTF-8 characters where appropriate. Prompted by github PR#452,
with & ok djm@.
Use unveil() instead of pledge "tmppath". There is a bit of bulldozering
here to handle the many codeflows regarding output files, and I hope ingo
improves it later.
Some help with regression validation from job
replace pledge "stdio rpath tmppath" with unveil "/tmp" "rwc" to satisfy
mktemp(3) type operations, unveil "/" "r" for reading all over the tree,
and pledge "stdio rpath wpath cpath" to permit both unveils subject to
their own limitations.