feat(election-iomgr-refactor): add on_connected fire-once callback to endpoint_t

Add void (*on_connected)(endpoint_t *ep) field to endpoint_t with
endpoint_set_on_connected() helper. io_handler fires it exactly once
immediately after ssl_handshake_done=1 then nulls the pointer.

Enables ha_start_election_async to send OP_requestVote as soon as
the TLS handshake with a peer completes — no blocking SSL_connect.

6 new unit tests pass; controller suite 1/1 OK.
This commit is contained in:
Rongsong Shen 2026-05-30 07:34:08 +00:00
parent 4737b0f8a3
commit c3caab49a6
5 changed files with 205 additions and 1 deletions

View file

@ -170,6 +170,7 @@ libxce_test_src = ['testsuite/test.c',
'testsuite/test_cluster.c',
'testsuite/test_cluster_parse.c',
'testsuite/test_libxce_retry.c',
'testsuite/test_netio_on_connected.c',
]
libxce_test_deps = [libxce_deps, librtti_dep, unity_dep, libxce_dep]