diff options
Diffstat (limited to 'ctdb/tcp/tcp_connect.c')
-rw-r--r-- | ctdb/tcp/tcp_connect.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/ctdb/tcp/tcp_connect.c b/ctdb/tcp/tcp_connect.c index 1bad440d01..f85e3dfdeb 100644 --- a/ctdb/tcp/tcp_connect.c +++ b/ctdb/tcp/tcp_connect.c @@ -302,7 +302,8 @@ static int ctdb_tcp_listen_automatic(struct ctdb_context *ctdb) DEBUG(DEBUG_CRIT,("Unable to bind to any of the node addresses - giving up\n")); goto failed; } - ctdb->address = ctdb->nodes[i]->address; + ctdb->address.address = talloc_strdup(ctdb, ctdb->nodes[i]->address.address); + ctdb->address.port = ctdb->nodes[i]->address.port; ctdb->name = talloc_asprintf(ctdb, "%s:%u", ctdb->address.address, ctdb->address.port); @@ -363,7 +364,7 @@ int ctdb_tcp_listen(struct ctdb_context *ctdb) #endif sock.sin_port = htons(ctdb->address.port); sock.sin_family = PF_INET; - + if (ctdb_tcp_get_address(ctdb, ctdb->address.address, &sock.sin_addr) != 0) { goto failed; |