OpenBSD/src lICvhk2usr.sbin/ospf6d interface.c parse.y

   ospf6d: preserve configured interface type on link update

   When an interface undergoes a link state change (RTM_IFINFO),
   if_update() unconditionally overwrites iface->type based on current
   interface flags. This causes interfaces explicitly configured with "type
   p2p" in ospf6d.conf to revert to broadcast (IF_TYPE_BROADCAST) on link
   bounce.

   Introduce F_IFACE_TYPE to track whether the interface type was set by
   configuration, and only auto-derive the type from interface flags when
   this flag is not set.

   Reported and tested by Atanas Vladimirov.

   OK claudio@
VersionDeltaFile
1.31+8-6usr.sbin/ospf6d/interface.c
1.54+4-2usr.sbin/ospf6d/parse.y
1.53+2-1usr.sbin/ospf6d/ospf6d.h
+14-93 files

OpenBSD/src fDmHtdwusr.sbin/vmd virtio.c

   vmd(8): guard synchronous imsg channel with a mutex.

   Serialize vcpu access to the synchronous imsg channel for communicating
   PCI register access to virtio device child processes. If vmd ever
   becomes MP, VCPUs could interleave during the io emulation on the imsg
   channel.

   Report and original diff by Andrew Griffiths. Modified to move the
   mutex into the global state of the vm process instead of per-device.

   ok hshoexer@
VersionDeltaFile
1.142+27-8usr.sbin/vmd/virtio.c
+27-81 files

OpenBSD/src h3janBfsys/dev/pci if_ice.c if_icevar.h

   ice(4): enable use of 128 DMA segments for TSO packets again

   This diff contains two fixes for the ice_tso_detect_sparse()
   function to prevent the 'Too many data commands' error:

    1. Replace wrong computation of nsegs with already
       specified map->dm_nsegs from the DMA layer.

    2. Reinstate ICE_MAX_TX_SEGS for max. No. of Segments
       per MSS section.

   Tested by bluhm

   OK bluhm@, stsp@
VersionDeltaFile
1.71+10-17sys/dev/pci/if_ice.c
1.12+2-2sys/dev/pci/if_icevar.h
+12-192 files

OpenBSD/src lcpi2Rslib/libcrypto/sha sha3.c

   Improve SHA-3 performance.

   Replace the tiny-sha3 keccakf implementation with an unrolled and
   interleaved algorithm, that is hidden away in an obsolete reference
   implementation.

   This gets us 3.3x speed up on arm64 (Apple M2), a 1.3x speed up on amd64
   (Intel i7-1165G7) and 6x speed up on sparc64 (M3000).

   ok tb@
VersionDeltaFile
1.21+286-42lib/libcrypto/sha/sha3.c
+286-421 files

OpenBSD/src wjwUXznlib/libc/hash sha512.c

   Correctly handle bit count for SHA-512.

   The SHA-512 bit counter is 128 bits - as such, we need to handle overflow
   and increment the second 64 bit field.

   Reported by claudio@

   ok claudio@ tb@
VersionDeltaFile
1.2+6-2lib/libc/hash/sha512.c
+6-21 files

OpenBSD/src LYZ4OFKusr.bin/tmux format.c tmux.1

   Add A modifier to cycle through a series of values, GitHub issue 5412
   from Fernando Daciuk.
VersionDeltaFile
1.408+96-5usr.bin/tmux/format.c
1.1147+21-1usr.bin/tmux/tmux.1
1.499+3-1usr.bin/tmux/server-client.c
1.1413+2-1usr.bin/tmux/tmux.h
+122-84 files

OpenBSD/src vIwrecIlibexec/getty gettytab.5

   gettytab(5): remove old references to pp

   tedu@ removed PPP support back in 2015. Sync the man page to match current
   reality.

   ok millert@, dlg@
VersionDeltaFile
1.29+2-11libexec/getty/gettytab.5
+2-111 files

OpenBSD/src YYBvYC5regress/usr.bin/ssh cfgparse.sh

   Automatically detect IPv6 support and test IPv6 parsing if found.
   This should always be enabled on OpenBSD, but allows us to use the same
   test in Portable without modifications that make syncs harder.
VersionDeltaFile
1.12+13-8regress/usr.bin/ssh/cfgparse.sh
+13-81 files

OpenBSD/src n88lT5xregress/usr.bin/ssh cfgparse.sh

   Factor out all of the IPv6 addresses into variables.  This lets us skip them
   in Portable on platforms that don't support IPv6 all in one place, removing
   diffs from within the tests themselves and making syncs easier.
VersionDeltaFile
1.11+16-7regress/usr.bin/ssh/cfgparse.sh
+16-71 files

OpenBSD/src oHKRvyZlibexec/getty subr.c

   getty(8): IXANY is an input flag, not a local flag

   The dx gettytab capability was a no-op, fix this so the capability behaves
   as intended.

   Original fix was submitted by Piotr Durlej in 2024. We applied half of
   that fix at the time. Now apply the other half of the originally submitted
   fix.

   ok millert@
VersionDeltaFile
1.30+3-3libexec/getty/subr.c
+3-31 files

OpenBSD/src AvVFSoIusr.sbin/bgpd rde_update.c

   If a session drops from add-path send to no add-path send then the
   adj-rib-out needs extra cleanup in up_generate_updates().

   In the EVAL_SYNC case up_generate_updates() should check if the
   adjout_prefix (p) returned was for an add-path path. This is the case if
   path_id_tx is not 0. In that case withdraw all paths before calling
   up_process_prefix().

   The add-path side already does this by default.

   OK tb@
VersionDeltaFile
1.203+13-1usr.sbin/bgpd/rde_update.c
+13-11 files

OpenBSD/src GZwuqb0usr.sbin/vmd vmd.c vioqcow2.c

   vmd(8): check for under reads/writes when copying qcow2 clusters.

   Report and original diff by Andrew Griffiths. Corrected to handle
   logging when errno was not set by pread(2)/pwrite(2).

   ok hshoexer@, mlarkin@, bluhm@
VersionDeltaFile
1.178+18-8usr.sbin/vmd/vmd.c
1.29+10-3usr.sbin/vmd/vioqcow2.c
1.53+5-3usr.sbin/vmd/control.c
+33-143 files

OpenBSD/src g9TVka4sys/arch/powerpc/include elf.h, sys/arch/powerpc64/include elf.h

   Set flags for Power ISA 2.06, 2.07, isel, and vec crypto

   These are for elf_aux_info(3) AT_HWCAP or AT_HWCAP2.  The vec crypto
   flag is for accelerating AES and SHA-2.  Some ports check these flags,
   or will check them if they get patched to call elf_aux_info.

   Define PPC_FEATURE2_VEC_CRYPTO with the same value as
   PPC_FEATURE2_HAS_VEC_CRYPTO, because I have seen code using the name
   without HAS.

   ok kettenis@
VersionDeltaFile
1.31+6-4sys/arch/powerpc64/powerpc64/cpu.c
1.4+2-1sys/arch/powerpc/include/elf.h
1.4+2-1sys/arch/powerpc64/include/elf.h
+10-63 files

OpenBSD/src HJRfzmtsys/netinet6 in6_ifattach.c

   netinet6: keep negotiated IPv6CP IFID unchanged for link-local address

   When sppp/PPPoE installs a peer-suggested IPv6CP interface identifier,
   in6_ifattach_linklocal() forced EUI64 G/U bit adjustments on the
   provided IFID. This unconditionally set the universal bit, rewriting a
   valid negotiated IFID like ::1 into ::200:0:0:1, yielding
   fe80::200:0:0:1 instead of fe80::1.

   RFC 5072 Section 5 specifies that the PPP link-local address is formed
   using the negotiated Interface Identifier as-is. Skip EUI64 bit
   modification on point-to-point interfaces. Non-P2P callers retain
   existing behaviour, while callers passing NULL continue using
   in6_get_ifid().

   Reported by Martin Crossley <admin AT crossleys DOT biz>.

   OK stsp@
VersionDeltaFile
1.126+7-3sys/netinet6/in6_ifattach.c
+7-31 files

OpenBSD/src X9158Ezusr.bin/tmux screen-redraw.c

   Clip floating panes exactly at window edge, don't let the border creep
   into the first outside column.
VersionDeltaFile
1.155+7-5usr.bin/tmux/screen-redraw.c
+7-51 files

OpenBSD/src xm7hXe3usr.bin/tmux window.c

   Invalidate scene when window is resized.
VersionDeltaFile
1.367+2-2usr.bin/tmux/window.c
+2-21 files

OpenBSD/src iAHP0bMusr.bin/tmux tmux.1 cmd-split-window.c

   Add a -C flag to new-pane to have a modal pane close when the mouse is
   clicked outside it, GitHub issue 5400.
VersionDeltaFile
1.1146+6-3usr.bin/tmux/tmux.1
1.146+5-3usr.bin/tmux/cmd-split-window.c
1.498+6-1usr.bin/tmux/server-client.c
1.1412+2-1usr.bin/tmux/tmux.h
+19-84 files

OpenBSD/src hEix0mVusr.sbin/rpki-client parser.c

   Fix possible exit race in the parser

   Call pthread_cond_broadcast() on exit with its mutex held to ensure
   that the receiving threads are all either parked or running and then
   checking quit before calling pthread_cond_wait().
   Also once woken recheck the value of quit and exit the main loop early.

   OK tb@
VersionDeltaFile
1.183+17-3usr.sbin/rpki-client/parser.c
+17-31 files

OpenBSD/src bu6xfSZusr.bin/tmux screen-redraw.c

   If drawing border but not actually on a border, use the default line
   style.
VersionDeltaFile
1.154+3-1usr.bin/tmux/screen-redraw.c
+3-11 files

OpenBSD/src c8E2GTMusr.bin/tmux window-copy.c tmux.1

   Add copy-mode-current-line-style to set style for current line in copy
   mode, GitHub issue 5391 from Leo Henon.
VersionDeltaFile
1.423+43-7usr.bin/tmux/window-copy.c
1.1145+10-2usr.bin/tmux/tmux.1
1.240+10-1usr.bin/tmux/options-table.c
+63-103 files

OpenBSD/src xf91f95sys/dev/fdt xhci_fdt.c

   Use OF_getpropbool() instead of OF_getproplen() where appropriate.

   ok jsg@
VersionDeltaFile
1.31+5-5sys/dev/fdt/xhci_fdt.c
+5-51 files

OpenBSD/src gImrNpnlib/libc/asr gethostnamadr_async.c res_send_async.c

   DNS names are not proper C strings, they can contain NUL octets.

   If we want to use string functions (e.g. for comparison) we first need
   to convert them.

   with dgl some time ago
   OK dlg
VersionDeltaFile
1.55+9-6lib/libc/asr/gethostnamadr_async.c
1.45+7-3lib/libc/asr/res_send_async.c
+16-92 files

OpenBSD/src q58p6Cdlib/libc/asr asr.c

   Use decimal encoding for special characters in DNS labels.

   with dgl some time ago
   OK dlg
VersionDeltaFile
1.72+28-8lib/libc/asr/asr.c
+28-81 files

OpenBSD/src NtZ712Yusr.sbin/bgpd session_bgp.c session.c

   Rework the IdleHoldTimer and how fast reconnects are implemented.

   On first error bgpd should allow a fast reconnect - this is especially
   helpful for passive sessions. The way this was implemented was error
   prone with a special case in session_accept().

   Adjust the FSM so that on the first IDLE transistion the session uses
   a IdleHoldTime of 0 sec but then increased to INTERVAL_IDLE_HOLD_INITIAL.
   At the same time the outgoing connection is delatyed via ConnectRetryTimer.
   Doing this moves the session quickly into active state and allows new
   connections in but delays the reconnect like before.

   Additionally the STATE_ACTIVE / EVNT_START FSM case is adjusted to initiate
   a connect immediatly. This allows a 'bgpctl nei X up' to work also for
   sessions in ACTIVE state. Also passive sessions will initiate a connection
   in this case, which is a new behaviour.

   OK tb@
VersionDeltaFile
1.11+35-24usr.sbin/bgpd/session_bgp.c
1.538+2-13usr.sbin/bgpd/session.c
1.141+3-7usr.sbin/bgpd/control.c
1.199+1-3usr.sbin/bgpd/session.h
+41-474 files

OpenBSD/src LPdYpxYusr.sbin/bgpd rde_peer.c

   Use peer_dump_done() in the EXPORT_NONE and EXPORT_DEFAULT_ROUTE cases of
   peer_dump().

   peer_dump_done() calls peer_blast_done() and it issues the End-Of-RIB
   marker. This unifies all the peer_dump finalizers to use peer_dump_done().

   OK tb@
VersionDeltaFile
1.81+3-3usr.sbin/bgpd/rde_peer.c
+3-31 files

OpenBSD/src yqmwwwrusr.sbin/bgpd bgpd.h

   Switch a few uint32_t to unsigned int where it makes sense.

   Instead of mixing uint32_t with unsigned long long use unsigned int for
   those. In most cases those are simple counts that can't get too big.
   The same is the case for max_prefix and max_out_prefix. There is no good
   reason to use uint32_t there.

   OK tb@
VersionDeltaFile
1.546+8-8usr.sbin/bgpd/bgpd.h
+8-81 files

OpenBSD/src wK8188uusr.sbin/bgpd bgpd.h

   In struct rde_peer_stats use unsigned long long instead of uint64_t to
   simplify printing the values out.

   OK tb@
VersionDeltaFile
1.545+10-10usr.sbin/bgpd/bgpd.h
+10-101 files

OpenBSD/src vdz1W8Qusr.bin/tmux format-draw.c

   Use correct cursor position for range end, GitHub issue 5414.
VersionDeltaFile
1.34+2-2usr.bin/tmux/format-draw.c
+2-21 files

OpenBSD/src CrLXICSusr.bin/tmux tty-keys.c

   Increase escape-time for tmux's own queries (refresh-client -l and
   window size) as well, GitHub issue 5388 from Jackson Edmonds.
VersionDeltaFile
1.211+4-3usr.bin/tmux/tty-keys.c
+4-31 files

OpenBSD/src TuW4MtHregress/usr.bin/ssh channel-timeout.sh

   verify that ChannelTimeout in a Match block is effective
VersionDeltaFile
1.3+12-1regress/usr.bin/ssh/channel-timeout.sh
+12-11 files