Commit Graph

632 Commits

Author SHA1 Message Date
Matt Nadareski
fdf2ea84ec Fix intermittent 7z solid issues 2025-08-28 19:59:06 -04:00
Matt Nadareski
ad9b001b6a Downstream from IO 2025-08-28 19:47:34 -04:00
Matt Nadareski
1308571c10 Smarter handling 2025-08-28 15:53:16 -04:00
Matt Nadareski
b8cb3419c1 Fix odd resource parsing issues 2025-08-28 15:49:02 -04:00
Matt Nadareski
02533cf947 Somewhat add SFX support 2025-08-28 15:26:37 -04:00
Matt Nadareski
bf8bd04dc7 Fix missing package 2025-08-28 15:22:05 -04:00
Matt Nadareski
1894376ab6 Initial migration of ExtractionTool 2025-08-28 15:11:21 -04:00
Matt Nadareski
c789e4df44 Replace simpler gzip extract with more robust version 2025-08-28 14:17:15 -04:00
Matt Nadareski
884685de4a Fix GZip extraction 2025-08-28 14:15:39 -04:00
Matt Nadareski
7fda7be457 Fix significant issue with how view streams are used 2025-08-28 14:10:08 -04:00
Matt Nadareski
5daf759033 Add debug logging for tar extraction 2025-08-28 13:16:39 -04:00
Matt Nadareski
589ab0896a Replace SharpCompress with native extract for tar 2025-08-28 13:03:59 -04:00
Matt Nadareski
7645ab978f Fix obvious bug 2025-08-28 12:59:50 -04:00
Matt Nadareski
e6497289da Add experimental tar extraction 2025-08-28 12:56:43 -04:00
Matt Nadareski
95a9f4769d Workaround to read block data 2025-08-28 12:16:07 -04:00
Matt Nadareski
7917601f7a Slight formatting cleanup 2025-08-28 12:14:48 -04:00
Matt Nadareski
3400238fc5 Make tar printing a bit more comprehensive 2025-08-28 12:13:00 -04:00
Matt Nadareski
cbd335c6aa Add and update tests 2025-08-28 10:12:08 -04:00
Matt Nadareski
9feaadd32a Implement gzip parsing and printing 2025-08-28 09:56:52 -04:00
Matt Nadareski
2ec008b3b7 Add extension property to tar 2025-08-28 09:13:02 -04:00
Matt Nadareski
c9a462a1c6 Fix tar parsing and printing 2025-08-28 09:11:04 -04:00
Matt Nadareski
ab44aa7e68 Start implementing tar 2025-08-28 08:14:38 -04:00
Matt Nadareski
9b9d3176ec Slightly more work 2025-08-28 07:54:22 -04:00
Matt Nadareski
5dda3e2c81 Add shell deserializers for gzip and tar 2025-08-28 07:52:43 -04:00
Matt Nadareski
4b8dc12c98 Add PKZIP extension properties 2025-08-27 21:59:30 -04:00
Matt Nadareski
044e4c4c75 Fill out remaining models, add printing 2025-08-27 21:48:01 -04:00
Matt Nadareski
2149630865 Fill in the remaining extras that have models 2025-08-27 20:40:56 -04:00
Matt Nadareski
3d435a1d7e Start parsing some PKZIP extras 2025-08-27 19:20:07 -04:00
Matt Nadareski
f2d993a958 Fix UTF-8 encoded strings 2025-08-27 18:14:11 -04:00
Matt Nadareski
7bf75b8dc5 Minor cleanup 2025-08-27 17:59:11 -04:00
Matt Nadareski
dfbdce1dc8 Be more strictly correct about ZIP64 reading 2025-08-27 17:54:35 -04:00
Matt Nadareski
63f5566e65 Minor formatting fix 2025-08-27 16:45:20 -04:00
Matt Nadareski
4b0f43f6c0 Clean up PKZIP printing 2025-08-27 16:41:00 -04:00
Matt Nadareski
98e1ef7362 Rearrange code to make models updates easier 2025-08-27 15:49:31 -04:00
Matt Nadareski
4e0ffcb3c8 Return nothing and be happy 2025-08-27 13:04:01 -04:00
Matt Nadareski
a93a46d6c0 Start fixing PKZIP deserializing
This does a forward-reading approach on the archive instead of the "proper" way of reading from the end. This change introduces potential issues, as both "deleted" entries and normal ones will be included. It also makes it more difficult to determine if the archive is ZIP64 or not. But it is far more stable than the read-from-the-end approach of the old code.
2025-08-27 12:54:36 -04:00
Matt Nadareski
e163302522 Add part-finding helpers and tests 2025-08-26 21:14:25 -04:00
Matt Nadareski
838afc35c3 Order of operations 2025-08-26 06:52:47 -04:00
Matt Nadareski
3a62bfab57 Fix copy-paste 2025-08-26 06:45:21 -04:00
Matt Nadareski
560b3a246c Use file part count, not partial files 2025-08-26 06:41:01 -04:00
Matt Nadareski
4360916750 Handle archive parts 2025-08-25 22:20:24 -04:00
Matt Nadareski
3f31edc1c0 Fix return comments 2025-08-25 21:02:08 -04:00
Matt Nadareski
bd874d436b Slight renaming to be more accurate 2025-08-25 21:01:20 -04:00
Matt Nadareski
fbc47425f4 Use using to use usings 2025-08-25 20:57:35 -04:00
Matt Nadareski
c9df6ff059 Rename to be consistent 2025-08-25 20:53:25 -04:00
Matt Nadareski
ef6ff85e96 Port more PE extraction 2025-08-25 20:51:35 -04:00
Matt Nadareski
bb93792f57 Remove restriction from RAR 2025-08-25 13:25:07 -04:00
Matt Nadareski
1f7ab4fccb Simpler completeness checks 2025-08-25 13:23:49 -04:00
Matt Nadareski
2535e82618 Maybe fix multipart 7z, RAR, and PKZIP archives 2025-08-25 13:19:28 -04:00
Matt Nadareski
66d80c8523 Add basic PE extraction 2025-08-25 13:06:22 -04:00