Dustin L. Howett
11fe99baf1
Merge pull request #3360 from subotac/fix/windows-empty-wcs-conversion
2026-08-07 16:51:03 -05:00
Dustin L. Howett
b3b2f54e10
Merge pull request #3356 from dunhor/windows-clang-fixes
...
Fix a number of Windows/clang(-cl) issues
2026-08-06 11:38:16 -05:00
Dustin L. Howett
d07177dcc3
Merge pull request #3341 from subotac/fix/root-absolute-path-test
2026-08-05 20:26:26 -05:00
Dustin L. Howett
e5a65a5644
Merge pull request #3351 from stoeckmann/support_format
...
format: Improve format registration error handling
2026-08-03 17:26:03 -05:00
Dustin L. Howett
ada220177a
Merge pull request #3347 from datauwu/archive-write-share-hdrcharset
...
archive_write: share hdrcharset option handling
2026-08-03 12:51:31 -05:00
Dustin L. Howett
d83294359b
Merge pull request #3346 from stoeckmann/append_filter_desync
...
Always attach filter to correct bidder
2026-08-03 12:48:35 -05:00
Dustin L. Howett
2d91e3a051
Merge pull request #3350 from libarchive/dependabot/github_actions/all-actions-4f142db38a
...
CI: Bump the all-actions group with 4 updates
2026-08-03 12:07:32 -05:00
Dustin L. Howett
c706ac4b56
Merge pull request #3312 from datauwu/formats-use-strrchr
2026-08-02 23:53:08 -05:00
Dustin L. Howett
8c4acda5e7
Merge pull request #3335 from jaipaulcheernam/fix/skip-ppmd8-aes256-test-without-crypto
2026-07-31 09:22:42 -05:00
Dustin L. Howett
280402b7f1
Merge pull request #3339 from datauwu/archive-string-fix-build
2026-07-30 18:21:32 -05:00
Dustin L. Howett
19ff56da4f
Merge pull request #3320 from carrerasdarren-cell/fix/iso9660-boot-image-size-overflow
...
iso9660: avoid boot image block count overflow
2026-07-28 14:32:46 -05:00
Dustin L. Howett
40da2cdc52
Merge pull request #3315 from datauwu/iso9660-remove-per-reader-comp-buf
...
iso9660: remove per-reader zero comparison buffer
2026-07-27 17:12:53 -05:00
Dustin L. Howett
10ea0e7499
Merge pull request #3302 from datauwu/program-read-fix-uaf
...
program: fix dangling pointer after close
2026-07-27 17:12:20 -05:00
Dustin L. Howett
e207c4b357
Merge pull request #3317 from stoeckmann/rar5_varint
...
rar5: Improve varint handling
2026-07-27 16:08:31 -05:00
Dustin L. Howett
ca6e125867
Merge pull request #3325 from tbontb-iaq/fix/seek-data-null-not-fatal
...
archive_read: don't poison archive when format lacks seek_data (fixes #3323 )
2026-07-27 14:24:12 -05:00
Dustin L. Howett
3e6d656c80
Merge pull request #3322 from datauwu/warc-writer-unify
...
warc: match other writer styles
2026-07-27 13:43:51 -05:00
Dustin L. Howett
4d3bfca239
Merge pull request #3327 from libarchive/dependabot/github_actions/all-actions-413c1c7ad7
...
CI: Bump the all-actions group with 6 updates
2026-07-27 12:01:12 -05:00
Dustin L. Howett
f5509ae993
Merge pull request #3299 from datauwu/tar-read-fix-uaf
...
tar: fix UAF when reading GNU sparse headers
2026-07-21 13:13:03 -05:00
Dustin L. Howett
0b71b606dd
Merge commit from fork
...
Fix RAR seek_data cursor underflow
2026-07-21 12:55:13 -05:00
Dustin L. Howett
8dec814f98
Merge pull request #3318 from carrerasdarren-cell/fix/mac-metadata-self-copy-uaf
...
archive_entry: handle aliased Mac metadata copies
2026-07-21 12:48:06 -05:00
Dustin L. Howett
33da30bd9c
Merge pull request #3316 from libarchive/dependabot/github_actions/all-actions-3c55da1aaa
...
CI: Bump the all-actions group with 6 updates
2026-07-20 19:36:20 -05:00
Dustin L. Howett
3a8f29903f
Merge pull request #3306 from stoeckmann/data
2026-07-20 10:25:52 -05:00
Dustin L. Howett
84fbafad32
Merge pull request #3292 from datauwu/xar-fix-mem-leaks
...
xar: fix several memory leaks
2026-07-17 17:51:23 -05:00
Dustin L. Howett
d141f661da
Merge pull request #3297 from datauwu/archive-write-fix-uaf
...
archive_write: fix UAF when switching formats
2026-07-17 15:17:29 -05:00
Dustin L. Howett
10a7247810
Merge pull request #3294 from datauwu/bsdtar-fix-signed-overflow
2026-07-17 14:06:56 -05:00
Dustin L. Howett
b85488c37a
Merge pull request #3296 from stoeckmann/filter_writer
2026-07-17 14:04:59 -05:00
Dustin L. Howett
47d94d1f92
Merge pull request #3295 from stoeckmann/typos_2
...
Fix typos
2026-07-17 12:03:55 -05:00
Dustin L. Howett
0362c77f9f
Merge pull request #3293 from DHowett/iso9660-nmlen
2026-07-16 11:10:07 -05:00
Dustin L. Howett
87f72b5e6a
Merge pull request #3243 from datauwu/tar-prefer-native-appledouble
...
tar: prefer multibyte pathname for AppleDouble checks
2026-07-14 14:58:23 -05:00
Dustin L. Howett
bd57e425f1
Merge pull request #3290 from stoeckmann/cab_skip
...
cab: Check `__archive_read_consume` result
2026-07-14 14:55:29 -05:00
Dustin L. Howett
8d66ccf261
Merge pull request #3289 from uchiha-bug-hunter/pax-base64-checked-size
2026-07-14 10:44:07 -05:00
Dustin L. Howett
9e0bae9458
Merge pull request #3284 from datauwu/warc-propagate-generated-header-errors
...
warc: propagate generated header errors
2026-07-14 08:38:29 -05:00
Dustin L. Howett
d5a15c706c
Merge pull request #3264 from stoeckmann/options_const
...
options: Use const char pointer where possible
2026-07-13 19:22:46 -05:00
Dustin L. Howett
ed6475a64c
Merge pull request #3247 from stoeckmann/strnlen
...
Use strnlen if available
2026-07-13 19:15:34 -05:00
Dustin L. Howett
a6a899d655
Merge pull request #3278 from uchiha-bug-hunter/cpio-trailer-uaf
...
cpio: add regression test for symlink-trailer end-of-archive check
2026-07-13 12:03:30 -05:00
Dustin L. Howett
03b665040a
Merge pull request #3287 from libarchive/dependabot/github_actions/all-actions-bfcd148bc6
...
CI: Bump the all-actions group across 1 directory with 5 updates
2026-07-13 11:42:11 -05:00
Dustin L. Howett
d888c11d18
Merge pull request #3270 from daandemeyer/push-qnzponoyonzo
...
test_sparse_basic: avoid out-of-bounds pointer arithmetic in verify
2026-07-12 23:05:02 -05:00
Dustin L. Howett
d030af0ab7
Merge pull request #3282 from datauwu/warc-reject-incomplete-resource-records
...
warc: reject incomplete resource records
2026-07-12 22:51:31 -05:00
Dustin L. Howett
ffc377a02f
Merge pull request #3285 from datauwu/uu-fix-null-memcpy-ub
...
uu: fix null pointer UB in EOF buffering
2026-07-12 22:20:46 -05:00
Dustin L. Howett
5d25dac1a7
Merge pull request #3277 from datauwu/cpio-fix-pointer-lifetime
2026-07-11 07:23:18 -05:00
Dustin L. Howett
4436696356
Merge pull request #3280 from stoeckmann/warc_cleanup
2026-07-11 07:17:58 -05:00
Dustin L. Howett
ade8de6f77
Merge pull request #3281 from stoeckmann/warc_bid_check
2026-07-11 07:14:05 -05:00
Dustin L. Howett
bf4c5688d8
write: prefer ARCHIVE_OK over literal in set_bytes_per_block
2026-07-10 20:26:37 -05:00
Dustin L. Howett
abfcfabbe7
iso9660: prefer ARCHIVE_OK over literal in gen*identifier
2026-07-10 20:26:31 -05:00
Dustin L. Howett
a94475b11a
shar: prefer ARCHIVE_OK over literal in finish_entry
2026-07-10 20:26:25 -05:00
Dustin L. Howett
8149e6bd92
xz: prefer ARCHIVE_OK over literal in filter_open
2026-07-10 20:26:17 -05:00
Dustin L. Howett
3e8e0cb32d
uuencode: prefer ARCHIVE_OK over literal in filter_open
2026-07-10 20:26:08 -05:00
Dustin L. Howett
56bed7f2bd
compress: prefer ARCHIVE_OK over literal in filter_open
2026-07-10 20:25:58 -05:00
Dustin L. Howett
65ddb3d0f4
b64: prefer ARCHIVE_OK over literal in filter_open
2026-07-10 20:25:34 -05:00
Dustin L. Howett
98d1ceeca6
Merge pull request #3274 from datauwu/warc-fix-oob-read
...
warc: parse Content-Length as a bounded field
2026-07-10 16:39:15 -05:00
Dustin L. Howett
8d62a0512a
Merge pull request #3257 from R4mbb/fix-pax-all-slash-pathname
...
pax: handle all-slash pathnames in USTAR name splitting
2026-07-09 10:53:22 -05:00
Dustin L. Howett
cb2c1207f0
Merge pull request #3256 from stoeckmann/cab_integers
...
cab: Refactor data types + extend huffman tables to 16 bit if needed
2026-07-09 10:03:45 -05:00
Dustin L. Howett
1e48c53e9e
Merge pull request #3266 from datauwu/pax-fix-oob-read
...
pax: fix 1-byte OOB read in sparse name building
2026-07-08 22:26:06 -05:00
Dustin L. Howett
cfb3eb5497
Merge pull request #3267 from datauwu/iso9660-fix-oob
...
iso9660: fix 1-byte OOB read in iso-level option
2026-07-08 22:20:50 -05:00
Dustin L. Howett
1d7b49b8d9
Merge pull request #3268 from uchiha-bug-hunter/best-effort-strncat-overread
...
archive_string: bound best_effort_strncat_in_locale to length
2026-07-08 22:19:43 -05:00
Dustin L. Howett
40a71c8382
Merge pull request #3265 from stoeckmann/ckd_alloc
...
Check size arithmetic before memory allocations
2026-07-07 13:49:14 -05:00
Dustin L. Howett
6752ed2c27
Merge pull request #3214 from uchiha-bug-hunter/tar-sun-holesdata-overread
...
tar: add regression test for SUN.holesdata sparse map ending on a digit
2026-07-07 13:45:47 -05:00
Dustin L. Howett
8324372849
Merge pull request #3249 from datauwu/warc-fix-pending-data
...
warc: fix pending data when skipping entries
2026-07-07 10:47:10 -05:00
Dustin L. Howett
617d422c86
test: make Windows file assertions act like lstat
...
I've removed our lstat shim and replaced all uses with my_GetFileInformationByName.
2026-07-07 10:24:00 -05:00
Dustin L. Howett
4c7066dd98
Merge pull request #3227 from DHowett/windows-bsdtar-fix-upper-h-mode
...
win32: fix symlink mode 'H' (hybrid) in wildcard search
2026-07-07 10:23:19 -05:00
Dustin L. Howett
f0af7530a1
Merge pull request #3258 from uchiha-bug-hunter/mtree-global-set-overread
...
mtree: fix out-of-bounds read in process_global_set
2026-07-07 09:26:38 -05:00
Dustin L. Howett
512675e432
Merge pull request #3262 from datauwu/zip-fix-oob-read
...
zip: fix 1-byte OOB read in Mac extension check
2026-07-07 09:25:11 -05:00
Dustin L. Howett
108381c805
Merge pull request #3263 from datauwu/bsdtar-fix-oob-read
...
bsdtar: fix 1-byte OOB read in substitution handling
2026-07-07 09:24:58 -05:00
Dustin L. Howett
a6b6c50c3b
Merge pull request #3260 from mmatuska/constify-fix
...
7-zip and rar5: add constifications missing in e150c2f41 (#3113 )
2026-07-07 09:24:15 -05:00
Dustin L. Howett
bcdda15a40
Merge pull request #3223 from DHowett/win32-o-excl
...
win32: prevent writing through a broken symlink in insecure mode
2026-07-07 09:17:28 -05:00
Dustin L. Howett
c16162083a
Merge pull request #3253 from datauwu/tar-fix-oob
2026-07-06 21:00:05 -05:00
Dustin L. Howett
dbb4e7f28d
Merge pull request #3255 from datauwu/iso9660-fix-oob-read
2026-07-06 20:57:53 -05:00
Dustin L. Howett
51060e492b
Merge pull request #3236 from uchiha-bug-hunter/acl-from-text-nl-overread
...
acl: fix over-read on empty field in archive_acl_from_text_nl
2026-07-06 09:29:59 -05:00
Dustin L. Howett
f0b9700384
Merge pull request #3246 from stoeckmann/cab_style
...
cab: Extend Huffman documentation
2026-07-06 00:04:31 -05:00
Dustin L. Howett
7b635176c5
Merge pull request #3244 from datauwu/warc-fix-write-past
2026-07-05 16:15:03 -05:00
Dustin L. Howett
3c3ec69d44
Merge pull request #3232 from kientzle/kientzle-read-data-into-fd-size-boundary
...
[Write] Truncate write-to-fd at the declared entry size
2026-07-04 15:08:23 -05:00
Dustin L. Howett
afc33dfeb4
Merge pull request #3219 from DHowett/custom-clang-in-ci
...
ci: add a new Lint step that uses a custom-built linter
2026-07-04 14:57:14 -05:00
Dustin L. Howett
3151a76b1e
Merge pull request #3237 from datauwu/tar-avoid-redundant-mode
...
tar: avoid redundant mode parsing
2026-07-04 14:56:02 -05:00
Dustin L. Howett
cebab49b99
Merge pull request #3233 from stoeckmann/archive_entry_new2
...
Check `archive_entry_new2` return value
2026-07-04 14:51:49 -05:00
Dustin L. Howett
0cb18445d3
Merge pull request #3234 from stoeckmann/raw_oflow
...
raw: Properly treat huge inputs
2026-07-04 14:51:31 -05:00
Dustin L. Howett
e19d93fe22
lint: compile la-lint and use in place of clang-tidy
2026-07-04 14:42:27 -05:00
Dustin L. Howett
942984fd7d
Merge commit '25ef914386252adbf67d07d6c5bf018dfcbe34a9' as 'build/la-lint'
2026-07-04 14:42:27 -05:00
Dustin L. Howett
25ef914386
Squashed 'build/la-lint/' content from commit 66dbe023
...
git-subtree-dir: build/la-lint
git-subtree-split: 66dbe023892df333ae794f6004553ff0a3d32275
2026-07-04 14:42:27 -05:00
Dustin L. Howett
c0f58c7b34
build: add a new "lint" workflow that runs clang-tidy
2026-07-04 14:42:26 -05:00
Dustin L. Howett
89efbd80de
build: add ENABLE_CLANG_TIDY and CLANG_TIDY_PATH
2026-07-04 14:42:26 -05:00
Dustin L. Howett
4767d73519
Merge pull request #3239 from datauwu/warc-require-size
2026-07-04 14:24:22 -05:00
Dustin L. Howett
5933c80ae5
Merge pull request #3229 from stoeckmann/cab_e8
2026-07-03 13:38:20 -05:00
Dustin L. Howett
42b2444920
Merge pull request #3208 from datauwu/7zip-skip-defined-bitmaps
2026-07-02 20:22:52 -05:00
Dustin L. Howett
1162aaeccb
Merge pull request #3224 from datauwu/formats-remove-unused-state
...
formats: remove unused states from 7 formats
2026-07-02 17:27:28 -05:00
Dustin L. Howett
6c97b0ae54
Merge pull request #3226 from uchiha-bug-hunter/pathmatch-wide-bracket-overread
...
pathmatch: fix wide-char bracket over-read in pm_w
2026-07-02 14:40:59 -05:00
Dustin L. Howett
e3f9ed95b7
win32: repair symlink mode 'H' (hybrid) in wildcard search
...
The Windows disk reader supports wildcards by converting a path like
"foo/*" into a single tree rooted at "foo/". This does not play nicely
with symlink mode `H`, which treats the first item in each tree as a
dereferenced link (L) and all subsequent items as physical links (P). On
Windows, we take the first _match_ in L mode and all subsequent
descendants and matches in P mode.
This creates a behavioral difference between `bsdtar -c -H *` and
`bsdtar -c -H one two three`.
This commit changes how we handle H->L/P transitions when doing wildcard
matches. The transition from H to P is now done when we descend into our
first directory, and we switch back to H mode when we ascend out of
it[^1].
Closes #3222
[^1]: This does not matter in practice because tree is breadth-first
rather than depth-first, but I've done it in the interest of
completeness and not leaving ourselves caltrops to step on later.
2026-07-02 14:26:40 -05:00
Dustin L. Howett
0c856d3a8f
Merge pull request #3206 from DHowett/win32-symlink-bypass
2026-07-02 07:25:37 -05:00
Dustin L. Howett
e707414ed8
win32: prevent writing through a broken symlink in insecure mode
...
The comments document that we were expecting O_EXCL behavior, and
archive_write_disk_posix uses O_EXCL as well. Let's use O_EXCL's nearest
equivalent.
2026-07-01 21:43:09 -05:00
Dustin L. Howett
52bf591c1a
Merge pull request #3221 from stoeckmann/callback_data_check
2026-07-01 16:04:34 -05:00
Dustin L. Howett
983f8da4be
Merge pull request #3216 from setarcos/loongarch
...
test: fix incorrect hole count reporting on loongarch64
2026-07-01 12:03:18 -05:00
Dustin L. Howett
0b661a91be
Merge pull request #3217 from datauwu/7zip-simplify-bool-handling
...
7zip: simplify bool handling
2026-07-01 12:02:12 -05:00
Dustin L. Howett
d586479a72
Merge pull request #3218 from datauwu/7zip-redundant-bcj-assign
...
7zip: drop redundant BCJ2 assignments
2026-07-01 12:01:06 -05:00
Dustin L. Howett
769b628019
Merge pull request #3213 from datauwu/7zip-remove-unused-state
2026-07-01 08:13:55 -05:00
Dustin L. Howett
4191fecb3a
Merge pull request #3212 from stoeckmann/cab_doc_types
...
cab: Improve LZX translation readability
2026-06-30 18:25:42 -05:00
Dustin L. Howett
f59675ccff
Merge pull request #3207 from datauwu/tests-merge-fix-typo
...
tests: merge tests and fix misleading labels
2026-06-30 11:33:06 -05:00
Dustin L. Howett
d05e842435
Merge pull request #3209 from datauwu/7zip-fix-sfx-boundary
...
7zip: fix SFX boundary checks
2026-06-30 11:26:17 -05:00
Dustin L. Howett
1e8d061bf2
test: enable most of the remaining disk_secure tests on Windows
...
This rather required porting them to assertIs{Reg,Dir,Symlink} and away
from lstat.
This is possible now that 9046e753ca fixed
a number of other symlink issues on Windows.
2026-06-29 15:43:44 -05:00
Dustin L. Howett
9046e753ca
Merge commit from fork
...
windows: fix a number of symlink handling issues and enable tests
2026-06-29 15:30:34 -05:00
Dustin L. Howett
e0c4bccd8e
Merge pull request #3204 from stoeckmann/cab_oob_handling
2026-06-29 14:13:07 -05:00
Dustin L. Howett
83b55fc446
zip: compare entire file contents (assert_mem off by one)
2026-06-29 14:01:00 -05:00