Merged IP list won't be available here...
BUG: https://bugzilla.samba.org/show_bug.cgi?id=12254
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
bool ipalloc_can_host_ips(struct ipalloc_state *ipalloc_state)
{
int i;
- struct public_ip_list *ip_list;
-
- for (ip_list = ipalloc_state->all_ips;
- ip_list != NULL;
- ip_list = ip_list->next) {
- if (ip_list->pnn != -1) {
- return true;
+ for (i=0; i < ipalloc_state->num; i++) {
+ struct ctdb_public_ip_list *ips =
+ ipalloc_state->known_public_ips;
+ if (ips[i].num != 0) {
+ int j;
+ /* Succeed if an address is hosted on node i */
+ for (j=0; j < ips[i].num; j++) {
+ if (ips[i].ip[j].pnn == i) {
+ return true;
+ }
+ }
}
}