Commit graph

191 commits

Author SHA1 Message Date
302f7f804d Fix reordering of cleanup fns in archiver.c
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 15s
2024-10-04 17:35:12 +09:00
8e620fb0e9 Reorder cleanup to proper location
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 6s
2024-10-04 17:32:14 +09:00
8982b15cc5 Impl. create archive with compression, fixes
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 7s
2024-10-04 17:20:01 +09:00
1b7fcb2bfc WIP Impl. archiving without compression
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 6s
TODO:
    archiving with compression
2024-10-04 15:36:53 +09:00
166632fc15 Update file_format for v1
Size of bytes for files per chunk was changed from 2 bytes to 4 bytes.
2024-10-04 14:02:54 +09:00
8040006afe WIP Work on v1 create archive
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 5s
Implemented file-format up to list of symlinks.
2024-10-04 12:27:46 +09:00
7b6929397e Refactor function, add its declaration to header 2024-10-04 11:19:57 +09:00
c7cd445139 Refactorings for v1 extract, other refactorings
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 5s
2024-10-02 15:11:23 +09:00
b09948d245 Split "rel-path-from-abs-paths" into function 2024-10-02 15:11:23 +09:00
6376be2840 Add support for writing multiple file formats 2024-10-02 15:11:23 +09:00
da18464d5d Test/fix symlink test/extract in v1 file format 2024-10-02 15:11:23 +09:00
8fa430f842 Fix v1 archive decompression
Previous implementation sent too many bytes to decompressor if size was
less than 1024.
2024-10-02 15:11:23 +09:00
53fefb7ae8 Remove unnecessary printf used for testing 2024-10-02 15:11:23 +09:00
45fdffdc9c Impl. extract with decompressor file format v1 2024-10-02 15:11:23 +09:00
7407972450 v1 extract skip non-specified args if exists 2024-10-02 15:11:23 +09:00
3d58f466af Impl. setting stored UID/GID if EUID 0 2024-10-02 15:11:23 +09:00
b273d91896 "Fix" Linux/Mac/Unix usage 2024-10-02 15:11:23 +09:00
c71f4f45c7 Impl. simple test/extract new file format (WIP)
TODO:
    Extract symlinks in new format (implemented but untested).
    Extract compressed files in new format.
2024-10-02 15:11:23 +09:00
c1faae90e9 Split up handling of archive file based on version 2024-10-02 15:11:23 +09:00
d625c1b1cb Fix typo 2024-10-02 15:11:23 +09:00
a7aa31fc89 Fix typo in file format specification version 1 2024-10-02 15:11:23 +09:00
f76e383e78 Create file format for format version 1
This is in preparation of improving compression by concatenating files
together before compressing them to reduce the per-file overhead.
2024-10-02 15:11:23 +09:00
efde02b4ab backport: Fixes for v0-file-format extract fn
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 4s
2024-10-02 15:11:00 +09:00
b098fd6d69 Error if "-C <dir>" where "dir" doesn't exist
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 5s
2024-09-30 19:16:29 +09:00
a81ec4434a Fix potential NULL-ptr dereference
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 5s
2024-09-28 19:07:12 +09:00
5afefb9496 Add compiler hardening flags
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 5s
2024-09-26 17:31:06 +09:00
70415c6caf Impl. way to set custom hasher for hash_map
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 8s
2024-09-21 18:43:23 +09:00
4a69d281de Convert "unsigned long long" to "uint64_t"
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 5s
Missed during previous changes using stdint.h .
2024-09-21 11:55:26 +09:00
5068a1b90d clang-format
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 4s
2024-09-21 11:43:25 +09:00
bb574d2a2c Use stdint.h types instead of "int", "long", etc.
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 7s
2024-09-20 21:40:35 +09:00
ed85ded967 Add single-ptr variants data structures' free fns
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 6s
2024-09-13 12:51:09 +09:00
6b862ab022 Refactor priority-heap insert fn
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 6s
priority-heap insert now takes a pointer to a priority-heap instead of a
double pointer.
2024-09-13 11:33:15 +09:00
2252b7d732 Refactor data_structures/hash_map rehash fn
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 5s
2024-09-11 12:46:27 +09:00
88d228644e Cleanup related to change of hash-map insert fn
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 4s
2024-09-09 17:10:17 +09:00
3408183b39 Refactor hash_map insert to use single ptr
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 6s
Previous implementation used a double ptr for inserting into a hash map.
This refactoring allows for only needing to use a single ptr.

Fixes #17 .
2024-09-09 11:25:00 +09:00
425fa77900 Fixes related to compiler warnings
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 4s
Fix integer mismatch usages/comparisons.

Use "size_t" instead of "unsigned int" for data structures.
2024-09-06 14:28:31 +09:00
4cd660ffd5 hash_map: Use const where applicable
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 5s
2024-09-04 15:30:37 +09:00
dd1a8abdd4 hash_map iter fn: const key-value, update unittest
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 52s
2024-09-01 15:40:17 +09:00
aeb8eff350 Impl. hash_map iter, clang-format
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 52s
2024-09-01 15:13:26 +09:00
2e46790ece Switch to ISC License
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 52s
2024-08-30 11:36:11 +09:00
4f0fdfa602 Cleanup/refactorings
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 5s
Moved common functions to helpers.h, and similar cleanup/refactorings.
2024-07-29 16:31:10 +09:00
c30f2f3fd2 Add NULL check when printing cwd on temp file fail
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 5s
2024-07-26 16:25:02 +09:00
4e6b2b8f5a More verbose log when failing to create temp file
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 5s
2024-07-26 16:23:50 +09:00
49bd4b5c76 Improve file-count logs
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 51s
2024-07-26 16:18:07 +09:00
4479fdce62 Add check if file(s) are readable when archiving
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 52s
Also some minor changes like more error logs and refactorings.
2024-07-26 16:01:39 +09:00
bdbbf7dc16 "Fix" windows build
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 5s
TODO:
    Native Windows implementation.
2024-07-26 13:23:51 +09:00
40567d5a3a Fix "-C <dir>" usage
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 5s
TODO:
    Merge re-used functions into "helpers".
2024-07-26 13:17:11 +09:00
c095c40644 Update README.md
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 6s
2024-07-26 12:42:43 +09:00
d1609849a1 Impl. "-C <dir>", refactorings
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 5s
2024-07-26 12:39:56 +09:00
b96d26de81 Update README.md
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 5s
2024-07-25 10:46:00 +09:00