Commit Graph
2698 Commits
Author SHA1 Message Date
Vitaliy Filippov 039c524f0a Implement handshake for AES-256-GCM by capturing TLS secrets (pretty shitty approach actually...) 2026-04-26 11:26:34 +03:00
Vitaliy Filippov 4383135434 Extract openssl-related code, wire ssl implementation back 2026-04-26 11:25:38 +03:00
Vitaliy Filippov 767a61e47c Coalesce entries in send_out_buf 2026-04-22 01:41:29 +03:00
Vitaliy Filippov 5d42881736 Support isa-l_crypto for AES-XTS too 2026-04-22 01:41:29 +03:00
Vitaliy Filippov 9d2f6046c6 Fix xts+rdma encrypt errors 2026-04-22 01:41:29 +03:00
Vitaliy Filippov bed4dc11b5 Fix "use-after-realloc" warning 2026-04-22 01:41:29 +03:00
Vitaliy Filippov 4fb7687561 Support isa-l_crypto for AES-GCM 2026-04-22 01:41:29 +03:00
Vitaliy Filippov 1f64e94f2e Remove WITH_OPENSSL from all files except http_client, always require OpenSSL 2026-04-22 01:41:29 +03:00
Vitaliy Filippov 2435209071 Use pools for GCM contexts 2026-04-22 01:41:29 +03:00
Vitaliy Filippov 0eba3e5862 Try to run tests with AES-GCM 2026-04-22 01:41:29 +03:00
Vitaliy Filippov 1ffea58519 Implement direct AES-256-GCM with a static key for benchmark 2026-04-22 01:41:29 +03:00
Vitaliy Filippov cb9ccb8a54 Make sure to send all TLS data before continuing 2026-04-22 01:41:29 +03:00
Vitaliy Filippov 184920102c Parse standard TLS record headers 2026-04-22 01:41:29 +03:00
Vitaliy Filippov d6f1a28096 Omit msgr_tls_record_hdr_t for non-tls data 2026-04-22 01:41:29 +03:00
Vitaliy Filippov cb392ffdfd Allow 2 and 4 byte per block chain_info (allow more than 255 snapshots with encryption) 2026-04-22 01:41:29 +03:00
Vitaliy Filippov a21e4f9503 Implement OSD TLS support 2026-04-22 01:41:29 +03:00
Vitaliy Filippov a9c12d9858 Allow to skip checksums for headers 2026-04-22 01:41:29 +03:00
Vitaliy Filippov 6d40fd86e2 Implement protocol-level checksums (xxhash3) 2026-04-22 01:41:29 +03:00
Vitaliy Filippov a4f47cc67a Include xxhash3 x86dispatch 2026-04-22 01:41:29 +03:00
Vitaliy Filippov 32ab12a880 Do not use scrap_buffer in the client (it would block protocol checksum support) 2026-04-22 01:41:29 +03:00
Vitaliy Filippov 7a40c7f2f6 Support TLS CN authentication and per-image permissions in vitastor-cli serve 2026-04-22 01:41:29 +03:00
Vitaliy Filippov 0f001b0e76 Add VitastorAuthFilter 2026-04-22 01:41:29 +03:00
Vitaliy Filippov 3551525f5e Implement vitastor-cli ls-user, modify-user, remove-user commands 2026-04-22 01:41:29 +03:00
Vitaliy Filippov 6cc899db84 Add image owner/owner_group/reader_group support (for antietcd VitastorAuthFilter) 2026-04-22 01:41:29 +03:00
Vitaliy Filippov 64380856c2 Add security parameter documentation 2026-04-22 01:41:29 +03:00
Vitaliy Filippov 2d9167dd57 Support inline (string PEM) certificates and pkeys 2026-04-22 01:41:29 +03:00
Vitaliy Filippov 04f624f2be Show encryption keys (only IDs) in the listing 2026-04-22 01:41:29 +03:00
Vitaliy Filippov 8b6d978390 Support storing image encryption keys in Vault 2026-04-22 01:41:29 +03:00
Vitaliy Filippov 08401808e8 Prefer local etcd addresses and correctly cycle over them even when they need resolving
Seems slightly overcomplicated...
2026-04-22 01:41:29 +03:00
Vitaliy Filippov 800744b5c3 Support DNS resolving via libc-ares 2026-04-22 01:41:29 +03:00
Vitaliy Filippov a1ac51da24 Batch handle_immediate_ops more 2026-04-22 01:41:29 +03:00
Vitaliy Filippov 64dd98a4d6 Add vitastor-cli create & modify --enc-key parameter 2026-04-22 01:41:29 +03:00
Vitaliy Filippov 3ccfa25b47 Support reading from snapshots encrypted with different keys 2026-04-22 01:41:29 +03:00
Vitaliy Filippov 798ae7c393 Support decryption with multiple keys 2026-04-22 01:41:29 +03:00
Vitaliy Filippov c88bf12484 Allow to return chain_info in response to reads 2026-04-22 01:41:29 +03:00
Vitaliy Filippov e64d8c8c61 Add basic AES-XTS client-side encryption support 2026-04-22 01:41:28 +03:00
Vitaliy Filippov ced3cc3de9 Rework msgr send/receive to allow encryption support 2026-04-22 01:41:10 +03:00
Vitaliy Filippov 43c00538b3 Move fromhexstr() to str_util 2026-04-22 01:41:10 +03:00
Vitaliy Filippov 4cb718de44 Add openapi description 2026-04-22 01:41:10 +03:00
Vitaliy Filippov 45da16995e Slightly fix API return and input types 2026-04-22 01:41:10 +03:00
Vitaliy Filippov 54feea5234 Implement vitastor-cli serve command to serve simple HTTP API 2026-04-22 01:41:10 +03:00
Vitaliy Filippov 157191b770 Implement HTTP server support O_o 2026-04-22 01:41:10 +03:00
Vitaliy Filippov c971a32226 Rename http_response_t to http_message_t 2026-04-22 01:41:10 +03:00
Vitaliy Filippov 14dabf4de5 Extract common HTTP context 2026-04-22 01:41:10 +03:00
Vitaliy Filippov 5776837c58 Support xxhash 32-bit checksums (data_csum_type=xxh3_32) 2026-04-22 01:41:10 +03:00
Vitaliy Filippov e21a10940f Detect block checksums using csum_block_size, not data_csum_type 2026-04-22 01:41:10 +03:00
Vitaliy Filippov ef3c9a0eb4 Add client certificate support 2026-04-22 01:41:10 +03:00
Vitaliy Filippov 55e86dbb29 Do not re-initialize TLS context every connection 2026-04-22 01:41:10 +03:00
Vitaliy Filippov cd46bee266 Add https support to antietcd 2026-04-22 01:41:10 +03:00
Vitaliy Filippov a1130598c0 Implement etcd SSL support via OpenSSL
Maybe I should remove all of this and use libwebsockets :)
2026-04-22 01:41:10 +03:00