ktls: Fix capability checks in ktls_reset_receive_tag()
IFCAP2_RXTLS4 and IFCAP2_RXTLS6 are bit numbers, not masks, so
ktls_reset_receive_tag() tested if_capenable2 against 0 for IPv4 and against the
RXTLS4 bit for IPv6. An IPv4 connection with NIC receive TLS offload thus never
got a new receive tag after its packets moved to another interface, and fell
back to software decryption for good.
c721694 fixed the same checks in ktls_alloc_rcv_tag(); use IFCAP2_BIT() here
as well.
Fixes: fe8c78f ("ktls: Add full support for TLS RX offloading via network interface.")
Approved by: gallatin, kib
Sponsored by: Netflix
Differential Revision: https://reviews.freebsd.org/D60757
ktls: Take the receiving interface of each packet in sbappend_ktls_rx()
sbappend_ktls_rx() read the receiving interface of each packet header it
demotes from the chain's first mbuf, whose header it had zeroed on the first
pass. A chain of two packets or more thus had no interface, and a change of
input interface went unnoticed: the TLS receive tag stayed on the old interface
until a later append of one packet.
Read it from the packet being demoted, as the decrypted mark is.
Fixes: fe8c78f0d202 ("ktls: Add full support for TLS RX offloading via network interface.")
Approved by: gallatin
Sponsored by: Netflix
Differential Revision: https://reviews.freebsd.org/D60758
iwm: add iwm_enable_ac_txq(); use it for command queue setup
Port iwm_enable_ac_txq() from OpenBSD. It's effictively the
command FIFO path in the existing iwm_enable_txq().
The OpenBSD driver does a bunch of TX aggregation queue setup in
iwm_enable_txq() which isn't relevant here just quite yet and
it doesn't currently hurt to leave the existing one here
whilst I figure out the next steps.
Locally tested:
* 3160, 7260, 8260, 9260 - STA mode
Obtained from: OpenBSD a6e25c727a2214219715b51ba6af2221d7e0d674
Differential Revision: https://reviews.freebsd.org/D60696
iwm: add phy/mac context tasks; clean up task stop; add net80211 MAC methods
* Add phy/mac tasks, the phy task is currently a placeholder
* Add in the MAC methods from net80211 that are called whenever
the VAP mode needs updating
* Mark the hardware as STOPPED during shutdown so scheduled tasks
don't run
The fun side of this work:
* detaching net80211 causes the parent method to be called which leads
to iwm_stop() being called, and at least one of the entry paths
into iwm_stop() has IWM_LOCK held, and we can't do a taskqueue_drain()
or taskqueue_drain_all() call with any lock held as it will sleep.
* the net80211 detach path is calling at least one of the MAC methods
during detach, and since the taskqueue is being deleted /before/
the net80211 detach path, we have to make sure nothing is actually
going to do taskqueue work after that!
[12 lines not shown]
obs-studio: add BROWSER option to enable CEF framework
OBS studio can now display a web browser in it's streaming setup..
- The BROWSER option works now: it depends on www/cef and points the
build at it (CEF_ROOT_DIR=${LOCALBASE}/lib/cef). It is on by default
on amd64 and not offered where www/cef does not build.
- Use the CMake switch obs-browser actually reads (ENABLE_BROWSER) and
turn off the What's New dialog, which has no FreeBSD code path.
- obs-browser: FreeBSD support in its CMake files and __linux__ code
paths; load libcef.so from the CEF directory (RPATH) instead of
copying CEF into lib/obs-plugins, and let CEF find its own locales;
build with C++20 as the CEF 152 headers require; include
<netinet/in.h> for sockaddr_in.
PR: 299341
lang/spidermonkey140: fix build with Python 3.14+ (+)
AttributeError: module 'ast' has no attribute 'Str'
Python have deprecated ast.Str, ast.Num, ast.Bytes since 3.8 and dropped they out in 3.14
Use ast.Constant instead
Reported by: bulk -t
Approved by: portmgr blanket (fix build)
lang/spidermonkey128: fix build with Python 3.14+ (+)
AttributeError: module 'ast' has no attribute 'Str'
Python have deprecated ast.Str, ast.Num, ast.Bytes since 3.8 and dropped they out in 3.14
Use ast.Constant instead
Reported by: bulk -t
Approved by: portmgr blanket (fix build)