s3:selftest: add samba3.blackbox.smbXsrv_client_ctdb_registered_ips
authorStefan Metzmacher <metze@samba.org>
Fri, 17 Nov 2023 10:46:27 +0000 (11:46 +0100)
committerJule Anger <janger@samba.org>
Sat, 16 Dec 2023 15:07:15 +0000 (15:07 +0000)
commit43b7068676a00a5169ac6f34e97a1bacf8d0c29d
tree76d3c511168acfa18a5aa31a549b48e6aac6d237
parentd96cb627b66d4c63d0407f4e434b429bb03a47af
s3:selftest: add samba3.blackbox.smbXsrv_client_ctdb_registered_ips

This demonstrates the crash that happens if a client connects to a
non-public address first followed by a connect
to public address with the same client_guid and a connection to
the non-public address gets disconnected first, we hit by a
use-after-free talloc_get_type_abort() called from release_ip() as
"xconn" is already gone, taking smbd_release_ip_state with it.

Note that we also need to mark some subtests as flapping
as there's a 2nd problem that happens in the interaction
between smbd processes and ctdb when passing a multichannel
connection to an existing process, it means we sometimes
loose the 'tickle' information within ctdb to that tcp connection.

BUG: https://bugzilla.samba.org/show_bug.cgi?id=15523

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Martin Schwenke <martin@meltin.net>
(cherry picked from commit 082c7df4d04c2a94c5413c1d6b7eae7be610f950)
selftest/flapping.d/smbXsrv_client_ctdb_registered_ips [new file with mode: 0644]
selftest/knownfail.d/smbXsrv_client_ctdb_registered_ips [new file with mode: 0644]
source3/script/tests/test_smbXsrv_client_ctdb_registered_ips.sh [new file with mode: 0755]
source3/selftest/tests.py