18400 posix_spawnattr_init(3C) uses wrong size
Reviewed by: Andrew Stormont <andyjstormont at gmail.com>
Reviewed by: Cedric Blancher <cedric.blancher at gmail.com>
Reviewed by: Toomas Soome <tsoome at me.com>
Reviewed by: Bill Sommerfeld <sommerfeld at hamachi.org>
Reviewed by: Andy Fiddaman <illumos at fiddaman.net>
Reviewed by: Dale Ghent <daleg at elemental.org>
Approved by: Dan McDonald <danmcd at kebe.com>
[LV] Add VPlan printing tests for memory runtime check generation (NFC) (#221232)
Add VPlan printing tests with runtime check blocks, as well as coverage
for checks where one of the bounds involves an AddRec.
[lit] Apply --filter-out to GoogleTest shard results (#220410)
[lit] Apply --filter-out to tests expanded from GoogleTest shards
A GoogleTest shard is a single lit test at discovery time, so
`--filter-out` can only match the shard's name and has no way to
deselect individual gtest cases. The cases only get real names once
`post_process_shard_results` expands the shard's JSON output.
Apply the filter there instead: mark expanded subtests whose full name
matches `--filter-out` as EXCLUDED. Record `has_failure_in_shard` before
the filter is applied, so a shard whose only failing cases were filtered
out is still considered accounted for and is not additionally reported as
a failure of the parent shard.
Add a test which filters out the failing and unresolved cases of the
googletest-format inputs and checks that the run reports 2 excluded
and no failures.
Assisted-By: Claude Opus 5.
zcp: support bookmarks in zfs.sync.destroy
Teach the channel-program synctask destroy path to recognize bookmark
targets and route them through the existing bookmark-destroy
implementation. This enables zfs.sync.destroy() to remove bookmarks from
Lua channel programs, matching the behavior already available for
datasets and snapshots. A functional regression test was added to cover
bookmark destruction from a channel program.
Reviewed-by: Brian Behlendorf <behlendorf1 at llnl.gov>
Signed-off-by: Stephen Warren <swarren at wwwdotorg.org>
Closes #18992
NAS-143146 / 26.0.0-RC.1 / Include webshare shares in usage reporting (by william-gr) (#19626)
## Summary
- Add `webshare` to the share types collected by `gather_sharing` in
`plugins/usage/gather.py`
- Each webshare is reported as `{"type": "WEBSHARE", "enabled": ...,
"is_home_base": ...}`; name, path and dataset are omitted to keep the
report anonymous, matching how SMB only reports `purpose` and NFS only
`ro`
## Test plan
- `python3 -m py_compile` on the changed file
- `tests/api2/test_usage_reporting.py` (only asserts the `shares` key
exists, so no update needed)
Original PR: https://github.com/truenas/middleware/pull/19622
Co-authored-by: William Grzybowski <56250+william-gr at users.noreply.github.com>
NAS-143146 / 26.0.0 / Include webshare shares in usage reporting (by william-gr) (#19625)
## Summary
- Add `webshare` to the share types collected by `gather_sharing` in
`plugins/usage/gather.py`
- Each webshare is reported as `{"type": "WEBSHARE", "enabled": ...,
"is_home_base": ...}`; name, path and dataset are omitted to keep the
report anonymous, matching how SMB only reports `purpose` and NFS only
`ro`
## Test plan
- `python3 -m py_compile` on the changed file
- `tests/api2/test_usage_reporting.py` (only asserts the `shares` key
exists, so no update needed)
Original PR: https://github.com/truenas/middleware/pull/19622
Co-authored-by: William Grzybowski <56250+william-gr at users.noreply.github.com>
Revert "Linux: avoid prefaulting under the ZFS range lock"
This reverts commit 43bb1614d50fee71b8ada14ca7b3a0d968a26263.
Signed-off-by: Brian Behlendorf <behlendorf1 at llnl.gov>
Issue #18872
Issue #19046
Expose the owner enforced model and the ETag mode
The daemon gained two registry keys. permissions_model takes a third
value, s3_bucket_owner_enforced, under which every filesystem step
runs as the bucket owner, so every object is the owner's and the grant
rows are the whole of the access control. A grantee then needs no ACL
on the share root, which is the answer to the AccessDenied a second
writer got at a directory the daemon made the owner's. Authorization
and the audit trail still name the caller.
multipart_etag chooses what an assembled multipart object answers.
composite is the S3 construction and costs an MD5 pass over every
part. minted declines that pass for a part sent without a Content-MD5
and answers an opaque token, for a backup target that declares its
own checksums and never reads an ETag.
The bucket API carries both as S3_BUCKET_OWNER_ENFORCED and
COMPOSITE or MINTED, the row renders both, and the object lock check
now refuses only MULTIPROTOCOL, since either S3-only model may carry a
[7 lines not shown]
[libc] implement nice (#221048)
Implement the `nice` function as defined in POSIX, as well as
approrpiate tests.
Assisted-by: Automated tooling, human reviewed.
[flang] Add flag to exclude string literal in isCompilerGenerated (#221305)
Add a flag to exclude string literals read-array constant from
isCompilerGenerated. On by default.
NVPTX: Drop global AllowFPOpFusion read from allowFMA
We're near the end of the decade long effort to eliminate the
fast math fields from TargetOptions. This is one of the few
remaining consumers, so remove it. Update incidentally
changed tests by adding contract flags.
Co-authored-by: Claude (Claude-Opus-4.8) <noreply at anthropic.com>
[libc] implement getloadavg (#221049)
Implement the `getloadavg` function which was originally added in BSD
but also adopted by linux.
Assisted-by: Automated tooling, human reviewed
[lld][MachO] Support Objective-C class stubs
Teach Mach-O objc stubs to synthesize class-message stubs that load the class object, selector, and objc_msgSend target.
lld already supports the Apple clang _objc_msgSend$<selector> stub form, even though upstream clang does not currently expose a driver or cc1 flag for emitting it. Apple clang also emits _objc_msgSendClass$<selector>$_OBJC_CLASS_$_<class>; handling that form completes the existing selector-stub support.
Cover local classes, dylib classes, archives, dynamic lookup via -U, missing class symbols, malformed names, unsupported architectures, and dead stripping.
NAS-143057 / 26.0.0-RC.1 / Redact uploaded license from the audit trail (by sonicaj) (#19605)
This commit fixes an issue where `truenas.license.upload` recorded its
license argument verbatim in the audit trail, because the field was
never declared `Secret[...]`. Uploading needs FULL_ADMIN but audit
records come back with SYSTEM_AUDIT_READ, so a read-only admin could
pull out the blob a full admin installed, and the same record went to
remote syslog and into debug bundles.
Marking the field `Secret[LongNonEmptyString]` means `check_annotations`
stops accepting the old `license_: str` signature, and the
`str(license_)` that went with it turned out to be wrong already: it
stringified the `LongStringWrapper` and wrote `LongStringWrapper(<pem>)`
into the license file. The daemon's PEM scan skips the leading garbage
so nothing ever failed, but the on-disk copy never matched what was
uploaded, which defeats the TNC heartbeat's raw_license comparison and
makes every HA send_license add another wrapper layer. Unwrapping both
boxes writes the PEM back byte for byte.
[4 lines not shown]
knot: Update to 3.5.8
Knot DNS 3.5.8 (2026-09-04)
Improvements:
knotc: better compatibility with SmartOS #979
knotd: added a check for possible errors while reading a backup label file
knotd: more robust parsing of data stored in LMDB (Thanks to Jim Alves-Foss)
Bugfixes:
knotd: unauthenticated TSIG chosen-prefix signing that enables DDNS forgery (Thanks to Gia Bui)
knotd: server crash due to a missing check for malformed TCP packet in XDP mode (Thanks to Kushal Das)
kzonecheck: defective zone origin detection if the file name is too short (Thanks to Kushal Das)
Revert "[clang-tidy][NFC] Test all bugprone-exception-escape option modes" (#221306)
The test became flaky on downstream builders after this commit, so
reverting this now.
Reverts llvm/llvm-project#221164