Andrea Mazzoleni
8e66b42ceb
Add trim and trim_empty support to strsplit and update all callers
2026-09-19 21:36:34 +02:00
Andrea Mazzoleni
601064dde7
Use pathcmp for disk name comparisons to enforce case-insensitive uniqueness on Windows
2026-09-18 10:00:42 +02:00
Andrea Mazzoleni
3f3e7d4483
Validate logical disk names in configuration parsing to ensure compatibility with snapraid-daemon
2026-09-18 10:00:41 +02:00
Andrea Mazzoleni
78abc2c7b7
Limit maximum consecutive newlines in uncrustify configuration
2026-09-14 22:33:23 +02:00
Andrea Mazzoleni
33340f1ede
Replace mem_is_zero() with membcmp() and update call sites
Build / build-mac (push) Waiting to run
Build / build-linux (push) Waiting to run
Build / build-arm32 (push) Waiting to run
Build / build-win (push) Waiting to run
Build / build-freebsd (push) Waiting to run
Build / build-musl (push) Waiting to run
CodeQL Advanced / Analyze (c-cpp) (push) Waiting to run
CodeQL Advanced / Analyze (actions) (push) Waiting to run
2026-09-11 09:27:42 +02:00
Andrea Mazzoleni
15048ff14f
Optimize hardware CRC32C using multiple lanes
2026-09-11 09:27:42 +02:00
Andrea Mazzoleni
787fc020e6
Process content info values in contiguous runs
2026-09-10 23:51:30 +02:00
Andrea Mazzoleni
03545f1685
Resolve file-to-parity mappings once per extent while writing content
2026-09-10 23:51:30 +02:00
Andrea Mazzoleni
62ae6c3552
Replace physical reach tracking with the natural file and parity EOF
Build / build-mac (push) Waiting to run
Build / build-linux (push) Waiting to run
Build / build-arm32 (push) Waiting to run
Build / build-win (push) Waiting to run
Build / build-freebsd (push) Waiting to run
Build / build-musl (push) Waiting to run
CodeQL Advanced / Analyze (c-cpp) (push) Waiting to run
CodeQL Advanced / Analyze (actions) (push) Waiting to run
2026-09-09 13:03:11 +02:00
Andrea Mazzoleni
0b64fb2eae
Eliminate obsolete raid_zero API and dedicated zero buffers
Build / build-mac (push) Waiting to run
Build / build-linux (push) Waiting to run
Build / build-arm32 (push) Waiting to run
Build / build-win (push) Waiting to run
Build / build-freebsd (push) Waiting to run
Build / build-musl (push) Waiting to run
CodeQL Advanced / Analyze (c-cpp) (push) Waiting to run
CodeQL Advanced / Analyze (actions) (push) Waiting to run
2026-09-02 20:49:06 +02:00
Andrea Mazzoleni
cea7ce7f0a
Document non-obvious invariants across sync, check, scrub, parity, and handle mapping logic
2026-08-31 10:39:17 +02:00
Andrea Mazzoleni
4aef405259
Validate serialized sub pathnames in content files to prevent path traversal
2026-08-26 22:55:49 +02:00
Andrea Mazzoleni
fa81c20ee6
Preserve leading slash context for absolute double-star filters
2026-08-26 21:11:46 +02:00
Andrea Mazzoleni
527bd69129
Reject unterminated wildcard character classes in filter allocation
2026-08-26 16:46:10 +02:00
Andrea Mazzoleni
dee434f09b
Move exhaustive RAID generation and recovery tests to test command
2026-08-26 16:26:42 +02:00
Andrea Mazzoleni
4fdfc8a923
Fix literal caret handling in Windows path normalization and wildcard matching
2026-08-26 16:26:42 +02:00
Andrea Mazzoleni
69a459ee43
Add comprehensive filter combination and directory pruning regression tests in selftest
2026-08-26 16:26:42 +02:00
Andrea Mazzoleni
76e8ae2498
Allow path components with three or more dots in filter patterns
2026-08-26 16:26:42 +02:00
Andrea Mazzoleni
d4dc5a7339
Reject standalone absolute directory filter pattern /**/ during parsing
2026-08-26 16:26:42 +02:00
Andrea Mazzoleni
35977dadc9
Implement documented wildcard escaping in wnmatch_sub
2026-08-26 12:43:17 +02:00
Andrea Mazzoleni
932b5e567e
Fix wnmatch_sub terminal asterisk handling when matching subdirectories
2026-08-26 12:01:45 +02:00
Andrea Mazzoleni
697ab3056e
Extend selftest and fulltest with disk edge cases, polynomial checks, and comments
2026-08-25 10:59:33 +02:00
Andrea Mazzoleni
a745a05d4e
Add raid_test_tail to test recovery of tail disks across all array sizes up to 251
2026-08-21 12:06:40 +02:00
Andrea Mazzoleni
ecb26a6aee
Fix raid_selftest() parity bounds and dispatch in Vandermonde mode
2026-08-21 12:06:25 +02:00
Andrea Mazzoleni
17591ad932
Add GFNI affine parity generation for RAID polynomial
2026-08-21 12:06:25 +02:00
Andrea Mazzoleni
b5d507fbe9
Use primitive generator 3 for AES Cauchy mode
2026-08-21 12:06:25 +02:00
Andrea Mazzoleni
4423c8c895
Detect truncated parity using the contiguous valid physical prefix
2026-08-18 23:33:58 +02:00
Andrea Mazzoleni
9c6e3952c5
Remove unused MetroHash implementation and references
2026-08-18 23:33:58 +02:00
Andrea Mazzoleni
97b13557fe
Reset all SMART attribute fields (raw, norm, worst, thresh) to SMART_UNASSIGNED when ignored
2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
05884d7aa0
Fix binary varint decoders to reject values overflowing uint32_t/uint64_t declared widths
2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
c79f82bc99
Update to the new RAID library
2026-08-18 23:33:56 +02:00
Andrea Mazzoleni
133e527643
Add support for specifying case-insensitive SMART attribute names in the smartignore option
2026-08-18 23:33:55 +02:00
Andrea Mazzoleni
00b4cbafd0
Merge the CLI and Daemon portable interface
2026-08-18 23:33:55 +02:00
Andrea Mazzoleni
52f7c2184f
Add support for custom smartctl info options using a [info: ...] tag
2026-08-18 23:33:54 +02:00
Andrea Mazzoleni
0d0431a907
Simpler Copyright string
2026-04-09 17:56:49 +02:00
Christoph Hellwig
60269a1236
Use SPDX ( https://spdx.dev/ ) tags to identify the license used for each
...
file, and a COPYING file explaining the licensing scheme, with the actual
licenses listed in the LICENSES/ directory.
2026-04-02 16:01:37 +02:00
Andrea Mazzoleni
d3f7bf64c1
Differentiate messages in the log files if they are caused by an hardware issue
2026-02-01 20:44:36 +01:00
Andrea Mazzoleni
e80734fc4c
Fix typos
2026-01-22 16:13:25 +01:00
Andrea Mazzoleni
9f14dd94e5
Add support for ** in the patterns
Build / build-mac (push) Has been cancelled
Build / build-linux (push) Has been cancelled
Build / build-win (push) Has been cancelled
CodeQL / Analyze (push) Has been cancelled
2026-01-11 15:48:36 +01:00
Andrea Mazzoleni
f6cf240b97
New experimental MuseAir hash
2026-01-11 12:01:12 +01:00
Andrea Mazzoleni
cc2bdad335
Some hash support improvments
2026-01-11 12:01:12 +01:00
Andrea Mazzoleni
d452b109bc
More regression tests
Build / build-mac (push) Waiting to run
Build / build-linux (push) Waiting to run
Build / build-win (push) Waiting to run
CodeQL / Analyze (push) Waiting to run
2025-10-28 12:15:50 +01:00
Andrea Gelmini
986e9b4131
Fix typos
2020-05-26 12:50:15 +02:00
Andrea Mazzoleni
5f716773ab
One more litte test for Tommy
...
Just to increase the code coverage.
2017-11-06 21:49:18 +01:00
Andrea Mazzoleni
cb84c61d07
Extend the coverage test
2016-11-06 20:23:11 +01:00
Andrea Mazzoleni
e58621dada
Remove the now unused tommy_arrayblk
2016-11-03 18:43:37 +01:00
Andrea Mazzoleni
272853e40a
Update to latest TommyDS
2016-10-26 23:23:05 +02:00
Andrea Mazzoleni
9b2c5514c0
Fix the return value of tommy_tree_insert()
...
It must be the object in the tree and not the passed one.
No bad conseguence because the value was used only for assertions,
and not for controlling the behaviour.
2016-10-26 22:58:28 +02:00
Andrea Mazzoleni
36a4d24333
Source code beautification
...
Done with uncrustify.
2016-04-10 22:46:09 +02:00
Andrea Mazzoleni
5b06549ee3
Make the hash size configurable
...
Only at source code level.
2016-04-07 21:39:02 +02:00