BBS: TELESC.NET.BR Assunto: src/ssh/README.md TODO.md deucessh-algorithms.h deucessh-kex.h src/ssh De: Deuc¨ Data: Sat, 28 Mar 2026 12:55:04 -0700 ----------------------------------------------------------- https://gitlab.synchro.net/main/sbbs/-/commit/ccae5b20f5540890d652d140 Modified Files: src/ssh/README.md TODO.md deucessh-algorithms.h deucessh-kex.h src/ssh/kex/curve25519-sha256.c dh-gex-sha256.c dh-gex-sha256.h mlkem768x25519-sha256.c sntrup761x25519-sha512.c src/ssh/server.c ssh-trans.c ssh-trans.h src/ssh/test/test_alloc.c test_dhgex_provider.h test_transport.c Log Message: Built-in RFC 3526 default provider for DH-GEX, generic dssh_kex_set_ctx() API DH-GEX previously leaked algo-specific details (struct dssh_dh_gex_provider, dssh_dh_gex_set_provider()) into the public API, breaking the register-and- forget model every other algorithm uses. Now DH-GEX works out of the box: - Add RFC 3526 groups 14-18 (2048-8192-bit) to the DH-GEX module with a built-in default_select_group() that picks the best fit for the client's requested min/preferred/max range - Add void *ctx field to dssh_kex_s (mirrors dssh_key_algo_s pattern) - Add dssh_kex_set_ctx() public API for optional override (global, pre-init, same gate as dssh_key_algo_set_ctx()) - Remove per-session dssh_dh_gex_set_provider() and kex_ctx from transport state; struct dssh_dh_gex_provider moves to kex/dh-gex-sha256.h only - Remove 65 lines of DH-GEX boilerplate from server.c demo - Add TODO item 84: investigate DH-GEX group size vs cipher strength mismatch Co-Authored-By: Claude Opus 4.6 (1M context)n --- mSynchronetn hgVertrauen n hHome of Synchronet n gh[vert/cvs/bbs].synchro.net ----------------------------------------------------------- [Voltar]