Commit Graph
2692 Commits
Author SHA1 Message Date
Vitaliy Filippov 17cb875e10 Remove WITH_OPENSSL from all files except http_client, always require OpenSSL 2026-04-27 15:24:44 +03:00
Vitaliy Filippov 03e15338e5 Use pools for GCM contexts 2026-04-27 15:24:44 +03:00
Vitaliy Filippov dccc549e33 Try to run tests with AES-GCM 2026-04-27 15:24:44 +03:00
Vitaliy Filippov 440a8bc33a Implement direct AES-256-GCM with a static key for benchmark 2026-04-27 15:24:44 +03:00
Vitaliy Filippov 78a21542da Make sure to send all TLS data before continuing 2026-04-27 15:24:44 +03:00
Vitaliy Filippov 75ba9509ad Parse standard TLS record headers 2026-04-27 15:24:44 +03:00
Vitaliy Filippov 8b58fe9808 Omit msgr_tls_record_hdr_t for non-tls data 2026-04-27 15:24:44 +03:00
Vitaliy Filippov 331f345a78 Allow 2 and 4 byte per block chain_info (allow more than 255 snapshots with encryption) 2026-04-27 15:24:44 +03:00
Vitaliy Filippov d0a4ac914b Implement OSD TLS support 2026-04-27 15:24:44 +03:00
Vitaliy Filippov e42b812323 Allow to skip checksums for headers 2026-04-27 15:24:44 +03:00
Vitaliy Filippov ac5c753735 Implement protocol-level checksums (xxhash3) 2026-04-27 15:24:44 +03:00
Vitaliy Filippov f9eb497105 Include xxhash3 x86dispatch 2026-04-27 15:24:44 +03:00
Vitaliy Filippov 3489c99640 Do not use scrap_buffer in the client (it would block protocol checksum support) 2026-04-27 15:24:44 +03:00
Vitaliy Filippov a21dcd4480 Support TLS CN authentication and per-image permissions in vitastor-cli serve 2026-04-27 15:24:44 +03:00
Vitaliy Filippov 340849248b Add VitastorAuthFilter 2026-04-27 15:24:44 +03:00
Vitaliy Filippov ee462c4375 Implement vitastor-cli ls-user, modify-user, remove-user commands 2026-04-27 15:24:44 +03:00
Vitaliy Filippov 0053a0d825 Add image owner/owner_group/reader_group support (for antietcd VitastorAuthFilter) 2026-04-27 15:24:44 +03:00
Vitaliy Filippov cdeecead8d Add security parameter documentation 2026-04-27 15:24:44 +03:00
Vitaliy Filippov c0e34b19c9 Support inline (string PEM) certificates and pkeys 2026-04-27 15:24:44 +03:00
Vitaliy Filippov e8abe99205 Show encryption keys (only IDs) in the listing 2026-04-27 15:24:44 +03:00
Vitaliy Filippov 8225b37f53 Support storing image encryption keys in Vault 2026-04-27 15:24:44 +03:00
Vitaliy Filippov 62b29b03c5 Prefer local etcd addresses and correctly cycle over them even when they need resolving
Seems slightly overcomplicated...
2026-04-27 15:24:44 +03:00
Vitaliy Filippov ae2f570b58 Support DNS resolving via libc-ares 2026-04-27 15:24:44 +03:00
Vitaliy Filippov d7f854ab3e Batch handle_immediate_ops more 2026-04-27 15:24:44 +03:00
Vitaliy Filippov 29640d1aac Add vitastor-cli create & modify --enc-key parameter 2026-04-27 15:24:44 +03:00
Vitaliy Filippov 66a016f8a1 Support reading from snapshots encrypted with different keys 2026-04-27 15:24:44 +03:00
Vitaliy Filippov 34d01f44db Support decryption with multiple keys 2026-04-27 15:24:44 +03:00
Vitaliy Filippov 3956982112 Allow to return chain_info in response to reads 2026-04-27 15:24:44 +03:00
Vitaliy Filippov 713b17e574 Add basic AES-XTS client-side encryption support 2026-04-27 15:24:44 +03:00
Vitaliy Filippov 4efa48c9ca Rework msgr send/receive to allow encryption support 2026-04-27 15:24:44 +03:00
Vitaliy Filippov 26d5e1ed00 Move fromhexstr() to str_util 2026-04-27 15:24:44 +03:00
Vitaliy Filippov 9ba3444cfa Add openapi description 2026-04-27 15:24:44 +03:00
Vitaliy Filippov 96c0001127 Slightly fix API return and input types 2026-04-27 15:24:44 +03:00
Vitaliy Filippov 56a14cc0bd Implement vitastor-cli serve command to serve simple HTTP API 2026-04-27 15:24:44 +03:00
Vitaliy Filippov 6ca1b9eca9 Implement HTTP server support O_o 2026-04-27 15:24:44 +03:00
Vitaliy Filippov 876dbd730a Rename http_response_t to http_message_t 2026-04-27 15:24:44 +03:00
Vitaliy Filippov 4398ee0377 Extract common HTTP context 2026-04-27 15:24:44 +03:00
Vitaliy Filippov 2c673a90bd Support xxhash 32-bit checksums (data_csum_type=xxh3_32) 2026-04-27 15:24:44 +03:00
Vitaliy Filippov a8371498e1 Detect block checksums using csum_block_size, not data_csum_type 2026-04-27 15:24:43 +03:00
Vitaliy Filippov 2a093cbfb5 Add client certificate support 2026-04-27 15:24:43 +03:00
Vitaliy Filippov 094a181491 Do not re-initialize TLS context every connection 2026-04-27 15:24:43 +03:00
Vitaliy Filippov fe30783135 Add https support to antietcd 2026-04-27 15:24:43 +03:00
Vitaliy Filippov e9a6c58418 Implement etcd SSL support via OpenSSL
Maybe I should remove all of this and use libwebsockets :)
2026-04-27 15:24:43 +03:00
Vitaliy Filippov 4acfe149cb Release 3.0.10
Important bug fixes (new store):
- Fix OSDs possibly refusing to start with "write metadata failed at offset xxx: Invalid argument"
  (fix buffer alignment during initial garbage collection)
- Rollback change from 3.0.4 - on-disk garbage entries are not skipped on start again. This change
  doesn't have any impact normally, but OSDs originally running 3.0.0-3.0.2 and then upgraded
  to 3.0.9 may hit a bug where 3.0.9 refuses to start due to entries marked as garbage too
  early and flushed to disk in 3.0.0-3.0.2.

Other changes:
- Auto-select the only RDMA device/port if there is only one
- Rollback one 3.0.9 change - there was no actual use-after-free :)
  (the problem was only relevant to an unstable development version)
- Fix `vitastor-nfs --trace` option
- Fix an unintended 1 second sleep in vitastor-cli rm-data
- Fix inode statistics not being cleared for a deleted pool
- Fix print to stdout in client
v3.0.10
2026-04-27 13:53:48 +03:00
Vitaliy Filippov 008ed5b269 Rollback 25ecca7625 - there was no actual use-after-free :) 2026-04-22 01:35:38 +03:00
Vitaliy Filippov 4fffe0f032 Fix vitastor-nfs trace option 2026-04-20 21:51:47 +03:00
Vitaliy Filippov a76d5ccc0d Wakeup callers in rm-data 2026-04-17 13:53:32 +03:00
Vitaliy Filippov 8ed1e180e0 Clear inode_stats in mon 2026-04-14 02:44:46 +03:00
Vitaliy Filippov 8832fc3b14 Fix print to stdout in client 2026-04-14 02:43:50 +03:00
Vitaliy Filippov 0134934c99 Do not skip garbage entries on start (rollback change from 3.0.4) 2026-04-11 12:05:02 +03:00