258 Commits

Author SHA1 Message Date
Anders F Björklund 8b475b6cc4 Allow mounting with an offset
When mounting squashfs images embedded in apptainer image,
using offset means we don't need to use a temporary copy.
2025-03-15 17:26:59 +01:00
Caleb Gardner 3a48a0bcdc Remove t.Fatal at end of single file test v1.0.6 2025-03-12 00:11:29 -05:00
Caleb Gardner f11416493e Apply FileMode fixes to Inode.Mode() 2025-03-12 00:09:02 -05:00
Caleb Gardner 619bb023b1 Fix missing fileInfo.Mode() types 2025-03-12 00:03:58 -05:00
Caleb Gardner 38e4761d21 Merge pull request #33 from afbjorklund/fileinfo-symlink
Properly show symlinks in Mode
2025-03-11 23:51:01 -05:00
Anders F Björklund 06d2ef3056 Properly show symlinks in Mode
Previously they were extracted OK (as symlinks), but shown
as regular files with length 0 when getting the file info.
2025-03-11 18:46:31 +01:00
Caleb Gardner 446f29df70 Empty io.Reader buffer on EOF v1.0.5 2025-03-04 04:33:47 -06:00
Caleb Gardner d6c8efcfe6 Removed writeToWriteAt
Didn't seem to have any performance advantage
2025-03-04 04:08:13 -06:00
Caleb Gardner d890932d5c Use WriterAt if it's available for FullReader 2025-02-27 07:19:04 -06:00
Caleb Gardner 87b5ac7f5d gopls modernize 2025-02-27 02:46:22 -06:00
Caleb Gardner e9fdd89c67 Merge pull request #31 from willmurphyscode/main
fix: remove stray println
v1.0.4
2024-12-10 16:09:45 -06:00
Will Murphy c80d150fdc fix: remove stray println 2024-12-10 17:00:57 -05:00
Caleb Gardner 03266d0560 Fix frag, id, inode table values on block boundries
Fixes bug mention in #30
v1.0.3
2024-11-26 17:09:39 -06:00
Will Murphy 0253a76dbe fix: prevent index out of range on long frag tables
Previously, reading fragment 512 would panic with index out of range.
Fix that panic by introducing an abstraction over reading blocks of
items, caching the intermediate result, and returning an item at a
particular index. The primary goal of this abstraction is to make edge
cases like requesting items on page boundaries easy to unit test for.

Additionally, fix unit tests by making t.Fatal calls protected by
nil checks on the error values.
2024-11-26 07:38:33 -05:00
Caleb Gardner 0f8a4e0027 Re-added NewReaderAtOffset v1.0.2 2024-09-20 20:10:33 -05:00
Caleb Gardner 2a33cad709 PERFORMANCE
Changed some struct values from pointers to normal values for improved performance.
v1.0.1
2024-07-17 09:30:16 -05:00
Caleb Gardner e9de9e6ad4 Merge pull request #28 from CalebQ42/exp1
Separation
v1.0.0
2023-12-28 00:03:14 -06:00
Caleb Gardner ef72408cd0 Added inode number to directory.Entry 2023-12-27 23:55:57 -06:00
Caleb Gardner 144805e747 Rename squashfslow.Base to squashfslow.FileBase 2023-12-27 23:50:27 -06:00
Caleb Gardner bfba5d5b60 Rename squashfs/squashfs to squashfs/low
squashfs/low library name is now squashfslow
2023-12-27 23:25:49 -06:00
Caleb Gardner 17d45eea50 Finishing touches
Added FastOptions as an alternative to DefaultOptions
A few performance improvements
A few bug fixes
2023-12-27 21:35:40 -06:00
Caleb Gardner d9132ab6a4 Finished. Now for bug fixes 2023-12-24 18:20:05 -06:00
Caleb Gardner 5de59627df Started working on the main library (nearly complete) 2023-12-24 08:05:56 -06:00
Caleb Gardner b2a3920c1f Finished?
Everything seems to extract fine (though more testing is needed)
2023-12-24 06:02:11 -06:00
Caleb Gardner 0449a03428 Added data.FullReader and moved to low level library
Added ability to get readers from Base
2023-12-24 02:55:31 -06:00
Caleb Gardner 0574bbed39 Inode parsing and directory decoding 2023-12-23 05:47:21 -06:00
Caleb Gardner 707391baba Initial work
Create Reader
Pulled back in Inode decoding and superblock
New Data and Metadata readers
Added getting of id, fragment, and export table data lazily
Added README to squashfs/squashfs
2023-12-23 02:48:54 -06:00
Caleb Gardner d4d1b2c2b2 Reset to zero 2023-12-19 03:23:24 -06:00
Caleb Gardner fcd8c4c85b use filepath.Join instead of concatenation 2023-12-08 00:28:17 -06:00
Caleb Gardner 54d193a3df Possible fix for #22
Add sparse support for fragments (undocumented)
v0.8.4
2023-08-12 13:30:15 -05:00
Caleb Gardner a129b259be Apply sparse file fix to reader v0.8.3 2023-08-11 18:15:11 -05:00
Caleb Gardner 87f7533a17 Fix Error decompressing files with lots of NULLs #24 v0.8.2 2023-08-11 15:32:52 -05:00
Caleb Gardner 7e1a584e8f Fixed an error not being reported in full reader v0.8.1 2023-04-17 11:40:15 -05:00
Caleb Gardner 942e0f770f Set main folder permission v0.8.0 2023-04-17 10:38:44 -05:00
Caleb Gardner 7d16990277 Updated README 2023-04-17 10:33:27 -05:00
Caleb Gardner d2c72f9464 Limit number of simultaneous file extractions to prevent hardlock
Added helper extraction functions
chmod & chown is now set after a folder's extraction to prevent permission issues
2023-04-17 10:22:10 -05:00
Caleb Gardner 2ba4551fb9 Fixed stupid errors 2023-04-17 08:01:20 -05:00
Caleb Gardner 6931075e7e Testing better large file support 2023-04-17 07:51:08 -05:00
Caleb Gardner 55a25c9d45 Updated README 2023-04-12 08:44:48 -05:00
Caleb Gardner 94b45c8402 Added IgnorePerm to ExtractionOptions v0.7.13 2023-04-12 07:57:57 -05:00
Caleb Gardner 01de43a5ae Added ErrReadNotFile to ReatAt, WriteTo v0.7.12 2023-04-11 00:34:43 -05:00
Caleb Gardner 5b29f4d029 Updated README 2023-04-09 21:09:53 -05:00
Caleb Gardner 6c7e926649 Updated deps v0.7.11 2023-04-09 20:41:45 -05:00
Caleb Gardner 72d85d7810 Added (expiremental) support for device files and Fifo 2023-04-09 20:41:00 -05:00
Caleb Gardner 67df5f40c6 Fix #21 and update deps v0.7.10 2023-03-29 12:45:21 -05:00
Caleb Gardner 1ae5593e6c Merge pull request #20 from x1unix/main
fix: use correct ENODATA value on different platforms
v0.7.9
2023-03-18 06:57:45 -05:00
ds.hiveon 653c4a167b fix: remove redundant build tag 2023-03-18 07:46:29 +01:00
ds.hiveon 9fe17650b8 fix: use correct ENODATA value on different platforms 2023-03-18 07:44:18 +01:00
Caleb Gardner e9e967f085 Fuse2 fix v0.7.8 2023-01-18 02:31:08 -06:00
Caleb Gardner 187da99dd6 Added fuse2 mounting v0.7.7 2023-01-17 10:20:11 -06:00