sbappendcontrol never fails; nix the return value indicating success.
Cleanup which in principle changes the module ABI (I doubt there are
any modules out there that actually use sbappendcontrol, though rump
does use it across libraries) after:
PR kren/60832: AF_LOCAL stream: sendmsg() with SCM_RIGHTS silently
drops data and descriptors but reports success
XXX kernel revbump due to API/ABI change -- not for pullup
sendmsg(2): Don't fail with ENOBUFS on fd passing.
We don't fail with ENOBUFS if we're not fd-passing -- we just block
or fail earlier on with EAGAIN; no reason to invent a new failure
mode just for the fd-passing case.
Whether we should have _any_ path that checks the receiving socket's
receive buffer limit is another question, but it's silly for it to:
1. apply _only_ when passing fds,
2. trip only when the kernel internally expands the buffer, and/or
3. fail with ENOBUFS instead of blocking or failing with EAGAIN.
This change essentially matches FreeBSD's subversion r337328:
commit 5b0480f2cca0a4a04f21055ed769be93f11348de
Author: Mark Johnston <markj at FreeBSD.org>
Date: Sat Aug 4 20:26:54 2018 +0000
Don't check rcv sockbuf limits when sending on a unix stream socket.
[25 lines not shown]
sendmsg(2): Treat ENOBUFS on fd passing as a bug.
PR kern/60832: AF_LOCAL stream: sendmsg() with SCM_RIGHTS silently
drops data and descriptors but reports success
lang/hare: New package
Hare is a systems programming language designed to be simple, stable, and
robust. Hare uses a static type system, manual memory management, and a
minimal runtime. It is well-suited to writing operating systems, system
tools, compilers, networking software, and other low-level, high performance
tasks.
www/apache24: update to 2.4.69
Apache 2.4.69 (2026-10-01)
*) Fix the tar icon in the documentation so that its background is
transparent. #70238. [Jeffery To <jeffery.to gmail.com>]
*) mod_ssl: Fix OpenSSL compatibility macros for X509_get0_notBefore,
X509_get0_notAfter, and X509_get0_serialNumber with OpenSSL < 1.1.
#70205. [Craig Lorentzen <crlorent amazon.com>]
*) mod_cgid, mod_ssl, mod_md: Various hardening fixes. [Various authors]
*) mod_md: MDServerStatus is now disabled by default. [Joe Orton]
*) mod_auth_digest: Fix compatibility with expression-based AuthName.
#59039. [Eric Covener]
*) mod_auth_digest.c: Drop RFC 2069 support; rewrite shared memory
[29 lines not shown]
rust199: update to rust version 1.99.0.
Pkgsrc changes:
* Adapt to changes in vendored crate versions.
* Version & checksum changes.
Upstream changes:
Version 1.99.0 (2026-10-01)
==========================
Language
--------
- [Add allow-by-default `raw_borrows_via_references` lint that
checks for references that decay immediately into raw
borrows](https://github.com/rust-lang/rust/pull/138230)
- [Extend `unconditional_panic` lint to function calls that panic
when the chunks/windows size is zero]
(https://github.com/rust-lang/rust/pull/153563)
[214 lines not shown]
fifo: Fix EOF reporting in various cases.
According to POSIX:
> When attempting to read from an empty pipe or FIFO:
>
> If no process has the pipe open for writing, read() shall
> return 0 to indicate end-of-file.
So:
1. When there are no writers, after open(O_RDONLY|O_NONBLOCK),
blocking reads should immediately report EOF instead of blocking,
and should continue to immediately report EOF on repeated reads.
Previously, they would simply block, because the wrong socket was
initialized with SS_CANTRCVMORE -- though curiously, nonblocking
reads would consistently report EOF.
[42 lines not shown]
databases/postgresql-postgis2: Drop explicit ACCEPTED
postgis builds with all versions in the default value of
PGSQL_VERSIONS_ACCEPTED. It's generally not difficult about pgsql
versions, and likely to continue to work with all pkgsrc versions.
Drop the explicit redundant setting as unnecessary, as well as
confounding for those adjusting mk/pgsql.mk to only build one version.
sendmsg(2): Report ENOBUFS instead of success on failure to pass fds.
PR kern/60832: AF_LOCAL stream: sendmsg() with SCM_RIGHTS silently
drops data and descriptors but reports success
cmsg: Test edge case of fd-passing near buffer size.
This test allows sendmsg to fail with ENOBUFS without blocking, and
verifies that the fds are received if it succeeds.
When passing file descriptors, sendmsg can fail with ENOBUFS it did
not or would not block because _after_ the blocking criterion is
tested in the AF-generic uipc_socket.c logic (essentially, whether
the data length + control length would exceed the send buffer size),
the control buffer is expanded on some architectures by converting
each int file descriptor to a struct file pointer in the kernel, and
then the buffer size is checked again in AF_LOCAL-specific logic when
unp_send calls sbappendcontrol.
Frankly I think this is a bad design, and sendmsg should just not
fail for this reason if it has passed the blocking criterion: either
(a) the AF_LOCAL-specific logic should count the user's control
buffer size with ints rather than the the kernel's control buffer
[16 lines not shown]
mips: Avoid shifting into sign bit by using unsigned type instead.
Maybe this loop should do arithmetic in the other direction? But at
least left shifts on unsigned t-bit types are reduced mod 2^t and not
undefined, so this is a simpler change to avoid UB.
PR port-evbmips/60812: UBSan: Undefined Behavior in [sys-src] member
access within misaligned address [..] for type '[..]' which requires
128 byte alignment
policy based routing in NPF addition
route-to interface should be specified using "interface" paramter.
indroduces IPv4 and IPv6 gateway using "via" and "via6" parameters.
introduces "dup-to" to duplicated packet and route duplicated traffic via
npf's configured route while allowing the normal packet continue its
journey.
simple use case
route: "interface" wm1, "via" 192.168.64.100 "via6" fe80::1 "dup-to"
Import tzdata2026e from https://github.com/JodaOrg/global-tz/releases/download/2026egtz/tzdata2026egtz.tar.gz
Summary of changes in tzdata2026e (2026-09-29 17:14:38 -0700):
* Manitoba’s 2026-03-08 spring forward was its last foreseeable clock
change, as it moved to permanent -05 thereafter.
* As the change affects both America/Winnipeg and its backward
compatibility link, the obsolescent setting TZ="Canada/Central"
will now use the abbreviation EST for affected timestamps,
akin to TZ="Canada/Pacific" behavior introduced in 2026b.
* In 1925 Ireland fell back on 09-20 not 10-04 (thanks to Stan Ulbrych).
knot-resolver: Update to 6.5.0
Thursday, October 1, 2026
Bugfixes
views: fix "unused tags" error when repeating a tag in views (!1883)
watchdog: detect file-changes done via rename*() syscall (!1895) This is relevant for RPZ files and TLS certs+keys.
DoH fixes for sharing connections among different users (!1844)
TCP-based connections used Nagle's algorithm since 6.2.0 (!1903) This mistake significantly increased latencies of such transports.
local-data: process upper-case names correctly (!1915)
Packaging
deb: migrate to sysusers and update packaging (!1857)
rpm: fix source build against libknot >= 3.6 (!1907)
python: 3.9+ (!1886), migrated to setuptools (!1889), removed typing-extensions (!1910)
Debian 11 is no longer supported
Debian,Ubuntu: i386 and armhf architectures no longer supported
Improvements
[12 lines not shown]
powerdns-recursor: Update to 5.4.7
Released: 1st of October 2026
Bug Fixes
Rec: Fix Lua to YAML conversion of custom RPZ policies
References: pull request 18029
Rec: retrieve DNSSEC data with RPZ processing disabled
References: pull request 18035
Rec: Catch exception thrown by parsing system resolver result
References: pull request 18068
Fix(rec): Wipe caches when wiping all NTA’s
References: pull request 18070
Rec and auth: fix axfr failure to invalidate fd on close in all cases.
References: pull request 18084
[2 lines not shown]