tweak make "magic variables" handling
The idea is that it's shorter to special-case ${@D} and the likes
(two characters variables ending in D or F) instead of having a weird
idx encoding.
Cons:
- this yields an extra "ext" parameter to classify_var
Pros:
- the weird index encoding vanishes
- no need for special treatment if we add more similar variables.
- drastically reduces the size of the switch (and the modulo shrinks from
82 to 36)
- code will recognize constructs like ${?D} and ${?F}, which puts us in
line with FreeBSD and NetBSD bmake, and also with gnu make.
from espie
openssl cms: switch to ASN1_STRING_get0_data()
The deprecated ASN1_STRING_data() will be removed in a future release.
This is one small step towards that.
ok kenjiro
openssl pkcs12: stop reaching into ASN1_STRING
Buy a t: rename hex_prin() to hex_print() and accept an ASN1_STRING so that
we only need to use accessors once. Also avoid a printf %s NULL.
ok kenjiro
refactor some mpls input processing for mpe/mpw/mpip.
mpw, mpip, and mpe all add entries to the local mpls fib that points to
themselves, and when these labels are "output" via these interfaces they
then go and push the packets into their input processing. this is all
boilerplate, so it can be factored out and better integrated into the
larger network stack. in particular, we can pass struct netstack through
to the input handlers.
there's some small downsides to this. the main one is that using
if_vinput to dispatch to their input handlers means the vinput
handling has to cope with mpls encapsulated packets. this is easy
except for mpw, where ether_ifattach does a lot of setup that has
to be tweaked for mpls encapsualted ethernet packets.
while here, this changes mpe output so it doesnt have to prepend the
mbuf with the sockaddr it uses as the nexthop on the underlay. it only
had to do that to carry the information across the ifq. if we just don't
use ifq for output then this gets simplified a lot. the only downside is
[4 lines not shown]
SEV-ES: Implement wbinvd in the trap handler
When MP is enabled, OpenBSD uses the WBINVD instruction. With SEV-ES,
this causes a VC trap if the hypervisor has the WBINVD intercept enabled.
In the trap handler, simply forward the WBINVD exit to the hypervisor.
From Sebastian Sturm
ok mlarkin hshoexer
libcrypto: add header guards to *_local.h
An upcoming change requires the inclusion of asn1_local.h in x509_local.h
which doesn't work due to missing header guards. Add guards to all local
headers that don't have them, although reacharounds and multiple inclusions
are unlikely to occur for most of those.
ok jsing
sndiod: Enable fall-back audio devices by default
If the server.device control is used to switch to a new device, then
sndiod will always try to use it first. If the device is not present
sndiod will try to fall back to the previous one and so on until a
working device is found.
ok armani
allocate ifiqs for vport interfaces.
there are some situations where vport will queue packets it has
"received". this spreads the processing of them over the softnet
threads.
this is like what's done for lo(4) and rport(4)
Handle a "dma-noncoherent" property on the root node of the device tree.
Consistently use OF_getpropbool() for the "dma-coherent" and
"dma-noncoherent" properties.
ok patrick@, miod@, phessler@, jca@
Allow vmd(8) virtio hardware init to fail so we can clean up.
Remove a bunch of fatal() paths so we can return a failure when trying to
initialize virtio devices. This lets us clean up any child processes
created when we fork/exec things like virtio block and network devices.
This is part of my overall effort to make vmd(8) not just abort and instead
clean up its messes before exit.
ok mlarkin@
make rport_start more like ifiq_input/if_vinput.
this lets it call if_input_process, which in turn pushes packets
back into the stack with the current softnet threads netstack.
regress/isakmpd/x509: bring this a bit closer to compiling
There's a whole lot more to fix here, which I leave to someone else.
At least this should get rid of breakage that I caused.