OpenBSD/src pRMfjn8lib/libc/sys unveil.2 pledge.2

   Document how unveil(2) permissions correspond to various pledge(2) promises.

   unveil considers the operation that happens at namei(9) time, but pledge has a
   deeper integration into subsystems, therefore pledge can be more precise.

   This change is the result of various experiments. For example the "unix" promise
   allows creating files when calling bind(2) on an AF_UNIX socket, we found
   requiring the "cpath" promise along with "unix" either required extensive
   changes or made the promise set too broad. Similiar applies to connect(2) and
   "wpath". Instead document that the unveil permissions "c", "w" and "r"
   correspond to a larger set of pledge promises.

   ok deraadt
VersionDeltaFile
1.25+14-5lib/libc/sys/unveil.2
1.87+2-2lib/libc/sys/pledge.2
+16-72 files

OpenBSD/src 9mXhlg5usr.sbin/fw_update fw_update.sh

   Clean trailing slashes from FWURL

   job@ noticed sysupgrade passes urls with trailing slashes that
   aren't valid on firmware.openbsd.org.
VersionDeltaFile
1.67+3-1usr.sbin/fw_update/fw_update.sh
+3-11 files

OpenBSD/src zxcMNeFsys/dev/fdt dwpcie.c

   make dwpcie_rk3568_link_up less pedantic about what it considers "up".

   ie, only report whether the pcie link is up, don't look at the state
   of the up link too. this matches linux behaviour fwiw.

   after a warm boot (ie, reboot), the re(4) in my rk3528 based radxa
   e20c didnt attach because the pcie link was in a power saving state
   instead of the ready state this code was expecting.

   jmatthew@ and i have also tested this on a bunch of rk356x boards too.

   ok jmatthew@ kettenis@
VersionDeltaFile
1.63+2-3sys/dev/fdt/dwpcie.c
+2-31 files

OpenBSD/src iqr6NwBusr.bin/tmux window.c window-panes.c

   Remove bits to disable removing empty lines since actually we want to do
   that - zoom added them in the first place.
VersionDeltaFile
1.366+2-11usr.bin/tmux/window.c
1.3+3-8usr.bin/tmux/window-panes.c
1.1410+1-2usr.bin/tmux/tmux.h
+6-213 files

OpenBSD/src 9m48ZiOusr.bin/tmux tmux.c

   Copy the home directory if it comes from getpwuid.
VersionDeltaFile
1.222+2-2usr.bin/tmux/tmux.c
+2-21 files

OpenBSD/src 23Jm1hAusr.bin/tmux format.c tmux.1

   Add unzoomed width and height formats and use them for the sizes shown
   in panes mode, reported by tb@.
VersionDeltaFile
1.406+76-1usr.bin/tmux/format.c
1.1144+4-2usr.bin/tmux/tmux.1
1.239+3-2usr.bin/tmux/options-table.c
+83-53 files

OpenBSD/src 3g7DJOausr.bin/tmux window-visible.c

   Guard x as well as y to avoid overflow, GitHub issue 5409 from Park
   Seongjae.
VersionDeltaFile
1.5+2-2usr.bin/tmux/window-visible.c
+2-21 files

OpenBSD/src xbt9nUqusr.bin/mg echo.c

   use strncmp instead of memcmp in complt()

   cpos is not necessarely shorter than lh->l_name length, so we might end
   up memcmp'ing out of bounds.

   from Han Boetes (hboetes at gmail)
VersionDeltaFile
1.71+2-2usr.bin/mg/echo.c
+2-21 files

OpenBSD/src uEgOqSkusr.bin/mg interpreter.c

   fix NULL-deref in parsexp; from Han Boetes (hboetes at gmail)
VersionDeltaFile
1.38+3-2usr.bin/mg/interpreter.c
+3-21 files

OpenBSD/src IJdp6N2sys/arch/riscv64/stand/efiboot efiboot.c

   Load device tree for the Spacemit K3 Pico ITX board, which will be added
   to the riscv64-spacemit-dtb firmware package at some point in the
   future.

   ok jsg@
VersionDeltaFile
1.16+3-1sys/arch/riscv64/stand/efiboot/efiboot.c
+3-11 files

OpenBSD/src 2ZxJEp1sys/arch/riscv64/dev simplebus.c

   Use OF_is_enabled() like we do on arm64 such that we skip nodes with
   "reserved" status.

   ok jsg@
VersionDeltaFile
1.11+2-4sys/arch/riscv64/dev/simplebus.c
+2-41 files

OpenBSD/src mD4675vsys/arch/riscv64/include riscvreg.h

   Fix csr_swap() to return the old value instead of the new value.  From
   FreeBSD where this code originated.

   ok jsg@
VersionDeltaFile
1.7+7-6sys/arch/riscv64/include/riscvreg.h
+7-61 files

OpenBSD/src t0ujEbYusr.sbin/relayd pfe.c relay.c

   relayd: check return values

   OK kirill@
VersionDeltaFile
1.96+23-12usr.sbin/relayd/pfe.c
1.266+19-10usr.sbin/relayd/relay.c
1.56+9-5usr.sbin/relayd/ca.c
1.86+9-5usr.sbin/relayd/hce.c
1.204+5-3usr.sbin/relayd/relayd.c
+65-355 files

OpenBSD/src tpvQPjBusr.sbin/httpd server_file.c httpd.h

   usr.sbin/httpd: fix suffix range handling

   Calculate suffix ranges before clamping end offsets so requests at least
   as large as the file return the complete representation. Reject zero
   length and malformed ranges, retain 64 bit sizes throughout range
   handling, and add regression coverage for boundaries and overflow.

   Based on indea of Andrew Kloet

   OK: rsadowski@
VersionDeltaFile
1.83+48-22usr.sbin/httpd/server_file.c
1.179+2-2usr.sbin/httpd/httpd.h
1.168+2-2usr.sbin/httpd/server_http.c
+52-263 files

OpenBSD/src Hx5HlRsusr.sbin/httpd server.c

   httpd: check return values in dispatch_parent

   OK kirill@
VersionDeltaFile
1.134+30-16usr.sbin/httpd/server.c
+30-161 files

OpenBSD/src YP2oE3tusr.sbin/httpd config.c

   httpd: remove redundant search and check return value

   The server foreach-loop serves the same purpose as "serverconfig_byid"
   did previously.

   OK kirill@
VersionDeltaFile
1.74+7-18usr.sbin/httpd/config.c
+7-181 files

OpenBSD/src 5wiT8Dousr.sbin/httpd config.c

   httpd: do NOT send location fcgiparams twice

   Only emit the params when the current receiver is the server child.

   When sending a location-config from the parent, the FCGI params IMSG
   was emitted once per receiver iteration and always targeted the server
   child.  With both the server and the logger process needing the server
   config, the server child received IMSG_CFG_FCGI twice per location and
   appended the same params on top of the existing list. The FastCGI backends
   then saw every param duplicated.

   Input Fabien Romano, OK kirill@
VersionDeltaFile
1.73+11-7usr.sbin/httpd/config.c
+11-71 files

OpenBSD/src P1m9xOusys/dev/ofw fdt.c

   fix OF_translate() memory leak
   ok jca@ kettenis@
VersionDeltaFile
1.41+2-1sys/dev/ofw/fdt.c
+2-11 files

OpenBSD/src y7gISdWgnu/usr.bin/perl/ext/POSIX/t sigaction.t

   Tweak Perl sigaction test skip logic to cover OpenBSD 8.0.

   ok afresh1@
VersionDeltaFile
1.10+1-1gnu/usr.bin/perl/ext/POSIX/t/sigaction.t
+1-11 files

OpenBSD/src jLosVDMsys/arch/powerpc64/powerpc64 pmap.c

   sys/powerpc64: encode PTCR PATS correctly

   The PTCR PATS field stores log2(partition table size) - 12.  Since
   PATMEMSZ is a power of two, ffs(PATMEMSZ) is log2(PATMEMSZ) + 1; the
   old expression wrote 5 for the 64 KiB table, describing 128 KiB to
   Book3S v3 hardware.

   Use ffs(PATMEMSZ) - 1 - 12 to express the intended log2 calculation
   and encode the 64 KiB partition table as PATS == 4.

   Discussed with kettenis@

   Tested and OK: gkoehler@
VersionDeltaFile
1.67+2-2sys/arch/powerpc64/powerpc64/pmap.c
+2-21 files

OpenBSD/src BRi8O0msys/dev/ic qwx.c qwxvar.h, sys/dev/pci if_qwx_pci.c

   properly handle qwx VIF DMA map allocation failures at attach time

   qwx_attach() runs as a config_mountroot hook, which means errors returned
   from this function will be ignored. Since returning errors is pointless,
   change this function's return value type to void.

   There is a theoretical risk that allocating the virtual interface's DMA
   maps will fail. Allocate these maps earlier and avoid attaching the driver
   if the maps cannot be allocated.
VersionDeltaFile
1.139+3-10sys/dev/ic/qwx.c
1.40+6-1sys/dev/pci/if_qwx_pci.c
1.39+4-2sys/dev/ic/qwxvar.h
+13-133 files

OpenBSD/src vTAb00Gsys/dev/ic qwx.c qwxvar.h

   replace qwx virtual interface list with a single interface structure

   Fixes use of stale pointers on the vif list which caused crashes.
   We do not support multiple interfaces per driver in our net80211 stack,
   so this list inherited from Linux was pointless for us anyway.

   Tested by ajacoutot, phessler, kettenis, gnezdo, krw, and myself.

   ok phessler@ kettenis@ gnezdo@
VersionDeltaFile
1.138+60-139sys/dev/ic/qwx.c
1.38+2-7sys/dev/ic/qwxvar.h
+62-1462 files

OpenBSD/src NkP416Oregress/lib/libc/time/time_conversion timetest.c

   Alberta moved to permanent -06 on 2026-06-18, update test data
VersionDeltaFile
1.6+17-17regress/lib/libc/time/time_conversion/timetest.c
+17-171 files

OpenBSD/src bO3tN2Usys/net pipex.c, sys/netinet udp_usrreq.c ip_output.c

   Use uint32_t for ipsecflowinfo.

   Type of ipsecflowinfo was mixture of uint32_t, u_int32_t and int.
   Convert to uint32_t consistently.

   OK mvs@
VersionDeltaFile
1.351+6-6sys/netinet/udp_usrreq.c
1.419+5-4sys/netinet/ip_output.c
1.282+4-4sys/netinet/ip_ipsp.c
1.164+3-3sys/net/pipex.c
1.432+3-3sys/netinet/ip_input.c
1.250+3-3sys/netinet/ip_ipsp.h
+24-231 files not shown
+26-257 files

OpenBSD/src OGbivEDusr.bin/tmux window-panes.c window.c

   Prevent display-panes from shifting the active pane scroll position by
   copying the screen from before zoom, also do not let resize consume
   blank lines.
VersionDeltaFile
1.2+47-12usr.bin/tmux/window-panes.c
1.365+11-2usr.bin/tmux/window.c
1.1409+2-1usr.bin/tmux/tmux.h
+60-153 files

OpenBSD/src BTbZylEusr.bin/tmux cmd-join-pane.c

   Add some missing calls to invalidate scene.
VersionDeltaFile
1.73+4-1usr.bin/tmux/cmd-join-pane.c
+4-11 files

OpenBSD/src O0DnCnksys/arch/octeon/dev cn30xxsmi.c

   octsmi: Find multi-PHY parent
VersionDeltaFile
1.14+3-1sys/arch/octeon/dev/cn30xxsmi.c
+3-11 files

OpenBSD/src 6t9KOOhsys/arch/octeon/octeon cn3xxx_dts.S cn3xxx.dts

   octeon: Regenerate cn3xxx_dts.S

   Regenerate the built-in device tree blob source using current dtc.

   No change in the blob.
VersionDeltaFile
1.5+742-232sys/arch/octeon/octeon/cn3xxx_dts.S
1.5+4-4sys/arch/octeon/octeon/cn3xxx.dts
+746-2362 files

OpenBSD/src I2NLN2Kusr.sbin/vmd priv.c vmd.c

   vmd(8): disambiguate fd variable naming

   Split out fd tracking in the global "struct vmd" instance with
   explicit names to not reuse the same one for storing semantically
   different fds. Some vmd processes were using .vmd_fd to track the
   open /dev/vmm while another used it for a socket(2) instance for
   ioctls. This makes it hard to reason about and future changes
   harder to review.

   No intended behavioral change.

   Testing help from Mischa Peters.

   ok @hshoexer
VersionDeltaFile
1.31+13-13usr.sbin/vmd/priv.c
1.176+12-8usr.sbin/vmd/vmd.c
1.138+8-8usr.sbin/vmd/vmm.c
1.125+6-6usr.sbin/vmd/vm.c
1.148+5-4usr.sbin/vmd/vmd.h
1.141+2-2usr.sbin/vmd/virtio.c
+46-416 files

OpenBSD/src HiijxbRusr.bin/tmux server-client.c cmd-select-pane.c

   Remove the active-pane flag for now, there are some gaps in how this
   works and I don't like it. May come back in a different form (maybe just
   for windows).
VersionDeltaFile
1.497+3-129usr.bin/tmux/server-client.c
1.77+4-11usr.bin/tmux/cmd-select-pane.c
1.1143+1-10usr.bin/tmux/tmux.1
1.1408+2-4usr.bin/tmux/tmux.h
1.93+3-3usr.bin/tmux/cmd-run-shell.c
1.87+2-2usr.bin/tmux/cmd-find.c
+15-1593 files not shown
+21-1659 files