mirror of
https://github.com/samba-team/samba.git
synced 2024-12-22 13:34:15 +03:00
ctdb-daemon: Add function ctdb_ip_to_node()
This is the core logic from ctdb_ip_to_pnn(), so re-implement that
that function using ctdb_ip_to_node().
Something similar (ctdb_ip_to_nodeid()) was recently removed in commit
010c1d77cd
because it wasn't required.
Now there is a use case.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=14084
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
This commit is contained in:
parent
5cb539d8ad
commit
3acb8e9d1c
@ -831,6 +831,8 @@ void ctdb_stop_recoverd(struct ctdb_context *ctdb);
|
||||
|
||||
int ctdb_set_transport(struct ctdb_context *ctdb, const char *transport);
|
||||
|
||||
struct ctdb_node *ctdb_ip_to_node(struct ctdb_context *ctdb,
|
||||
const ctdb_sock_addr *nodeip);
|
||||
uint32_t ctdb_ip_to_pnn(struct ctdb_context *ctdb,
|
||||
const ctdb_sock_addr *nodeip);
|
||||
|
||||
|
@ -45,9 +45,9 @@ int ctdb_set_transport(struct ctdb_context *ctdb, const char *transport)
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* Return the PNN for nodeip, CTDB_UNKNOWN_PNN if nodeip is invalid */
|
||||
uint32_t ctdb_ip_to_pnn(struct ctdb_context *ctdb,
|
||||
const ctdb_sock_addr *nodeip)
|
||||
/* Return the node structure for nodeip, NULL if nodeip is invalid */
|
||||
struct ctdb_node *ctdb_ip_to_node(struct ctdb_context *ctdb,
|
||||
const ctdb_sock_addr *nodeip)
|
||||
{
|
||||
unsigned int nodeid;
|
||||
|
||||
@ -56,11 +56,25 @@ uint32_t ctdb_ip_to_pnn(struct ctdb_context *ctdb,
|
||||
continue;
|
||||
}
|
||||
if (ctdb_same_ip(&ctdb->nodes[nodeid]->address, nodeip)) {
|
||||
return ctdb->nodes[nodeid]->pnn;
|
||||
return ctdb->nodes[nodeid];
|
||||
}
|
||||
}
|
||||
|
||||
return CTDB_UNKNOWN_PNN;
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/* Return the PNN for nodeip, CTDB_UNKNOWN_PNN if nodeip is invalid */
|
||||
uint32_t ctdb_ip_to_pnn(struct ctdb_context *ctdb,
|
||||
const ctdb_sock_addr *nodeip)
|
||||
{
|
||||
struct ctdb_node *node;
|
||||
|
||||
node = ctdb_ip_to_node(ctdb, nodeip);
|
||||
if (node == NULL) {
|
||||
return CTDB_UNKNOWN_PNN;
|
||||
}
|
||||
|
||||
return node->pnn;
|
||||
}
|
||||
|
||||
/* Load a nodes list file into a nodes array */
|
||||
|
Loading…
Reference in New Issue
Block a user