[mlir][irdl] Fix crash in TypeOp/AttributeOp verify on empty sym_name (#184598)
TypeOp::verify() and AttributeOp::verify() called StringRef::front() to
check for leading '\!' or '#' sigils before passing the name to
isValidName(). When sym_name is empty, front() triggers an assertion
failure:
Assertion `\!empty()' failed.
Fix: guard the front() calls with an emptiness check. An empty sym_name
then falls through to isValidName(), which already emits a proper
diagnostic:
error: name of type is empty
Fixes #159949
[Clang] Fix the lambda context for constraint evaluation (#184319)
Constraint lambdas in the requires body need complete template arguments
before they can be evaluated. That was connected by
ImplicitConceptSpecializationDecl which is no longer created naturally
after the normalization patch.
This patch fixes the bug by creating a temporary decl for that purpose.
Though the temporary object should go away once we have the evaluation
context track template arguments.
No release note for being a regression fix.
Fixes #184047
NAS-140109 / 25.10.2.2 / Fix enclosure alert (by themylogin) (#18345)
mypy found the following error:
```
middlewared/alert/source/enclosure_status.py:96: error: Argument 1 to "remove" of "list" has incompatible type "str"; expected "list[str]" [arg-type]
```
good_enclosures was a list of lists of single elements that contained
strings like `f"{enc['name']} (id: {enc['id']})"`. We were trying to:
* Remove strings from that list (which would always raise ValueError
since the list contains lists, not strings)
* List contained `f"{enc['name']} (id: {enc['id']})"`, we were trying to
remove just `enc_name`, that would never have worked also
Original PR: https://github.com/truenas/middleware/pull/18341
Co-authored-by: themylogin <themylogin at gmail.com>
NAS-139989 / 25.10.2.2 / Enforce server signing when encryption mandatory (by anodos325) (#18344)
This commit changes the TrueNAS SMB server so that it also requires
signing when encryption is mandatory. Contrary to how it may appear this
does not have a significant security impact. We are just enabling it so
that security scanners will avoid dinging us by reporting a
"vulnerability" when the server actually enforces something more robust.
Original PR: https://github.com/truenas/middleware/pull/18301
Co-authored-by: Andrew Walker <andrew.walker at truenas.com>
NAS-140111 / 26.0.0-BETA.1 / Fix POSIX ACL inheritance bug and add tests (#18342)
This commit fixes a bug whereby middleware was trying to apply a POSIX
default ACL to files.
Additional tests are added to provide coverage of "acltool" behavior for
recursion and traversal of child datasets.
NAS-140109 / 26.0.0-BETA.1 / Fix enclosure alert (#18341)
mypy found the following error:
```
middlewared/alert/source/enclosure_status.py:96: error: Argument 1 to "remove" of "list" has incompatible type "str"; expected "list[str]" [arg-type]
```
good_enclosures was a list of lists of single elements that contained
strings like `f"{enc['name']} (id: {enc['id']})"`. We were trying to:
* Remove strings from that list (which would always raise ValueError
since the list contains lists, not strings)
* List contained `f"{enc['name']} (id: {enc['id']})"`, we were trying to
remove just `enc_name`, that would never have worked also
[Clang] Warn if both of `dllexport`/`dllimport` and `exclude_from_explicit_instantiation` are specified (#183515)
The attributes `exclude_from_explicit_instantiation` and
`dllexport`/`dllimport` serve opposite purposes.
Therefore, if an entity has both attributes, drop one with a warning,
depending on the context of the declaration.
In a template context, the `exclude_from_explicit_instantiation`
attribute takes precedence over the `dllexport` or `dllimport`
attribute. Conversely, the `dllexport` and `dllimport` attributes are
prioritized, in a non-template context.
[AArch64][ISel] Use vector register for scalar CLMUL (#183282)
Even though there are only v8i8 and v1i64 variants for pmul/pmull, Using
them is faster than the current implementation for scalar CLMUL.
NAS-139989 / 26.0.0-BETA.1 / Enforce server signing when encryption mandatory (#18301)
This commit changes the TrueNAS SMB server so that it also requires
signing when encryption is mandatory. Contrary to how it may appear this
does not have a significant security impact. We are just enabling it so
that security scanners will avoid dinging us by reporting a
"vulnerability" when the server actually enforces something more robust.
(cherry picked from commit fc46c510bb19dcf02a9a46c480cac110631557e6)
NAS-139947 / 25.10.2.2 / Fix `disk.check_disks_availability` (by themylogin) (#18343)
Do not make `disk.check_disks_availability` raise error if the only
disks that have duplicate serial numbers are unrelated to the performed
operation.
Original PR: https://github.com/truenas/middleware/pull/18310
Co-authored-by: themylogin <themylogin at gmail.com>
Do not make `disk.check_disks_availability` raise error if the only disks
that have duplicate serial numbers are unrelated to the performed operation.
(cherry picked from commit de937087fb1936e4c45eadef987e58cc45b3ebf9)