mirror of
https://github.com/samba-team/samba.git
synced 2025-01-10 01:18:15 +03:00
ctdb-tcp: always call node_dead() upcall in ctdb_tcp_tnode_cb()
ctdb_tcp_tnode_cb() is called when we receive data on the outgoing connection. This can happen when we get an EOF on the connection because the other side as closed. In this case data will be NULL. It would also be called if we received data from the peer. In this case data will not be NULL. The latter case is a fatal error though and we already call ctdb_tcp_stop_connection() for this case as well, which means even though the node is not fully connected anymore, by not calling the node_dead() upcall NODE_FLAGS_DISCONNECTED will not be set. BUG: https://bugzilla.samba.org/show_bug.cgi?id=14295 Signed-off-by: Ralph Boehme <slow@samba.org> Reviewed-by: Martin Schwenke <martin@meltin.net>
This commit is contained in:
parent
0ff1b78fc2
commit
b83ef98c74
@ -65,9 +65,7 @@ void ctdb_tcp_tnode_cb(uint8_t *data, size_t cnt, void *private_data)
|
||||
struct ctdb_tcp_node *tnode = talloc_get_type(
|
||||
node->transport_data, struct ctdb_tcp_node);
|
||||
|
||||
if (data == NULL) {
|
||||
node->ctdb->upcalls->node_dead(node);
|
||||
}
|
||||
node->ctdb->upcalls->node_dead(node);
|
||||
|
||||
ctdb_tcp_stop_connection(node);
|
||||
tnode->connect_te = tevent_add_timer(node->ctdb->ev, tnode,
|
||||
|
Loading…
Reference in New Issue
Block a user