- Add bundled LZ4 library (lz4.h, lz4.c)
- Add conn_options_t for connection-level mode + compression negotiation
- Add COMPRESS_NONE and COMPRESS_LZ4 constants
- Extend file_meta_t with compress and compressed_size fields
- Client: compress files before sending when compression enabled
- Server: decompress received files when compression flag is set
- Add -c flag to DISABLE compression (default: ON)
- Update Makefile to compile lz4.o
- Compression falls back to uncompressed if LZ4 doesn't reduce size
Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
The file_meta_t and file_task_t structs were missing the checksum field
that was being used in both client and server code, causing a compilation
error. Added uint64_t checksum to both structs and updated wq_push
declaration to match implementation.
Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>